diff --git a/.github/workflows/check_profiles.yml b/.github/workflows/check_profiles.yml index d24e27ac899..84a396d7a32 100644 --- a/.github/workflows/check_profiles.yml +++ b/.github/workflows/check_profiles.yml @@ -34,46 +34,6 @@ jobs: python3 ./scripts/orca_extra_profile_check.py 2>&1 | tee ${{ runner.temp }}/extra_json_check.log exit ${PIPESTATUS[0]} - - name: Check profile indentation - id: indentation_check - continue-on-error: true - run: | - set +e - python3 - <<'PY' 2>&1 | tee ${{ runner.temp }}/indentation_check.log - import re - from pathlib import Path - import sys - - profiles_root = Path("resources/profiles") - invalid_files = [] - - for file_path in sorted(profiles_root.rglob("*.json")): - try: - for line_number, line in enumerate(file_path.read_text(encoding="utf-8").splitlines(), start=1): - if not line.strip(): - continue - leading_ws = re.match(r"^[ \t]*", line).group(0) - if " " in leading_ws: - invalid_files.append((file_path, line_number)) - break - except Exception as exc: - print(f"[ERROR] Unable to read {file_path}: {exc}") - invalid_files.append((file_path, 0)) - - if invalid_files: - for path, line in invalid_files: - if line > 0: - print(f"[ERROR] Space indentation found in {path}:{line}") - else: - print(f"[ERROR] Could not validate indentation in {path}") - print("Use tab indentation in profile JSON files (1 tab per indentation level).") - print("Tip: run python3 ./scripts/orca_filament_lib.py --fix --force to normalize formatting.") - sys.exit(1) - - print("All profile JSON files use tab-only indentation.") - PY - exit ${PIPESTATUS[0]} - # download - name: Download working-directory: ${{ github.workspace }} @@ -101,12 +61,18 @@ jobs: ./OrcaSlicer_profile_validator -p ${{ github.workspace }}/resources/profiles -l 2 2>&1 | tee ${{ runner.temp }}/validate_custom.log exit ${PIPESTATUS[0]} - - name: Prepare comment artifact - if: ${{ always() && github.event_name == 'pull_request' && (steps.extra_json_check.outcome == 'failure' || steps.indentation_check.outcome == 'failure' || steps.validate_system.outcome == 'failure' || steps.validate_custom.outcome == 'failure') }} + - name: Prepare PR number for comment workflow + if: ${{ always() && github.event_name == 'pull_request' }} run: | mkdir -p ${{ runner.temp }}/profile-check-results + echo "${{ github.event.pull_request.number }}" > ${{ runner.temp }}/profile-check-results/pr_number.txt + - name: Prepare comment artifact + if: ${{ always() && github.event_name == 'pull_request' && (steps.extra_json_check.outcome == 'failure' || steps.validate_system.outcome == 'failure' || steps.validate_custom.outcome == 'failure') }} + run: | { + # Marker matched by check_profiles_comment.yml to delete prior comments. + echo "" echo "## :x: Profile Validation Errors" echo "" @@ -119,15 +85,6 @@ jobs: echo "" fi - if [ "${{ steps.indentation_check.outcome }}" = "failure" ]; then - echo "### Indentation Check Failed" - echo "" - echo '```' - head -c 30000 ${{ runner.temp }}/indentation_check.log || echo "No output captured" - echo '```' - echo "" - fi - if [ "${{ steps.validate_system.outcome }}" = "failure" ]; then echo "### System Profile Validation Failed" echo "" @@ -150,10 +107,8 @@ jobs: echo "*Please fix the above errors and push a new commit.*" } > ${{ runner.temp }}/profile-check-results/pr_comment.md - echo "${{ github.event.pull_request.number }}" > ${{ runner.temp }}/profile-check-results/pr_number.txt - - name: Upload comment artifact - if: ${{ always() && github.event_name == 'pull_request' && (steps.extra_json_check.outcome == 'failure' || steps.indentation_check.outcome == 'failure' || steps.validate_system.outcome == 'failure' || steps.validate_custom.outcome == 'failure') }} + if: ${{ always() && github.event_name == 'pull_request' }} uses: actions/upload-artifact@v7 with: name: profile-check-results @@ -161,7 +116,7 @@ jobs: retention-days: 1 - name: Fail if any check failed - if: ${{ always() && (steps.extra_json_check.outcome == 'failure' || steps.indentation_check.outcome == 'failure' || steps.validate_system.outcome == 'failure' || steps.validate_custom.outcome == 'failure') }} + if: ${{ always() && (steps.extra_json_check.outcome == 'failure' || steps.validate_system.outcome == 'failure' || steps.validate_custom.outcome == 'failure') }} run: | echo "One or more profile checks failed. See above for details." exit 1 diff --git a/.github/workflows/check_profiles_comment.yml b/.github/workflows/check_profiles_comment.yml index 784f99b24a7..21098cc467c 100644 --- a/.github/workflows/check_profiles_comment.yml +++ b/.github/workflows/check_profiles_comment.yml @@ -10,12 +10,19 @@ on: permissions: pull-requests: write + # Needed to delete outdated bot comments via the issues/comments endpoint. + issues: write + +# Serialize handlers per source branch so parallel runs don't race delete-and-post. +concurrency: + group: ${{ github.workflow }}-${{ github.event.workflow_run.head_repository.full_name }}-${{ github.event.workflow_run.head_branch }} + cancel-in-progress: false jobs: post_comment: name: Post PR comment runs-on: ubuntu-24.04 - if: ${{ github.event.workflow_run.event == 'pull_request' && github.event.workflow_run.conclusion == 'failure' }} + if: ${{ github.event.workflow_run.event == 'pull_request' && (github.event.workflow_run.conclusion == 'success' || github.event.workflow_run.conclusion == 'failure') }} steps: - name: Download artifact id: download @@ -26,14 +33,14 @@ jobs: run-id: ${{ github.event.workflow_run.id }} github-token: ${{ github.token }} - - name: Post comment on PR + - name: Update PR comment if: ${{ steps.download.outcome == 'success' }} env: GH_TOKEN: ${{ github.token }} GH_REPO: ${{ github.repository }} run: | - if [ ! -f pr_number.txt ] || [ ! -f pr_comment.md ]; then - echo "No comment artifact found, skipping." + if [ ! -f pr_number.txt ]; then + echo "No pr_number.txt in artifact, skipping." exit 0 fi @@ -43,4 +50,17 @@ jobs: exit 1 fi - gh pr comment "$PR_NUMBER" --body-file pr_comment.md + # Delete prior comments matching the marker (from check_profiles.yml) or the legacy heading. + OLD_IDS=$(gh api --paginate "repos/${GH_REPO}/issues/${PR_NUMBER}/comments" \ + --jq '.[] | select(.user.login == "github-actions[bot]") | select((.body | startswith("")) or (.body | startswith("## :x: Profile Validation Errors"))) | .id') + for comment_id in $OLD_IDS; do + echo "Deleting outdated profile-validation comment ${comment_id}" + gh api -X DELETE "repos/${GH_REPO}/issues/comments/${comment_id}" || true + done + + # Post a new comment only when validation failed (pr_comment.md present). + if [ -f pr_comment.md ]; then + gh pr comment "$PR_NUMBER" --body-file pr_comment.md + else + echo "Validation succeeded; cleaned up prior comments without posting." + fi diff --git a/deps/Eigen/Eigen.cmake b/deps/Eigen/Eigen.cmake index ed87582b16a..599976debb2 100644 --- a/deps/Eigen/Eigen.cmake +++ b/deps/Eigen/Eigen.cmake @@ -1,5 +1,11 @@ +set(_eigen_extra_flags "") +if (MSVC) + set(_eigen_extra_flags "-DCMAKE_CXX_FLAGS:STRING=/bigobj") +endif () + orcaslicer_add_cmake_project(Eigen URL https://gitlab.com/libeigen/eigen/-/archive/5.0.1/eigen-5.0.1.zip URL_HASH SHA256=0dbb1f9e3aaad66f352c03227d8c983f6f0b49e0b07e71a7300f4abcc01aee12 + CMAKE_ARGS "${_eigen_extra_flags}" DEPENDS dep_Boost dep_GMP dep_MPFR ) diff --git a/localization/i18n/de/OrcaSlicer_de.po b/localization/i18n/de/OrcaSlicer_de.po index 4358dc08626..62b7cb292a9 100644 --- a/localization/i18n/de/OrcaSlicer_de.po +++ b/localization/i18n/de/OrcaSlicer_de.po @@ -122,7 +122,7 @@ msgid "On highlighted overhangs only" msgstr "Nur an hervorgehobenen Überhängen" msgid "Erase all" -msgstr "" +msgstr "Alles löschen" msgid "Highlight overhang areas" msgstr "Bereiche mit Überhang hervorheben" @@ -350,10 +350,10 @@ msgid "Fixed step drag" msgstr "Fester Schritt ziehen" msgid "Context Menu" -msgstr "" +msgstr "Kontextmenü" msgid "Toggle Auto-Drop" -msgstr "" +msgstr "Automatisches Absenken umschalten" msgid "Single sided scaling" msgstr "Einseitige Skalierung" @@ -509,10 +509,10 @@ msgid "Multiple" msgstr "Mehrere" msgid "Count" -msgstr "" +msgstr "Anzahl" msgid "Gap" -msgstr "" +msgstr "Spalt" msgid "Spacing" msgstr "Abstand" @@ -883,7 +883,7 @@ msgid "Advanced" msgstr "Erweiterte Einstellungen" msgid "Reset all options except the text and operation" -msgstr "" +msgstr "Alle Optionen außer dem Text und der Operation zurücksetzen" msgid "" "The text cannot be written using the selected font. Please try choosing a " @@ -1805,16 +1805,16 @@ msgid "Info" msgstr "Info" msgid "Loading printer & filament profiles" -msgstr "" +msgstr "Lade Drucker- und Filamentprofile" msgid "Creating main window" -msgstr "" +msgstr "Erstelle Hauptfenster" msgid "Loading current preset" -msgstr "" +msgstr "Lade aktuelles Preset" msgid "Showing main window" -msgstr "" +msgstr "Zeige Hauptfenster" msgid "" "The OrcaSlicer configuration file may be corrupted and cannot be parsed.\n" @@ -1897,9 +1897,12 @@ msgid "" "Please check your network connectivity\n" "(HTTP %u)" msgstr "" +"Verbindung zu OrcaCloud fehlgeschlagen.\n" +"Bitte überprüfen Sie Ihre Netzwerkverbindung\n" +"(HTTP %u)" msgid "Cloud Error" -msgstr "" +msgstr "Cloud-Fehler" msgid "Retrieving printer information, please try again later." msgstr "Empfange Druckerinformationen, bitte später erneut versuchen." @@ -6100,13 +6103,13 @@ msgid "Export" msgstr "Exportieren" msgid "Sync Presets" -msgstr "" +msgstr "Presets synchronisieren" msgid "Pull and apply the latest presets from OrcaCloud" -msgstr "" +msgstr "Die neuesten Presets von OrcaCloud abrufen und anwenden" msgid "You must be logged in to sync presets from cloud." -msgstr "" +msgstr "Sie müssen angemeldet sein, um Presets aus der Cloud zu synchronisieren." msgid "Quit" msgstr "Beenden" @@ -6236,7 +6239,7 @@ msgid "Preset Bundle" msgstr "Vorlagen-Bundle" msgid "Syncing presets from cloud…" -msgstr "" +msgstr "Synchronisiere Presets aus der Cloud…" msgid "Help" msgstr "Hilfe" @@ -8941,25 +8944,25 @@ msgid "If enabled, reverses the direction of zoom with mouse wheel." msgstr "Wenn aktiviert, wird die Richtung des Zooms mit dem Mausrad umgekehrt." msgid "Pan" -msgstr "" +msgstr "Schwenken" msgid "Left Mouse Drag" -msgstr "" +msgstr "Linke Maustaste drücken" msgid "Set the action that dragging the left mouse button should perform." -msgstr "" +msgstr "Legen Sie die Aktion fest, die das Ziehen der linken Maustaste ausführen soll." msgid "Middle Mouse Drag" -msgstr "" +msgstr "Mittlere Maustaste drücken" msgid "Set the action that dragging the middle mouse button should perform." -msgstr "" +msgstr "Legen Sie die Aktion fest, die das Ziehen der mittleren Maustaste ausführen soll." msgid "Right Mouse Drag" -msgstr "" +msgstr "Rechte Maustaste drücken" msgid "Set the action that dragging the right mouse button should perform." -msgstr "" +msgstr "Legen Sie die Aktion fest, die das Ziehen der rechten Maustaste ausführen soll." msgid "Clear my choice on..." msgstr "Meine Auswahl löschen bei ..." @@ -8986,13 +8989,13 @@ msgstr "" "der Datei." msgid "Graphics" -msgstr "" +msgstr "Grafik" msgid "Anti-aliasing" -msgstr "" +msgstr "Kantenglättung" msgid "MSAA Multiplier" -msgstr "" +msgstr "MSAA-Multiplikator" msgid "" "Set the Multi-Sample Anti-Aliasing level.\n" @@ -9004,12 +9007,19 @@ msgid "" "\n" "Requires application restart." msgstr "" +"Stellen Sie die Stufe der Multi-Sample-Kantenglättung ein.\n" +"Höhere Werte führen zu glatteren Kanten, aber die Auswirkungen auf die " +"Leistung sind exponentiell.\n" +"Niedrigere Werte verbessern die Leistung auf Kosten von gezackten Kanten.\n" +"Wenn deaktiviert, wird empfohlen, FXAA zu aktivieren, um gezackte Kanten mit minimalen Auswirkungen auf die Leistung zu reduzieren.\n" +"\n" +"Erfordert einen Neustart der Anwendung." msgid "Disabled" msgstr "Deaktiviert" msgid "FXAA post-processing" -msgstr "" +msgstr "FXAA-Nachbearbeitung" msgid "" "Applies Fast Approximate Anti-Aliasing as a screen-space pass.\n" @@ -9017,26 +9027,34 @@ msgid "" "\n" "Takes effect immediately." msgstr "" +"Führt Fast Approximate Anti-Aliasing als Bildschirmraum-Pass aus.\n" +"Nützlich, um die MSAA-Einstellung zu deaktivieren oder zu reduzieren, um die Leistung zu verbessern.\n" +"\n" +"ist sofort wirksam" msgid "FPS" -msgstr "" +msgstr "FPS" msgid "FPS cap" -msgstr "" +msgstr "FPS-Begrenzung" msgid "(0 = unlimited)" -msgstr "" +msgstr "(0 = unbegrenzt)" msgid "" "Limits viewport frame rate to reduce GPU load and power usage.\n" "Set to 0 for unlimited frame rate." msgstr "" +"Begrenzt die Bildrate des Viewports, um die GPU-Auslastung und den " +"Energieverbrauch zu reduzieren.\n" +"Auf 0 setzen für unbegrenzte Bildrate." + msgid "Show FPS overlay" -msgstr "" +msgstr "FPS-Overlay anzeigen" msgid "Displays current viewport FPS in the top-right corner." -msgstr "" +msgstr "Zeigt die aktuelle FPS des Viewports in der oberen rechten Ecke an." msgid "Login region" msgstr "Login region" @@ -9207,13 +9225,17 @@ msgid "Skip AMS blacklist check" msgstr "Überspringen der AMS Blacklist-Prüfung" msgid "(Experimental) Keep painted feature after mesh change" -msgstr "" +msgstr "(Experimentell) Behalte bemalte Funktionen nach Mesh-Änderung bei" 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 "" +"Versuchen Sie, bemalte Funktionen (Farbe/Naht/Stütze/unscharf usw.) nach " +"Änderung des Objekt-Meshs (z. B. schneiden/neu laden von der Festplatte/vereinfachen/reparieren usw.) beizubehalten\n" +"Sehr experimentell! Langsam und kann Artefakte erzeugen." + msgid "Allow Abnormal Storage" msgstr "Fehlerhaften Speicher zulassen" @@ -10939,26 +10961,37 @@ msgid "" " %s first layer %d %s, other layers %d %s\n" " %s max delta %d %s, current delta %d %s\n" msgstr "" +" - %s:\n" +" %s erste Schicht %d %s, andere Schichten %d %s\n" +" %s maximale Delta %d %s, aktuelle Delta %d %s\n" msgid "" "Some first-layer and other-layer temperature pairs exceed safety limits.\n" -msgstr "" +msgstr "Einige Temperaturpaare für die erste und andere Schicht überschreiten die Sicherheitsgrenzen.\n" msgid "" "\n" "Invalid pairs:\n" msgstr "" +"\n" +"Ungültige Paare:\n" msgid "" "\n" "You can go back to edit values, or continue if this is intentional." msgstr "" +"\n" +"Sie können zurückgehen, um die Werte zu bearbeiten, oder fortfahren, wenn dies " +"absichtlich ist." msgid "" "\n" "\n" "Continue anyway?" msgstr "" +"\n" +"\n" +"Trotzdem fortfahren?" msgid "Temperature Safety Check" msgstr "Temperatur-Sicherheitsprüfung" @@ -11042,6 +11075,10 @@ msgid "" "\"%1%\"\n" "and \"%2%\" will open without any changes." msgstr "" +"Alle \"Neuer Wert\" Einstellungen in\n" +"\"%1%\"\n" +"werden gespeichert und \"%2%\" wird ohne Änderungen geöffnet." + msgid "Click the right mouse button to display the full text." msgstr "" @@ -11647,7 +11684,7 @@ msgid "Login" msgstr "Anmelden" msgid "Login failed. Please try again." -msgstr "" +msgstr "Anmeldung fehlgeschlagen. Bitte versuchen Sie es erneut." msgid "[Action Required] " msgstr "[Aktion erforderlich] " @@ -11687,16 +11724,16 @@ msgid "Global shortcuts" msgstr "Globale Tastaturkürzel" msgid "Pan View" -msgstr "" +msgstr "Ansicht verschieben" msgid "Rotate View" -msgstr "" +msgstr "Ansicht drehen" msgid "Middle mouse button" -msgstr "" +msgstr "Mittlere Maustaste" msgid "Zoom View" -msgstr "" +msgstr "Ansicht zoomen" msgid "" "Auto orients selected objects or all objects. If there are selected objects, " @@ -12599,6 +12636,8 @@ msgid "" "The Hollow base pattern is not supported by this support type; Rectilinear " "will be used instead." msgstr "" +"Das Hohl-Basis-Muster wird von diesem Stütztyp nicht unterstützt; Stattdessen " +"wird das Rechteckmuster verwendet." msgid "" "Support enforcers are used but support is not enabled. Please enable support." @@ -14846,16 +14885,16 @@ msgid "Auto For Match" msgstr "Automatisch für Übereinstimmung" msgid "Enable filament dynamic map" -msgstr "" +msgstr "Dynamische Filamentzuordnung aktivieren" msgid "Enable dynamic filament mapping during print." -msgstr "" +msgstr "Dynamische Filamentzuordnung während des Drucks aktivieren." msgid "Has filament switcher" -msgstr "" +msgstr "Hat Filamentwechsler" msgid "Printer has a filament switcher hardware (e.g., AMS)." -msgstr "" +msgstr "Der Drucker verfügt über eine Filamentwechsler-Hardware (z. B. AMS)." msgid "Flush temperature" msgstr "Spültemperatur" @@ -15376,7 +15415,7 @@ msgstr "" "unterstützt." msgid "Z-buckling bias optimization (experimental)" -msgstr "" +msgstr "Z-Buckling-Bias-Optimierung (experimentell)" msgid "" "Tightens the gyroid wave along the Z (vertical) axis at low infill density " @@ -15385,6 +15424,11 @@ msgid "" "~30% sparse infill density and above. Only applies when Sparse infill " "pattern is set to Gyroid." msgstr "" +"Strafft die Gyroid-Welle entlang der Z-Achse (vertikal) bei geringer Fülldichte, " +"um die effektive vertikale Säulenlänge zu verkürzen und die Z-Achsen-Kompressions-" +"Knickfestigkeit zu verbessern. Der Filamentverbrauch bleibt erhalten. Keine " +"Auswirkung bei ~30% einfacher Fülldichte und darüber. Gilt nur, wenn das einfache " +"Füllmuster auf Gyroid eingestellt ist." msgid "Sparse infill pattern" msgstr "Füllmuster" @@ -16274,7 +16318,7 @@ msgstr "" "bringen.Setze den Wert auf 0, um diese Funktion zu deaktivieren." msgid "Minimum non-zero part cooling fan speed" -msgstr "" +msgstr "Minimale nicht-null Lüftergeschwindigkeit für die Teilekühlung" msgid "" "Some part-cooling fans cannot start spinning when commanded below a certain " @@ -16293,6 +16337,11 @@ msgid "" "below the one you know it can actually spool at.\n" "Set to 0 to deactivate." msgstr "" +"Einige Teilekühlventilatoren können nicht zu drehen beginnen, wenn sie unter einem bestimmten PWM-Arbeitszyklus befehligt werden. Wenn dieser Wert über 0 eingestellt ist, wird jeder nicht-null-Teilekühlventilatorbefehl auf mindestens diesen Prozentsatz angehoben, damit der Lüfter zuverlässig startet. Ein Lüfterbefehl von 0 (Lüfter aus) wird immer genau eingehalten. Diese Begrenzung wird nach jeder anderen Lüfterberechnung angewendet (Erstschicht-Ramp-up, Schichtzeit-Interpolation, Überhangs-/Brücken-/Stützstruktur-Schnittstellen-/Glättungsüberschreibungen), sodass die Skalierung weiterhin im Bereich [dieser Wert, 100%] erfolgt.\n" +"\n" +"Wenn Ihre Firmware den Lüfter bereits unter einem Schwellenwert deaktiviert (z.B. Klipper's [fan] off_below: 0.10 schaltet den Lüfter aus, wenn der befehligte Arbeitszyklus unter 10% liegt), sollten idealerweise dieser Wert und der Firmware-Schwellenwert auf denselben Wert eingestellt werden. Wenn sie übereinstimmen (z.B. off_below: 0.10 in Klipper und 10% hier), garantiert der Slicer, dass er nie einen nicht-null-Wert emittiert, den die Firmware stillschweigend fallen lässt, und der Lüfter nie einen Wert erhält, der unter dem Wert liegt, den er tatsächlich anfahren kann.\n" +"\n" +"Setze den Wert auf 0, um diese Funktion zu deaktivieren." msgid "%" msgstr "%" @@ -18383,7 +18432,7 @@ msgid "Enable filament ramming" msgstr "Erlaube Filamentrammen" msgid "Tool change on wipe tower" -msgstr "" +msgstr "Werkzeugwechsel auf dem Reinigungsturm" msgid "" "Force the toolhead to travel to the wipe tower before issuing the tool " @@ -18394,6 +18443,8 @@ msgid "" "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." + msgid "No sparse layers (beta)" msgstr "Keine dünnen Schichten (Beta)" @@ -19345,7 +19396,7 @@ msgstr "" "verschiedene Materialien aufeinandertreffen." msgid "Cool down from interface boost during prime tower" -msgstr "^" +msgstr "Abkühlung von der Schnittstellen-Boost während des Reinigungsturms" msgid "" "When interface-layer temperature boost is active, set the nozzle back to " @@ -21994,12 +22045,18 @@ msgid "" "\n" "Available nozzle profiles for this printer:" msgstr "" +"\n" +"\n" +"Verfügbare Düsenprofile für diesen Drucker:" msgid "" "\n" "\n" "Choose YES to switch existing preset:" msgstr "" +"\n" +"\n" +"Wählen Sie JA, um das vorhandene Profil zu wechseln:" msgid "Printer Created Successfully" msgstr "Drucker erfolgreich erstellt" @@ -23208,16 +23265,16 @@ msgid "Detection radius" msgstr "Erkennungsradius" msgid "Selected" -msgstr "" +msgstr "Ausgewählt" msgid "Auto-generate" -msgstr "" +msgstr "Automatisch generieren" msgid "Generate brim ears using Max angle and Detection radius" -msgstr "" +msgstr "Mausohren mit Maximalwinkel und Erkennungsradius generieren" msgid "Add or Select" -msgstr "" +msgstr "Hinzufügen oder auswählen" msgid "" "Warning: The brim type is not set to \"painted\", the brim ears will not " @@ -23230,7 +23287,7 @@ msgid "Set the brim type of this object to \"painted\"" msgstr "Den Brim-Typ dieses Objekts auf \"bemalt\" setzen" msgid "invalid brim ears" -msgstr "" +msgstr "Ungültige Mausohren" msgid "Brim Ears" msgstr "Mausohren" diff --git a/localization/i18n/hu/OrcaSlicer_hu.po b/localization/i18n/hu/OrcaSlicer_hu.po index bc6cfec1dfd..15157d7ba89 100644 --- a/localization/i18n/hu/OrcaSlicer_hu.po +++ b/localization/i18n/hu/OrcaSlicer_hu.po @@ -119,7 +119,7 @@ msgid "On highlighted overhangs only" msgstr "Csak a kiemelt túlnyúlásokon" msgid "Erase all" -msgstr "" +msgstr "Az összes törlése" msgid "Highlight overhang areas" msgstr "Túlnyúló területek kiemelése" @@ -345,10 +345,10 @@ msgid "Fixed step drag" msgstr "Rögzített lépésközű húzás" msgid "Context Menu" -msgstr "" +msgstr "Helyi menü" msgid "Toggle Auto-Drop" -msgstr "" +msgstr "Automatikus leejtés váltása" msgid "Single sided scaling" msgstr "Egyoldalas méretezés" @@ -504,10 +504,10 @@ msgid "Multiple" msgstr "Többszörös" msgid "Count" -msgstr "" +msgstr "Darab" msgid "Gap" -msgstr "" +msgstr "Rés" msgid "Spacing" msgstr "Térköz" @@ -550,7 +550,7 @@ msgid "Drag" msgstr "Húzás" msgid "Move cut line" -msgstr "" +msgstr "Vágási vonal mozgatása" msgid "Draw cut line" msgstr "Vágóvonal rajzolása" @@ -844,7 +844,7 @@ msgid "Embossing actions" msgstr "Dombornyomási műveletek" msgid "Position on surface" -msgstr "" +msgstr "Elhelyezés a felületen" msgid "Emboss" msgstr "Dombornyomás" @@ -874,7 +874,7 @@ msgid "Advanced" msgstr "Haladó" msgid "Reset all options except the text and operation" -msgstr "" +msgstr "Összes beállítás visszaállítása, kivéve a szöveget és a műveletet" msgid "" "The text cannot be written using the selected font. Please try choosing a " @@ -1036,8 +1036,7 @@ msgstr "Érvénytelen stílus." #, boost-format msgid "Style \"%1%\" can't be used and will be removed from a list." -msgstr "" -"A(z) \"%1%\" stílus nem használható, ezért el lesz távolítva a listából." +msgstr "A(z) \"%1%\" stílus nem használható, ezért el lesz távolítva a listából." msgid "Unset italic" msgstr "Dőlt kikapcsolása" @@ -1144,9 +1143,7 @@ msgid "Rotate text Clockwise." msgstr "Szöveg forgatása az óramutató járásával megegyezően." msgid "Unlock the text's rotation when moving text along the object's surface." -msgstr "" -"A szöveg forgatásának feloldása, amikor a szöveget az objektum felületén " -"mozgatod." +msgstr "A szöveg forgatásának feloldása, amikor a szöveget az objektum felületén mozgatod." msgid "Lock the text's rotation when moving text along the object's surface." msgstr "" @@ -1786,16 +1783,16 @@ msgid "Info" msgstr "Infó" msgid "Loading printer & filament profiles" -msgstr "" +msgstr "Nyomtató- és filamentprofilok betöltése" msgid "Creating main window" -msgstr "" +msgstr "Főablak létrehozása" -msgid "Loading current preset" -msgstr "" +msgid "Loading current beállítás" +msgstr "Jelenlegi beállítás betöltése" msgid "Showing main window" -msgstr "" +msgstr "Fő ablak megjelenítése" msgid "" "The OrcaSlicer configuration file may be corrupted and cannot be parsed.\n" @@ -1850,8 +1847,7 @@ msgid "User logged out" msgstr "Felhasználó kijelentkezett" msgid "new or open project file is not allowed during the slicing process!" -msgstr "" -"a projektfájlokkal kapcsolatos műveletek nem engedélyezettek szeletés közben!" +msgstr "a projektfájlokkal kapcsolatos műveletek nem engedélyezettek szeletés közben!" msgid "Open Project" msgstr "Projekt megnyitása" @@ -1869,6 +1865,9 @@ msgid "" "Please check your network connectivity\n" "(HTTP %u): %s" msgstr "" +"Nem sikerült csatlakozni az OrcaCloudhoz.\n" +"Ellenőrizd a hálózati kapcsolatodat\n" +"(HTTP %u): %s" #, c-format, boost-format msgid "" @@ -1876,9 +1875,12 @@ msgid "" "Please check your network connectivity\n" "(HTTP %u)" msgstr "" +"Nem sikerült csatlakozni az OrcaCloudhoz.\n" +"Ellenőrizd a hálózati kapcsolatodat\n" +"(HTTP %u)" msgid "Cloud Error" -msgstr "" +msgstr "Cloud hiba" msgid "Retrieving printer information, please try again later." msgstr "Nyomtatóinformációk lekérése folyamatban, próbáld újra később." @@ -1935,14 +1937,14 @@ msgstr "Adatvédelmi szabályzat frissítése" #, c-format, boost-format msgid "your Bambu Cloud profile (user ID: \"%s\")" -msgstr "" +msgstr "a Bambu Cloud-profilod (felhasználói azonosító: \"%s\")" msgid "your default profile" -msgstr "" +msgstr "az alapértelmezett profilod" #, c-format, boost-format msgid "a user profile (folder: \"%s\")" -msgstr "" +msgstr "egy felhasználói profil (mappa: \"%s\")" #, c-format, boost-format msgid "" @@ -1950,6 +1952,9 @@ msgid "" "Do you want to migrate them to your OrcaCloud profile?\n" "This will copy your presets so they are available under your new account." msgstr "" +"Meglévő felhasználói beállítások találhatók a %s-ban.\n" +"Szeretnéd áttelepíteni őket OrcaCloud-profilba?\n" +"Ezzel átmásolja az beállítás értékeket, így azok elérhetők lesznek az új fiókjában." msgid "Migrate User Presets" msgstr "" @@ -1959,6 +1964,8 @@ msgid "" "Failed to migrate user presets:\n" "%s" msgstr "" +"Nem sikerült áttelepíteni a felhasználói beállításokat:\n" +"%s" msgid "" "The number of user presets cached in the cloud has exceeded the upper limit, " @@ -1975,29 +1982,32 @@ msgid "" "reduce the preset size by removing custom configurations or use it locally " "only." msgstr "" +"Az beállítás tartalom túl nagy a cloud-al való szinkronizáláshoz " +"(több mint 1 MB). Csökkentsd a beállítás méretet az egyéni " +"konfigurációk eltávolításával, vagy használd csak helyileg." #, c-format, boost-format msgid "%s updated from %s to %s" -msgstr "" +msgstr "%s frissítve %s-ról %s-ra" #, c-format, boost-format msgid "%s has been downloaded." -msgstr "" +msgstr "%s letöltve." #, c-format, boost-format msgid "Bundle %s is no longer available." -msgstr "" +msgstr "A %s csomag már nem érhető el." #, c-format, boost-format msgid "Bundle %s access is unauthorized." -msgstr "" +msgstr "A %s csomaghoz való hozzáférés jogosulatlan." msgid "Loading user preset" msgstr "Felhasználói beállítás betöltése" #, c-format, boost-format msgid "%s has been removed." -msgstr "" +msgstr "%s eltávolítva." msgid "Switching application language" msgstr "Alkalmazás nyelvének váltása" @@ -2244,7 +2254,7 @@ msgid "Support Enforcer" msgstr "Támasz kényszerítő" msgid "Change part type" -msgstr "" +msgstr "Alkatrész típusának módosítsa" msgid "Set as an individual object" msgstr "Beállítás különálló objektumként" @@ -2264,10 +2274,10 @@ msgid "Printable" msgstr "Nyomtatható" msgid "Auto Drop" -msgstr "" +msgstr "Automatikus leejtés" msgid "Automatically drops the selected object to the build plate" -msgstr "" +msgstr "A kiválasztott objektumot automatikusan az építőlemezre ejti" msgid "Fix model" msgstr "Model javítása" @@ -2553,7 +2563,7 @@ msgid "Set Filament for selected items" msgstr "Filament beállítása a kiválasztott tárgyakhoz" msgid "Automatically snaps the selected object to the build plate" -msgstr "" +msgstr "A kiválasztott objektumot automatikusan az építőlemezre illeszti" msgid "Unlock" msgstr "Feloldás" @@ -2848,7 +2858,7 @@ msgid "Brim" msgstr "Perem" msgid "Object/Part Settings" -msgstr "" +msgstr "Objektum/alkatrész beállítások" msgid "Reset parameter" msgstr "Paraméter visszaállítása" @@ -2966,8 +2976,7 @@ msgid "Failed to connect to cloud service" msgstr "Nem sikerült csatlakozni a felhőszolgáltatáshoz" msgid "Please click on the hyperlink above to view the cloud service status" -msgstr "" -"A felhőszolgáltatás állapotának megtekintéséhez kattints a fenti hivatkozásra" +msgstr "A felhőszolgáltatás állapotának megtekintéséhez kattints a fenti hivatkozásra" msgid "Failed to connect to the printer" msgstr "Nem sikerült csatlakozni a nyomtatóhoz" @@ -3376,8 +3385,7 @@ msgstr "" "nyomtatási feladatot küldesz a nyomtatóra." msgid "Encountered an unknown error with the Storage status. Please try again." -msgstr "" -"Ismeretlen hiba történt a tároló állapotával kapcsolatban. Próbáld újra." +msgstr "Ismeretlen hiba történt a tároló állapotával kapcsolatban. Próbáld újra." msgid "Sending G-code file over LAN" msgstr "G-kód fájl küldése LAN-on keresztül" @@ -3555,6 +3563,13 @@ msgid "" "enhancements. Each project carried the work of its predecessors forward, " "crediting those who came before." msgstr "" +"A nyílt forráskódú szeletelés az együttműködés és a hozzárendelés " +"hagyományán alapul. Az Alessandro Ranellucci és a RepRap közösség által " +"létrehozott Slic3r lerakta az alapot. A Prusa Research által készített " +"PrusaSlicer erre a munkára épült, a Bambu Studio a PrusaSlicerből " +"született, a SuperSlicer pedig közösségvezérelt fejlesztésekkel bővítette " +"ki. Mindegyik projekt az elődök munkáját vitte előre, elismerését fejezve ki" +" az előbbieknek." msgid "" "OrcaSlicer began in that same spirit, drawing from PrusaSlicer, BambuStudio, " @@ -3562,12 +3577,19 @@ msgid "" "introducing advanced calibration tools, precise wall and seam control and " "hundreds of other features." msgstr "" +"Az OrcaSlicer ugyanebben a szellemben indult, a PrusaSlicer, a BambuStudio, " +"a SuperSlicer és a CuraSlicer szoftverekből. Azóta azonban messze túlnőtt " +"eredetén – fejlett kalibráló eszközöket, pontos fal- és varratvezérlést és " +"több száz egyéb funkciót vezet be." msgid "" "Today, OrcaSlicer is the most widely used and actively developed open-source " "slicer in the 3D printing community. Many of its innovations have been " "adopted by other slicers, making it a driving force for the entire industry." msgstr "" +"Ma az OrcaSlicer a legszélesebb körben használt és legaktívabban fejlesztett " +"nyílt forráskódú szeletelő a 3D nyomtatási közösségben. Sok újítását más " +"szeletelők is átvették, így az egész iparág hajtóereje." msgid "Version" msgstr "Verzió" @@ -4965,7 +4987,7 @@ msgid "Acceleration" msgstr "Gyorsulás" msgid "Jerk" -msgstr "" +msgstr "Rántás" msgid "Fan Speed" msgstr "Ventilátor fordulatszám" @@ -5088,10 +5110,10 @@ msgid "Color: " msgstr "Szín: " msgid "Acceleration: " -msgstr "" +msgstr "Gyorsulás: " msgid "Jerk: " -msgstr "" +msgstr "Rántás: " msgid "PA: " msgstr "PA: " @@ -5252,10 +5274,10 @@ msgid "Actual Speed (mm/s)" msgstr "Tényleges sebesség (mm/s)" msgid "Acceleration (mm/s²)" -msgstr "" +msgstr "Gyorsulás (mm/s²)" msgid "Jerk (mm/s)" -msgstr "" +msgstr "Rántás (mm/s)" msgid "Fan Speed (%)" msgstr "Ventilátor fordulatszám (%)" @@ -5288,7 +5310,7 @@ msgid "Filament change times" msgstr "Filamentcserék száma" msgid "Tool changes" -msgstr "" +msgstr "Szerszámváltások" msgid "Color change" msgstr "Színváltás" @@ -5380,10 +5402,10 @@ msgid "Sequence" msgstr "Sorrend" msgid "Object Selection" -msgstr "" +msgstr "Objektum kijelölés" msgid "Part Selection" -msgstr "" +msgstr "Alkatrész kijelölés" msgid "number keys" msgstr "számbillentyűk" @@ -5573,7 +5595,7 @@ msgid "Paint Toolbar" msgstr "Festés eszköztár" msgid "part selection" -msgstr "" +msgstr "alkatrész kijelölés" msgid "Explosion Ratio" msgstr "Robbantási arány" @@ -6002,13 +6024,13 @@ msgid "Export" msgstr "Exportálás" msgid "Sync Presets" -msgstr "" +msgstr "Beállítások szinkronizálása" msgid "Pull and apply the latest presets from OrcaCloud" -msgstr "" +msgstr "Hívd le és alkalmazd az OrcaCloud legújabb beállításait" msgid "You must be logged in to sync presets from cloud." -msgstr "" +msgstr "A beállítások felhőből történő szinkronizálásához be kell jelentkezz." msgid "Quit" msgstr "Kilépés" @@ -6135,10 +6157,10 @@ msgid "View" msgstr "Nézet" msgid "Preset Bundle" -msgstr "" +msgstr "Beállításcsomag" msgid "Syncing presets from cloud…" -msgstr "" +msgstr "Beállítások szinkronizálása a felhőből…" msgid "Help" msgstr "Segítség" @@ -6180,7 +6202,7 @@ msgid "VFA" msgstr "VFA" msgid "Calibration Guide" -msgstr "" +msgstr "Kalibrálási útmutató" msgid "&Open G-code" msgstr "&G-kód megnyitása" @@ -6291,6 +6313,11 @@ msgid "" "2. The Filament presets\n" "3. The Printer presets" msgstr "" +"Szinkronizálni szeretnéd személyes adataid az Orca Cloudból?\n" +"A következő információkat tartalmazza:\n" +"1. A folyamat beállítás beállításai\n" +"2. A Filament beállítások\n" +"3. A nyomtató beállításai" msgid "Synchronization" msgstr "Szinkronizálás" @@ -6310,6 +6337,8 @@ msgid "" "The player is not loaded because the GStreamer GTK video sink is missing or " "failed to initialize." msgstr "" +"A lejátszó nem töltődik be, mert hiányzik a GStreamer GTK videonyelő, vagy " +"nem sikerült inicializálni." msgid "Please confirm if the printer is connected." msgstr "Kérlek, ellenőrizd, hogy a nyomtató csatlakoztatva van." @@ -7206,10 +7235,10 @@ msgid "Model file downloaded." msgstr "Modellfájl letöltve." msgid "Shared profiles may be available for this printer." -msgstr "" +msgstr "Megosztott profilok állnak rendelkezésre ehhez a nyomtatóhoz." msgid "Browse shared profiles" -msgstr "" +msgstr "Böngéssz a megosztott profilok között" msgid "Serious warning:" msgstr "Súlyos figyelmeztetés:" @@ -7246,7 +7275,8 @@ msgid "" "The application cannot run normally because OpenGL version is lower than " "3.2.\n" msgstr "" -"Az alkalmazás nem futtatható megfelelően, mert az OpenGL verzió 3.2 alatti.\n" +"Az alkalmazás nem futtatható megfelelően, mert az OpenGL verzió 3.2 " +"alatti.\n" msgid "Please upgrade your graphics card driver." msgstr "Kérlek, frissítsd a grafikus kártya illesztőprogramját." @@ -7423,7 +7453,7 @@ msgid "Objects" msgstr "Tárgyak" msgid "Cycle settings visibility" -msgstr "" +msgstr "Ciklusbeállítások láthatósága" msgid "Compare presets" msgstr "Beállítások összehasonlítása" @@ -7705,7 +7735,7 @@ msgid "Load 3MF" msgstr "3MF betöltése" msgid "BambuStudio Project" -msgstr "" +msgstr "BambuStudio projekt" msgid "The 3MF is not supported by OrcaSlicer, loading geometry data only." msgstr "" @@ -7722,9 +7752,11 @@ msgstr "" msgid "" "The 3MF file was generated by an older version, loading geometry data only." msgstr "" +"A 3MF fájlt egy régebbi verzió hozta létre, csak a geometriai adatok töltődnek be." msgid "The 3MF file was generated by BambuStudio, loading geometry data only." msgstr "" +"A 3MF fájlt a BambuStudio hozta létre, csak a geometriai adatok töltődnek be." msgid "" "This project was created with an OrcaSlicer 2.3.1-alpha and uses infill " @@ -7767,16 +7799,22 @@ msgid "" "The 3MF was created by BambuStudio (version %s), which is newer than the " "compatible version %s. Found unrecognized settings:" msgstr "" +"A 3MF-et a BambuStudio készítette (%s verzió), amely újabb, mint a %s " +"kompatibilis verzió. Felismeretlen beállításokat találtunk:" #, c-format, boost-format msgid "" "The 3MF was created by BambuStudio (version %s), which is newer than the " "compatible version %s. Some settings may not be fully compatible." msgstr "" +"A 3MF-et a BambuStudio készítette (%s verzió), amely újabb, mint a %s " +"kompatibilis verzió. Előfordulhat, hogy egyes beállítások nem teljesen " +"kompatibilisek." msgid "" "The 3MF was created by BambuStudio. Some settings may differ from OrcaSlicer." msgstr "" +"A 3MF-et a BambuStudio készítette. Egyes beállítások eltérhetnek az OrcaSlicer-től." msgid "Invalid values found in the 3MF:" msgstr "Érvénytelen értékek találhatók a 3MF-ben:" @@ -7862,7 +7900,7 @@ msgid "Object with multiple parts was detected" msgstr "Több részből álló objektumot észleltünk" msgid "Auto-Drop" -msgstr "" +msgstr "Automatikus leejtés" #, c-format, boost-format msgid "" @@ -7937,10 +7975,10 @@ msgid "The selected object couldn't be split." msgstr "A kijelölt objektumot nem lehet feldarabolni." msgid "Disable Auto-Drop to preserve z positioning?\n" -msgstr "" +msgstr "Letiltja az Auto-Drop funkciót a z pozicionálás megőrzéséhez?\n" msgid "Object with floating parts was detected" -msgstr "" +msgstr "Lebegő részeket tartalmazó tárgyat észleltünk" msgid "Another export job is running." msgstr "Egy másik exportálási feladat is fut." @@ -8356,7 +8394,7 @@ msgid "Triangles: %1%\n" msgstr "Háromszögek: %1%\n" msgid "Use \"Fix Model\" to repair the mesh." -msgstr "" +msgstr "A háló javításához használd a „Modell rögzítése” lehetőséget." #, c-format, boost-format msgid "" @@ -8530,15 +8568,17 @@ msgid "Show the splash screen during startup." msgstr "Indításkor nyitókép megjelenítése." msgid "Show shared profiles notification" -msgstr "" +msgstr "Megosztott profilok értesítésének megjelenítése" msgid "" "Show a notification with a link to browse shared profiles when the selected " "printer is changed." msgstr "" +"Értesítés megjelenítése hivatkozással a megosztott profilok böngészéséhez, " +"ha a kiválasztott nyomtató megváltozik." msgid "Use window buttons on left side" -msgstr "" +msgstr "Használd a bal oldalon lévő ablakgombokat" msgid "(Requires restart)" msgstr "(Újraindítást igényel)" @@ -8763,25 +8803,25 @@ msgid "If enabled, reverses the direction of zoom with mouse wheel." msgstr "Ha engedélyezve van, megfordítja az egérgörgős nagyítás irányát." msgid "Pan" -msgstr "" +msgstr "Pásztázás" msgid "Left Mouse Drag" -msgstr "" +msgstr "Bal egér húzása" msgid "Set the action that dragging the left mouse button should perform." -msgstr "" +msgstr "Állítsd be a bal egérgomb húzásával végrehajtandó műveletet." msgid "Middle Mouse Drag" -msgstr "" +msgstr "Középső egér húzása" msgid "Set the action that dragging the middle mouse button should perform." -msgstr "" +msgstr "Állítsd be a középső egérgomb húzásával végrehajtandó műveletet." msgid "Right Mouse Drag" -msgstr "" +msgstr "Jobb egérhúzás" msgid "Set the action that dragging the right mouse button should perform." -msgstr "" +msgstr "Állítsd be a jobb egérgomb húzásával végrehajtandó műveletet." msgid "Clear my choice on..." msgstr "Választásom törlése ennél..." @@ -8807,13 +8847,13 @@ msgstr "" "Választásom törlése a nyomtatóbeállítás szinkronizálásához fájlbetöltés után." msgid "Graphics" -msgstr "" +msgstr "Grafika" msgid "Anti-aliasing" -msgstr "" +msgstr "Élsimítás" msgid "MSAA Multiplier" -msgstr "" +msgstr "MSAA szorzó" msgid "" "Set the Multi-Sample Anti-Aliasing level.\n" @@ -8825,12 +8865,20 @@ msgid "" "\n" "Requires application restart." msgstr "" +"Állítsd be a Multi-Sample Anti-Aliasing szintjét.\n" +"A magasabb értékek simább éleket eredményeznek, de a teljesítményre gyakorolt ​​hatás " +"exponenciális.\n" +"Az alacsonyabb értékek javítják a teljesítményt a szaggatott élek árán.\n" +"Ha le van tiltva, ajánlott az FXAA engedélyezése, hogy minimális teljesítményhatás mellett " +"csökkentse a szaggatott éleket.\n" +"\n" +"Az alkalmazás újraindítása szükséges." msgid "Disabled" msgstr "Letiltva" msgid "FXAA post-processing" -msgstr "" +msgstr "FXAA utófeldolgozás" msgid "" "Applies Fast Approximate Anti-Aliasing as a screen-space pass.\n" @@ -8838,26 +8886,32 @@ msgid "" "\n" "Takes effect immediately." msgstr "" +"Gyors, hozzávetőleges élsimítást alkalmaz képernyőközi átlépésként.\n" +"Hasznos az MSAA beállítás letiltásához vagy csökkentéséhez a teljesítmény javítása érdekében.\n" +"\n" +"Azonnal hatályba lép." msgid "FPS" -msgstr "" +msgstr "FPS" msgid "FPS cap" -msgstr "" +msgstr "FPS korlát" msgid "(0 = unlimited)" -msgstr "" +msgstr "(0 = korlátlan)" msgid "" "Limits viewport frame rate to reduce GPU load and power usage.\n" "Set to 0 for unlimited frame rate." msgstr "" +"Korlátozza a nézetablak képsebességét a GPU terhelés és az energiafogyasztás csökkentése érdekében.\n" +"Állítsd 0-ra a korlátlan képkockasebességhez." msgid "Show FPS overlay" -msgstr "" +msgstr "FPS fedvény megjelenítése" msgid "Displays current viewport FPS in the top-right corner." -msgstr "" +msgstr "Megjeleníti az aktuális nézetablak FPS-t a jobb felső sarokban." msgid "Login region" msgstr "Régió" @@ -8870,6 +8924,10 @@ msgid "" "the transmission of data to Bambu's cloud services too. Users who don't use " "BBL machines or use LAN mode only can safely turn on this function." msgstr "" +"Ezzel letilt minden felhőszolgáltatást, pl. Orca Cloud és Bambu Cloud. Ez " +"leállítja az adatok továbbítását a Bambu felhőszolgáltatásai felé is. Azok a " +"felhasználók, akik nem használnak BBL gépeket vagy csak LAN módot " +"használnak, biztonságosan bekapcsolhatják ezt a funkciót." msgid "Network test" msgstr "Hálózati teszt" @@ -8878,15 +8936,17 @@ msgid "Test" msgstr "Teszt" msgid "Cloud Providers" -msgstr "" +msgstr "Cloud szolgáltatók" msgid "Enable Bambu Cloud" -msgstr "" +msgstr "Bambu Cloud engedélyezése" msgid "" "Allow logging into Bambu Cloud alongside Orca Cloud. When enabled, a Bambu " "login section appears on the homepage." msgstr "" +"A Bambu Cloudba való bejelentkezés engedélyezése az Orca Cloud mellett. Ha " +"engedélyezve van, egy Bambu bejelentkezési szakasz jelenik meg a kezdőlapon." msgid "Update & sync" msgstr "Frissítés és szinkronizálás" @@ -8896,8 +8956,7 @@ msgstr "Csak stabil frissítések keresése" msgid "Auto sync user presets (Printer/Filament/Process)" msgstr "" -"Felhasználói beállítások automatikus szinkronizálása (Nyomtató/Filament/" -"Folyamat)" +"Felhasználói beállítások automatikus szinkronizálása (Nyomtató/Filament/Folyamat)" msgid "Update built-in Presets automatically." msgstr "Beépített beállítások automatikus frissítése." @@ -9026,13 +9085,14 @@ msgid "Skip AMS blacklist check" msgstr "AMS tiltólista ellenőrzés kihagyása" msgid "(Experimental) Keep painted feature after mesh change" -msgstr "" +msgstr "(Kísérleti) A festett jellemző megtartása hálócsere után" 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" +"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 "" +"Megpróbálja tartani a festett jellemzőket (szín/varrat/támasz/fuzzy stb.) az objektumháló megváltoztatása után (például kivágás/újratöltés lemezről/egyszerűsítés/javítás stb.)\n" +"Kísérletei szint! Lassú és hibákat hozhat létre." msgid "Allow Abnormal Storage" msgstr "Rendellenes tároló engedélyezése" @@ -9185,13 +9245,13 @@ msgid "Project-inside presets" msgstr "Projekten belüli beállítások" msgid "Bundle presets" -msgstr "" +msgstr "Beállítások kötegelése" msgid "System" msgstr "Rendszer" msgid "Unsupported presets" -msgstr "Nem támogatott előbeállítások" +msgstr "Nem támogatott beállítások" msgid "Unsupported" msgstr "Nem támogatott" @@ -9402,8 +9462,7 @@ msgstr "" "szeleteld ->" msgid "Manually change external spool during printing for multi-color printing" -msgstr "" -"Többszínű nyomtatáshoz manuálisan cseréld a külső tekercset nyomtatás közben" +msgstr "Többszínű nyomtatáshoz manuálisan cseréld a külső tekercset nyomtatás közben" msgid "Multi-color with external" msgstr "Többszínű nyomtatás külső tekercssel" @@ -9781,6 +9840,9 @@ msgid "" "type in the slicing file. Please make sure you have installed the correct " "filament in the external spool." msgstr "" +"A külső filament típusa ismeretlen, vagy nem egyezik a szeletelőfájlban " +"szereplő filament típusával. Győződj meg arról, hogy a megfelelő " +"filamentet helyezted be a külső orsóba." msgid "Please refer to Wiki before use->" msgstr "Használat előtt nézd meg a Wikit ->" @@ -10583,7 +10645,7 @@ msgid "Normal" msgstr "Normál" msgid "Resonance Compensation" -msgstr "" +msgstr "Rezonancia kompenzáció" msgid "Resonance Avoidance Speed" msgstr "Rezonanciaelkerülési sebesség" @@ -10595,12 +10657,14 @@ msgid "" "The frequency of the anti-vibration signal will correspond to the natural " "frequency of the frame." msgstr "" +"A rezgéscsillapító jel frekvenciája megfelel a keret természetes " +"frekvenciájának." msgid "Damping" -msgstr "" +msgstr "Csillapítás" msgid "Damping ratio for the input shaping filter." -msgstr "" +msgstr "A rezgéskompenzáció szűrő csillapítási aránya." msgid "Speed limitation" msgstr "Sebesség limitek" @@ -10724,29 +10788,40 @@ msgid "" " %s first layer %d %s, other layers %d %s\n" " %s max delta %d %s, current delta %d %s\n" msgstr "" +" - %s:\n" +" %s első réteg %d %s, egyéb rétegek %d %s\n" +" %s max. delta %d %s, aktuális delta %d %s\n" msgid "" "Some first-layer and other-layer temperature pairs exceed safety limits.\n" msgstr "" +"Egyes első és további réteg hőmérsékletpárok túllépik a biztonsági határértékeket.\n" msgid "" "\n" "Invalid pairs:\n" msgstr "" +"\n" +"Érvénytelen párok:\n" msgid "" "\n" "You can go back to edit values, or continue if this is intentional." msgstr "" +"\n" +"Visszatérhetsz az értékek szerkesztéséhez, vagy folytathatod, ha ez szándékos." msgid "" "\n" "\n" "Continue anyway?" msgstr "" +"\n" +"\n" +"Mindképp folytatod?" msgid "Temperature Safety Check" -msgstr "" +msgstr "Hőmérséklet biztonsági ellenőrzés" msgid "Continue" msgstr "Folytatás" @@ -10755,7 +10830,7 @@ msgid "Back" msgstr "Hátul" msgid "Don't warn again for this preset" -msgstr "" +msgstr "Ne legyen több figyelmeztetés ennél az előbeállításnál" #, c-format, boost-format msgid "Left: %s" @@ -10766,8 +10841,7 @@ msgid "Right: %s" msgstr "Jobb: %s" msgid "Click to reset current value and attach to the global value." -msgstr "" -"Kattints ide az érték visszaállításához és a globális érték használatához." +msgstr "Kattints ide az érték visszaállításához és a globális érték használatához." msgid "Click to drop current modify and reset to saved value." msgstr "" @@ -10802,7 +10876,7 @@ msgid "Discard" msgstr "Elvetés" msgid "the new profile" -msgstr "" +msgstr "az új profilt" #, boost-format msgid "" @@ -10811,6 +10885,10 @@ msgid "" "discarding any changes made in\n" "\"%2%\"." msgstr "" +"Váltás erre:\n" +"\"%1%\"\n" +"a benne végrehajtott változtatások elvetése\n" +"\"%2%\"." #, boost-format msgid "" @@ -10819,6 +10897,10 @@ msgid "" "will be transferred to\n" "\"%2%\"." msgstr "" +"Minden „Új érték” beállítás módosítva\n" +"\"%1%\"\n" +"címre kerülnek át\n" +"\"%2%\"." #, boost-format msgid "" @@ -10826,6 +10908,9 @@ msgid "" "\"%1%\"\n" "and \"%2%\" will open without any changes." msgstr "" +"Minden „Új érték” beállítás mentésre kerül\n" +"\"%1%\"\n" +"és a \"%2%\" változtatás nélkül nyílik meg." msgid "Click the right mouse button to display the full text." msgstr "Kattints a jobb egérgombbal a teljes szöveg megjelenítéséhez." @@ -10863,8 +10948,7 @@ msgstr "" #, boost-format msgid "Preset \"%1%\" contains the following unsaved changes:" -msgstr "" -"A(z) \"%1%\" beállítás a következő elmentetlen változásokat tartalmazza:" +msgstr "A(z) \"%1%\" beállítás a következő elmentetlen változásokat tartalmazza:" #, boost-format msgid "" @@ -11358,11 +11442,15 @@ msgid "" "Native Wayland liveview requires the GStreamer GTK video sink. Please " "install the gtksink plugin for GStreamer, then restart OrcaSlicer." msgstr "" +"A natív Wayland élőképhez a GStreamer GTK videonyelő szükséges. Telepítsd a " +"gtksink beépülő modult a GStreamerhez, majd indítsd újra az OrcaSlicert." msgid "" "Failed to initialize the native Wayland GStreamer video sink. Please check " "your GStreamer GTK plugin installation." msgstr "" +"Nem sikerült inicializálni a natív Wayland GStreamer videonyelőt." +"Ellenőrizd a GStreamer GTK bővítmény telepítését." msgid "" "Windows Media Player is required for this task! Do you want to enable " @@ -11403,7 +11491,7 @@ msgstr "" "gstreamer1.0-libav csomagokat, majd indítsd újra az Orca Slicert.)" msgid "Cloud agent is not available. Please restart OrcaSlicer and try again." -msgstr "" +msgstr "A cloud ügynök nem érhető el. Indítsd újra az OrcaSlicert és próbáljd újra." msgid "Bambu Network plug-in not detected." msgstr "A Bambu Network plug-in nem található." @@ -11415,7 +11503,7 @@ msgid "Login" msgstr "Bejelentkezés" msgid "Login failed. Please try again." -msgstr "" +msgstr "Sikertelen bejelentkezés. Próbáld újra." msgid "[Action Required] " msgstr "[Művelet szükséges] " @@ -11454,16 +11542,16 @@ msgid "Global shortcuts" msgstr "Globális gyorsbillentyűk" msgid "Pan View" -msgstr "" +msgstr "Pásztázó nézet" msgid "Rotate View" -msgstr "" +msgstr "Forgató nézet" msgid "Middle mouse button" -msgstr "" +msgstr "Középső egérgomb" msgid "Zoom View" -msgstr "" +msgstr "Nagyító nézet" msgid "" "Auto orients selected objects or all objects. If there are selected objects, " @@ -11595,7 +11683,7 @@ msgid "Zoom out" msgstr "Zoom távolítás" msgid "Toggle printable for object/part" -msgstr "" +msgstr "Nyomtathatóság váltása objektumhoz/alkatrészhez" msgid "Switch between Prepare/Preview" msgstr "Váltás előkészítés/előnézet között" @@ -11688,7 +11776,7 @@ msgid "New version of Orca Slicer" msgstr "A Orca Slicer új verziója" msgid "Check on Github" -msgstr "" +msgstr "Ellenőrizd a GitHub-on" msgid "Skip this Version" msgstr "Verzió kihagyása" @@ -11854,13 +11942,13 @@ msgstr "Bővítőpanel" #, boost-format msgid "Split into %1% parts" -msgstr "" +msgstr "Felosztva %1% részre" msgid "Repair finished" msgstr "Javítás befejezve" msgid "Repair failed" -msgstr "" +msgstr "A javítás sikertelen" msgid "Repair canceled" msgstr "Javítás megszakítva" @@ -11907,10 +11995,10 @@ msgstr "" "objektum hibás hálóval rendelkezik." msgid "Process change extrusion role G-code" -msgstr "" +msgstr "Folyamat módosítása extrudálási szerepkör G-kódja" msgid "Filament change extrusion role G-code" -msgstr "" +msgstr "Filament változás extrudálási szerepkör G-kódja" msgid "No object can be printed. Maybe too small" msgstr "Objektum nem nyomtatható ki. Lehet, hogy túl kicsi." @@ -11942,15 +12030,17 @@ msgid "Flush volumes matrix do not match to the correct size!" msgstr "Az öblítési mennyiségek mátrixa nem a megfelelő méretű!" msgid "set_accel_and_jerk() is only supported by Klipper" -msgstr "" +msgstr "set_accel_and_jerk() csak Klipperen támogatott" msgid "" "Input shaping is not supported by Marlin < 2.1.2.\n" "Check your firmware version and update your G-code flavor to ´Marlin 2´" msgstr "" +"A rezgéskompenzációt a Marlin < 2.1.2 nem támogatja.\n" +"Ellenőrizd a firmware verzióját és állítsd a G-kód változatot „Marlin 2”-re" msgid "Input shaping is only supported by Klipper, RepRapFirmware and Marlin 2" -msgstr "" +msgstr "A rezgéskompenzációt csak a Klipper, a RepRapFirmware és a Marlin 2 támogatja" msgid "Grouping error: " msgstr "Csoportosítási hiba: " @@ -12084,9 +12174,7 @@ msgid "%1% is too tall, and collisions will be caused." msgstr "%1% túl magas, a nyomtatás során előfordulhatnak ütközések." msgid " is too close to exclusion area, there may be collisions when printing." -msgstr "" -"túl közel van a tiltott területhez, a nyomtatás során előfordulhatnak " -"ütközések." +msgstr " túl közel van a tiltott területhez, a nyomtatás során előfordulhatnak ütközések." msgid "" " is too close to clumping detection area, there may be collisions when " @@ -12099,13 +12187,10 @@ msgid "Prime Tower" msgstr "Törlőtorony" msgid " is too close to others, and collisions may be caused.\n" -msgstr "" -" túl közel van más tárgyakhoz, a nyomtatás során előfordulhatnak ütközések.\n" +msgstr " túl közel van más tárgyakhoz, a nyomtatás során előfordulhatnak ütközések.\n" msgid " is too close to exclusion area, and collisions will be caused.\n" -msgstr "" -" túl közel van a tiltott területhez, a nyomtatás során előfordulhatnak " -"ütközések.\n" +msgstr " túl közel van a tiltott területhez, a nyomtatás során előfordulhatnak ütközések.\n" msgid "" " is too close to clumping detection area, and collisions will be caused.\n" @@ -12117,19 +12202,27 @@ msgid "" "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." msgid "" "Invalid recommended nozzle temperature range. The lower bound must be lower " "than the upper bound." msgstr "" +"Érvénytelen ajánlott fúvóka hőmérséklet-tartomány. Az alsó határnak " +"alacsonyabbnak kell lennie, mint a felső határnak." msgid "" "If you still want to print, you can enable the option in Preferences / " "Control / Slicing / Remove mixed temperature restriction." msgstr "" +"Ha továbbra is szeretnél nyomtatni, engedélyezheted az opciót itt: " +"Beállítások / Vezérlés / Szeletelés / Vegyes hőmérséklet korlátozás feloldása." msgid "No extrusions under current settings." -msgstr "A jelenlegi beállítások mellett nincsenek extrudálások." +msgstr "A jelenlegi beállításokkal nincsenek extrudálások." msgid "" "Smooth mode of timelapse is not supported when \"by object\" sequence is " @@ -12528,7 +12621,7 @@ msgstr "" "egyre kisebb mértékben zsugorodnak lineárisan az itt megadott rétegig." msgid "Elephant foot layers density" -msgstr "" +msgstr "Az elefántláb rétegek sűrűsége" msgid "" "Density of internal solid infill for Elephant foot layers compensation.\n" @@ -12536,6 +12629,10 @@ msgid "" "Subsequent layers become linearly denser by the height specified in " "elefant_foot_compensation_layers." msgstr "" +"A belső szilárd töltés sűrűsége az elefánt lábrétegeinek kompenzálásához.\n" +"A második réteg kezdeti értéke van állítva.\n" +"A következő rétegek lineárisan sűrűbbé válnak az elefant_foot_compensation_layers " +"paraméterben megadott magassággal." msgid "" "Slicing height for each layer. Smaller layer height means more accurate and " @@ -12548,9 +12645,7 @@ msgid "Printable height" msgstr "Nyomtatási magasság" msgid "Maximum printable height which is limited by mechanism of printer." -msgstr "" -"Ez a maximális nyomtatható magasság, amelyet a nyomtatótér magassága " -"korlátoz." +msgstr "Maximális nyomtatható magasság a nyomtató mechanikája által korlátozva." msgid "Extruder printable height" msgstr "Extruder nyomtatható magassága" @@ -12566,8 +12661,7 @@ msgid "Preferred orientation" msgstr "Előnyben részesített orientáció" msgid "Automatically orient STL files on the Z axis upon initial import." -msgstr "" -"Az STL fájlok automatikus Z tengely szerinti tájolása első importáláskor." +msgstr "Az STL fájlok automatikus Z tengely szerinti tájolása első importáláskor." msgid "Printer preset names" msgstr "Nyomtató beállítások neve" @@ -13533,7 +13627,7 @@ msgstr "" "eltávolítását" msgid "Brim flow ratio" -msgstr "" +msgstr "Perem áramlási arány" msgid "" "This factor affects the amount of material for brims.\n" @@ -13543,6 +13637,12 @@ msgid "" "\n" "Note: The resulting value will not be affected by the first-layer flow ratio." msgstr "" +"Ez a tényező befolyásolja a karimák anyagának mennyiségét.\n" +"\n" +"A ténylegesen használt peremáramlást úgy számítjuk ki, hogy ezt az értéket megszorozzuk a " +"filament áramlási arányával, és ha be van állítva, akkor az objektum áramlási arányával.\n" +"\n" +"Megjegyzés: A kapott értéket nem befolyásolja az első réteg áramlási aránya." msgid "Brim follows compensated outline" msgstr "A Perem a kompenzált körvonalat követi" @@ -13566,12 +13666,14 @@ msgstr "" "rétegekkel." msgid "Combine brims" -msgstr "" +msgstr "Peremek egyesítése" msgid "" "Combine multiple brims into one when they are close to each other. This can " "improve brim adhesion." msgstr "" +"Karimák egybevonása, ha azok közel vannak egymáshoz. Ez " +"javíthatja a perem tapadását." msgid "Brim ears" msgstr "Karimás fülek" @@ -13699,14 +13801,18 @@ msgstr "Aktiváld a jobb légszűrés érdekében. G-kód parancs: M106 P3 S(0-2 msgid "" "Enable this to override the fan speed set in custom G-code during print." msgstr "" +"Engedélyezzd ezt az egyéni G-kódban beállított ventilátorsebesség " +"felülbírálásához nyomtatás közben." msgid "On completion" -msgstr "" +msgstr "Befejezéskor" msgid "" "Enable this to override the fan speed set in custom G-code after print " "completion." msgstr "" +"Engedélyezzd ezt az egyéni G-kódban beállított ventilátorsebesség " +"felülbírálásához a nyomtatás befejezése után." msgid "" "Speed of exhaust fan during printing. This speed will override the speed in " @@ -14122,6 +14228,12 @@ msgid "" "\n" "This option will be disabled if spiral vase mode is enabled." msgstr "" +"Az az irány, amerre a kontúrfalhurkok extrudálódnak felülről lefelé nézve.\n" +"A lyukak a kontúrral ellentétes irányban vannak nyomtatva, hogy fenntartsák " +"az igazodást azokkal a rétegekkel, amelyek kontúrpoligonjai nem teljesek " +"és megváltoztatják az irányt, ugyanakkor a lyuk részleges kontúrját képezve.\n" +"\n" +"Ez az opció le lesz tiltva, ha a spirálváza mód engedélyezve van." msgid "Counter clockwise" msgstr "Óramutató járásával ellentétes" @@ -14518,16 +14630,16 @@ msgid "Auto For Match" msgstr "Automatikus egyeztetéshez" msgid "Enable filament dynamic map" -msgstr "" +msgstr "Filament dinamikus leképezés engedélyezése" msgid "Enable dynamic filament mapping during print." -msgstr "" +msgstr "Dinamikus filament-leképezés engedélyezése nyomtatás közben." msgid "Has filament switcher" -msgstr "" +msgstr "Filament-váltóval rendelkezik" msgid "Printer has a filament switcher hardware (e.g., AMS)." -msgstr "" +msgstr "A nyomtató rendelkezik filament-váltó hardverrel (pl. AMS)." msgid "Flush temperature" msgstr "Öblítési hőmérséklet" @@ -14793,10 +14905,10 @@ msgstr "" "extrudálások megbízhatóan történjenek." msgid "Wipe tower cooling" -msgstr "" +msgstr "Törlőtorony hűtése" msgid "Temperature drop before entering filament tower" -msgstr "" +msgstr "Hőmérsékletcsökkenés az filamenttoronyba lépés előtt" msgid "Interface layer pre-extrusion distance" msgstr "Érintkezőréteg előextrudálási távolsága" @@ -15039,7 +15151,7 @@ msgstr "" "támogatja." msgid "Z-buckling bias optimization (experimental)" -msgstr "" +msgstr "Z-kihajlási torzítás optimalizálása (kísérleti)" msgid "" "Tightens the gyroid wave along the Z (vertical) axis at low infill density " @@ -15048,6 +15160,12 @@ msgid "" "~30% sparse infill density and above. Only applies when Sparse infill " "pattern is set to Gyroid." msgstr "" +"Alacsony feltöltési sűrűség mellett megfeszíti a gyroid hullámot a Z " +"(függőleges) tengely mentén, hogy lerövidítse a tényleges függőleges " +"oszlophosszt és javítsa a Z-tengely összenyomódási kihajlási ellenállását. A " +"filamenthasználat megmarad. Nincs hatása ~30%-os és afeletti ritka kitöltési " +"sűrűségnél. Csak akkor érvényes, ha a Ritka kitöltési minta Gyroid-ra " +"van állítva." msgid "Sparse infill pattern" msgstr "Kitöltési mintázat" @@ -15252,19 +15370,20 @@ msgstr "" "tárgyasztalhoz való tapadást" msgid "First layer travel" -msgstr "" +msgstr "Első réteg mozgás" msgid "" "Travel acceleration of first layer.\n" "The percentage value is relative to Travel Acceleration." msgstr "" +"Az első réteg mozgási gyorsulása.\n" +"A százalékos érték az mozgási gyorsuláshoz van viszonyítva." msgid "Enable accel_to_decel" msgstr "accel_to_decel engedélyezése" msgid "Klipper's max_accel_to_decel will be adjusted automatically." -msgstr "" -"A Klipper max_accel_to_decel értékét a rendszer automatikusan beállítja" +msgstr "A Klipper max_accel_to_decel értékét a rendszer automatikusan beállítja" msgid "accel_to_decel" msgstr "accel_to_decel" @@ -15311,6 +15430,8 @@ msgid "" "Travel jerk of first layer.\n" "The percentage value is relative to Travel Jerk." msgstr "" +"Az első réteg Jerk-je.\n" +"A százalékos érték a mozgás Jerk-hez van viszonyítva." msgid "" "Line width of the first layer. If expressed as a %, it will be computed over " @@ -15593,6 +15714,16 @@ msgid "" "Ripple: Uniform ripple pattern that ripples left and right of the original " "path. Repeating pattern, woven appearance." msgstr "" +"A bolyhos felület generálására használható zajtípus:\n" +"Klasszikus: Klasszikus egységes véletlenszerű zaj.\n" +"Perlin: Perlin zaj, amely egyenletesebb textúrát ad.\n" +"Billow: Hasonló a perlin zajhoz, de csomósabb.\n" +"Ridged Multifractal: Bordázott zaj éles, szaggatott jellemzőkkel. " +"Márványszerű textúrákat hoz létre.\n" +"Voronoi: A felületet voronoi cellákra osztja, és mindegyiket véletlenszerűen " +"kiszorítja. Patchwork textúrát hoz létre.\n" +"Hullámozás: Egységes hullámzási minta, amely az eredeti útvonaltól balra és jobbra " +"hullámzik. Ismétlődő minta, szövött megjelenés." msgid "Classic" msgstr "Klasszikus" @@ -15610,7 +15741,7 @@ msgid "Voronoi" msgstr "Voronoi" msgid "Ripple" -msgstr "" +msgstr "Fodrozódás" msgid "Fuzzy skin feature size" msgstr "A bolyhos felület mintázatmérete" @@ -15643,13 +15774,15 @@ msgstr "" "értékek simább zajt eredményeznek." msgid "Number of ripples per layer" -msgstr "" +msgstr "A fodrozódások száma rétegenként" msgid "Controls how many full cycles of ripples will be added per layer." msgstr "" +"Azt szabályozza, hogy hány teljes ciklus hullámzás kerüljön hozzáadásra " +"rétegenként." msgid "Ripple offset" -msgstr "" +msgstr "Fodrozódás eltolás" msgid "" "Shifts the ripple phase forward along the print path by the specified " @@ -15663,9 +15796,19 @@ msgid "" "The shift is applied once every number of layers set by Layers between " "ripple offset, so layers within the same group are printed identically." msgstr "" +"Előre tolja a hullámos fázist a nyomtatási útvonal mentén a hullámhossz meghatározott " +"százalékával minden rétegperiódusban.\n" +"- A 0% minden réteget azonosan tart.\n" +"- 50% fél hullámhosszal eltolja a mintát, hatékonyan megfordítva a " +"fázist.\n" +"- 100% eltolja a mintát egy teljes hullámhosszal, visszatérve az eredeti " +"fázishoz.\n" +"\n" +"Az eltolás a hullámosság eltolása közötti rétegek által beállított rétegközzel " +"érvényesül, így az azonos csoporton belüli rétegek nyomtatása azonos." msgid "Layers between ripple offset" -msgstr "" +msgstr "A hullámosság eltolása közötti rétegek" msgid "" "Specifies how many consecutive layers share the same ripple phase before the " @@ -15678,6 +15821,15 @@ msgid "" "to 6 are shifted by the configured offset, then layers 7 to 9 return to the " "base pattern, etc." msgstr "" +"Meghatározza, hogy hány egymást követő réteg osztozik ugyanazon a hullámzási fázison az " +"eltolás alkalmazása előtt.\n" +"Például:\n" +"- 1 = Az 1. réteg az alap hullámmintával kerül nyomtatásra, majd a 2. réteg " +"eltolódik a konfigurált eltolás szerint, majd a 3. réteg visszatér az alapmintázathoz, " +"és így tovább.\n" +"- 3 = Az 1-től 3-ig rétegek nyomtatása az alap hullámmintával, majd a 4-től " +"6-ig a konfigurált eltolás szerint eltolódik, majd a 7-től 9-ig visszaáll az " +"alapmintázat stb." msgid "Filter out tiny gaps" msgstr "Apró rések szűrése" @@ -15886,7 +16038,7 @@ msgstr "" "A kikapcsoláshoz állítsd 0-ra." msgid "Minimum non-zero part cooling fan speed" -msgstr "" +msgstr "Minimális nem nulla rész-hűtőventilátor fordulatszáma" msgid "" "Some part-cooling fans cannot start spinning when commanded below a certain " @@ -15905,9 +16057,25 @@ msgid "" "below the one you know it can actually spool at.\n" "Set to 0 to deactivate." msgstr "" +"Egyes részleges hűtőventilátorok nem tudnak pörögni, ha egy bizonyos " +"PWM munkaciklus alá utasítják őket. Ha 0 fölé állítod, minden nem nulla " +"részleges hűtési ventilátorparancs legalább erre a százalékra emelkedik, " +"így a ventilátor megbízhatóan elindul. A 0-s ventilátorparancs (ventilátor " +"kikapcsolva) mindig pontosan végrhajtódik. Ez a korlátozás minden " +"második ventilátorszámítás után alkalmazódik (első réteg rámpa, rétegidő " +"interpoláció, túlnyúlás/híd/tartófelület/vasalás felülbírálása), így a skálázás " +"továbbra is a [ez az érték, 100%] tartományon belül működik.\n" +"Ha a firmware már letiltja a ventilátort egy küszöbérték alatt (például a Klipper " +"[fan] off_below: 0.10 értéke kikapcsolja a ventilátort, ha a parancsolt munkaciklus " +"10% alatt van), akkor ezt az opciót és a firmware küszöbértékét ideális esetben " +"ugyanarra az értékre kell állítani. Ezek megfeleltetése (pl. off_below: 0,10 a " +"Klipperben és 10% itt) garantálja, hogy a szeletelő soha nem ad ki olyan nullától " +"eltérő értéket, amelyet a firmware csendben ejtene, és a ventilátor soha nem kap " +"olyan értéket, amely alacsonyabb, mint amiről tudod, hogy ténylegesen képes forogni.\n" +"A deaktiváláshoz állítsd 0-ra." msgid "%" -msgstr "" +msgstr "%" msgid "Time cost" msgstr "Időköltség" @@ -16100,9 +16268,7 @@ msgid "Infill lock depth" msgstr "Kitöltés rögzítési mélysége" msgid "The parameter sets the overlapping depth between the interior and skin." -msgstr "" -"Ez a paraméter a belső rész és a felületi réteg közötti átfedés mélységét " -"állítja be." +msgstr "Ez a paraméter a belső rész és a felületi réteg közötti átfedés mélységét állítja be." msgid "Skin line width" msgstr "Felületi vonalszélesség" @@ -16372,53 +16538,56 @@ msgid "Use a fixed absolute angle for ironing." msgstr "Rögzített abszolút szög használata a vasaláshoz." msgid "Ironing expansion" -msgstr "" +msgstr "Vasaló bővítés" msgid "Expand or contract the ironing area." -msgstr "" +msgstr "A vasalási terület bővítése/szűkítése ." msgid "Z contouring enabled" -msgstr "" +msgstr "Z kontúrozás engedélyezve" msgid "Enable Z-layer contouring (aka Z-layer anti-aliasing)." -msgstr "" +msgstr "Z-réteg kontúrozás engedélyezése (más néven Z-réteg élsimítás)." msgid "Minimize wall height angle" -msgstr "" +msgstr "Falmagasság szög minimalizálása" msgid "" "Reduce the height of top-surface perimeters to match the model edge height.\n" "Affects perimeters with a slope less than this angle (degrees).\n" "A reasonable value is 35. Set to 0 to disable." msgstr "" +"Csökkentsd a felső felület kerületének magasságát, hogy megfeleljen a modell élmagasságának.\n" +"Befolyásolja az ennél a szögnél (foknál) kisebb lejtésű kerületeket.\n" +"Az ésszerű érték 35. A letiltáshoz állítsd 0-ra." msgid "°" -msgstr "" +msgstr "°" msgid "Don't alternate fill direction" -msgstr "" +msgstr "Ne váltakozzon a töltési irány" msgid "Disable alternating fill direction when using Z contouring." -msgstr "" +msgstr "A váltakozó kitöltési irány letiltása Z kontúrozás használatakor." msgid "Minimum z height" -msgstr "" +msgstr "Minimális z magasság" msgid "" "Minimum Z-layer height.\n" "Also controls the slicing plane." msgstr "" +"Minimális Z-réteg magasság.\n" +"Vezérli a szeletelő síkot is." msgid "This G-code is inserted at every layer change after the Z lift." -msgstr "" -"Ez a G-kód minden rétegváltásnál beillesztésre kerül a Z tengely megemelése " -"után." +msgstr "Ez a G-kód minden rétegváltásnál beillesztésre kerül a Z tengely megemelése után." msgid "Clumping detection G-code" msgstr "Csomósodásészlelés G-kód" msgid "Supports silent mode" -msgstr "Csendes mód" +msgstr "Csendes mód támogatva" msgid "" "Whether the machine supports silent mode in which machine use lower " @@ -16611,12 +16780,14 @@ msgid "Maximum speed of resonance avoidance." msgstr "A rezonanciaelkerülés maximális sebessége." msgid "Emit input shaping" -msgstr "" +msgstr "Rezgéskompenzáció kibocsájtás" msgid "" "Override firmware input shaping settings.\n" "If disabled, firmware settings are used." msgstr "" +"Firmware rezgéskompenzáció beállítások felülírása.\n" +"Ha le van tiltva, a firmware-beállítások használatosak." msgid "Input shaper type" msgstr "Rezgéskompenzátor típusa" @@ -16626,42 +16797,45 @@ msgid "" "Default uses the firmware default settings.\n" "Disable turns off input shaping in the firmware." msgstr "" +"Válaszd ki a rezgéskompenzáció algoritmust.\n" +"A Default a firmware alapértelmezett beállításait használja.\n" +"A letiltása kikapcsolja a rezgéskompenzációt a firmware-ben." msgid "MZV" -msgstr "" +msgstr "MZV" msgid "ZV" -msgstr "" +msgstr "ZV" msgid "ZVD" -msgstr "" +msgstr "ZVD" msgid "ZVDD" -msgstr "" +msgstr "ZVDD" msgid "ZVDDD" -msgstr "" +msgstr "ZVDDD" msgid "EI" -msgstr "" +msgstr "EI" msgid "EI2" -msgstr "" +msgstr "EI2" msgid "2HUMP_EI" -msgstr "" +msgstr "2HUMP_EI" msgid "EI3" -msgstr "" +msgstr "EI3" msgid "3HUMP_EI" -msgstr "" +msgstr "3HUMP_EI" msgid "DAA" -msgstr "" +msgstr "DAA" msgid "X" -msgstr "" +msgstr "X" msgid "" "Resonant frequency for the X axis input shaper.\n" @@ -16669,15 +16843,22 @@ msgid "" "To disable input shaping, use the Disable type.\n" "RRF: X and Y values are equal." msgstr "" +"Rezonanciafrekvencia az X tengely rezgéskompenzációjához.\n" +"A nulla érték firmware frekvenciáját fogja használni.\n" +"A rezgéskompenzáció letiltásához használd a Letiltás típust.\n" +"RRF: X és Y értékek egyenlőek." msgid "Y" -msgstr "" +msgstr "Y" msgid "" "Resonant frequency for the Y axis input shaper.\n" "Zero will use the firmware frequency.\n" "To disable input shaping, use the Disable type." msgstr "" +"Rezonanciafrekvencia az Y tengely rezgéskompenzációjához.\n" +"A nulla érték a firmware frekvenciáját fogja használni.\n" +"A rezgéskompenzáció letiltásához használd a Letiltás típust." msgid "" "Damping ratio for the X axis input shaper.\n" @@ -16685,12 +16866,19 @@ msgid "" "To disable input shaping, use the Disable type.\n" "RRF: X and Y values are equal." msgstr "" +"Csillapítási arány az X tengely rezgéskompenzációjához.\n" +"A nulla érték a firmware csillapítási arányát fogja használni.\n" +"A rezgéskompenzáció letiltásához használd a Letiltás típust.\n" +"RRF: X és Y értékek egyenlőek." msgid "" "Damping ratio for the Y axis input shaper.\n" "Zero will use the firmware damping ratio.\n" "To disable input shaping, use the Disable type." msgstr "" +"Csillapítási arány az Y tengely rezgéskompenzációjához.\n" +"A nulla érték a firmware csillapítási arányát fogja használni.\n" +"A rezgéskompenzáció letiltásához használd a Letiltás típust." msgid "" "Part cooling fan speed may be increased when auto cooling is enabled. This " @@ -16821,10 +17009,10 @@ msgstr "" "nyomtatóbeállításokban. G-kód parancs: M106 P2 S(0-255)" msgid "For the first" -msgstr "" +msgstr "Az első" msgid "Set special auxiliary cooling fan for the first certain layers." -msgstr "" +msgstr "A speciális kiegészítő hűtőventilátor beállítása az első bizonyos rétegekhez." msgid "" "Auxiliary fan speed will be ramped up linearly from layer \"For the first\" " @@ -16833,10 +17021,16 @@ msgid "" "in which case the fan will run at maximum allowed speed at layer \"For the " "first\" + 1." msgstr "" +"A segédventilátor sebessége lineárisan megemelkedik az \"Az első\" rétegtől " +"a maximálisig a \"Teljes ventilátorsebesség\" rétegnél.\n" +"A rendszer figyelmen kívül hagyja a „teljes ventilátor fordulatszámot” ha alacsonyabb, " +"mint „Az első”, ebben az esetben a ventilátor a maximális megengedett sebességgel " +"fog működni „Az első” + 1 rétegben." msgid "" "Special auxiliary cooling fan speed, effective only for the first x layers." msgstr "" +"Speciális kiegészítő hűtőventilátor sebessége, csak az első x rétegeknél hatásos." msgid "" "The lowest printable layer height for the extruder. Used to limit the " @@ -17067,12 +17261,14 @@ msgstr "" "konfigurációs beállításaihoz." msgid "Change extrusion role G-code (process)" -msgstr "" +msgstr "Extrudálási szerepkör G-kód módosítása (folyamat)" msgid "" "This G-code is inserted when the extrusion role is changed. It runs after " "the machine and filament extrusion role G-code." msgstr "" +"Ez a G-kód akkor kerül beillesztésre, amikor az extrudálási szerep " +"megváltozik. A gép és a filament extrudálási szerepkör G-kódja után fut." msgid "Printer type" msgstr "Nyomtató típusa" @@ -17195,7 +17391,8 @@ msgid "" "Experimental feature: Retraction length before cutting off during filament " "change." msgstr "" -"Kísérleti funkció: a visszahúzás hossza a filamentváltás közbeni vágás előtt." +"Kísérleti funkció: a visszahúzás hossza a filamentváltás közbeni vágás " +"előtt." msgid "Long retraction when extruder change" msgstr "Hosszú visszahúzás extruderváltáskor" @@ -17938,7 +18135,7 @@ msgid "Enable filament ramming" msgstr "Filament tömörítés engedélyezése" msgid "Tool change on wipe tower" -msgstr "" +msgstr "Szerszámcsere a törlőtoronyban" msgid "" "Force the toolhead to travel to the wipe tower before issuing the tool " @@ -17949,6 +18146,13 @@ msgid "" "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 kényszerítse a szerszámfejet a " +"törlőtoronyhoz. Csak a 2-es típusú törlőtornyot használó többextruderes " +"(több szerszámfejes) nyomtatóknál releváns. Alapértelmezés szerint az Orca " +"kihagyja az utazást a több szerszámfejes gépeken, mert a firmware kezeli a " +"fejcserét, ami azt eredményezheti, hogy a Tx parancs a nyomtatott rész " +"felett kerül kiadásra. Engedélyezd ezt az opciót, ha azt szeretnéd, hogy a " +"szerszámcsere mindig a törlőtorony felett történjen." msgid "No sparse layers (beta)" msgstr "Nincsenek ritka rétegek (béta)" @@ -18065,8 +18269,7 @@ msgid "Pattern angle" msgstr "Mintázat szöge" msgid "Use this setting to rotate the support pattern on the horizontal plane." -msgstr "" -"Ezzel a beállítással elforgathatod a támasz mintázatát a vízszintes síkon." +msgstr "Ezzel a beállítással elforgathatod a támasz mintázatát a vízszintes síkon." msgid "On build plate only" msgstr "Csak a tárgyasztaltól" @@ -18573,12 +18776,14 @@ msgstr "" "megváltozik." msgid "Change extrusion role G-code (filament)" -msgstr "" +msgstr "Az extrudálási szerep G-kódjának módosítása (szál)" msgid "" "This G-code is inserted when the extrusion role is changed for the active " "filament." msgstr "" +"Ez a G-kód akkor kerül beillesztésre, amikor az aktív filament extrudálási " +"szerepe megváltozik." msgid "" "Line width for top surfaces. If expressed as a %, it will be computed over " @@ -19182,15 +19387,18 @@ msgstr "" "engedélyezve vannak." msgid "Maximum wall resolution" -msgstr "" +msgstr "Maximális falfelbontás" msgid "" "This value determines the smallest wall line segment length in mm. The " "smaller you set this value, the more accurate and precise the walls will be." msgstr "" +"Ez az érték határozza meg a legkisebb falvonalszakasz hosszát mm-ben. Minél " +"kisebbre állítod be ezt az értéket, annál pontosabbak és precízebbek lesznek " +"a falak." msgid "Maximum wall deviation" -msgstr "" +msgstr "Maximális fal eltérés" msgid "" "The maximum deviation allowed when reducing the resolution for the 'Maximum " @@ -19199,6 +19407,11 @@ msgid "" "'Maximum wall resolution', so if the two conflict, 'Maximum wall deviation' " "takes precedence." msgstr "" +"A megengedett legnagyobb eltérés a „Maximális falfelbontás” beállítás " +"felbontásának csökkentésekor. Ha ezt növeled, a nyomtatás kevésbé lesz " +"pontos, de a G-kód kisebb lesz. A „maximális faleltérés” korlátozza a " +"„maximális falfelbontást”, így ha a kettő ütközik, a „Maximális faleltérés” " +"élvez elsőbbséget." msgid "First layer minimum wall width" msgstr "Első réteg minimális falszélessége" @@ -19977,7 +20190,7 @@ msgid "Generating infill toolpath" msgstr "Kitöltési szerszámút generálás" msgid "Z contouring" -msgstr "" +msgstr "Z kontúrozás" msgid "Detect overhangs for auto-lift" msgstr "Túlnyúlások észlelése az automatikus emeléshez" @@ -20594,6 +20807,10 @@ msgid "" "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. Több anyagból " +"történő nyomtatás esetén az egyes filamentak fúvóka hőmérsékletének a többi " +"filament ajánlott fúvókahőmérséklet-tartományán belül kell lennie. Ellenkező " +"esetben a fúvóka eltömődhet vagy a nyomtató megsérülhet." msgid "Sync AMS and nozzle information" msgstr "AMS- és fúvókainformációk szinkronizálása" @@ -20891,8 +21108,7 @@ msgid "" "Check your firmware documentation for supported shaper types." msgstr "" "RepRap firmware verzió => 3.4.0\n" -"Ellenőrizd a firmware dokumentációját a támogatott rezgéskompenzátor-" -"típusokhoz." +"Ellenőrizd a firmware dokumentációját a támogatott rezgéskompenzátor-típusokhoz." msgid "Frequency (Start / End): " msgstr "Frekvencia (Kezdés / Vég): " @@ -21020,25 +21236,25 @@ msgid "NOTE: High values may cause Layer shift (>%s)" msgstr "MEGJEGYZÉS: A magas értékek rétegeltolódást okozhatnak (>%s)" msgid "Flow Ratio Calibration" -msgstr "" +msgstr "Anyagáramlás kalibrálás" msgid "Calibration Test Type" -msgstr "" +msgstr "Kalibrációs teszt típusa" msgid "Pass 1 (Coarse)" -msgstr "" +msgstr "1. menet (durva)" msgid "Pass 2 (Fine)" -msgstr "" +msgstr "2. menet (finom)" msgid "YOLO (Recommended)" msgstr "YOLO (Ajánlott)" msgid "YOLO (Perfectionist)" -msgstr "" +msgstr "YOLO (perfekcionista)" msgid "Top Surface Pattern" -msgstr "" +msgstr "Felső felület mintázata" msgid "Send G-code to printer host" msgstr "G-kód küldése a nyomtató gazdagépének" @@ -21487,12 +21703,18 @@ msgid "" "\n" "Available nozzle profiles for this printer:" msgstr "" +"\n" +"\n" +"Elérhető fúvókaprofilok ehhez a nyomtatóhoz:" msgid "" "\n" "\n" "Choose YES to switch existing preset:" msgstr "" +"\n" +"\n" +"Válassz IGEN-t a beállítás váltásához:" msgid "Printer Created Successfully" msgstr "Nyomtató sikeresen létrehozva" @@ -22623,7 +22845,7 @@ msgid "Global settings" msgstr "Globális beállítások" msgid "Video tutorial" -msgstr "" +msgstr "Videós útmutató" msgid "(Sync with printer)" msgstr "(Szinkronizálás a nyomtatóval)" @@ -22692,16 +22914,16 @@ msgid "Detection radius" msgstr "Érzékelési sugár" msgid "Selected" -msgstr "" +msgstr "Kiválasztva" msgid "Auto-generate" -msgstr "" +msgstr "Automatikus generálás" msgid "Generate brim ears using Max angle and Detection radius" -msgstr "" +msgstr "Hozzon létre peremfüleket a Max szög és az észlelési sugár használatával" msgid "Add or Select" -msgstr "" +msgstr "Hozzáadás vagy kiválasztás" msgid "" "Warning: The brim type is not set to \"painted\", the brim ears will not " @@ -22714,7 +22936,7 @@ msgid "Set the brim type of this object to \"painted\"" msgstr "Ennek az objektumnak a karimatípusát állítsd \"festett\" értékre" msgid "invalid brim ears" -msgstr "" +msgstr "érvénytelen peremfülek" msgid "Brim Ears" msgstr "Karimás Fülek" @@ -23004,6 +23226,10 @@ msgid "" "the surface quality of your overhangs? However, it can cause wall " "inconsistencies so use carefully!" msgstr "" +"Fordítás a párosan\n" +"Tudtad, hogy a Fordítás a párosan funkció jelentősen javíthatja " +"a túlnyúlások felületi minőségét? Azonban fal egyenetlenséget okozhat, " +"ezért óvatosan használjad!" #: resources/data/hints.ini: [hint:Cut Tool] msgid "" diff --git a/localization/i18n/pt_BR/OrcaSlicer_pt_BR.po b/localization/i18n/pt_BR/OrcaSlicer_pt_BR.po index 5f4ec0c0f68..67bda6a2775 100644 --- a/localization/i18n/pt_BR/OrcaSlicer_pt_BR.po +++ b/localization/i18n/pt_BR/OrcaSlicer_pt_BR.po @@ -128,7 +128,7 @@ msgid "On highlighted overhangs only" msgstr "Apenas em saliências destacadas" msgid "Erase all" -msgstr "" +msgstr "Apagar tudo" msgid "Highlight overhang areas" msgstr "Realçar áreas com saliências" @@ -355,10 +355,10 @@ msgid "Fixed step drag" msgstr "Arrasto de passo fixo" msgid "Context Menu" -msgstr "" +msgstr "Menu de Contexto" msgid "Toggle Auto-Drop" -msgstr "" +msgstr "Alternar Auto-Soltar" msgid "Single sided scaling" msgstr "Escala unilateral" @@ -512,10 +512,10 @@ msgid "Multiple" msgstr "Múltiplo" msgid "Count" -msgstr "" +msgstr "Contagem" msgid "Gap" -msgstr "" +msgstr "Vão" msgid "Spacing" msgstr "Espaçamento" @@ -558,7 +558,7 @@ msgid "Drag" msgstr "Arrastar" msgid "Move cut line" -msgstr "" +msgstr "Mover linha de corte" msgid "Draw cut line" msgstr "Desenhar linha de corte" @@ -855,7 +855,7 @@ msgid "Embossing actions" msgstr "Ações de relevo" msgid "Position on surface" -msgstr "" +msgstr "Posição na superfície" msgid "Emboss" msgstr "Relevo" @@ -885,7 +885,7 @@ msgid "Advanced" msgstr "Avançado" msgid "Reset all options except the text and operation" -msgstr "" +msgstr "Redefinir todas as opções, exceto o texto e a operação" msgid "" "The text cannot be written using the selected font. Please try choosing a " @@ -1797,16 +1797,16 @@ msgid "Info" msgstr "Informações" msgid "Loading printer & filament profiles" -msgstr "" +msgstr "Carregando perfis de impressora e filamento" msgid "Creating main window" -msgstr "" +msgstr "Criando a janela principal" msgid "Loading current preset" -msgstr "" +msgstr "Carregando a predefinição atual" msgid "Showing main window" -msgstr "" +msgstr "Mostrando a janela principal" msgid "" "The OrcaSlicer configuration file may be corrupted and cannot be parsed.\n" @@ -1881,6 +1881,9 @@ msgid "" "Please check your network connectivity\n" "(HTTP %u): %s" msgstr "" +"Falha ao conectar ao OrcaCloud.\n" +"Verifique sua conexão de rede\n" +"(HTTP %u): %s" #, c-format, boost-format msgid "" @@ -1888,9 +1891,12 @@ msgid "" "Please check your network connectivity\n" "(HTTP %u)" msgstr "" +"Falha ao conectar ao OrcaCloud.\n" +"Verifique sua conexão de rede\n" +"(HTTP %u)" msgid "Cloud Error" -msgstr "" +msgstr "Erro de nuvem" msgid "Retrieving printer information, please try again later." msgstr "Obtendo informações da impressora, tente novamente mais tarde." @@ -1948,14 +1954,14 @@ msgstr "Atualização da Política de Privacidade" #, c-format, boost-format msgid "your Bambu Cloud profile (user ID: \"%s\")" -msgstr "" +msgstr "seu perfil Bambu Cloud (ID de usuário: \"%s\")" msgid "your default profile" -msgstr "" +msgstr "seu perfil padrão" #, c-format, boost-format msgid "a user profile (folder: \"%s\")" -msgstr "" +msgstr "um perfil de usuário (pasta: \"%s\")" #, c-format, boost-format msgid "" @@ -1963,15 +1969,21 @@ msgid "" "Do you want to migrate them to your OrcaCloud profile?\n" "This will copy your presets so they are available under your new account." msgstr "" +"Foram encontradas predefinições de usuário existentes em %s.\n" +"Deseja migrá-las para o seu perfil do OrcaCloud?\n" +"Isso copiará suas predefinições para que estejam disponíveis em sua nova " +"conta." msgid "Migrate User Presets" -msgstr "" +msgstr "Migrar Predefinições de Usuário" #, c-format, boost-format msgid "" "Failed to migrate user presets:\n" "%s" msgstr "" +"Falha ao migrar predefinições de usuário:\n" +"%s" msgid "" "The number of user presets cached in the cloud has exceeded the upper limit, " @@ -1989,29 +2001,32 @@ msgid "" "reduce the preset size by removing custom configurations or use it locally " "only." msgstr "" +"O conteúdo da predefinição é muito grande para ser sincronizado com a nuvem " +"(excede 1 MB). Reduza o tamanho da predefinição removendo configurações " +"personalizadas ou use-o apenas localmente." #, c-format, boost-format msgid "%s updated from %s to %s" -msgstr "" +msgstr "%s atualizado de %s para %s" #, c-format, boost-format msgid "%s has been downloaded." -msgstr "" +msgstr "%s foi baixado." #, c-format, boost-format msgid "Bundle %s is no longer available." -msgstr "" +msgstr "O pacote %s não está mais disponível." #, c-format, boost-format msgid "Bundle %s access is unauthorized." -msgstr "" +msgstr "Acesso ao pacote %s não é autorizado." msgid "Loading user preset" msgstr "Carregando predefinição de usuário" #, c-format, boost-format msgid "%s has been removed." -msgstr "" +msgstr "%s foi removido." msgid "Switching application language" msgstr "Alternando o idioma do aplicativo" @@ -2258,7 +2273,7 @@ msgid "Support Enforcer" msgstr "Reforço de Suporte" msgid "Change part type" -msgstr "" +msgstr "Mudar tipo de peça" msgid "Set as an individual object" msgstr "Definir como objeto individual" @@ -2276,10 +2291,10 @@ msgid "Printable" msgstr "Imprimível" msgid "Auto Drop" -msgstr "" +msgstr "Soltura Automática" msgid "Automatically drops the selected object to the build plate" -msgstr "" +msgstr "Solta automaticamente o objeto selecionado na placa de impressão" msgid "Fix model" msgstr "Corrigir modelo" @@ -2488,7 +2503,7 @@ msgid "Reload all from disk" msgstr "Recarregar tudo do disco" msgid "Auto Rotate" -msgstr "Auto Rotação" +msgstr "Rotação Automática" msgid "Auto rotate current plate" msgstr "Rotacionar automaticamente a placa atual" @@ -2561,7 +2576,7 @@ msgid "Set Filament for selected items" msgstr "Definir Filamento para itens selecionados" msgid "Automatically snaps the selected object to the build plate" -msgstr "" +msgstr "Encaixa automaticamente o objeto selecionado na placa de impressão" msgid "Unlock" msgstr "Desbloquear" @@ -2852,7 +2867,7 @@ msgid "Brim" msgstr "Borda" msgid "Object/Part Settings" -msgstr "" +msgstr "Configurações de Objeto/Peça" msgid "Reset parameter" msgstr "Redefinir parâmetro" @@ -3562,6 +3577,13 @@ msgid "" "enhancements. Each project carried the work of its predecessors forward, " "crediting those who came before." msgstr "" +"O fatiamento de código aberto se baseia em uma tradição de colaboração e " +"atribuição. O Slic3r, criado por Alessandro Ranellucci e a comunidade " +"RepRap, lançou as fundações. O PrusaSlicer, da Prusa Research, se baseou " +"nesse trabalho, o Bambu Studio foi derivado do PrusaSlicer, e o SuperSlicer " +"o estendeu com melhorias impulsionadas pela comunidade. Cada projeto deu " +"continuidade ao trabalho de seus predecessores, dando crédito àqueles que " +"vieram antes." msgid "" "OrcaSlicer began in that same spirit, drawing from PrusaSlicer, BambuStudio, " @@ -3569,12 +3591,20 @@ msgid "" "introducing advanced calibration tools, precise wall and seam control and " "hundreds of other features." msgstr "" +"O OrcaSlicer começou com esse mesmo espírito, inspirando-se no PrusaSlicer, " +"Bambu Studio, SuperSlicer e CuraSlicer. Mas desde então, cresceu muito além " +"de suas origens, introduzindo ferramentas avançadas de calibração, controle " +"preciso de paredes e costuras e centenas de outros recursos." msgid "" "Today, OrcaSlicer is the most widely used and actively developed open-source " "slicer in the 3D printing community. Many of its innovations have been " "adopted by other slicers, making it a driving force for the entire industry." msgstr "" +"Atualmente, o OrcaSlicer é o fatiador de código aberto mais utilizado e " +"ativamente desenvolvido na comunidade de impressão 3D. Muitas de suas " +"inovações foram adotadas por outros fatiadores, tornando-o uma força motriz " +"para toda a indústria." msgid "Version" msgstr "Versão" @@ -5108,7 +5138,7 @@ msgid "Color: " msgstr "Cor: " msgid "Acceleration: " -msgstr "" +msgstr "Aceleração: " msgid "Jerk: " msgstr "" @@ -5273,7 +5303,7 @@ msgid "Actual Speed (mm/s)" msgstr "Velocidade Real (mm/s)" msgid "Acceleration (mm/s²)" -msgstr "" +msgstr "Aceleração (mm/s²)" msgid "Jerk (mm/s)" msgstr "" @@ -5309,7 +5339,7 @@ msgid "Filament change times" msgstr "Quantidade de trocas de filamento" msgid "Tool changes" -msgstr "" +msgstr "Trocas de ferramenta" msgid "Color change" msgstr "Mudança de cor" @@ -5401,10 +5431,10 @@ msgid "Sequence" msgstr "Sequência" msgid "Object Selection" -msgstr "" +msgstr "Seleção de Objeto" msgid "Part Selection" -msgstr "" +msgstr "Seleção de Peça" msgid "number keys" msgstr "teclas numéricas" @@ -6020,13 +6050,13 @@ msgid "Export" msgstr "Exportar" msgid "Sync Presets" -msgstr "" +msgstr "Sincronizar Predefinições" msgid "Pull and apply the latest presets from OrcaCloud" -msgstr "" +msgstr "Baixar e aplicar as predefinições mais recentes do OrcaCloud" msgid "You must be logged in to sync presets from cloud." -msgstr "" +msgstr "Você precisa estar logado para sincronizar as predefinições da nuvem." msgid "Quit" msgstr "Sair" @@ -6153,10 +6183,10 @@ msgid "View" msgstr "Visualizar" msgid "Preset Bundle" -msgstr "" +msgstr "Pacote de Predefinições" msgid "Syncing presets from cloud…" -msgstr "" +msgstr "Sincronizando predefinições da nuvem…" msgid "Help" msgstr "Ajuda" @@ -6198,7 +6228,7 @@ msgid "VFA" msgstr "VFA" msgid "Calibration Guide" -msgstr "" +msgstr "Guia de Calibração" msgid "&Open G-code" msgstr "&Abrir G-code" @@ -6313,6 +6343,11 @@ msgid "" "2. The Filament presets\n" "3. The Printer presets" msgstr "" +"Você deseja sincronizar seus dados pessoais da OrcaCloud?\n" +"Isso inclui as seguintes informações:\n" +"1. As predefinições de Processo\n" +"2. As predefinições de Filamento\n" +"3. As predefinições de Impressora" msgid "Synchronization" msgstr "Sincronização" @@ -6336,6 +6371,8 @@ msgid "" "The player is not loaded because the GStreamer GTK video sink is missing or " "failed to initialize." msgstr "" +"O reprodutor não foi carregado porque o receptor de vídeo GTK do GStreamer " +"está ausente ou não pôde ser inicializado." msgid "Please confirm if the printer is connected." msgstr "Por favor, confirme se a impressora está conectada." @@ -7241,10 +7278,10 @@ msgid "Model file downloaded." msgstr "Arquivo do modelo baixado." msgid "Shared profiles may be available for this printer." -msgstr "" +msgstr "Perfis compartilhadas podem estar disponíveis para essa impressora." msgid "Browse shared profiles" -msgstr "" +msgstr "Procurar perfis compartilhados" msgid "Serious warning:" msgstr "Aviso sério:" @@ -7741,7 +7778,7 @@ msgid "Load 3MF" msgstr "Carregar 3MF" msgid "BambuStudio Project" -msgstr "" +msgstr "Projeto Bambu Studio" msgid "The 3MF is not supported by OrcaSlicer, loading geometry data only." msgstr "" @@ -7757,9 +7794,13 @@ msgstr "" msgid "" "The 3MF file was generated by an older version, loading geometry data only." msgstr "" +"O arquivo 3MF foi gerado por uma versão antiga, carregando apenas dados de " +"geometria." msgid "The 3MF file was generated by BambuStudio, loading geometry data only." msgstr "" +"O arquivo 3MF foi gerado pelo Bambu Studio, carregando apenas dados de " +"geometria." msgid "" "This project was created with an OrcaSlicer 2.3.1-alpha and uses infill " @@ -7802,16 +7843,22 @@ msgid "" "The 3MF was created by BambuStudio (version %s), which is newer than the " "compatible version %s. Found unrecognized settings:" msgstr "" +"O arquivo 3MF foi criado pelo Bambu Studio (versão %s), que é mais recente " +"que a versão compatível %s. Configurações não reconhecidas encontradas:" #, c-format, boost-format msgid "" "The 3MF was created by BambuStudio (version %s), which is newer than the " "compatible version %s. Some settings may not be fully compatible." msgstr "" +"O arquivo 3MF foi criado pelo Bambu Studio (versão %s), que é mais recente " +"que a versão compatível %s. Algumas configurações podem não ser compatíveis." msgid "" "The 3MF was created by BambuStudio. Some settings may differ from OrcaSlicer." msgstr "" +"O arquivo 3MF foi criado pelo Bambu Studio. Algumas configurações podem ser " +"diferentes do OrcaSlicer." msgid "Invalid values found in the 3MF:" msgstr "Valores inválidos encontrados no 3MF:" @@ -8809,25 +8856,28 @@ msgid "If enabled, reverses the direction of zoom with mouse wheel." msgstr "Se ativo, inverte a direção de zoom com a roda do mouse." msgid "Pan" -msgstr "" +msgstr "Mover" msgid "Left Mouse Drag" -msgstr "" +msgstr "Arrastar com Mouse Esquerdo" msgid "Set the action that dragging the left mouse button should perform." msgstr "" +"Defina a ação que arrastar com o botão esquerdo do mouse deve executar." msgid "Middle Mouse Drag" -msgstr "" +msgstr "Arrastar com Mouse do Meio" msgid "Set the action that dragging the middle mouse button should perform." msgstr "" +"Defina a ação que arrastar com o botão do meio do mouse deve executar." msgid "Right Mouse Drag" -msgstr "" +msgstr "Arrastar com Mouse Direito" msgid "Set the action that dragging the right mouse button should perform." msgstr "" +"Defina a ação que arrastar com o botão direito do mouse deve executar." msgid "Clear my choice on..." msgstr "Limpar minha escolha em..." @@ -8857,10 +8907,10 @@ msgid "Graphics" msgstr "" msgid "Anti-aliasing" -msgstr "" +msgstr "Antisserrilhamento" msgid "MSAA Multiplier" -msgstr "" +msgstr "Multiplicador MSAA" msgid "" "Set the Multi-Sample Anti-Aliasing level.\n" @@ -8872,12 +8922,20 @@ msgid "" "\n" "Requires application restart." msgstr "" +"Define o nível de Antisserrilhamento Multiamostra.\n" +"Valores mais altos resultam em bordas mais suaves, mas o impacto no " +"desempenho é exponencial.\n" +"Valores mais baixos melhoram o desempenho, ao custo de bordas serrilhadas.\n" +"Se desativado, recomenda-se ativar o FXAA para reduzir as bordas " +"serrilhadas com impacto mínimo no desempenho.\n" +"\n" +"Requer reinicialização do aplicativo." msgid "Disabled" msgstr "Desativado" msgid "FXAA post-processing" -msgstr "" +msgstr "Pós-processamento FXAA" msgid "" "Applies Fast Approximate Anti-Aliasing as a screen-space pass.\n" @@ -8885,15 +8943,21 @@ msgid "" "\n" "Takes effect immediately." msgstr "" +"Aplica o Antisserrilhamento Aproximado Rápido como um passo de espaço de " +"tela.\n" +"Útil para desativar ou reduzir a configuração MSAA para melhorar o " +"desempenho.\n" +"\n" +"Entra em vigor imediatamente." msgid "FPS" -msgstr "" +msgstr "FPS" msgid "FPS cap" -msgstr "" +msgstr "Limite de FPS" msgid "(0 = unlimited)" -msgstr "" +msgstr "(0 = ilimitado)" msgid "" "Limits viewport frame rate to reduce GPU load and power usage.\n" @@ -8925,15 +8989,17 @@ msgid "Test" msgstr "Testar" msgid "Cloud Providers" -msgstr "" +msgstr "Provedores de Nuvem" msgid "Enable Bambu Cloud" -msgstr "" +msgstr "Habilitar Bambu Cloud" msgid "" "Allow logging into Bambu Cloud alongside Orca Cloud. When enabled, a Bambu " "login section appears on the homepage." msgstr "" +"Permitir o login no Bambu Cloud juntamente com o OrcaCloud. Quando ativado, " +"uma seção de login do Bambu aparece na página inicial." msgid "Update & sync" msgstr "Atualizar e sincronizar" @@ -9136,7 +9202,7 @@ msgid "Rotate view" msgstr "Rotacionar vista" msgid "Pan view" -msgstr "Movimentar vista" +msgstr "Mover vista" msgid "Zoom view" msgstr "Aproximar vista" @@ -10636,7 +10702,7 @@ msgid "Normal" msgstr "Normal" msgid "Resonance Compensation" -msgstr "" +msgstr "Compensação de Ressonância" msgid "Resonance Avoidance Speed" msgstr "Velocidade de Prevenção de Ressonância" @@ -10648,12 +10714,14 @@ msgid "" "The frequency of the anti-vibration signal will correspond to the natural " "frequency of the frame." msgstr "" +"A frequência do sinal antivibração corresponderá à frequência natural da " +"estrutura." msgid "Damping" -msgstr "" +msgstr "Amortecimento" msgid "Damping ratio for the input shaping filter." -msgstr "" +msgstr "Taxa de amortecimento para o filtro de modelagem de entrada." msgid "Speed limitation" msgstr "Limitação de velocidade" @@ -10781,29 +10849,42 @@ msgid "" " %s first layer %d %s, other layers %d %s\n" " %s max delta %d %s, current delta %d %s\n" msgstr "" +" - %s:\n" +" %s primeira camada %d %s, outras camads %d %s\n" +" %s delta máx %d %s, delta atual %d %s\n" msgid "" "Some first-layer and other-layer temperature pairs exceed safety limits.\n" msgstr "" +"Alguns pares de temperaturas entre a primeira camada e outras camadas " +"excedem os limites de segurança.\n" msgid "" "\n" "Invalid pairs:\n" msgstr "" +"\n" +"Pares inválidos:\n" msgid "" "\n" "You can go back to edit values, or continue if this is intentional." msgstr "" +"\n" +"Você pode voltar para editar os valores ou continuar se isso for " +"intencional." msgid "" "\n" "\n" "Continue anyway?" msgstr "" +"\n" +"\n" +"Continuar mesmo assim?" msgid "Temperature Safety Check" -msgstr "" +msgstr "Verificação de Segurança de Temperatura" msgid "Continue" msgstr "Continue" @@ -10812,7 +10893,7 @@ msgid "Back" msgstr "Atrás" msgid "Don't warn again for this preset" -msgstr "" +msgstr "Não avisar novamente para essa predifinição" #, c-format, boost-format msgid "Left: %s" @@ -10857,7 +10938,7 @@ msgid "Discard" msgstr "Descartar" msgid "the new profile" -msgstr "" +msgstr "o novo perfil" #, boost-format msgid "" @@ -10866,6 +10947,10 @@ msgid "" "discarding any changes made in\n" "\"%2%\"." msgstr "" +"Trocar para\n" +"\"%1%\"\n" +"descartando qualquer alteração feita em\n" +"\"%2%\"." #, boost-format msgid "" @@ -10874,6 +10959,10 @@ msgid "" "will be transferred to\n" "\"%2%\"." msgstr "" +"Todas as definições \"Novo Valor\" modificadas em\n" +"\"%1%\"\n" +"serão transferidos para\n" +"\"%2%\"." #, boost-format msgid "" @@ -10881,6 +10970,9 @@ msgid "" "\"%1%\"\n" "and \"%2%\" will open without any changes." msgstr "" +"Todas as definições \"Novo Valor\" foram salvas em\n" +"\"%1%\"\n" +"e \"%2%\" será aberto sem nenhuma alteração." msgid "Click the right mouse button to display the full text." msgstr "Clique com o botão direito do mouse para exibir o texto completo." @@ -11470,7 +11562,7 @@ msgid "Login" msgstr "Entrar" msgid "Login failed. Please try again." -msgstr "" +msgstr "Falha no login. Tente novamente." msgid "[Action Required] " msgstr "[Ação Necessária] " @@ -11509,16 +11601,16 @@ msgid "Global shortcuts" msgstr "Atalhos globais" msgid "Pan View" -msgstr "" +msgstr "Mover Vista" msgid "Rotate View" -msgstr "" +msgstr "Rotacionar Vista" msgid "Middle mouse button" -msgstr "" +msgstr "Botão do meio do mouse" msgid "Zoom View" -msgstr "" +msgstr "Aproximar Vista" msgid "" "Auto orients selected objects or all objects. If there are selected objects, " @@ -11739,7 +11831,7 @@ msgid "New version of Orca Slicer" msgstr "Nova versão do OrcaSlicer" msgid "Check on Github" -msgstr "" +msgstr "Verifique no GitHub" msgid "Skip this Version" msgstr "Pular esta versão" @@ -12162,16 +12254,24 @@ msgid "" "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." msgid "" "Invalid recommended nozzle temperature range. The lower bound must be lower " "than the upper bound." msgstr "" +"Faixa de temperatura do bico recomendada inválida. O limite inferior deve " +"ser menor que o limite superior." msgid "" "If you still want to print, you can enable the option in Preferences / " "Control / Slicing / Remove mixed temperature restriction." msgstr "" +"Se ainda assim desejar imprimir, você pode ativar a opção em Preferências / " +"Controle / Fatiamento / Remover restrição de temperatura mista." msgid "No extrusions under current settings." msgstr "Nenhuma extrusão com as configurações atuais." @@ -13576,7 +13676,7 @@ msgstr "" "remoção da borda." msgid "Brim flow ratio" -msgstr "" +msgstr "Taxa de fluxo em borda" msgid "" "This factor affects the amount of material for brims.\n" @@ -13586,6 +13686,13 @@ msgid "" "\n" "Note: The resulting value will not be affected by the first-layer flow ratio." msgstr "" +"Este fator afeta a quantidade de material para as bordas.\n" +"\n" +"O fluxo real da borda é calculado multiplicando-se este valor pela " +"taxa de fluxo do filamento e, se definida, pela taxa de fluxo do objeto.\n" +"\n" +"Nota: o valor resultante não será afetado pela taxa de fluxo da primeira " +"camada." msgid "Brim follows compensated outline" msgstr "Borda segue contorno compensado" @@ -13608,12 +13715,14 @@ msgstr "" "e pode fazer com que o borda se funda com as camadas superiores." msgid "Combine brims" -msgstr "" +msgstr "Combinar bordas" msgid "" "Combine multiple brims into one when they are close to each other. This can " "improve brim adhesion." msgstr "" +"Combine várias bordas em uma só quando estiverem próximas umas das outras. " +"Isso pode melhorar a adesão das bordas." msgid "Brim ears" msgstr "Orelhas da borda" @@ -15965,7 +16074,7 @@ msgstr "" "Defina como 0 para desativar." msgid "Minimum non-zero part cooling fan speed" -msgstr "" +msgstr "Velocidade mínima não-zero da ventoinha de resfriamento da peça" msgid "" "Some part-cooling fans cannot start spinning when commanded below a certain " @@ -15984,9 +16093,28 @@ msgid "" "below the one you know it can actually spool at.\n" "Set to 0 to deactivate." msgstr "" +"Algumas ventoinhas de resfriamento de componentes não conseguem iniciar a " +"rotação quando comandadas abaixo de um determinado ciclo de trabalho PWM. " +"Quando definido acima de 0, qualquer comando de ventoinha de resfriamento de " +"componentes diferente de zero será elevado para pelo menos essa porcentagem, " +"para que a ventoinha inicie de forma confiável. Um comando de ventoinha de 0 " +"(ventoinha desligada) é sempre atendido exatamente. Essa limitação é " +"aplicada após cada outro cálculo da ventoinha (rampa da primeira camada, " +"interpolação do tempo da camada, substituições de saliência/ponte/interface " +"de suporte/alisamento), para que o dimensionamento ainda opere dentro do " +"intervalo [este valor, 100%].\n" +"Se o seu firmware já desativa a ventoinha abaixo de um limite (por exemplo, " +"[fan] off_below: 0.10 do Klipper desliga a ventoinha sempre que o ciclo de " +"trabalho comandado for inferior a 10%), esta opção e o limite do firmware " +"devem idealmente ser definidos com o mesmo valor. A correspondência entre " +"eles (por exemplo, off_below: 0.10 no Klipper e 10% aqui) garante que o " +"fatiador nunca emita um valor diferente de zero que o firmware emitiria a " +"velocidade cai silenciosamente e a ventoinha nunca recebe um valor abaixo " +"daquele que você sabe que ela pode realmente atingir.\n" +"Defina como 0 para desativar." msgid "%" -msgstr "" +msgstr "%" msgid "Time cost" msgstr "Custo de tempo" @@ -16455,16 +16583,17 @@ msgid "Use a fixed absolute angle for ironing." msgstr "Utilize um ângulo fixo absoluto para o alisamento." msgid "Ironing expansion" -msgstr "" +msgstr "Expansão de alisamento" msgid "Expand or contract the ironing area." -msgstr "" +msgstr "Expande ou contrai a área de alisamento." msgid "Z contouring enabled" -msgstr "" +msgstr "Contorno em Z habilitado" msgid "Enable Z-layer contouring (aka Z-layer anti-aliasing)." msgstr "" +"Habilitar o contorno da camada Z (antisserrilhamento da camada Z)." msgid "Minimize wall height angle" msgstr "" @@ -16479,10 +16608,11 @@ msgid "°" msgstr "°" msgid "Don't alternate fill direction" -msgstr "" +msgstr "Não alternar direção de preenchimento" msgid "Disable alternating fill direction when using Z contouring." msgstr "" +"Desative a alternância da direção de preenchimento ao usar o contorno em Z." msgid "Minimum z height" msgstr "" @@ -16743,7 +16873,7 @@ msgid "DAA" msgstr "" msgid "X" -msgstr "" +msgstr "X" msgid "" "Resonant frequency for the X axis input shaper.\n" @@ -16751,15 +16881,22 @@ msgid "" "To disable input shaping, use the Disable type.\n" "RRF: X and Y values are equal." msgstr "" +"Frequência de ressonância para o modelador de entrada do eixo X.\n" +"Zero usará a frequência do firmware.\n" +"Para desativar o modelador de entrada, use o tipo Desativar.\n" +"RRF: Os valores de X e Y são iguais." msgid "Y" -msgstr "" +msgstr "Y" msgid "" "Resonant frequency for the Y axis input shaper.\n" "Zero will use the firmware frequency.\n" "To disable input shaping, use the Disable type." msgstr "" +"Frequência de ressonância para o modelador de entrada do eixo Y.\n" +"Zero usará a frequência do firmware.\n" +"Para desativar a modelagem de entrada, use o tipo Desativar." msgid "" "Damping ratio for the X axis input shaper.\n" @@ -16767,12 +16904,19 @@ msgid "" "To disable input shaping, use the Disable type.\n" "RRF: X and Y values are equal." msgstr "" +"Taxa de amortecimento para o modelador de entrada do eixo X.\n" +"Zero usará a taxa de amortecimento do firmware.\n" +"Para desativar o modelador de entrada, use o tipo Desativar.\n" +"RRF: Os valores de X e Y são iguais." msgid "" "Damping ratio for the Y axis input shaper.\n" "Zero will use the firmware damping ratio.\n" "To disable input shaping, use the Disable type." msgstr "" +"Taxa de amortecimento para o modelador de entrada do eixo Y.\n" +"O valor zero usará a taxa de amortecimento do firmware.\n" +"Para desativar o modelador de entrada, use o tipo Desativar." msgid "" "Part cooling fan speed may be increased when auto cooling is enabled. This " @@ -16908,10 +17052,12 @@ msgstr "" "para usar esta função. Comando G-code: M106 P2 S(0-255)" msgid "For the first" -msgstr "" +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." msgid "" "Auxiliary fan speed will be ramped up linearly from layer \"For the first\" " @@ -16920,10 +17066,18 @@ msgid "" "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." 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." msgid "" "The lowest printable layer height for the extruder. Used to limit the " @@ -17153,12 +17307,14 @@ msgstr "" "configurações do OrcaSlicer lendo variáveis de ambiente." msgid "Change extrusion role G-code (process)" -msgstr "" +msgstr "G-code de mudança de tipo de extrusão (processo)" msgid "" "This G-code is inserted when the extrusion role is changed. It runs after " "the machine and filament extrusion role G-code." msgstr "" +"Este G-code é inserido quando a função de extrusão é trocada. Ele é " +"executado após o G-code de máquina e do tipo de extrusão de filamento." msgid "Printer type" msgstr "Tipo de impressora" @@ -18017,7 +18173,7 @@ msgid "Enable filament ramming" msgstr "Habilitar moldeamento de filamento" msgid "Tool change on wipe tower" -msgstr "" +msgstr "Troca de ferramenta na torre de limpeza" msgid "" "Force the toolhead to travel to the wipe tower before issuing the tool " @@ -18028,6 +18184,14 @@ msgid "" "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 limpeza 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 limpeza 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 limpeza." msgid "No sparse layers (beta)" msgstr "Sem camadas esparsas (beta)" @@ -18648,12 +18812,13 @@ msgid "This G-code is inserted when the extrusion role is changed." msgstr "Esse G-code é inserido quando o tipo de extrusão é alterado." msgid "Change extrusion role G-code (filament)" -msgstr "" +msgstr "G-code de mudança de tipo de extrusão (filamento)" msgid "" "This G-code is inserted when the extrusion role is changed for the active " "filament." msgstr "" +"Este G-code é inserido quando o tipo de extrusão do filamento ativo é alterada." msgid "" "Line width for top surfaces. If expressed as a %, it will be computed over " @@ -19254,15 +19419,18 @@ msgstr "" "superfícies superiores de uma única parede estiverem habilitadas." msgid "Maximum wall resolution" -msgstr "" +msgstr "Resolução máxima de parede" msgid "" "This value determines the smallest wall line segment length in mm. The " "smaller you set this value, the more accurate and precise the walls will be." msgstr "" +"Este valor determina o menor comprimento do segmento de linha da parede em " +"milímetros. Quanto menor for este valor, mais exatas e precisas serão as " +"paredes." msgid "Maximum wall deviation" -msgstr "" +msgstr "Desvio máximo de parede" msgid "" "The maximum deviation allowed when reducing the resolution for the 'Maximum " @@ -19271,6 +19439,11 @@ msgid "" "'Maximum wall resolution', so if the two conflict, 'Maximum wall deviation' " "takes precedence." msgstr "" +"O desvio máximo permitido ao reduzir a resolução para a configuração " +"'Resolução máxima de parede'. Se você aumentar esse valor, a impressão ficará " +"menos precisa, mas o G-code será menor. 'Desvio máximo de parede' limita a " +"'Resolução máxima de parede', portanto, se houver conflito entre os dois, " +"'Desvio máximo de parede' terá prioridade." msgid "First layer minimum wall width" msgstr "Largura mínima de parede da primeira camada" @@ -20044,7 +20217,7 @@ msgid "Generating infill toolpath" msgstr "Gerando caminho da ferramenta de preenchimento" msgid "Z contouring" -msgstr "" +msgstr "Contorno em Z" msgid "Detect overhangs for auto-lift" msgstr "Detectar saliências para levantamento automático" @@ -20663,6 +20836,10 @@ msgid "" "temperature range of the other filaments. Otherwise, nozzle clogging or " "printer damage may occur." msgstr "" +"As temperaturas de bico selecionadas são incompatíveis. Para impressão com " +"múltiplos materiais, 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." msgid "Sync AMS and nozzle information" msgstr "Sincronizar informações do AMS e do bico" @@ -21088,25 +21265,25 @@ msgid "NOTE: High values may cause Layer shift (>%s)" msgstr "NOTA: Valores altos podem causar deslocamento de camada (>%s)" msgid "Flow Ratio Calibration" -msgstr "" +msgstr "Calibração de Taxa de Fluxo" msgid "Calibration Test Type" -msgstr "" +msgstr "Tipo de Teste de Calibração" msgid "Pass 1 (Coarse)" -msgstr "" +msgstr "Passo 1 (Grosso)" msgid "Pass 2 (Fine)" -msgstr "" +msgstr "Passo 2 (Fino)" msgid "YOLO (Recommended)" msgstr "YOLO (Recomendado)" msgid "YOLO (Perfectionist)" -msgstr "" +msgstr "YOLO (Perfeccionista)" msgid "Top Surface Pattern" -msgstr "" +msgstr "Padrão de Superfície Superior" msgid "Send G-code to printer host" msgstr "Enviar G-code para o host da impressora" @@ -21565,12 +21742,18 @@ msgid "" "\n" "Available nozzle profiles for this printer:" msgstr "" +"\n" +"\n" +"Perfis de bico disponíveis paar essa impressora:" msgid "" "\n" "\n" "Choose YES to switch existing preset:" msgstr "" +"\n" +"\n" +"Escolha SIM para trocar a predefinição existente:" msgid "Printer Created Successfully" msgstr "Impressora criada com sucesso" @@ -22712,7 +22895,7 @@ msgid "Global settings" msgstr "Definições globais" msgid "Video tutorial" -msgstr "" +msgstr "Tutorial em vídeo" msgid "(Sync with printer)" msgstr "(Sinc. com impressora)" @@ -22784,16 +22967,16 @@ msgid "Detection radius" msgstr "Raio de detecção" msgid "Selected" -msgstr "" +msgstr "Selecionado" msgid "Auto-generate" -msgstr "" +msgstr "Geração automática" msgid "Generate brim ears using Max angle and Detection radius" -msgstr "" +msgstr "Gerar orelhas de borda usando o Ângulo Máximo e o Raio de Detecção" msgid "Add or Select" -msgstr "" +msgstr "Adicionar ou Selecionar" msgid "" "Warning: The brim type is not set to \"painted\", the brim ears will not " @@ -22806,7 +22989,7 @@ msgid "Set the brim type of this object to \"painted\"" msgstr "Definir o tipo de borda deste objeto como \"pintada\"" msgid "invalid brim ears" -msgstr "" +msgstr "orelhas da borda iválidas" msgid "Brim Ears" msgstr "Orelhas da Borda" @@ -23559,9 +23742,9 @@ msgstr "" #~ msgstr "" #~ "Você deseja sincronizar seus dados pessoais da Bambu Cloud?\n" #~ "Isso inclui as seguintes informações:\n" -#~ "1. Predefinições de Processo\n" -#~ "2. Predefinições de Filamento\n" -#~ "3. Predefinições de Impressora" +#~ "1. As predefinições de Processo\n" +#~ "2. As predefinições de Filamento\n" +#~ "3. As predefinições de Impressora" #~ msgid "Show/Hide advanced parameters" #~ msgstr "Mostrar/Ocultar parâmetros avançados" @@ -25175,12 +25358,6 @@ msgstr "" #~ "O tamanho do arquivo excede o limite de envio de 100MB. Por favor, envie " #~ "seu arquivo através do painel." -#~ msgid "Please input a valid value (K in 0~0.3)" -#~ msgstr "Por favor insira um valor válido (K entre 0~0.3)" - -#~ msgid "Please input a valid value (K in 0~0.3, N in 0.6~2.0)" -#~ msgstr "Por favor insira um valor válido (K entre 0~0.3, N entre 0.6~2.0))" - #~ msgid "PrintingPause" #~ msgstr "Pausa na Impressão" diff --git a/resources/handy_models/OrcaCube_v2.3mf b/resources/handy_models/OrcaCube_v2.3mf deleted file mode 100644 index ede7d884b91..00000000000 Binary files a/resources/handy_models/OrcaCube_v2.3mf and /dev/null differ diff --git a/resources/handy_models/OrcaCube_v2.drc b/resources/handy_models/OrcaCube_v2.drc new file mode 100644 index 00000000000..799dd8a9fab Binary files /dev/null and b/resources/handy_models/OrcaCube_v2.drc differ diff --git a/resources/handy_models/OrcaPlug_v2.drc b/resources/handy_models/OrcaPlug_v2.drc new file mode 100644 index 00000000000..c887aba0465 Binary files /dev/null and b/resources/handy_models/OrcaPlug_v2.drc differ diff --git a/resources/handy_models/OrcaSliced.3mf b/resources/handy_models/OrcaSliced.3mf new file mode 100644 index 00000000000..d60a6d31e32 Binary files /dev/null and b/resources/handy_models/OrcaSliced.3mf differ diff --git a/resources/handy_models/OrcaSliced.drc b/resources/handy_models/OrcaSliced.drc new file mode 100644 index 00000000000..1dc9072b356 Binary files /dev/null and b/resources/handy_models/OrcaSliced.drc differ diff --git a/resources/plugins/elegoolink/web/lan_service_web/index.html b/resources/plugins/elegoolink/web/lan_service_web/index.html index e552aa1e8ef..b3b8242ddfe 100644 --- a/resources/plugins/elegoolink/web/lan_service_web/index.html +++ b/resources/plugins/elegoolink/web/lan_service_web/index.html @@ -1,4 +1,22 @@ -ELEGOO-Create The FutureELEGOO-Create The Future
\ No newline at end of file + `),this._encryptionMode=e,this._encryptionSecret=t,n&&(this._encryptionSalt=_d(n))}async renewToken(e){if(pi(e,"token",1,2047),!this._key||!this._joinInfo)throw new xe(Q.INVALID_OPERATION,"renewToken should not be called before user join");const t=this._key;this._key=e,this._joinInfo&&(this._joinInfo.token=e);const n=await this._renewTokenMutex.lock();try{if(he("USE_NEW_TOKEN")){D.debug("[".concat(this._clientId,"] start renew token with ticket from unilbs"));const r=await jBe(this._joinInfo,this._axiosCancelSource.token,this._config.httpRetryConfig||jr);D.debug("[".concat(this._clientId,"] get ticket from unilbs success")),await this._gateway.renewToken({token:e,ticket:r})}else D.debug("[".concat(this._clientId,"] start renew token without ticket")),await this._gateway.renewToken({token:e});D.debug("[".concat(this._clientId,"] renewToken success"))}catch(r){throw this._key=t,this._joinInfo.token=t,D.error("[".concat(this._clientId,"] renewToken failed"),r.toString()),r}finally{n()}}enableAudioVolumeIndicator(){this._audioVolumeIndicationInterval?D.warning("you have already enabled audio volume indicator!"):this._audioVolumeIndicationInterval=window.setInterval((()=>{const e=this._p2pChannel.getAudioLevels();this.safeEmit($t.VOLUME_INDICATOR,e)}),he("AUDIO_VOLUME_INDICATION_INTERVAL")||2e3)}getRTCStats(){const e=this._statsCollector.getRTCStats(),t=this._gateway.getInChannelInfo();return e.Duration=Math.round(t.duration/1e3),e}async startLiveStreaming(e,t){if(!t){if(this.codec!=="h264")throw new xe(Q.LIVE_STREAMING_INVALID_RAW_STREAM,"raw streaming is only support h264");if(!this._p2pChannel.hasLocalMedia())throw new xe(Q.LIVE_STREAMING_INVALID_RAW_STREAM,"can not find stream to raw streaming")}if(this._liveRawStreamingClient&&this._liveRawStreamingClient.hasUrl(e)||this._liveTranscodeStreamingClient&&this._liveTranscodeStreamingClient.hasUrl(e))throw new xe(Q.LIVE_STREAMING_TASK_CONFLICT);const n=t?au.TRANSCODE:au.RAW;return this._createLiveStreamingClient(n).startLiveStreamingTask(e,n)}setLiveTranscoding(e){return this._createLiveStreamingClient(au.TRANSCODE).setTranscodingConfig(e)}async stopLiveStreaming(e){const t=[this._liveRawStreamingClient,this._liveTranscodeStreamingClient].filter((n=>n&&n.hasUrl(e)));if(!t.length)throw new xe(Q.INVALID_PARAMS,"can not find live streaming url to stop");await ot.all(t.map((n=>n&&n.stopLiveStreamingTask(e))))}async startChannelMediaRelay(e){IU(e),await this._createChannelMediaRelayClient().startChannelMediaRelay(e)}async updateChannelMediaRelay(e){IU(e),await this._createChannelMediaRelayClient().updateChannelMediaRelay(e)}async stopChannelMediaRelay(){await this._createChannelMediaRelayClient().stopChannelMediaRelay(),this._statsCollector.onStatsChanged&&(this._statsCollector.onStatsChanged=void 0)}async sendStreamMessage(e){var t;let n=!(arguments.length>1&&arguments[1]!==void 0)||arguments[1];if(!this._joinInfo)throw new xe(Q.INVALID_OPERATION,"can not send data stream, not joined");if((typeof e=="string"||e instanceof Uint8Array)&&(e={payload:e}),typeof e.payload=="string"){const i=new TextEncoder;e.payload=i.encode(e.payload)}let r=!1;if(this._encryptDataStream&&this._encryptDataStreamIv&&this._encryptDataStreamKey&&window.crypto.subtle&<(t=["aes-128-gcm2","aes-256-gcm2"]).call(t,this._encryptionMode)&&(r=!0,e.payload=await(async function(i,o,s){var a;const c=vc(a=Array.from(s)).call(a,((g,m)=>g+m),0),l={serverTs:0,seq:rNe++,length:s.length,checkSum:c},u=new Uint8Array(hM(c,2)),d=new ArrayBuffer(Yf),f=new DataView(d);f.setUint32(0,l.serverTs),f.setUint16(4,l.seq),f.setUint16(6,l.length),f.setUint16(8,l.checkSum);const h=16-s.length%16;s=lM(s,new Uint8Array(h));const p=await window.crypto.subtle.encrypt({name:"AES-GCM",iv:i,tagLength:mM,additionalData:u},o,s);return lM(new Uint8Array(d),new Uint8Array(p))})(this._encryptDataStreamIv,this._encryptDataStreamKey,e.payload)),new Blob([e.payload]).size>1024)throw new xe(Q.INVALID_PARAMS,r?"encrypted stream message out of range.":"stream message out of range.");return this._gateway.signal.request(Dt.DATA_STREAM,{payload:_d(e.payload),syncWithAudio:e.syncWithAudio,sendTs:Date.now()-dFe},!n)}sendMetadata(e){if(!this._joinInfo)throw new xe(Q.INVALID_OPERATION,"can not send metadata, not joined");if(new Blob([e]).size>1024)throw new xe(Q.METADATA_OUT_OF_RANGE);return this._gateway.signal.request(Dt.SEND_METADATA,{session_id:this._joinInfo.sid,metadata:_d(e)})}async sendCustomReportMessage(e){if(Array.isArray(e)||(e=[e]),e.forEach(oNe),!this._joinInfo)throw new xe(Q.INVALID_OPERATION,"can not send custom report, not joined");await mt.sendCustomReportMessage(this._joinInfo.sid,e)}getLocalAudioStats(){return this._statsCollector.getLocalAudioTrackStats()}getRemoteAudioStats(){return this._statsCollector.getRemoteAudioTrackStats()}getLocalVideoStats(){return this._statsCollector.getLocalVideoTrackStats()}getRemoteVideoStats(){return this._statsCollector.getRemoteVideoTrackStats()}getRemoteNetworkQuality(){return this._statsCollector.getRemoteNetworkQualityStats()}async pickSVCLayer(e,t){Kr(t.spatialLayer,"spatialLayer",[0,1,2,3]),Kr(t.temporalLayer,"temporalLayer",[0,1,2,3]);try{await this._gateway.pickSVCLayer(e,t)}catch(n){throw D.error("[".concat(this._clientId,"] pick SVC layer failed"),n.toString()),n}}async setRTMConfig(e){const{apRTM:t=!1,rtmFlag:n}=e;if(nu(t,"apRTM"),Ln(n,"rtmFlag",0),this._rtmConfig.apRTM=t,this._rtmConfig.rtmFlag=n,D.debug("[".concat(this._clientId,"] setRTMconfig ").concat(JSON.stringify(e)," in ").concat(this.connectionState," state")),(this.connectionState==="CONNECTED"||this.connectionState==="RECONNECTING")&&this._joinInfo)return this._joinInfo.apRTM=t,this._joinInfo.rtmFlag=n,this._gateway.setRTM2Flag(n)}_reset(){if(D.debug("[".concat(this._clientId,"] reset client")),this._axiosCancelSource.cancel(),this._axiosCancelSource=Lo.CancelToken.source(),this._streamFallbackTypeCacheMap=new Map,this._remoteStreamTypeCacheMap=new Map,this._configDistribute.stopGetConfigDistribute(),this._joinInfo&&N$(this._joinInfo),this._joinInfo=void 0,this._proxyServer=void 0,this._defaultStreamFallbackType=void 0,this._sessionId=null,this.store.sessionId=null,this._statsCollector.reset(),this._key=void 0,this._appId=void 0,this._uid=void 0,this.store.uid=void 0,this._channelName=void 0,this._encryptionMode="none",this._encryptionSecret=null,this._encryptionSalt=null,this._encryptDataStreamKey=null,this._encryptDataStreamIv=null,this._pendingPublishedUsers=[],this._users.forEach((e=>{e._audioTrack&&e._audioTrack._destroy(),e._videoTrack&&e._videoTrack._destroy(),e._dataChannels&&(e._dataChannels.forEach((t=>t._close())),e._dataChannels.length=0)})),this._users=[],this._audioVolumeIndicationInterval&&(window.clearInterval(this._audioVolumeIndicationInterval),this._audioVolumeIndicationInterval=void 0),this._cloudProxyServerMode==="fallback"&&(this._cloudProxyServerMode="disabled",this.store.cloudProxyServerMode="disabled"),this._p2pChannel.reset(),this._publishMutex=new Hi("client-publish"),this._subscribeMutex=new Hi("client-subscribe"),this._networkQualityInterval&&(window.clearInterval(this._networkQualityInterval),this._networkQualityInterval=void 0),this._liveRawStreamingClient&&(this._liveRawStreamingClient.terminate(),this._liveRawStreamingClient.removeAllListeners(),this._liveRawStreamingClient=void 0),this._liveTranscodeStreamingClient&&(this._liveTranscodeStreamingClient.terminate(),this._liveTranscodeStreamingClient.removeAllListeners(),this._liveTranscodeStreamingClient=void 0),this._channelMediaRelayClient&&(this._channelMediaRelayClient.dispose(),this._channelMediaRelayClient=void 0),this._inspect)try{this._inspect.close(),this._inspect=void 0}catch{}if(this._moderation)try{this.setImageModeration(!1)}catch{}}_startSession(e,t){var n;const r=e||Ph();e?D.debug("[".concat(this._clientId,"] new Session ").concat(r)):D.debug("[".concat(this._clientId,"] renewSession ").concat(this._sessionId," => ").concat(r));const i=e?"":this._sessionId||"";this._sessionId=r,this.store.sessionId=r;const o={lts:new Date().getTime(),mode:this.mode,buildFormat:2,stringUid:(t==null?void 0:t.stringUid)||((n=this._joinInfo)===null||n===void 0?void 0:n.stringUid),channelProfile:this.mode==="live"?1:0,channelMode:0,isABTestSuccess:Number(this._configDistribute.isSuccess),lsid:i,clientRole:this.role==="audience"?2:1};mt.sessionInit(this._sessionId,$a({cname:t.channel,appid:t.appId},o)),this._joinInfo&&(this._joinInfo.sid=r),this._gateway.joinInfo&&(this._gateway.joinInfo.sid=r)}async _publishHighStream(e){if(!this._joinInfo||this._uid===void 0)throw new xe(Q.INVALID_OPERATION,"Can't publish stream, haven't joined yet!");if(this.connectionState!=="CONNECTED"&&this.connectionState!=="RECONNECTING")throw new xe(Q.INVALID_OPERATION,"can not publish stream in ".concat(this.connectionState," state"));if(this._turnServer.mode==="auto"&&he("FORCE_TURN")&&!he("TURN_ENABLE_TCP")&&!he("TURN_ENABLE_UDP"))throw new xe(Q.UNEXPECTED_ERROR,"force TURN With No TURN Configuration");D.debug("[".concat(this._clientId,"] publish high stream"));try{const n=await this._p2pChannel.publish(e,this._isDualStreamEnabled,this._lowStreamParameter);if(this._p2pChannel instanceof rs){const r=(await n.next()).value;if(r){try{await this._gateway.sendExtensionMessage(Cr.PUBLISH,r,!0)}catch(i){throw n.throw(i),i}await n.next()}this._p2pChannel.reportPublishEvent(!0,null)}else{const r=(await n.next()).value;if(r){var t;let i;try{i=await this._gateway.publish(this._uid,r,!0)}catch(o){if(o.code!==Q.DISCONNECT_P2P)throw n.throw(o),o}await n.next(((t=i)===null||t===void 0?void 0:t.ortc)||[])}this._p2pChannel.reportPublishEvent(!0,null);for(const i of e)i instanceof Kn&&i._encoderConfig&&this._gateway.setVideoProfile(i._encoderConfig),!i.muted&&i.enabled||await this._p2pChannel.muteLocalTrack(i)}}catch(n){if(this._p2pChannel.reportPublishEvent(!1,n==null?void 0:n.code,e),(n==null?void 0:n.code)===Q.WS_ABORT)return;throw n}}async _publishLowStream(){if(!this._joinInfo||this._uid===void 0)throw new xe(Q.INVALID_OPERATION,"Can't publish stream, haven't joined yet!");if(this.connectionState!=="CONNECTED"&&this.connectionState!=="RECONNECTING")throw new xe(Q.INVALID_OPERATION,"can not publish stream in ".concat(this.connectionState," state"));D.debug("[".concat(this._clientId,"] publish low stream"));const e=this._configDistribute.getLowStreamConfigDistribute();e&&e.bitrate&&(this._lowStreamParameter||(this._lowStreamParameter={width:160,height:120,framerate:15,bitrate:50}),this._lowStreamParameter&&this._lowStreamParameter.bitrate&&e.bitrate{if(!this._joinInfo||!this._appId)return new xe(Q.INVALID_OPERATION,"can not create live streaming client, please join channel first").throw();const n=(r={joinInfo:this._joinInfo,appId:this._appId,websocketRetryConfig:this._config.websocketRetryConfig,httpRetryConfig:this._config.httpRetryConfig},G1("LiveStreaming").create(r));var r;return n.onLiveStreamError=(i,o)=>{mt.reportApiInvoke(this._sessionId,{name:Zr.ON_LIVE_STREAM_ERROR,options:[i,o],tag:vr.TRACER}).onSuccess(),this.safeEmit($t.LIVE_STREAMING_ERROR,i,o)},n.onLiveStreamWarning=(i,o)=>{mt.reportApiInvoke(this._sessionId,{name:Zr.ON_LIVE_STREAM_WARNING,options:[i,o],tag:vr.TRACER}).onSuccess(),this.safeEmit($t.LIVE_STREAMING_WARNING,i,o)},n.on(XA.REQUEST_WORKER_MANAGER_LIST,((i,o,s)=>{if(!this._joinInfo)return s(new xe(Q.INVALID_OPERATION,"can not find join info to get worker manager"));(async function(a,c,l,u){const d=he("UAP_AP").slice(0,he("AJAX_REQUEST_CONCURRENT")).map((f=>c.proxyServer?"https://".concat(c.proxyServer,"/ap/?url=").concat(f+"/api/v1?action=uap"):"https://".concat(f,"/api/v1?action=uap")));return await LBe(d,a,c,l,u)})(i,this._joinInfo,this._axiosCancelSource.token,jr).then(o).catch(s)})),n};return e===au.RAW?(this._liveRawStreamingClient=this._liveRawStreamingClient||t(),this._liveRawStreamingClient):(this._liveTranscodeStreamingClient=this._liveTranscodeStreamingClient||t(),this._liveTranscodeStreamingClient)}_createChannelMediaRelayClient(){if(!this._joinInfo)return new xe(Q.INVALID_OPERATION,"can not create channel media relay client, please join channel first").throw();if(!this._channelMediaRelayClient){const{sendResolutionWidth:t,sendResolutionHeight:n}=this.getLocalVideoStats(),r=(e={joinInfo:this._joinInfo,clientId:this._clientId,websocketRetryConfig:this._config.websocketRetryConfig,httpRetryConfig:this._config.httpRetryConfig,resolution:{width:t,height:n}},G1("ChannelMediaRelay").create(e));r.on("state",(i=>{i===zo.RELAY_STATE_FAILURE&&r&&r.dispose(),this.safeEmit($t.CHANNEL_MEDIA_RELAY_STATE,i)})),r.on("event",(i=>{this.safeEmit($t.CHANNEL_MEDIA_RELAY_EVENT,i)})),this._channelMediaRelayClient=r,this._statsCollector.onStatsChanged=(i,o)=>{var s;i==="resolution"&&((s=this._channelMediaRelayClient)===null||s===void 0||s.setVideoProfile(o))}}var e;return this._channelMediaRelayClient}_handleUpdateDataChannel(e,t){const{added:n,deleted:r}=e,i=[];if(t){const o=[];this._users.forEach((s=>{s._dataChannels.forEach((a=>{n.every((c=>c.uid!==s._uintid||c.stream_id!==a.id))&&o.push({uid:s._uintid,stream_id:a.id,ordered:a.ordered,max_retrans_times:a.maxRetransmits,metadata:a.metadata})}))})),o.length>0&&this._handleUpdateDataChannel({added:[],deleted:o})}Array.isArray(n)&&n.length>0&&n.forEach((o=>{const{uid:s,stream_id:a,ordered:c,max_retrans_times:l,metadata:u}=o,d=this._users.find((f=>f._uintid===s));if(!d)return void D.error("[".concat(this._clientId,"] can not find target user!(on_add_data_channel)"));if(D.debug("[".concat(this._clientId,"] data_channel added with uid ").concat(s)),lt(i).call(i,d)||i.push(d),d._uintid||(d._uintid=s),d._dataChannels.findIndex((f=>f.id===o.stream_id))===-1){const f={id:a,ordered:!!c,maxRetransmits:l,metadata:u},h=(function(p){return UU(p,!0)})(f);d._dataChannels.push(h),D.info("[".concat(this._clientId,"] remote user ").concat(d.uid," published datachannel")),t||this.safeEmit($t.USER_PUBLISHED,d,"datachannel",f)}this._p2pChannel.hasPendingRemoteDataChannel(d,o.stream_id)&&(D.debug("[".concat(this._clientId,"] resubscribe datachannel for user ").concat(d.uid," after reconnect.")),this._subscribeDataChannel(d,o.stream_id).catch((f=>{D.error("[".concat(this._clientId,"] resubscribe datachannel error"),f.toString())})))})),t&&(this.safeEmit($t.PUBLISHED_USER_LIST,this._pendingPublishedUsers),this._pendingPublishedUsers=[]),Array.isArray(r)&&r.length>0&&r.forEach((o=>{const{uid:s,stream_id:a}=o,c=this._users.find((u=>u._uintid===s));if(!c)return void D.error("[".concat(this._clientId,"] can not find target user!(on_delete_data_channel)"));const l=c._dataChannels.find((u=>u.id===o.stream_id));l&&(D.debug("[".concat(this._clientId,"] data_stream delete with uid ").concat(s)),this._p2pChannel.unsubscribeDataChannel(c,[l]).then((u=>{if(c._dataChannels=c._dataChannels.filter((d=>d!==l)),u)return this._gateway.unsubscribeDataChannel(u,c.uid)})),D.info("[".concat(this._clientId,"] remote user ").concat(s," unpublished datachannel ,id:").concat(l.id)),this.safeEmit($t.USER_UNPUBLISHED,c,"datachannel",l._config))}))}_handleRemoveDataChannels(e){const t=this._users.find((n=>n.uid===e.uid));if(t){if(t._dataChannels!==void 0&&t._dataChannels.length>0){D.debug("[".concat(this._clientId,"] datachannel removed with uid ").concat(e.uid));const n=()=>{D.info("[".concat(this._clientId,"] remote user ").concat(t.uid," unpublished datachannel")),t._dataChannels.forEach((r=>{this.safeEmit($t.USER_UNPUBLISHED,t,"datachannel",r._config)}))};this._p2pChannel.unsubscribeDataChannel(t,t._dataChannels).then((r=>{if(r)return this._gateway.unsubscribeDataChannel(r,t.uid)})),n()}}else D.warning("[".concat(this._clientId,"] can not find target user!(on_remove_datachannel)"))}_handleGatewayEvents(){this._gateway.on(Ci.DISCONNECT_P2P,(async()=>{await this._p2pChannel.disconnectForReconnect()})),this._gateway.on(Ci.CONNECTION_STATE_CHANGE,((e,t,n)=>{var r;if(n===Tn.FALLBACK)return;const i=()=>{this.safeEmit($t.CONNECTION_STATE_CHANGE,e,t,n)};if(mt.reportApiInvoke(this._sessionId||((r=this._gateway.joinInfo)===null||r===void 0?void 0:r.sid)||null,{name:Zr.CONNECTION_STATE_CHANGE,options:[e,t,n],tag:vr.TRACER}).onSuccess(JSON.stringify({cur:e,prev:t,reason:n})),D.info("[".concat(this._clientId,"] connection state change: ").concat(t," -> ").concat(e)),e==="DISCONNECTED")return this._reset(),void i();if(e==="RECONNECTING")this._users.forEach((s=>{s._trust_in_room_=!1,s._trust_audio_enabled_state_=!1,s._trust_video_enabled_state_=!1,s._trust_audio_mute_state_=!1,s._trust_video_mute_state_=!1,s._trust_audio_stream_added_state_=!1,s._trust_video_stream_added_state_=!1,s._is_pre_created||(s._audio_pre_subscribed||(s._audioSSRC=void 0,s._audioOrtc=void 0),s._video_pre_subscribed||(s._videoSSRC=void 0,s._videoOrtc=void 0,s._rtxSsrcId=void 0),s._cname=void 0)})),this._userOfflineTimeout&&window.clearTimeout(this._userOfflineTimeout),this._streamRemovedTimeout&&window.clearTimeout(this._streamRemovedTimeout),this._userOfflineTimeout=void 0,this._streamRemovedTimeout=void 0;else if(e==="CONNECTED"){var o;this._streamFallbackTypeCacheMap.forEach(((s,a)=>{this._gateway.setStreamFallbackOption(a,s).catch((c=>{D.warning("[".concat(this._clientId,"] auto set stream fallback option failed"),c)}))})),this._remoteStreamTypeCacheMap.forEach(((s,a)=>{this._gateway.setRemoteVideoStreamType(a,s).catch((c=>{D.warning("[".concat(this._clientId,"] auto set remote stream type failed"),c)}))})),this._remoteDefaultVideoStreamType!==void 0&&((o=this._joinInfo)===null||o===void 0?void 0:o.defaultVideoStream)===void 0&&this.setRemoteDefaultVideoStreamType(this._remoteDefaultVideoStreamType).then((()=>{D.debug("[".concat(this._clientId,"] setRemoteDefaultVideoStreamType after gateway connected"))})).catch((s=>{D.error("[".concat(this._clientId,"] setRemoteDefaultVideoStreamType after gateway failed, ").concat(s))})),this.store.useP2P||(this._p2pChannel.republish(),this._userOfflineTimeout=window.setTimeout((()=>{this.connectionState==="CONNECTED"&&(this._userOfflineTimeout=void 0,this._users.filter((s=>!s._trust_in_room_)).forEach((s=>{D.debug("[".concat(this._clientId,"] user offline timeout, emit user offline ").concat(s.uid)),this._handleUserOffline({uid:s.uid})})))}),3e3),this._streamRemovedTimeout=window.setTimeout((()=>{this.connectionState==="CONNECTED"&&(this._streamRemovedTimeout=void 0,this._users.forEach((s=>{s._trust_audio_mute_state_||(D.debug("[".concat(this._clientId,"] auto dispatch audio unmute event ").concat(s.uid)),this._handleMuteStream(s.uid,vt.AUDIO,!1)),s._trust_video_mute_state_||(D.debug("[".concat(this._clientId,"] auto dispatch video unmute event ").concat(s.uid)),this._handleMuteStream(s.uid,vt.VIDEO,!1)),s._trust_audio_enabled_state_||(D.debug("[".concat(this._clientId,"] auto dispatch enable local audio ").concat(s.uid)),this._handleSetStreamLocalEnable("audio",s.uid,!0)),s._trust_video_enabled_state_||(D.debug("[".concat(this._clientId,"] auto dispatch enable local video ").concat(s.uid)),this._handleSetStreamLocalEnable("video",s.uid,!0)),s._trust_video_stream_added_state_||(D.debug("[".concat(this._clientId,"] auto dispatch reset video stream added ").concat(s.uid)),this._handleResetAddStream(s,"video")),s._trust_audio_stream_added_state_||(D.debug("[".concat(this._clientId,"] auto dispatch reset audio stream added ").concat(s.uid)),this._handleResetAddStream(s,"audio")),s._video_added_||s._audio_added_||(D.debug("[".concat(this._clientId,"] auto dispatch stream remove ").concat(s.uid)),this._handleRemoveStream({uid:s.uid,uint_id:s._uintid}))})))}),1e3))}i()})),this._gateway.on(Ci.REQUEST_NEW_GATEWAY_LIST,(async(e,t)=>{if(!this._joinInfo)return t(new xe(Q.UNEXPECTED_ERROR,"can not recover, no join info"));try{let n;const r=await VU($a($a({},this._joinInfo),{},{uid:this._joinInfo.uid,stringUid:void 0}));r?(n=r.ap,GU(r),this._joinInfo.preload=!0):(n=await aC(this._joinInfo,this._axiosCancelSource.token,this._config.httpRetryConfig||jr,this.store),this._joinInfo.preload=!1),this._joinInfo&&(this._joinInfo.apResponse=n.gatewayInfo.res,this._joinInfo.gatewayAddrs=n.gatewayInfo.gatewayAddrs,this._joinInfo.uni_lbs_ip=n.gatewayInfo.uni_lbs_ip);const i=[];n.gatewayInfo.gatewayAddrs.forEach((o=>{let{address:s}=o;const[a,c]=s.split(":");this._joinInfo&&this._joinInfo.proxyServer?i.push({proxy:this._joinInfo.proxyServer,host:a,port:c}):i.push({host:a,port:c})})),e(i)}catch(n){t(n)}})),this._gateway.on(Ci.NETWORK_QUALITY,(e=>{this._networkQualitySensitivity==="normal"&&this.safeEmit($t.NETWORK_QUALITY,e)})),this._gateway.on(Ci.STREAM_TYPE_CHANGE,((e,t)=>{this.safeEmit($t.STREAM_TYPE_CHANGED,e,t),mt.reportApiInvoke(this._sessionId,{name:Zr.STREAM_TYPE_CHANGE,options:[e,t],tag:vr.TRACER}).onSuccess(JSON.stringify({uid:e,streamType:t}))})),this._gateway.on(Ci.IS_P2P_DISCONNECTED,(e=>{this._p2pChannel.isP2PDisconnected()?e(!0):this._p2pChannel.hasLocalMedia()||this._p2pChannel.hasRemoteMedia()?e(!1):e(!0)})),this._gateway.on(Ci.REQUEST_P2P_CONNECTION_PARAMS,(async(e,t,n)=>{try{let r=await this._p2pChannel.getEstablishParams();he("ENABLE_PREALLOC_PC")&&r||(r=await this._p2pChannel.startP2PConnection(e)),t(r)}catch(r){n(r)}})),this._gateway.on(Ci.JOIN_RESPONSE,((e,t)=>{if(this.store.useP2P)return;const n=jF(e.ortc,t,e.attributes.userAttributes.preSubSsrcs);this._p2pChannel.connect(n)})),this._gateway.on(Ci.PRE_CONNECT_PC,(async e=>{const{candidates:t,fingerprint:n}=e;if(this._joinInfo&&t.length>0&&!this._p2pChannel.isPlanB){var r;await this._p2pChannel.startP2PConnection({turnServer:this._joinInfo.turnServer});const{cert:i,cid:o}=this._joinInfo.apResponse;await this._p2pChannel.connect({iceParameters:{iceUfrag:"".concat(o,"_").concat(i),icePwd:"".concat(o,"_").concat(i)},dtlsParameters:{fingerprints:[{hashFunction:"sha-256",fingerprint:(r=he("FINGERPRINT"))!==null&&r!==void 0?r:n}]},candidates:t,rtpCapabilities:{send:{audioCodecs:[],videoCodecs:[],audioExtensions:[],videoExtensions:[]},recv:{audioCodecs:[],videoCodecs:[],audioExtensions:[],videoExtensions:[]}},setup:"active",cname:"o/i14u9pJrxRKAsu",preallocation:!0})}}))}_handleGatewaySignalEvents(){this._gateway.signal.on(Kt.ON_USER_ONLINE,this._handleUserOnline),this._gateway.signal.on(Kt.ON_USER_OFFLINE,this._handleUserOffline),this._gateway.signal.on(Kt.ON_ADD_AUDIO_STREAM,(e=>this._handleAddAudioOrVideoStream("audio",e.uid,e.ssrcId,e.cname,e.uint_id,e.ortc))),this._gateway.signal.on(Kt.ON_ADD_VIDEO_STREAM,(e=>this._handleAddAudioOrVideoStream("video",e.uid,e.ssrcId,e.cname,e.uint_id,e.ortc,e.rtxSsrcId))),this._gateway.signal.on(Kt.ON_REMOTE_DATASTREAM_UPDATE,(e=>{this._handleUpdateDataChannel(e)})),this._gateway.signal.on(Kt.ON_REMOTE_FULL_DATASTREAM_INFO,(e=>{this._handleUpdateDataChannel({added:e.datastreams||[],deleted:[]},!0)})),this._gateway.signal.on(Kt.ON_REMOVE_STREAM,this._handleRemoveStream),this._gateway.signal.on(Kt.ON_P2P_LOST,this._handleP2PLost),this._gateway.signal.on(Kt.MUTE_AUDIO,(e=>this._handleMuteStream(e.uid,vt.AUDIO,!0))),this._gateway.signal.on(Kt.UNMUTE_AUDIO,(e=>this._handleMuteStream(e.uid,vt.AUDIO,!1))),this._gateway.signal.on(Kt.MUTE_VIDEO,(e=>this._handleMuteStream(e.uid,vt.VIDEO,!0))),this._gateway.signal.on(Kt.UNMUTE_VIDEO,(e=>this._handleMuteStream(e.uid,vt.VIDEO,!1))),this._gateway.signal.on(Kt.RECEIVE_METADATA,(e=>{const t=H0(e.metadata);this.safeEmit($t.RECEIVE_METADATA,e.uid,t)})),this._gateway.signal.on(Kt.ON_DATA_STREAM,(async e=>{var t;if(!e)return;let n=H0(e.payload);if(this._encryptDataStream&&this._encryptDataStreamIv&&this._encryptDataStreamKey&&window.crypto.subtle&<(t=["aes-128-gcm2","aes-256-gcm2"]).call(t,this._encryptionMode)){if(e.payload.lengtha.uid===e.uid)),s=i==null?void 0:i.audioRecv.find((a=>a.ssrc===(o==null?void 0:o._audioSSRC)));r=s==null?void 0:s.jitterBufferMs}r==null&&(r=0),hFe($a($a({},e),{},{payload:n}),r,{id:this._clientId,onStreamMessage:typeof this.onStreamMessage=="function"?this.onStreamMessage.bind(this):void 0,safeEmit:this.safeEmit.bind(this)})})),this._gateway.signal.on(Kt.ON_CRYPT_ERROR,(()=>{Fd((()=>{D.warning("[".concat(this._clientId,"] on crypt error")),this.safeEmit($t.CRYPT_ERROR)}),this._sessionId)})),this._gateway.signal.on(Kt.ON_TOKEN_PRIVILEGE_WILL_EXPIRE,this._handleTokenWillExpire),this._gateway.signal.on(Kt.ON_TOKEN_PRIVILEGE_DID_EXPIRE,(()=>{D.warning("[".concat(this._clientId,"] received message onTokenPrivilegeDidExpire, please get new token and join again")),this._gateway.leave(!0,Tn.TOKEN_EXPIRE),this.safeEmit($t.ON_TOKEN_PRIVILEGE_DID_EXPIRE),this._reset()})),this._gateway.signal.on(Kt.ON_STREAM_FALLBACK_UPDATE,(e=>{D.debug("[".concat(this._clientId,"] stream fallback peerId: ").concat(e.stream_id,", attr: ").concat(e.stream_type)),this.safeEmit($t.STREAM_FALLBACK,e.stream_id,e.stream_type===1?"fallback":"recover")})),this._gateway.signal.on(Kt.ON_PUBLISH_STREAM,(e=>{this.uid===this._uid&&(this._p2pChannel.reportPublishEvent(!0,null,void 0,!1,JSON.stringify({proxy:e.proxy})),D.info("[".concat(this._clientId,"] on publish stream, ").concat(JSON.stringify(e))))})),this._gateway.signal.on(Kt.ENABLE_LOCAL_VIDEO,(e=>{this._handleSetStreamLocalEnable("video",e.uid,!0)})),this._gateway.signal.on(Kt.DISABLE_LOCAL_VIDEO,(e=>{this._handleSetStreamLocalEnable("video",e.uid,!1)})),this._gateway.signal.on(Nt.REQUEST_TIMEOUT,((e,t)=>{if(this._joinInfo)switch(e){case Dt.PUBLISH:{if(!t)return;const i=t.ortc;if(i){var n,r;const o=i.some((c=>{let{stream_type:l}=c;return l===Sn.Audio})),s=i.some((c=>{let{stream_type:l}=c;return l!==Sn.Audio})),a=i.some((c=>{let{stream_type:l}=c;return l===Sn.Screen||l===Sn.ScreenLow}));t.state==="offer"&&mt.publish(this._joinInfo.sid,{eventElapse:ji.measureFromPublishStart(this.store.clientId,this.store.pubId),succ:!1,ec:Q.TIMEOUT,audio:o,video:s,p2pid:t.p2p_id,publishRequestid:this.store.pubId,screenshare:a,audioName:o?(n=i.find((c=>{let{stream_type:l}=c;return l===Sn.Audio})))===null||n===void 0||(n=n.ssrcs[0])===null||n===void 0?void 0:n.ssrcId.toString():void 0,videoName:s?(r=i.find((c=>{let{stream_type:l}=c;return l!==Sn.Audio})))===null||r===void 0||(r=r.ssrcs[0])===null||r===void 0?void 0:r.ssrcId.toString():void 0})}break}case Dt.SUBSCRIBE:t&&mt.subscribe(this._joinInfo.sid,{succ:!1,ec:Q.TIMEOUT,audio:t.stream_type===vt.AUDIO,video:t.stream_type===vt.VIDEO,peerid:t.stream_id,subscribeRequestid:t.ssrcId,p2pid:this.store.p2pId,eventElapse:ji.measureFromSubscribeStart(this.store.clientId,t.ssrcId),preSsrc:this._p2pChannel.isPreSubScribe(t.ssrcId)})}})),this._gateway.signal.on(Kt.ON_P2P_OK,(e=>{this.uid,this._uid})),this._gateway.signal.on(Kt.ON_PUBLISHED_USER_LIST,(e=>{if(e==null||!e.users)return;he("BLOCK_LOCAL_CLIENT")&&(e.users=e.users.filter((r=>!f0(r.string_id||r.stream_id,this.channelName))));const t=[],n=[];for(const r of e.users){let i=this._users.find((u=>u._uintid===r.stream_id));i?i._trust_in_room_=!0:(i=new md(r.string_id||r.stream_id,r.stream_id),this._users.push(i),this.getListeners($t.PUBLISHED_USER_LIST).length===0&&(D.debug("[".concat(this._clientId,"] user online"),r.stream_id),this.safeEmit($t.USER_JOINED,i)));const o=ti.Audio&r.stream_type,s=(ti.Video|ti.LwoVideo)&r.stream_type,a=(65280&r.stream_type)!=0,c=o&&i.hasAudio,l=s&&i.hasVideo;s&&(i._trust_video_stream_added_state_=!0,i._video_added_=!0,i._videoSSRC=r.video_ssrc,i._rtxSsrcId=r.video_rtx),o&&(i._trust_audio_stream_added_state_=!0,i._audio_added_=!0,i._audioSSRC=r.audio_ssrc),o&&!c&&this.getListeners($t.PUBLISHED_USER_LIST).length===0&&(D.info("[".concat(this._clientId,"] remote user ").concat(i.uid," published audio")),this.safeEmit($t.USER_PUBLISHED,i,"audio")),s&&!l&&this.getListeners($t.PUBLISHED_USER_LIST).length===0&&(D.info("[".concat(this._clientId,"] remote user ").concat(i.uid," published video")),this.safeEmit($t.USER_PUBLISHED,i,"video")),(o&&!c||s&&!l||a)&&t.push(i),s&&this._p2pChannel.hasPendingRemoteMedia(i,"video")&&n.push({user:i,mediaType:"video"}),o&&this._p2pChannel.hasPendingRemoteMedia(i,"audio")&&n.push({user:i,mediaType:"audio"})}n.length>0&&(D.debug("[".concat(this._clientId,"] RE massSubscribe after reconnect ").concat(n.map((r=>"user: ".concat(r.user.uid,", mediaType: ").concat(r.mediaType))).join("; ")," ")),this.massSubscribe(n).catch((r=>{D.error("[".concat(this._clientId,"] mass resubscribe error"),r.toString())}))),this.getListeners($t.PUBLISHED_USER_LIST).length>0?he("ENABLE_DATASTREAM_2")?this._pendingPublishedUsers=t:(D.info("[".concat(this._clientId,"] client emit user-list event, users: ").concat(t.map((r=>r.uid)).join(", "))),this.safeEmit($t.PUBLISHED_USER_LIST,t)):D.info("[".concat(this._clientId,"] client not emit user-list event case there is no user-list listener, users: ").concat(t.map((r=>r.uid)).join(", ")))})),this._gateway.signal.on(Kt.ON_RTP_CAPABILITY_CHANGE,(e=>{const{video_codec:t}=e;this._p2pChannel instanceof w5&&this._p2pChannel.updateRemoteRTPCapabilities(t.map((n=>n.toLowerCase())).filter((n=>{var r;return lt(r=Object.keys(f6)).call(r,n)})))}))}_handleP2PEvents(){this._gateway.signal.on(Kt.ON_USER_OFFLINE,(()=>{this._p2pChannel.disconnectForReconnect()})),this._gateway.signal.on(Cr.PUBLISH,((e,t,n)=>{const{uid:r}=e;e.forEach((i=>{const{kind:o,ssrcs:s,mid:a,isMuted:c}=i;this._handleP2PAddAudioOrVideoStream(o,r,s[0].ssrcId,a);const l=this._users.find((u=>u.uid===r));return l&&this._p2pChannel instanceof rs?this._p2pChannel.mockSubscribe(l,o,s[0].ssrcId,a).then((()=>{t()})).catch(n):t(),this._handleMuteStream(r,o,!!c)}))})),this._gateway.signal.on(Cr.CALL,(async(e,t,n)=>{if(this._p2pChannel instanceof rs)try{var r;t(await this._p2pChannel.startP2P({turnServer:(r=this._joinInfo)===null||r===void 0?void 0:r.turnServer},e))}catch(i){n(i)}})),this._gateway.signal.on(Nt.P2P_CONNECTION,(async e=>{this._p2pChannel instanceof rs&&await this._p2pChannel.p2pConnect(e)})),this._gateway.signal.on(Cr.UNPUBLISH,(async(e,t,n)=>{if(this._p2pChannel instanceof rs){const{unpubMsg:r,uid:i}=e,o=this._users.find((s=>s.uid===i));if(!o)return D.warning("[".concat(this._clientId,"] can not find remote user, ignore mute event, uid: ").concat(i)),void t();try{r.forEach((async s=>{let{stream_type:a}=s;const c=a===Sn.Audio?vt.AUDIO:vt.VIDEO;await this._p2pChannel.unsubscribe(o,c),this._handleMuteStream(i,c,!0)})),t()}catch(s){n(s)}}})),this._gateway.signal.on(Cr.CONTROL,(async(e,t)=>{const{action:n}=e;switch(n){case Sd.MUTE_LOCAL_VIDEO:this._handleMuteStream(t,vt.VIDEO,!0);break;case Sd.MUTE_LOCAL_AUDIO:this._handleMuteStream(t,vt.AUDIO,!0);break;case Sd.UNMUTE_LOCAL_VIDEO:this._handleP2PAddAudioOrVideoStream("video",t),this._handleMuteStream(t,vt.VIDEO,!1);break;case Sd.UNMUTE_LOCAL_AUDIO:this._handleP2PAddAudioOrVideoStream("audio",t),this._handleMuteStream(t,vt.AUDIO,!1)}})),this._gateway.signal.on(Cr.RESTART_ICE,(async(e,t,n)=>{if(this._p2pChannel instanceof rs)try{const{direction:r,iceParameter:i}=e;r!==po.SEND_ONLY||i?t(await this._p2pChannel.restartICE(r,i)):(this._p2pChannel.handleDisconnect(r),t())}catch(r){n(r)}})),this._gateway.signal.on(Cr.CANDIDATE,(e=>{if(this._p2pChannel instanceof rs){const{candidate:t,direction:n}=e;this._p2pChannel.addRemoteCandidate(t,n)}})),this._p2pChannel.on(Ot.RequestP2PRestartICE,(async(e,t,n)=>{try{const{direction:r}=e;t(await this._gateway.sendExtensionMessage(Cr.RESTART_ICE,e,r===po.SEND_ONLY))}catch(r){n(r)}})),this._p2pChannel.on(Ot.LocalCandidate,(e=>{this._gateway.sendExtensionMessage(Cr.CANDIDATE,JSON.stringify(e),!0)})),this._p2pChannel.on(Ot.RequestP2PMuteLocal,(async(e,t,n)=>{try{await this._gateway.sendExtensionMessage(Cr.CONTROL,e,!0),t()}catch(r){n(r)}})),this._p2pChannel.on(Ot.RequestP2PUnmuteRemote,(async(e,t,n)=>{if(this._joinInfo)try{await this._gateway.unmuteRemote(e,this._joinInfo.stringUid||this._joinInfo.uid),t()}catch(r){r.code===Q.DISCONNECT_P2P?t():n(r)}else t()})),this._p2pChannel.on(Ot.RequestP2PMuteRemote,(async(e,t,n)=>{if(this._joinInfo)try{await this._gateway.muteRemote(e,this._joinInfo.stringUid||this._joinInfo.uid),t()}catch(r){r.code===Q.DISCONNECT_P2P?t():n(r)}else t()})),this._p2pChannel.on(Ot.StateChange,((e,t)=>{t===bn.Connected&&this._p2pChannel.republish()}))}_handleP2PChannelEvents(){this._p2pChannel.on(Ot.RequestMuteLocal,(async(e,t,n)=>{if(this._joinInfo)try{await this._gateway.muteLocal(e,this._joinInfo.stringUid||this._joinInfo.uid),t()}catch(r){r.code===Q.DISCONNECT_P2P?t():n(r)}else t()})),this._p2pChannel.on(Ot.RequestUnmuteLocal,(async(e,t,n)=>{if(this._joinInfo)try{await this._gateway.unmuteLocal(e,this._joinInfo.stringUid||this._joinInfo.uid),t()}catch(r){r.code===Q.DISCONNECT_P2P?t():n(r)}else t()})),this._p2pChannel.on(Ot.RequestRePublish,((e,t,n)=>{this.publish(e,!1).then(t).catch(n)})),this._p2pChannel.on(Ot.RequestRePublishDataChannel,((e,t,n)=>{ot.all(e.map((async r=>{const i=await this._p2pChannel.publishDataChannel([r]);try{i.forEach((o=>{this._uid&&this._gateway.publishDataChannel(this._uid,o,!0)}))}catch(o){if(o.code!==Q.DISCONNECT_P2P)throw o}}))).then(t).catch(n)})),this._p2pChannel.on(Ot.RequestReSubscribe,(async(e,t,n)=>{try{for(const{user:r,kind:i}of e)i===vt.VIDEO?await this.subscribe(r,"video"):await this.subscribe(r,"audio");t()}catch(r){n(r)}})),this._p2pChannel.on(Ot.RequestUpload,((e,t)=>{this._gateway.upload(e,t)})),this._p2pChannel.on(Ot.RequestUploadStats,(e=>{this._gateway.uploadWRTCStats(e)})),this._p2pChannel.on(Ot.MediaReconnectStart,(e=>{this.safeEmit($t.MEDIA_RECONNECT_START,e)})),this._p2pChannel.on(Ot.MediaReconnectEnd,(e=>{this.safeEmit($t.MEDIA_RECONNECT_END,e)})),this._p2pChannel.on(Ot.NeedSignalRTT,(e=>{e(this._gateway.getSignalRTT())})),this._p2pChannel.on(Ot.RequestRestartICE,(async e=>{if(this._p2pChannel instanceof rs)return;const t=await this._p2pChannel.restartICE(e),n=await t.next();if(n.done)return;const r=n.value;let i;try{i=await this._gateway.restartICE({iceParameters:r})}catch(s){return void t.throw(s)}const{iceParameters:o}=(function(s){const a=s.iceParameters;return{iceParameters:{iceUfrag:a.iceUfrag,icePwd:a.icePwd}}})(i);await t.next({remoteIceParameters:o})})),this._p2pChannel.on(Ot.RequestReconnect,(async()=>{this._gateway.reconnect()})),this._p2pChannel.on(Ot.RequestReconnectPC,(async()=>{var e;const{iceParameters:t,dtlsParameters:n,rtpCapabilities:r}=await this._p2pChannel.startP2PConnection({turnServer:(e=this._joinInfo)===null||e===void 0?void 0:e.turnServer}),{gatewayEstablishParams:i,gatewayAddress:o}=await this._gateway.reconnectPC({iceParameters:t,dtlsParameters:n,rtpCapabilities:r}),s=jF(i,o);await this._p2pChannel.connect(s),await this._p2pChannel.republish(),await this._p2pChannel.reSubscribe()})),this._p2pChannel.on(Ot.RequestUnpublishForReconnectPC,(async(e,t,n)=>{this._joinInfo&&this._uid!==void 0?(await this._gateway.unpublish(e,this._uid),t()):n()})),this._p2pChannel.on(Ot.P2PLost,(()=>{this.safeEmit($t.P2P_LOST,this.store.uid)})),this._p2pChannel.on(Ot.UpdateVideoEncoder,(e=>{e._encoderConfig&&this._gateway.setVideoProfile(e._encoderConfig)})),this._p2pChannel.on(Ot.ConnectionTypeChange,(e=>{this.safeEmit($t.IS_USING_CLOUD_PROXY,e)})),this._p2pChannel.on(Ot.RequestLowStreamParameter,(e=>{e(this._lowStreamParameter||{width:160,height:120,framerate:15,bitrate:50})})),this._p2pChannel.on(Ot.QueryClientConnectionState,(e=>{e(this.connectionState)}))}getKeyMetrics(){return this.store.keyMetrics}async enableContentInspect(e){if(!this._joinInfo||this.connectionState!=="CONNECTED")throw new xe(Q.INVALID_OPERATION,"[".concat(this._clientId,"] can not create content inspect, please join channel first"));if(this._inspect)throw new xe(Q.INVALID_OPERATION,"[".concat(this._clientId,"] Inspect content service already in connecting/connected state"));try{const n=(t={config:e},G1("ContentInspect").create(t));this._inspect=n,this.handleVideoInspectEvents(n);const{appId:r,cname:i,sid:o,token:s,uid:a,cid:c,vid:l}=this._joinInfo;await n.init({appId:r,areaCode:"",cname:i,sid:o,token:s,uid:a,cid:c,vid:l?Number(l):0},jr)}catch(n){throw Array.isArray(n)?n[0]:n}var t}handleVideoInspectEvents(e){e.on(ci.CONNECTION_STATE_CHANGE,((t,n)=>{if(this.safeEmit($t.CONTENT_INSPECT_CONNECTION_STATE_CHANGE,t,n),n===ba.CONNECTED){if(this.connectionState!=="CONNECTED")return void this.safeEmit($t.CONTENT_INSPECT_ERROR,new xe(Q.OPERATION_ABORTED,"Content inspect was cancelled because it left the channel"));e.inspectImage()}})),e.on(ci.INSPECT_RESULT,((t,n)=>{var r;if((n==null?void 0:n.code)===Q.INVALID_OPERATION&&this.connectionState==="DISCONNECTED")return D.debug("Stop inspect content because that has left channel"),this==null||(r=this._inspect)===null||r===void 0||r.close(),void(this._inspect=void 0);this.safeEmit($t.CONTENT_INSPECT_RESULT,t,n)})),e.on(ci.CLIENT_LOCAL_VIDEO_TRACK,(t=>{t(this.localTracks.filter((n=>n.trackMediaType==="video"))[0])}))}async disableContentInspect(){if(!this._inspect)throw new xe(Q.INVALID_OPERATION,"[".concat(this._clientId,"] inspectVideoContent not started"));try{this._inspect.close(),this._inspect=void 0}catch(e){throw Array.isArray(e)?e[0]:e}}async setImageModeration(e,t){if(nu(e,"enabled"),e){if(!t)throw new xe(Q.INVALID_PARAMS,"config is required");if(j$(t),!this._joinInfo)throw new xe(Q.INVALID_OPERATION,"can not create image moderation, please join channel first");try{if(this._moderation)this._moderation.updateConfig(t);else{const r=(n={config:t},G1("ImageModeration").create(n));this._moderation=r,this.handleImageModerationEvents(r);const{appId:i,cname:o,sid:s,token:a,uid:c,cid:l,vid:u}=this._joinInfo;await r.init({appId:i,areaCode:"",cname:o,sid:s,token:a,uid:c,cid:l,vid:u?Number(u):0},jr)}}catch(r){throw Array.isArray(r)?r[0]:r}}else{var n;if(!this._moderation)throw new xe(Q.INVALID_OPERATION,"[".concat(this._clientId,"] image moderation not started"));try{this._moderation.close(),this._moderation.removeAllListeners(),this._moderation=void 0}catch(r){throw Array.isArray(r)?r[0]:r}}}handleImageModerationEvents(e){e.on(Ka.CONNECTION_STATE_CHANGE,((t,n)=>{if(this.safeEmit($t.IMAGE_MODERATION_CONNECTION_STATE_CHANGE,t,n),t===Xs.CONNECTED){if(this.connectionState!=="CONNECTED")throw this.setImageModeration(!1),new xe(Q.OPERATION_ABORTED,"Image moderation was cancelled because it left the channel");e.inspectImage()}})),e.on(Ka.CLIENT_LOCAL_VIDEO_TRACK,(t=>{t(this.localTracks.filter((n=>n.trackMediaType==="video"))[0])}))}setP2PTransport(e){if((function(t){Kr(t,"transport",["default","auto","relay","sd-rtn"])})(e),this.mode!=="p2p")throw new xe(Q.INVALID_OPERATION,"only p2p mode can set p2pTransport");this.store.p2pTransport=e,D.info("[".concat(this._clientId,"] set client p2pTransport to ").concat(e))}getJoinChannelServiceRecords(){return D.debug("getJoinChannelServiceRecords"),this.store.joinChannelServiceRecords}async setPublishAudioFilterEnabled(e){nu(e,"enabled"),Dn("ENABLE_PUBLISH_AUDIO_FILTER",e),this._joinInfo&&await this._gateway.setPublishAudioFilterEnabled(e)}_handleResetAddStream(e,t){switch(t){case"audio":e._audio_added_=!1,e._trust_audio_stream_added_state_=!0;break;case"video":e._video_added_=!1,e._trust_video_stream_added_state_=!0}}},ft(at.prototype,"leave",[ej],Object.getOwnPropertyDescriptor(at.prototype,"leave"),at.prototype),ft(at.prototype,"publish",[tj],Object.getOwnPropertyDescriptor(at.prototype,"publish"),at.prototype),ft(at.prototype,"unpublish",[nj],Object.getOwnPropertyDescriptor(at.prototype,"unpublish"),at.prototype),ft(at.prototype,"subscribe",[rj],Object.getOwnPropertyDescriptor(at.prototype,"subscribe"),at.prototype),ft(at.prototype,"presubscribe",[ij],Object.getOwnPropertyDescriptor(at.prototype,"presubscribe"),at.prototype),ft(at.prototype,"massSubscribe",[oj],Object.getOwnPropertyDescriptor(at.prototype,"massSubscribe"),at.prototype),ft(at.prototype,"unsubscribe",[sj],Object.getOwnPropertyDescriptor(at.prototype,"unsubscribe"),at.prototype),ft(at.prototype,"massUnsubscribe",[aj],Object.getOwnPropertyDescriptor(at.prototype,"massUnsubscribe"),at.prototype),ft(at.prototype,"setLowStreamParameter",[cj],Object.getOwnPropertyDescriptor(at.prototype,"setLowStreamParameter"),at.prototype),ft(at.prototype,"enableDualStream",[lj],Object.getOwnPropertyDescriptor(at.prototype,"enableDualStream"),at.prototype),ft(at.prototype,"disableDualStream",[uj],Object.getOwnPropertyDescriptor(at.prototype,"disableDualStream"),at.prototype),ft(at.prototype,"setClientRole",[dj],Object.getOwnPropertyDescriptor(at.prototype,"setClientRole"),at.prototype),ft(at.prototype,"setProxyServer",[fj],Object.getOwnPropertyDescriptor(at.prototype,"setProxyServer"),at.prototype),ft(at.prototype,"setTurnServer",[hj],Object.getOwnPropertyDescriptor(at.prototype,"setTurnServer"),at.prototype),ft(at.prototype,"setLicense",[pj],Object.getOwnPropertyDescriptor(at.prototype,"setLicense"),at.prototype),ft(at.prototype,"startProxyServer",[mj],Object.getOwnPropertyDescriptor(at.prototype,"startProxyServer"),at.prototype),ft(at.prototype,"stopProxyServer",[gj],Object.getOwnPropertyDescriptor(at.prototype,"stopProxyServer"),at.prototype),ft(at.prototype,"setLocalAccessPointsV2",[vj],Object.getOwnPropertyDescriptor(at.prototype,"setLocalAccessPointsV2"),at.prototype),ft(at.prototype,"setLocalAccessPoints",[yj],Object.getOwnPropertyDescriptor(at.prototype,"setLocalAccessPoints"),at.prototype),ft(at.prototype,"setRemoteDefaultVideoStreamType",[Ej],Object.getOwnPropertyDescriptor(at.prototype,"setRemoteDefaultVideoStreamType"),at.prototype),ft(at.prototype,"setRemoteVideoStreamType",[bj],Object.getOwnPropertyDescriptor(at.prototype,"setRemoteVideoStreamType"),at.prototype),ft(at.prototype,"setStreamFallbackOption",[Sj],Object.getOwnPropertyDescriptor(at.prototype,"setStreamFallbackOption"),at.prototype),ft(at.prototype,"setEncryptionConfig",[Aj],Object.getOwnPropertyDescriptor(at.prototype,"setEncryptionConfig"),at.prototype),ft(at.prototype,"renewToken",[Cj],Object.getOwnPropertyDescriptor(at.prototype,"renewToken"),at.prototype),ft(at.prototype,"enableAudioVolumeIndicator",[wj],Object.getOwnPropertyDescriptor(at.prototype,"enableAudioVolumeIndicator"),at.prototype),ft(at.prototype,"startLiveStreaming",[Tj],Object.getOwnPropertyDescriptor(at.prototype,"startLiveStreaming"),at.prototype),ft(at.prototype,"setLiveTranscoding",[Ij],Object.getOwnPropertyDescriptor(at.prototype,"setLiveTranscoding"),at.prototype),ft(at.prototype,"stopLiveStreaming",[Pj],Object.getOwnPropertyDescriptor(at.prototype,"stopLiveStreaming"),at.prototype),ft(at.prototype,"startChannelMediaRelay",[Oj],Object.getOwnPropertyDescriptor(at.prototype,"startChannelMediaRelay"),at.prototype),ft(at.prototype,"updateChannelMediaRelay",[_j],Object.getOwnPropertyDescriptor(at.prototype,"updateChannelMediaRelay"),at.prototype),ft(at.prototype,"stopChannelMediaRelay",[Rj],Object.getOwnPropertyDescriptor(at.prototype,"stopChannelMediaRelay"),at.prototype),ft(at.prototype,"sendCustomReportMessage",[kj],Object.getOwnPropertyDescriptor(at.prototype,"sendCustomReportMessage"),at.prototype),ft(at.prototype,"pickSVCLayer",[xj],Object.getOwnPropertyDescriptor(at.prototype,"pickSVCLayer"),at.prototype),ft(at.prototype,"setRTMConfig",[Dj],Object.getOwnPropertyDescriptor(at.prototype,"setRTMConfig"),at.prototype),ft(at.prototype,"enableContentInspect",[Lj],Object.getOwnPropertyDescriptor(at.prototype,"enableContentInspect"),at.prototype),ft(at.prototype,"disableContentInspect",[Nj],Object.getOwnPropertyDescriptor(at.prototype,"disableContentInspect"),at.prototype),ft(at.prototype,"setImageModeration",[Mj],Object.getOwnPropertyDescriptor(at.prototype,"setImageModeration"),at.prototype),ft(at.prototype,"setP2PTransport",[Bj],Object.getOwnPropertyDescriptor(at.prototype,"setP2PTransport"),at.prototype),ft(at.prototype,"getJoinChannelServiceRecords",[Fj],Object.getOwnPropertyDescriptor(at.prototype,"getJoinChannelServiceRecords"),at.prototype),ft(at.prototype,"setPublishAudioFilterEnabled",[Uj],Object.getOwnPropertyDescriptor(at.prototype,"setPublishAudioFilterEnabled"),at.prototype),at);class Eg{constructor(t,n){H(this,"id",0),H(this,"element",void 0),H(this,"peerPair",void 0),H(this,"context",void 0),H(this,"audioPlayerElement",void 0),H(this,"audioTrack",void 0),Eg.count+=1,this.id=Eg.count,this.element=t,this.context=n}initPeers(){this.peerPair=[new RTCPeerConnection,new RTCPeerConnection],this.peerPair[1].ontrack=t=>{const n=document.createElement("audio");n.srcObject=new MediaStream([t.track]),n.play(),this.audioPlayerElement=n}}async switchSdp(){if(!this.peerPair)return;const t=async(r,i)=>{const o=i==="offer"?await r.createOffer():await r.createAnswer();return await r.setLocalDescription(o),r.iceGatheringState==="complete"?r.localDescription:new ot((s=>{r.onicegatheringstatechange=()=>{r.iceGatheringState==="complete"&&s(r.localDescription)}}))},n=async(r,i)=>await r.setRemoteDescription(i);try{const r=await t(this.peerPair[0],"offer");await n(this.peerPair[1],r);const i=await t(this.peerPair[1],"answer");await n(this.peerPair[0],i)}catch(r){throw new xe(Q.LOCAL_AEC_ERROR,r.toString()).print()}}async getTracksFromMediaElement(t){if(this.audioTrack)return this.audioTrack;let n;try{t instanceof HTMLVideoElement&&(t.captureStream?t.captureStream():t.mozCaptureStream()),n=this.context.createMediaStreamDestination(),this.context.createMediaElementSource(t).connect(n)}catch(i){throw new xe(Q.LOCAL_AEC_ERROR,i.toString()).print()}if(!n)throw new xe(Q.LOCAL_AEC_ERROR,"no dest node when local aec").print();const r=n.stream.getAudioTracks()[0];return this.audioTrack=r,r}getElement(){return this.element}async startEchoCancellation(){this.context.resume(),this.peerPair&&this.close(),this.initPeers();const t=this.element,n=await this.getTracksFromMediaElement(t);this.peerPair&&this.peerPair[0].addTrack(n),await this.switchSdp()}close(){D.debug("close echo cancellation unit, id is",this.id),this.audioPlayerElement&&this.audioPlayerElement.pause(),this.peerPair&&this.peerPair.forEach((t=>{t.close()})),this.peerPair=void 0,this.audioPlayerElement=void 0}}var Hj,I5;H(Eg,"count",0);const RFe=window.AudioContext||window.webkitAudioContext,kFe=new(Hj=Pt({report:mt}),ft((I5=class{constructor(){H(this,"units",[]),H(this,"context",void 0)}processExternalMediaAEC(e){if(!this._doesEnvironmentNeedAEC())return D.debug("the system does not need to process local aec"),-1;this.context||(this.context=new RFe);let t=this.units.find((n=>n&&n.getElement()===e));return t||(t=new Eg(e,this.context),this.units.push(t)),t.startEchoCancellation(),D.debug("start processing local audio echo cancellation, id is",t.id),t.id}_doesEnvironmentNeedAEC(){return an().name!==An.SAFARI}}).prototype,"processExternalMediaAEC",[Hj],Object.getOwnPropertyDescriptor(I5.prototype,"processExternalMediaAEC"),I5.prototype),I5);function zj(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable}))),n.push.apply(n,r)}return n}function Wj(e){for(var t=1;t1&&arguments[1]!==void 0&&arguments[1];if(!IE)return;const n=Tr._cspEventHandlerPointer;if(n&&t)return void console.error(n,t);const r=i=>{if(!(i&&i.blockedURI&&(Tr.onSecurityPolicyViolation||Tr.getListeners(Jc.SECURITY_POLICY_VIOLATION).length>0)))return;const o=i.blockedURI;he("CSP_DETECTED_HOSTNAME_LIST").some((s=>lt(o).call(o,s)))&&(Tr.onSecurityPolicyViolation&&typeof Tr.onSecurityPolicyViolation=="function"&&Tr.onSecurityPolicyViolation(i),Tr.getListeners(Jc.SECURITY_POLICY_VIOLATION).length>0&&Tr.safeEmit(Jc.SECURITY_POLICY_VIOLATION,i))};n&&IE.removeEventListener("securitypolicyviolation",n),(t||e&&typeof e=="function"||Tr.getListeners(Jc.SECURITY_POLICY_VIOLATION).length>0)&&IE.addEventListener("securitypolicyviolation",r),Tr._cspEventHandlerPointer=r}var xFe=Co,DFe=JK,Vj=RegExp.prototype,LFe=function(e){return e===Vj||xFe(Vj,e)?DFe(e):e.flags},io=kr(LFe);function t1(e){let t=e.length;for(;--t>=0;)e[t]=0}const DI=256,z$=286,Am=30,Cm=15,hC=new Uint8Array([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0]),R3=new Uint8Array([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13]),NFe=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]),Gj=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),ql=new Array(576);t1(ql);const wm=new Array(60);t1(wm);const bg=new Array(512);t1(bg);const Sg=new Array(256);t1(Sg);const LI=new Array(29);t1(LI);const M4=new Array(Am);function PE(e,t,n,r,i){this.static_tree=e,this.extra_bits=t,this.extra_base=n,this.elems=r,this.max_length=i,this.has_stree=e&&e.length}let Jj,Zj,Yj;function OE(e,t){this.dyn_tree=e,this.max_code=0,this.stat_desc=t}t1(M4);const W$=e=>e<256?bg[e]:bg[256+(e>>>7)],Ag=(e,t)=>{e.pending_buf[e.pending++]=255&t,e.pending_buf[e.pending++]=t>>>8&255},_s=(e,t,n)=>{e.bi_valid>16-n?(e.bi_buf|=t<>16-e.bi_valid,e.bi_valid+=n-16):(e.bi_buf|=t<{_s(e,n[2*t],n[2*t+1])},V$=(e,t)=>{let n=0;do n|=1&e,e>>>=1,n<<=1;while(--t>0);return n>>>1},G$=(e,t,n)=>{const r=new Array(16);let i,o,s=0;for(i=1;i<=Cm;i++)s=s+n[i-1]<<1,r[i]=s;for(o=0;o<=t;o++){let a=e[2*o+1];a!==0&&(e[2*o]=V$(r[a]++,a))}},J$=e=>{let t;for(t=0;t{e.bi_valid>8?Ag(e,e.bi_buf):e.bi_valid>0&&(e.pending_buf[e.pending++]=e.bi_buf),e.bi_buf=0,e.bi_valid=0},Xj=(e,t,n,r)=>{const i=2*t,o=2*n;return e[i]{const r=e.heap[n];let i=n<<1;for(;i<=e.heap_len&&(i{let r,i,o,s,a=0;if(e.sym_next!==0)do r=255&e.pending_buf[e.sym_buf+a++],r+=(255&e.pending_buf[e.sym_buf+a++])<<8,i=e.pending_buf[e.sym_buf+a++],r===0?Zc(e,i,t):(o=Sg[i],Zc(e,o+DI+1,t),s=hC[o],s!==0&&(i-=LI[o],_s(e,i,s)),r--,o=W$(r),Zc(e,o,n),s=R3[o],s!==0&&(r-=M4[o],_s(e,r,s)));while(a{const n=t.dyn_tree,r=t.stat_desc.static_tree,i=t.stat_desc.has_stree,o=t.stat_desc.elems;let s,a,c,l=-1;for(e.heap_len=0,e.heap_max=573,s=0;s>1;s>=1;s--)_E(e,n,s);c=o;do s=e.heap[1],e.heap[1]=e.heap[e.heap_len--],_E(e,n,1),a=e.heap[1],e.heap[--e.heap_max]=s,e.heap[--e.heap_max]=a,n[2*c]=n[2*s]+n[2*a],e.depth[c]=(e.depth[s]>=e.depth[a]?e.depth[s]:e.depth[a])+1,n[2*s+1]=n[2*a+1]=c,e.heap[1]=c++,_E(e,n,1);while(e.heap_len>=2);e.heap[--e.heap_max]=e.heap[1],((u,d)=>{const f=d.dyn_tree,h=d.max_code,p=d.stat_desc.static_tree,g=d.stat_desc.has_stree,m=d.stat_desc.extra_bits,y=d.stat_desc.extra_base,v=d.stat_desc.max_length;let E,b,S,w,C,_,I=0;for(w=0;w<=Cm;w++)u.bl_count[w]=0;for(f[2*u.heap[u.heap_max]+1]=0,E=u.heap_max+1;E<573;E++)b=u.heap[E],w=f[2*f[2*b+1]+1]+1,w>v&&(w=v,I++),f[2*b+1]=w,b>h||(u.bl_count[w]++,C=0,b>=y&&(C=m[b-y]),_=f[2*b],u.opt_len+=_*(w+C),g&&(u.static_len+=_*(p[2*b+1]+C)));if(I!==0){do{for(w=v-1;u.bl_count[w]===0;)w--;u.bl_count[w]--,u.bl_count[w+1]+=2,u.bl_count[v]--,I-=2}while(I>0);for(w=v;w!==0;w--)for(b=u.bl_count[w];b!==0;)S=u.heap[--E],S>h||(f[2*S+1]!==w&&(u.opt_len+=(w-f[2*S+1])*f[2*S],f[2*S+1]=w),b--)}})(e,t),G$(n,l,e.bl_count)},Kj=(e,t,n)=>{let r,i,o=-1,s=t[1],a=0,c=7,l=4;for(s===0&&(c=138,l=3),t[2*(n+1)+1]=65535,r=0;r<=n;r++)i=s,s=t[2*(r+1)+1],++a{let r,i,o=-1,s=t[1],a=0,c=7,l=4;for(s===0&&(c=138,l=3),r=0;r<=n;r++)if(i=s,s=t[2*(r+1)+1],!(++a{_s(e,0+(r?1:0),3),Z$(e),Ag(e,n),Ag(e,~n),n&&e.pending_buf.set(e.window.subarray(t,t+n),e.pending),e.pending+=n};var MFe=e=>{$j||((()=>{let t,n,r,i,o;const s=new Array(16);for(r=0,i=0;i<28;i++)for(LI[i]=r,t=0;t<1<>=7;i{let i,o,s=0;e.level>0?(e.strm.data_type===2&&(e.strm.data_type=(a=>{let c,l=4093624447;for(c=0;c<=31;c++,l>>>=1)if(1&l&&a.dyn_ltree[2*c]!==0)return 0;if(a.dyn_ltree[18]!==0||a.dyn_ltree[20]!==0||a.dyn_ltree[26]!==0)return 1;for(c=32;c{let c;for(Kj(a,a.dyn_ltree,a.l_desc.max_code),Kj(a,a.dyn_dtree,a.d_desc.max_code),RE(a,a.bl_desc),c=18;c>=3&&a.bl_tree[2*Gj[c]+1]===0;c--);return a.opt_len+=3*(c+1)+5+5+4,c})(e),i=e.opt_len+3+7>>>3,o=e.static_len+3+7>>>3,o<=i&&(i=o)):i=o=n+5,n+4<=i&&t!==-1?Y$(e,t,n,r):e.strategy===4||o===i?(_s(e,2+(r?1:0),3),Qj(e,ql,wm)):(_s(e,4+(r?1:0),3),((a,c,l,u)=>{let d;for(_s(a,c-257,5),_s(a,l-1,5),_s(a,u-4,4),d=0;d(e.pending_buf[e.sym_buf+e.sym_next++]=t,e.pending_buf[e.sym_buf+e.sym_next++]=t>>8,e.pending_buf[e.sym_buf+e.sym_next++]=n,t===0?e.dyn_ltree[2*n]++:(e.matches++,t--,e.dyn_ltree[2*(Sg[n]+DI+1)]++,e.dyn_dtree[2*W$(t)]++),e.sym_next===e.sym_end),UFe=e=>{_s(e,2,3),Zc(e,256,ql),(t=>{t.bi_valid===16?(Ag(t,t.bi_buf),t.bi_buf=0,t.bi_valid=0):t.bi_valid>=8&&(t.pending_buf[t.pending++]=255&t.bi_buf,t.bi_buf>>=8,t.bi_valid-=8)})(e)},jFe={_tr_init:MFe,_tr_stored_block:Y$,_tr_flush_block:BFe,_tr_tally:FFe,_tr_align:UFe},Cg=(e,t,n,r)=>{let i=65535&e|0,o=e>>>16&65535|0,s=0;for(;n!==0;){s=n>2e3?2e3:n,n-=s;do i=i+t[r++]|0,o=o+i|0;while(--s);i%=65521,o%=65521}return i|o<<16|0};const HFe=new Uint32Array((()=>{let e,t=[];for(var n=0;n<256;n++){e=n;for(var r=0;r<8;r++)e=1&e?3988292384^e>>>1:e>>>1;t[n]=e}return t})());var ho=(e,t,n,r)=>{const i=HFe,o=r+n;e^=-1;for(let s=r;s>>8^i[255&(e^t[s])];return-1^e},gf={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"},v6={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_UNKNOWN:2,Z_DEFLATED:8};const{_tr_init:zFe,_tr_stored_block:pC,_tr_flush_block:WFe,_tr_tally:Rd,_tr_align:VFe}=jFe,{Z_NO_FLUSH:kd,Z_PARTIAL_FLUSH:GFe,Z_FULL_FLUSH:JFe,Z_FINISH:Pa,Z_BLOCK:eH,Z_OK:To,Z_STREAM_END:tH,Z_STREAM_ERROR:ol,Z_DATA_ERROR:ZFe,Z_BUF_ERROR:kE,Z_DEFAULT_COMPRESSION:YFe,Z_FILTERED:XFe,Z_HUFFMAN_ONLY:P5,Z_RLE:QFe,Z_FIXED:KFe,Z_DEFAULT_STRATEGY:qFe,Z_UNKNOWN:$Fe,Z_DEFLATED:y6}=v6,mC=286,eUe=30,tUe=19,nUe=2*mC+1,rUe=15,W0=258,sl=262,Ip=42,V0=113,Z1=666,G0=(e,t)=>(e.msg=gf[t],t),nH=e=>2*e-(e>4?9:0),gd=e=>{let t=e.length;for(;--t>=0;)e[t]=0},iUe=e=>{let t,n,r,i=e.w_size;t=e.hash_size,r=t;do n=e.head[--r],e.head[r]=n>=i?n-i:0;while(--t);t=i,r=t;do n=e.prev[--r],e.prev[r]=n>=i?n-i:0;while(--t)};let xd=(e,t,n)=>(t<{const t=e.state;let n=t.pending;n>e.avail_out&&(n=e.avail_out),n!==0&&(e.output.set(t.pending_buf.subarray(t.pending_out,t.pending_out+n),e.next_out),e.next_out+=n,t.pending_out+=n,e.total_out+=n,e.avail_out-=n,t.pending-=n,t.pending===0&&(t.pending_out=0))},$s=(e,t)=>{WFe(e,e.block_start>=0?e.block_start:-1,e.strstart-e.block_start,t),e.block_start=e.strstart,Ks(e.strm)},br=(e,t)=>{e.pending_buf[e.pending++]=t},I1=(e,t)=>{e.pending_buf[e.pending++]=t>>>8&255,e.pending_buf[e.pending++]=255&t},gC=(e,t,n,r)=>{let i=e.avail_in;return i>r&&(i=r),i===0?0:(e.avail_in-=i,t.set(e.input.subarray(e.next_in,e.next_in+i),n),e.state.wrap===1?e.adler=Cg(e.adler,t,i,n):e.state.wrap===2&&(e.adler=ho(e.adler,t,i,n)),e.next_in+=i,e.total_in+=i,i)},X$=(e,t)=>{let n,r,i=e.max_chain_length,o=e.strstart,s=e.prev_length,a=e.nice_match;const c=e.strstart>e.w_size-sl?e.strstart-(e.w_size-sl):0,l=e.window,u=e.w_mask,d=e.prev,f=e.strstart+W0;let h=l[o+s-1],p=l[o+s];e.prev_length>=e.good_match&&(i>>=2),a>e.lookahead&&(a=e.lookahead);do if(n=t,l[n+s]===p&&l[n+s-1]===h&&l[n]===l[o]&&l[++n]===l[o+1]){o+=2,n++;do;while(l[++o]===l[++n]&&l[++o]===l[++n]&&l[++o]===l[++n]&&l[++o]===l[++n]&&l[++o]===l[++n]&&l[++o]===l[++n]&&l[++o]===l[++n]&&l[++o]===l[++n]&&os){if(e.match_start=t,s=r,r>=a)break;h=l[o+s-1],p=l[o+s]}}while((t=d[t&u])>c&&--i!=0);return s<=e.lookahead?s:e.lookahead},Pp=e=>{const t=e.w_size;let n,r,i;do{if(r=e.window_size-e.lookahead-e.strstart,e.strstart>=t+(t-sl)&&(e.window.set(e.window.subarray(t,t+t-r),0),e.match_start-=t,e.strstart-=t,e.block_start-=t,e.insert>e.strstart&&(e.insert=e.strstart),iUe(e),r+=t),e.strm.avail_in===0)break;if(n=gC(e.strm,e.window,e.strstart+e.lookahead,r),e.lookahead+=n,e.lookahead+e.insert>=3)for(i=e.strstart-e.insert,e.ins_h=e.window[i],e.ins_h=xd(e,e.ins_h,e.window[i+1]);e.insert&&(e.ins_h=xd(e,e.ins_h,e.window[i+3-1]),e.prev[i&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=i,i++,e.insert--,!(e.lookahead+e.insert<3)););}while(e.lookahead{let n,r,i,o=e.pending_buf_size-5>e.w_size?e.w_size:e.pending_buf_size-5,s=0,a=e.strm.avail_in;do{if(n=65535,i=e.bi_valid+42>>3,e.strm.avail_outr+e.strm.avail_in&&(n=r+e.strm.avail_in),n>i&&(n=i),n>8,e.pending_buf[e.pending-2]=~n,e.pending_buf[e.pending-1]=~n>>8,Ks(e.strm),r&&(r>n&&(r=n),e.strm.output.set(e.window.subarray(e.block_start,e.block_start+r),e.strm.next_out),e.strm.next_out+=r,e.strm.avail_out-=r,e.strm.total_out+=r,e.block_start+=r,n-=r),n&&(gC(e.strm,e.strm.output,e.strm.next_out,n),e.strm.next_out+=n,e.strm.avail_out-=n,e.strm.total_out+=n)}while(s===0);return a-=e.strm.avail_in,a&&(a>=e.w_size?(e.matches=2,e.window.set(e.strm.input.subarray(e.strm.next_in-e.w_size,e.strm.next_in),0),e.strstart=e.w_size,e.insert=e.strstart):(e.window_size-e.strstart<=a&&(e.strstart-=e.w_size,e.window.set(e.window.subarray(e.w_size,e.w_size+e.strstart),0),e.matches<2&&e.matches++,e.insert>e.strstart&&(e.insert=e.strstart)),e.window.set(e.strm.input.subarray(e.strm.next_in-a,e.strm.next_in),e.strstart),e.strstart+=a,e.insert+=a>e.w_size-e.insert?e.w_size-e.insert:a),e.block_start=e.strstart),e.high_wateri&&e.block_start>=e.w_size&&(e.block_start-=e.w_size,e.strstart-=e.w_size,e.window.set(e.window.subarray(e.w_size,e.w_size+e.strstart),0),e.matches<2&&e.matches++,i+=e.w_size,e.insert>e.strstart&&(e.insert=e.strstart)),i>e.strm.avail_in&&(i=e.strm.avail_in),i&&(gC(e.strm,e.window,e.strstart,i),e.strstart+=i,e.insert+=i>e.w_size-e.insert?e.w_size-e.insert:i),e.high_water>3,i=e.pending_buf_size-i>65535?65535:e.pending_buf_size-i,o=i>e.w_size?e.w_size:i,r=e.strstart-e.block_start,(r>=o||(r||t===Pa)&&t!==kd&&e.strm.avail_in===0&&r<=i)&&(n=r>i?i:r,s=t===Pa&&e.strm.avail_in===0&&n===r?1:0,pC(e,e.block_start,n,s),e.block_start+=n,Ks(e.strm)),s?3:1)},xE=(e,t)=>{let n,r;for(;;){if(e.lookahead=3&&(e.ins_h=xd(e,e.ins_h,e.window[e.strstart+3-1]),n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),n!==0&&e.strstart-n<=e.w_size-sl&&(e.match_length=X$(e,n)),e.match_length>=3)if(r=Rd(e,e.strstart-e.match_start,e.match_length-3),e.lookahead-=e.match_length,e.match_length<=e.max_lazy_match&&e.lookahead>=3){e.match_length--;do e.strstart++,e.ins_h=xd(e,e.ins_h,e.window[e.strstart+3-1]),n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart;while(--e.match_length!=0);e.strstart++}else e.strstart+=e.match_length,e.match_length=0,e.ins_h=e.window[e.strstart],e.ins_h=xd(e,e.ins_h,e.window[e.strstart+1]);else r=Rd(e,0,e.window[e.strstart]),e.lookahead--,e.strstart++;if(r&&($s(e,!1),e.strm.avail_out===0))return 1}return e.insert=e.strstart<2?e.strstart:2,t===Pa?($s(e,!0),e.strm.avail_out===0?3:4):e.sym_next&&($s(e,!1),e.strm.avail_out===0)?1:2},ih=(e,t)=>{let n,r,i;for(;;){if(e.lookahead=3&&(e.ins_h=xd(e,e.ins_h,e.window[e.strstart+3-1]),n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart),e.prev_length=e.match_length,e.prev_match=e.match_start,e.match_length=2,n!==0&&e.prev_length4096)&&(e.match_length=2)),e.prev_length>=3&&e.match_length<=e.prev_length){i=e.strstart+e.lookahead-3,r=Rd(e,e.strstart-1-e.prev_match,e.prev_length-3),e.lookahead-=e.prev_length-1,e.prev_length-=2;do++e.strstart<=i&&(e.ins_h=xd(e,e.ins_h,e.window[e.strstart+3-1]),n=e.prev[e.strstart&e.w_mask]=e.head[e.ins_h],e.head[e.ins_h]=e.strstart);while(--e.prev_length!=0);if(e.match_available=0,e.match_length=2,e.strstart++,r&&($s(e,!1),e.strm.avail_out===0))return 1}else if(e.match_available){if(r=Rd(e,0,e.window[e.strstart-1]),r&&$s(e,!1),e.strstart++,e.lookahead--,e.strm.avail_out===0)return 1}else e.match_available=1,e.strstart++,e.lookahead--}return e.match_available&&(r=Rd(e,0,e.window[e.strstart-1]),e.match_available=0),e.insert=e.strstart<2?e.strstart:2,t===Pa?($s(e,!0),e.strm.avail_out===0?3:4):e.sym_next&&($s(e,!1),e.strm.avail_out===0)?1:2};function Bc(e,t,n,r,i){this.good_length=e,this.max_lazy=t,this.nice_length=n,this.max_chain=r,this.func=i}const Y1=[new Bc(0,0,0,0,Q$),new Bc(4,4,8,4,xE),new Bc(4,5,16,8,xE),new Bc(4,6,32,32,xE),new Bc(4,4,16,16,ih),new Bc(8,16,32,32,ih),new Bc(8,16,128,128,ih),new Bc(8,32,128,256,ih),new Bc(32,128,258,1024,ih),new Bc(32,258,258,4096,ih)];function oUe(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=y6,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new Uint16Array(2*nUe),this.dyn_dtree=new Uint16Array(2*(2*eUe+1)),this.bl_tree=new Uint16Array(2*(2*tUe+1)),gd(this.dyn_ltree),gd(this.dyn_dtree),gd(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Uint16Array(rUe+1),this.heap=new Uint16Array(2*mC+1),gd(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Uint16Array(2*mC+1),gd(this.depth),this.sym_buf=0,this.lit_bufsize=0,this.sym_next=0,this.sym_end=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}const wg=e=>{if(!e)return 1;const t=e.state;return!t||t.strm!==e||t.status!==Ip&&t.status!==57&&t.status!==69&&t.status!==73&&t.status!==91&&t.status!==103&&t.status!==V0&&t.status!==Z1?1:0},K$=e=>{if(wg(e))return G0(e,ol);e.total_in=e.total_out=0,e.data_type=$Fe;const t=e.state;return t.pending=0,t.pending_out=0,t.wrap<0&&(t.wrap=-t.wrap),t.status=t.wrap===2?57:t.wrap?Ip:V0,e.adler=t.wrap===2?0:1,t.last_flush=-2,zFe(t),To},q$=e=>{const t=K$(e);return t===To&&(n=>{n.window_size=2*n.w_size,gd(n.head),n.max_lazy_match=Y1[n.level].max_lazy,n.good_match=Y1[n.level].good_length,n.nice_match=Y1[n.level].nice_length,n.max_chain_length=Y1[n.level].max_chain,n.strstart=0,n.block_start=0,n.lookahead=0,n.insert=0,n.match_length=n.prev_length=2,n.match_available=0,n.ins_h=0})(e.state),t},rH=(e,t,n,r,i,o)=>{if(!e)return ol;let s=1;if(t===YFe&&(t=6),r<0?(s=0,r=-r):r>15&&(s=2,r-=16),i<1||i>9||n!==y6||r<8||r>15||t<0||t>9||o<0||o>KFe||r===8&&s!==1)return G0(e,ol);r===8&&(r=9);const a=new oUe;return e.state=a,a.strm=e,a.status=Ip,a.wrap=s,a.gzhead=null,a.w_bits=r,a.w_size=1<{if(wg(e)||t>eH||t<0)return e?G0(e,ol):ol;const n=e.state;if(!e.output||e.avail_in!==0&&!e.input||n.status===Z1&&t!==Pa)return G0(e,e.avail_out===0?kE:ol);const r=n.last_flush;if(n.last_flush=t,n.pending!==0){if(Ks(e),e.avail_out===0)return n.last_flush=-1,To}else if(e.avail_in===0&&nH(t)<=nH(r)&&t!==Pa)return G0(e,kE);if(n.status===Z1&&e.avail_in!==0)return G0(e,kE);if(n.status===Ip&&n.wrap===0&&(n.status=V0),n.status===Ip){let i=y6+(n.w_bits-8<<4)<<8,o=-1;if(o=n.strategy>=P5||n.level<2?0:n.level<6?1:n.level===6?2:3,i|=o<<6,n.strstart!==0&&(i|=32),i+=31-i%31,I1(n,i),n.strstart!==0&&(I1(n,e.adler>>>16),I1(n,65535&e.adler)),e.adler=1,n.status=V0,Ks(e),n.pending!==0)return n.last_flush=-1,To}if(n.status===57){if(e.adler=0,br(n,31),br(n,139),br(n,8),n.gzhead)br(n,(n.gzhead.text?1:0)+(n.gzhead.hcrc?2:0)+(n.gzhead.extra?4:0)+(n.gzhead.name?8:0)+(n.gzhead.comment?16:0)),br(n,255&n.gzhead.time),br(n,n.gzhead.time>>8&255),br(n,n.gzhead.time>>16&255),br(n,n.gzhead.time>>24&255),br(n,n.level===9?2:n.strategy>=P5||n.level<2?4:0),br(n,255&n.gzhead.os),n.gzhead.extra&&n.gzhead.extra.length&&(br(n,255&n.gzhead.extra.length),br(n,n.gzhead.extra.length>>8&255)),n.gzhead.hcrc&&(e.adler=ho(e.adler,n.pending_buf,n.pending,0)),n.gzindex=0,n.status=69;else if(br(n,0),br(n,0),br(n,0),br(n,0),br(n,0),br(n,n.level===9?2:n.strategy>=P5||n.level<2?4:0),br(n,3),n.status=V0,Ks(e),n.pending!==0)return n.last_flush=-1,To}if(n.status===69){if(n.gzhead.extra){let i=n.pending,o=(65535&n.gzhead.extra.length)-n.gzindex;for(;n.pending+o>n.pending_buf_size;){let a=n.pending_buf_size-n.pending;if(n.pending_buf.set(n.gzhead.extra.subarray(n.gzindex,n.gzindex+a),n.pending),n.pending=n.pending_buf_size,n.gzhead.hcrc&&n.pending>i&&(e.adler=ho(e.adler,n.pending_buf,n.pending-i,i)),n.gzindex+=a,Ks(e),n.pending!==0)return n.last_flush=-1,To;i=0,o-=a}let s=new Uint8Array(n.gzhead.extra);n.pending_buf.set(s.subarray(n.gzindex,n.gzindex+o),n.pending),n.pending+=o,n.gzhead.hcrc&&n.pending>i&&(e.adler=ho(e.adler,n.pending_buf,n.pending-i,i)),n.gzindex=0}n.status=73}if(n.status===73){if(n.gzhead.name){let i,o=n.pending;do{if(n.pending===n.pending_buf_size){if(n.gzhead.hcrc&&n.pending>o&&(e.adler=ho(e.adler,n.pending_buf,n.pending-o,o)),Ks(e),n.pending!==0)return n.last_flush=-1,To;o=0}i=n.gzindexo&&(e.adler=ho(e.adler,n.pending_buf,n.pending-o,o)),n.gzindex=0}n.status=91}if(n.status===91){if(n.gzhead.comment){let i,o=n.pending;do{if(n.pending===n.pending_buf_size){if(n.gzhead.hcrc&&n.pending>o&&(e.adler=ho(e.adler,n.pending_buf,n.pending-o,o)),Ks(e),n.pending!==0)return n.last_flush=-1,To;o=0}i=n.gzindexo&&(e.adler=ho(e.adler,n.pending_buf,n.pending-o,o))}n.status=103}if(n.status===103){if(n.gzhead.hcrc){if(n.pending+2>n.pending_buf_size&&(Ks(e),n.pending!==0))return n.last_flush=-1,To;br(n,255&e.adler),br(n,e.adler>>8&255),e.adler=0}if(n.status=V0,Ks(e),n.pending!==0)return n.last_flush=-1,To}if(e.avail_in!==0||n.lookahead!==0||t!==kd&&n.status!==Z1){let i=n.level===0?Q$(n,t):n.strategy===P5?((o,s)=>{let a;for(;;){if(o.lookahead===0&&(Pp(o),o.lookahead===0)){if(s===kd)return 1;break}if(o.match_length=0,a=Rd(o,0,o.window[o.strstart]),o.lookahead--,o.strstart++,a&&($s(o,!1),o.strm.avail_out===0))return 1}return o.insert=0,s===Pa?($s(o,!0),o.strm.avail_out===0?3:4):o.sym_next&&($s(o,!1),o.strm.avail_out===0)?1:2})(n,t):n.strategy===QFe?((o,s)=>{let a,c,l,u;const d=o.window;for(;;){if(o.lookahead<=W0){if(Pp(o),o.lookahead<=W0&&s===kd)return 1;if(o.lookahead===0)break}if(o.match_length=0,o.lookahead>=3&&o.strstart>0&&(l=o.strstart-1,c=d[l],c===d[++l]&&c===d[++l]&&c===d[++l])){u=o.strstart+W0;do;while(c===d[++l]&&c===d[++l]&&c===d[++l]&&c===d[++l]&&c===d[++l]&&c===d[++l]&&c===d[++l]&&c===d[++l]&&lo.lookahead&&(o.match_length=o.lookahead)}if(o.match_length>=3?(a=Rd(o,1,o.match_length-3),o.lookahead-=o.match_length,o.strstart+=o.match_length,o.match_length=0):(a=Rd(o,0,o.window[o.strstart]),o.lookahead--,o.strstart++),a&&($s(o,!1),o.strm.avail_out===0))return 1}return o.insert=0,s===Pa?($s(o,!0),o.strm.avail_out===0?3:4):o.sym_next&&($s(o,!1),o.strm.avail_out===0)?1:2})(n,t):Y1[n.level].func(n,t);if(i!==3&&i!==4||(n.status=Z1),i===1||i===3)return e.avail_out===0&&(n.last_flush=-1),To;if(i===2&&(t===GFe?VFe(n):t!==eH&&(pC(n,0,0,!1),t===JFe&&(gd(n.head),n.lookahead===0&&(n.strstart=0,n.block_start=0,n.insert=0))),Ks(e),e.avail_out===0))return n.last_flush=-1,To}return t!==Pa?To:n.wrap<=0?tH:(n.wrap===2?(br(n,255&e.adler),br(n,e.adler>>8&255),br(n,e.adler>>16&255),br(n,e.adler>>24&255),br(n,255&e.total_in),br(n,e.total_in>>8&255),br(n,e.total_in>>16&255),br(n,e.total_in>>24&255)):(I1(n,e.adler>>>16),I1(n,65535&e.adler)),Ks(e),n.wrap>0&&(n.wrap=-n.wrap),n.pending!==0?To:tH)},aUe=(e,t)=>{let n=t.length;if(wg(e))return ol;const r=e.state,i=r.wrap;if(i===2||i===1&&r.status!==Ip||r.lookahead)return ol;if(i===1&&(e.adler=Cg(e.adler,t,n,0)),r.wrap=0,n>=r.w_size){i===0&&(gd(r.head),r.strstart=0,r.block_start=0,r.insert=0);let c=new Uint8Array(r.w_size);c.set(t.subarray(n-r.w_size,n),0),t=c,n=r.w_size}const o=e.avail_in,s=e.next_in,a=e.input;for(e.avail_in=n,e.next_in=0,e.input=t,Pp(r);r.lookahead>=3;){let c=r.strstart,l=r.lookahead-2;do r.ins_h=xd(r,r.ins_h,r.window[c+3-1]),r.prev[c&r.w_mask]=r.head[r.ins_h],r.head[r.ins_h]=c,c++;while(--l);r.strstart=c,r.lookahead=2,Pp(r)}return r.strstart+=r.lookahead,r.block_start=r.strstart,r.insert=r.lookahead,r.lookahead=0,r.match_length=r.prev_length=2,r.match_available=0,e.next_in=s,e.input=a,e.avail_in=o,r.wrap=i,To},Tm={deflateInit:(e,t)=>rH(e,t,y6,15,8,qFe),deflateInit2:rH,deflateReset:q$,deflateResetKeep:K$,deflateSetHeader:(e,t)=>wg(e)||e.state.wrap!==2?ol:(e.state.gzhead=t,To),deflate:sUe,deflateEnd:e=>{if(wg(e))return ol;const t=e.state.status;return e.state=null,t===V0?G0(e,ZFe):To},deflateSetDictionary:aUe,deflateInfo:"pako deflate (from Nodeca project)"};const cUe=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);var E6={assign:function(e){const t=Array.prototype.slice.call(arguments,1);for(;t.length;){const n=t.shift();if(n){if(typeof n!="object")throw new TypeError(n+"must be non-object");for(const r in n)cUe(n,r)&&(e[r]=n[r])}}return e},flattenChunks:e=>{let t=0;for(let r=0,i=e.length;r=252?6:e>=248?5:e>=240?4:e>=224?3:e>=192?2:1;Tg[254]=Tg[254]=1;var Ig={string2buf:e=>{if(typeof TextEncoder=="function"&&TextEncoder.prototype.encode)return new TextEncoder().encode(e);let t,n,r,i,o,s=e.length,a=0;for(i=0;i>>6,t[o++]=128|63&n):n<65536?(t[o++]=224|n>>>12,t[o++]=128|n>>>6&63,t[o++]=128|63&n):(t[o++]=240|n>>>18,t[o++]=128|n>>>12&63,t[o++]=128|n>>>6&63,t[o++]=128|63&n);return t},buf2string:(e,t)=>{const n=t||e.length;if(typeof TextDecoder=="function"&&TextDecoder.prototype.decode)return new TextDecoder().decode(e.subarray(0,t));let r,i;const o=new Array(2*n);for(i=0,r=0;r4)o[i++]=65533,r+=a-1;else{for(s&=a===2?31:a===3?15:7;a>1&&r1?o[i++]=65533:s<65536?o[i++]=s:(s-=65536,o[i++]=55296|s>>10&1023,o[i++]=56320|1023&s)}}return((s,a)=>{if(a<65534&&s.subarray&&$$)return String.fromCharCode.apply(null,s.length===a?s:s.subarray(0,a));let c="";for(let l=0;l{(t=t||e.length)>e.length&&(t=e.length);let n=t-1;for(;n>=0&&(192&e[n])==128;)n--;return n<0||n===0?t:n+Tg[e[n]]>t?n:t}},eee=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0};const tee=Object.prototype.toString,{Z_NO_FLUSH:lUe,Z_SYNC_FLUSH:uUe,Z_FULL_FLUSH:dUe,Z_FINISH:fUe,Z_OK:B4,Z_STREAM_END:hUe,Z_DEFAULT_COMPRESSION:pUe,Z_DEFAULT_STRATEGY:mUe,Z_DEFLATED:gUe}=v6;function k3(e){this.options=E6.assign({level:pUe,method:gUe,chunkSize:16384,windowBits:15,memLevel:8,strategy:mUe},e||{});let t=this.options;t.raw&&t.windowBits>0?t.windowBits=-t.windowBits:t.gzip&&t.windowBits>0&&t.windowBits<16&&(t.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new eee,this.strm.avail_out=0;let n=Tm.deflateInit2(this.strm,t.level,t.method,t.windowBits,t.memLevel,t.strategy);if(n!==B4)throw new Error(gf[n]);if(t.header&&Tm.deflateSetHeader(this.strm,t.header),t.dictionary){let r;if(r=typeof t.dictionary=="string"?Ig.string2buf(t.dictionary):tee.call(t.dictionary)==="[object ArrayBuffer]"?new Uint8Array(t.dictionary):t.dictionary,n=Tm.deflateSetDictionary(this.strm,r),n!==B4)throw new Error(gf[n]);this._dict_set=!0}}function vUe(e,t){const n=new k3(t);if(n.push(e,!0),n.err)throw n.msg||gf[n.err];return n.result}k3.prototype.push=function(e,t){const n=this.strm,r=this.options.chunkSize;let i,o;if(this.ended)return!1;for(o=t===~~t?t:t===!0?fUe:lUe,typeof e=="string"?n.input=Ig.string2buf(e):tee.call(e)==="[object ArrayBuffer]"?n.input=new Uint8Array(e):n.input=e,n.next_in=0,n.avail_in=n.input.length;;)if(n.avail_out===0&&(n.output=new Uint8Array(r),n.next_out=0,n.avail_out=r),(o===uUe||o===dUe)&&n.avail_out<=6)this.onData(n.output.subarray(0,n.next_out)),n.avail_out=0;else{if(i=Tm.deflate(n,o),i===hUe)return n.next_out>0&&this.onData(n.output.subarray(0,n.next_out)),i=Tm.deflateEnd(this.strm),this.onEnd(i),this.ended=!0,i===B4;if(n.avail_out!==0){if(o>0&&n.next_out>0)this.onData(n.output.subarray(0,n.next_out)),n.avail_out=0;else if(n.avail_in===0)break}else this.onData(n.output)}return!0},k3.prototype.onData=function(e){this.chunks.push(e)},k3.prototype.onEnd=function(e){e===B4&&(this.result=E6.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg};var yUe={deflate:vUe};const O5=16209;var EUe=function(e,t){let n,r,i,o,s,a,c,l,u,d,f,h,p,g,m,y,v,E,b,S,w,C,_,I;const O=e.state;n=e.next_in,_=e.input,r=n+(e.avail_in-5),i=e.next_out,I=e.output,o=i-(t-e.avail_out),s=i+(e.avail_out-257),a=O.dmax,c=O.wsize,l=O.whave,u=O.wnext,d=O.window,f=O.hold,h=O.bits,p=O.lencode,g=O.distcode,m=(1<>>24,f>>>=E,h-=E,E=v>>>16&255,E===0)I[i++]=65535&v;else{if(!(16&E)){if((64&E)==0){v=p[(65535&v)+(f&(1<>>=E,h-=E),h<15&&(f+=_[n++]<>>24,f>>>=E,h-=E,E=v>>>16&255,!(16&E)){if((64&E)==0){v=g[(65535&v)+(f&(1<a){e.msg="invalid distance too far back",O.mode=O5;break e}if(f>>>=E,h-=E,E=i-o,S>E){if(E=S-E,E>l&&O.sane){e.msg="invalid distance too far back",O.mode=O5;break e}if(w=0,C=d,u===0){if(w+=c-E,E2;)I[i++]=C[w++],I[i++]=C[w++],I[i++]=C[w++],b-=3;b&&(I[i++]=C[w++],b>1&&(I[i++]=C[w++]))}else{w=i-S;do I[i++]=I[w++],I[i++]=I[w++],I[i++]=I[w++],b-=3;while(b>2);b&&(I[i++]=I[w++],b>1&&(I[i++]=I[w++]))}break}}break}}while(n>3,n-=b,h-=b<<3,f&=(1<{const c=a.bits;let l,u,d,f,h,p,g=0,m=0,y=0,v=0,E=0,b=0,S=0,w=0,C=0,_=0,I=null;const O=new Uint16Array(16),L=new Uint16Array(16);let R,F,W,J=null;for(g=0;g<=_5;g++)O[g]=0;for(m=0;m=1&&O[v]===0;v--);if(E>v&&(E=v),v===0)return i[o++]=20971520,i[o++]=20971520,a.bits=1,0;for(y=1;y0&&(e===0||v!==1))return-1;for(L[1]=0,g=1;g<_5;g++)L[g+1]=L[g]+O[g];for(m=0;m852||e===2&&C>592)return 1;for(;;){R=g-S,s[m]+1=p?(F=J[s[m]-p],W=I[s[m]-p]):(F=96,W=0),l=1<>S)+u]=R<<24|F<<16|W|0;while(u!==0);for(l=1<>=1;if(l!==0?(_&=l-1,_+=l):_=0,m++,--O[g]==0){if(g===v)break;g=t[n+s[m]]}if(g>E&&(_&f)!==d){for(S===0&&(S=E),h+=y,b=g-S,w=1<852||e===2&&C>592)return 1;d=_&f,i[d]=E<<24|b<<16|h-o|0}}return _!==0&&(i[h+_]=g-S<<24|64<<16|0),a.bits=E,0};const{Z_FINISH:iH,Z_BLOCK:wUe,Z_TREES:R5,Z_OK:rf,Z_STREAM_END:TUe,Z_NEED_DICT:IUe,Z_STREAM_ERROR:Oa,Z_DATA_ERROR:nee,Z_MEM_ERROR:ree,Z_BUF_ERROR:PUe,Z_DEFLATED:oH}=v6,b6=16180,F4=16190,Ml=16191,DE=16192,LE=16194,k5=16199,x5=16200,NE=16206,ai=16209,sH=e=>(e>>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24);function OUe(){this.strm=null,this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}const of=e=>{if(!e)return 1;const t=e.state;return!t||t.strm!==e||t.mode16211?1:0},iee=e=>{if(of(e))return Oa;const t=e.state;return e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=1&t.wrap),t.mode=b6,t.last=0,t.havedict=0,t.flags=-1,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new Int32Array(852),t.distcode=t.distdyn=new Int32Array(592),t.sane=1,t.back=-1,rf},oee=e=>{if(of(e))return Oa;const t=e.state;return t.wsize=0,t.whave=0,t.wnext=0,iee(e)},see=(e,t)=>{let n;if(of(e))return Oa;const r=e.state;return t<0?(n=0,t=-t):(n=5+(t>>4),t<48&&(t&=15)),t&&(t<8||t>15)?Oa:(r.window!==null&&r.wbits!==t&&(r.window=null),r.wrap=n,r.wbits=t,oee(e))},aH=(e,t)=>{if(!e)return Oa;const n=new OUe;e.state=n,n.strm=e,n.window=null,n.mode=b6;const r=see(e,t);return r!==rf&&(e.state=null),r};let ME,BE,cH=!0;const _Ue=e=>{if(cH){ME=new Int32Array(512),BE=new Int32Array(32);let t=0;for(;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(Im(1,e.lens,0,288,ME,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;Im(2,e.lens,0,32,BE,0,e.work,{bits:5}),cH=!1}e.lencode=ME,e.lenbits=9,e.distcode=BE,e.distbits=5},aee=(e,t,n,r)=>{let i;const o=e.state;return o.window===null&&(o.wsize=1<=o.wsize?(o.window.set(t.subarray(n-o.wsize,n),0),o.wnext=0,o.whave=o.wsize):(i=o.wsize-o.wnext,i>r&&(i=r),o.window.set(t.subarray(n-r,n-r+i),o.wnext),(r-=i)?(o.window.set(t.subarray(n-r,n),0),o.wnext=r,o.whave=o.wsize):(o.wnext+=i,o.wnext===o.wsize&&(o.wnext=0),o.whave{let n,r,i,o,s,a,c,l,u,d,f,h,p,g,m,y,v,E,b,S,w,C,_=0;const I=new Uint8Array(4);let O,L;const R=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(of(e)||!e.output||!e.input&&e.avail_in!==0)return Oa;n=e.state,n.mode===Ml&&(n.mode=DE),s=e.next_out,i=e.output,c=e.avail_out,o=e.next_in,r=e.input,a=e.avail_in,l=n.hold,u=n.bits,d=a,f=c,C=rf;e:for(;;)switch(n.mode){case b6:if(n.wrap===0){n.mode=DE;break}for(;u<16;){if(a===0)break e;a--,l+=r[o++]<>>8&255,n.check=ho(n.check,I,2,0),l=0,u=0,n.mode=16181;break}if(n.head&&(n.head.done=!1),!(1&n.wrap)||(((255&l)<<8)+(l>>8))%31){e.msg="incorrect header check",n.mode=ai;break}if((15&l)!==oH){e.msg="unknown compression method",n.mode=ai;break}if(l>>>=4,u-=4,w=8+(15&l),n.wbits===0&&(n.wbits=w),w>15||w>n.wbits){e.msg="invalid window size",n.mode=ai;break}n.dmax=1<>8&1),512&io(n)&&4&n.wrap&&(I[0]=255&l,I[1]=l>>>8&255,n.check=ho(n.check,I,2,0)),l=0,u=0,n.mode=16182;case 16182:for(;u<32;){if(a===0)break e;a--,l+=r[o++]<>>8&255,I[2]=l>>>16&255,I[3]=l>>>24&255,n.check=ho(n.check,I,4,0)),l=0,u=0,n.mode=16183;case 16183:for(;u<16;){if(a===0)break e;a--,l+=r[o++]<>8),512&io(n)&&4&n.wrap&&(I[0]=255&l,I[1]=l>>>8&255,n.check=ho(n.check,I,2,0)),l=0,u=0,n.mode=16184;case 16184:if(1024&io(n)){for(;u<16;){if(a===0)break e;a--,l+=r[o++]<>>8&255,n.check=ho(n.check,I,2,0)),l=0,u=0}else n.head&&(n.head.extra=null);n.mode=16185;case 16185:if(1024&io(n)&&(h=n.length,h>a&&(h=a),h&&(n.head&&(w=n.head.extra_len-n.length,n.head.extra||(n.head.extra=new Uint8Array(n.head.extra_len)),n.head.extra.set(r.subarray(o,o+h),w)),512&io(n)&&4&n.wrap&&(n.check=ho(n.check,r,h,o)),a-=h,o+=h,n.length-=h),n.length))break e;n.length=0,n.mode=16186;case 16186:if(2048&io(n)){if(a===0)break e;h=0;do w=r[o+h++],n.head&&w&&n.length<65536&&(n.head.name+=String.fromCharCode(w));while(w&&h>9&1,n.head.done=!0),e.adler=n.check=0,n.mode=Ml;break;case 16189:for(;u<32;){if(a===0)break e;a--,l+=r[o++]<>>=7&u,u-=7&u,n.mode=NE;break}for(;u<3;){if(a===0)break e;a--,l+=r[o++]<>>=1,u-=1,3&l){case 0:n.mode=16193;break;case 1:if(_Ue(n),n.mode=k5,t===R5){l>>>=2,u-=2;break e}break;case 2:n.mode=16196;break;case 3:e.msg="invalid block type",n.mode=ai}l>>>=2,u-=2;break;case 16193:for(l>>>=7&u,u-=7&u;u<32;){if(a===0)break e;a--,l+=r[o++]<>>16^65535)){e.msg="invalid stored block lengths",n.mode=ai;break}if(n.length=65535&l,l=0,u=0,n.mode=LE,t===R5)break e;case LE:n.mode=16195;case 16195:if(h=n.length,h){if(h>a&&(h=a),h>c&&(h=c),h===0)break e;i.set(r.subarray(o,o+h),s),a-=h,o+=h,c-=h,s+=h,n.length-=h;break}n.mode=Ml;break;case 16196:for(;u<14;){if(a===0)break e;a--,l+=r[o++]<>>=5,u-=5,n.ndist=1+(31&l),l>>>=5,u-=5,n.ncode=4+(15&l),l>>>=4,u-=4,n.nlen>286||n.ndist>30){e.msg="too many length or distance symbols",n.mode=ai;break}n.have=0,n.mode=16197;case 16197:for(;n.have>>=3,u-=3}for(;n.have<19;)n.lens[R[n.have++]]=0;if(n.lencode=n.lendyn,n.lenbits=7,O={bits:n.lenbits},C=Im(0,n.lens,0,19,n.lencode,0,n.work,O),n.lenbits=O.bits,C){e.msg="invalid code lengths set",n.mode=ai;break}n.have=0,n.mode=16198;case 16198:for(;n.have>>24,y=_>>>16&255,v=65535&_,!(m<=u);){if(a===0)break e;a--,l+=r[o++]<>>=m,u-=m,n.lens[n.have++]=v;else{if(v===16){for(L=m+2;u>>=m,u-=m,n.have===0){e.msg="invalid bit length repeat",n.mode=ai;break}w=n.lens[n.have-1],h=3+(3&l),l>>>=2,u-=2}else if(v===17){for(L=m+3;u>>=m,u-=m,w=0,h=3+(7&l),l>>>=3,u-=3}else{for(L=m+7;u>>=m,u-=m,w=0,h=11+(127&l),l>>>=7,u-=7}if(n.have+h>n.nlen+n.ndist){e.msg="invalid bit length repeat",n.mode=ai;break}for(;h--;)n.lens[n.have++]=w}}if(n.mode===ai)break;if(n.lens[256]===0){e.msg="invalid code -- missing end-of-block",n.mode=ai;break}if(n.lenbits=9,O={bits:n.lenbits},C=Im(1,n.lens,0,n.nlen,n.lencode,0,n.work,O),n.lenbits=O.bits,C){e.msg="invalid literal/lengths set",n.mode=ai;break}if(n.distbits=6,n.distcode=n.distdyn,O={bits:n.distbits},C=Im(2,n.lens,n.nlen,n.ndist,n.distcode,0,n.work,O),n.distbits=O.bits,C){e.msg="invalid distances set",n.mode=ai;break}if(n.mode=k5,t===R5)break e;case k5:n.mode=x5;case x5:if(a>=6&&c>=258){e.next_out=s,e.avail_out=c,e.next_in=o,e.avail_in=a,n.hold=l,n.bits=u,EUe(e,f),s=e.next_out,i=e.output,c=e.avail_out,o=e.next_in,r=e.input,a=e.avail_in,l=n.hold,u=n.bits,n.mode===Ml&&(n.back=-1);break}for(n.back=0;_=n.lencode[l&(1<>>24,y=_>>>16&255,v=65535&_,!(m<=u);){if(a===0)break e;a--,l+=r[o++]<>E)],m=_>>>24,y=_>>>16&255,v=65535&_,!(E+m<=u);){if(a===0)break e;a--,l+=r[o++]<>>=E,u-=E,n.back+=E}if(l>>>=m,u-=m,n.back+=m,n.length=v,y===0){n.mode=16205;break}if(32&y){n.back=-1,n.mode=Ml;break}if(64&y){e.msg="invalid literal/length code",n.mode=ai;break}n.extra=15&y,n.mode=16201;case 16201:if(n.extra){for(L=n.extra;u>>=n.extra,u-=n.extra,n.back+=n.extra}n.was=n.length,n.mode=16202;case 16202:for(;_=n.distcode[l&(1<>>24,y=_>>>16&255,v=65535&_,!(m<=u);){if(a===0)break e;a--,l+=r[o++]<>E)],m=_>>>24,y=_>>>16&255,v=65535&_,!(E+m<=u);){if(a===0)break e;a--,l+=r[o++]<>>=E,u-=E,n.back+=E}if(l>>>=m,u-=m,n.back+=m,64&y){e.msg="invalid distance code",n.mode=ai;break}n.offset=v,n.extra=15&y,n.mode=16203;case 16203:if(n.extra){for(L=n.extra;u>>=n.extra,u-=n.extra,n.back+=n.extra}if(n.offset>n.dmax){e.msg="invalid distance too far back",n.mode=ai;break}n.mode=16204;case 16204:if(c===0)break e;if(h=f-c,n.offset>h){if(h=n.offset-h,h>n.whave&&n.sane){e.msg="invalid distance too far back",n.mode=ai;break}h>n.wnext?(h-=n.wnext,p=n.wsize-h):p=n.wnext-h,h>n.length&&(h=n.length),g=n.window}else g=i,p=s-n.offset,h=n.length;h>c&&(h=c),c-=h,n.length-=h;do i[s++]=g[p++];while(--h);n.length===0&&(n.mode=x5);break;case 16205:if(c===0)break e;i[s++]=n.length,c--,n.mode=x5;break;case NE:if(n.wrap){for(;u<32;){if(a===0)break e;a--,l|=r[o++]<aH(e,15),inflateInit2:aH,inflate:RUe,inflateEnd:e=>{if(of(e))return Oa;let t=e.state;return t.window&&(t.window=null),e.state=null,rf},inflateGetHeader:(e,t)=>{if(of(e))return Oa;const n=e.state;return(2&n.wrap)==0?Oa:(n.head=t,t.done=!1,rf)},inflateSetDictionary:(e,t)=>{const n=t.length;let r,i,o;return of(e)?Oa:(r=e.state,r.wrap!==0&&r.mode!==F4?Oa:r.mode===F4&&(i=1,i=Cg(i,t,n,0),i!==r.check)?nee:(o=aee(e,t,n,n),o?(r.mode=16210,ree):(r.havedict=1,rf)))},inflateInfo:"pako inflate (from Nodeca project)"},kUe=function(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1};const cee=Object.prototype.toString,{Z_NO_FLUSH:xUe,Z_FINISH:DUe,Z_OK:Pm,Z_STREAM_END:FE,Z_NEED_DICT:UE,Z_STREAM_ERROR:LUe,Z_DATA_ERROR:lH,Z_MEM_ERROR:NUe}=v6;function x3(e){this.options=E6.assign({chunkSize:65536,windowBits:15,to:""},e||{});const t=this.options;t.raw&&t.windowBits>=0&&t.windowBits<16&&(t.windowBits=-t.windowBits,t.windowBits===0&&(t.windowBits=-15)),!(t.windowBits>=0&&t.windowBits<16)||e&&e.windowBits||(t.windowBits+=32),t.windowBits>15&&t.windowBits<48&&(15&t.windowBits)==0&&(t.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new eee,this.strm.avail_out=0;let n=$l.inflateInit2(this.strm,t.windowBits);if(n!==Pm)throw new Error(gf[n]);if(this.header=new kUe,$l.inflateGetHeader(this.strm,this.header),t.dictionary&&(typeof t.dictionary=="string"?t.dictionary=Ig.string2buf(t.dictionary):cee.call(t.dictionary)==="[object ArrayBuffer]"&&(t.dictionary=new Uint8Array(t.dictionary)),t.raw&&(n=$l.inflateSetDictionary(this.strm,t.dictionary),n!==Pm)))throw new Error(gf[n])}function MUe(e,t){const n=new x3(t);if(n.push(e),n.err)throw n.msg||gf[n.err];return n.result}x3.prototype.push=function(e,t){const n=this.strm,r=this.options.chunkSize,i=this.options.dictionary;let o,s,a;if(this.ended)return!1;for(s=t===~~t?t:t===!0?DUe:xUe,cee.call(e)==="[object ArrayBuffer]"?n.input=new Uint8Array(e):n.input=e,n.next_in=0,n.avail_in=n.input.length;;){for(n.avail_out===0&&(n.output=new Uint8Array(r),n.next_out=0,n.avail_out=r),o=$l.inflate(n,s),o===UE&&i&&(o=$l.inflateSetDictionary(n,i),o===Pm?o=$l.inflate(n,s):o===lH&&(o=UE));n.avail_in>0&&o===FE&&n.state.wrap>0&&e[n.next_in]!==0;)$l.inflateReset(n),o=$l.inflate(n,s);switch(o){case LUe:case lH:case UE:case NUe:return this.onEnd(o),this.ended=!0,!1}if(a=n.avail_out,n.next_out&&(n.avail_out===0||o===FE))if(this.options.to==="string"){let c=Ig.utf8border(n.output,n.next_out),l=n.next_out-c,u=Ig.buf2string(n.output,c);n.next_out=l,n.avail_out=r-l,l&&n.output.set(n.output.subarray(c,c+l),0),this.onData(u)}else this.onData(n.output.length===n.next_out?n.output:n.output.subarray(0,n.next_out));if(o!==Pm||a!==0){if(o===FE)return o=$l.inflateEnd(this.strm),this.onEnd(o),this.ended=!0,!0;if(n.avail_in===0)break}}return!0},x3.prototype.onData=function(e){this.chunks.push(e)},x3.prototype.onEnd=function(e){e===Pm&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=E6.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg};var BUe={inflate:MUe};const{deflate:FUe}=yUe,{inflate:UUe}=BUe;var jUe=FUe,HUe=UUe,lee=(function(e){return e[e.ONE_BYTE=0]="ONE_BYTE",e[e.TWO_BYTE=1]="TWO_BYTE",e})(lee||{});class zUe{constructor(){H(this,"_sequence",0),H(this,"_startTime",Date.now()),H(this,"isUseOneByte",!0)}get startTime(){const t=Date.now()-this._startTime;return t128){const a=new Uint8Array(4);a.set([1,0,0,0]);const c={id:0,length:4,data:a.buffer},l={profile:this.isUseOneByte?0:1,length:this.isUseOneByte?5:6,datas:[c]};n.commonPacketHeader.extension=1,n.extension=l,n.payload=this.compress(t),n.commonPacketHeader.length=8+(n.extension.length+2)+n.payload.byteLength}else n.commonPacketHeader.length=8+n.payload.byteLength;he("SHOW_DATASTREAM2_LOG")&&D.debug("send data header: ".concat(JSON.stringify(n.commonPacketHeader)));const r=new ArrayBuffer(n.commonPacketHeader.length),i=new Uint8Array(r),o=new DataView(r);let s=0;if(o.setUint16(s,n.commonPacketHeader.extension<<15|n.commonPacketHeader.reserved<<14|n.commonPacketHeader.length,!0),s+=2,o.setUint32(s,n.commonPacketHeader.sequence,!0),s+=4,o.setUint16(s,n.commonStreamHeader,!0),s+=2,n.extension){const a=this.serializeExtension(n.extension);i.set(new Uint8Array(a),s),s+=a.byteLength}if(i.set(new Uint8Array(n.payload),s),s+=n.payload.byteLength,s!==n.commonPacketHeader.length)throw Error("serialize error!");return r}deserialize(t){if(t.byteLength<4)return new ArrayBuffer(0);const n=new DataView(t);let r=0;const i=n.getUint16(r,!0);r+=2;const o={length:16383&i,reserved:(16384&i)>>14,extension:(32768&i)>>15,sequence:n.getUint16(r+2,!0)<<16|n.getUint16(r,!0)};let s,a;if(r+=4,he("SHOW_DATASTREAM2_LOG")&&D.debug("receive data header: ".concat(JSON.stringify(o))),n.getUint16(r,!0),r+=2,o.extension){a=this.deserializeExtension(t.slice(r)),r+=2+a.length,s=t.slice(r);let c=!1;if(a.datas.length>0){const l=a.datas.find((u=>u.id===0));l&&(c=(1&new DataView(l.data).getUint32(0,!0))==1)}s=c?this.decompress(s):s}else s=t.slice(8);return s}serializeExtension(t){const{profile:n,length:r,datas:i}=t,o=new ArrayBuffer(r+2),s=new Uint8Array(o),a=new DataView(o);let c=0;if(a.setUint8(c++,n),a.setUint8(c++,r),i.forEach((l=>{n?(a.setUint8(c++,l.id),a.setUint8(c++,l.length),s.set(new Uint8Array(l.data),c),c+=l.data.byteLength):(a.setUint8(c++,l.id|l.length<<4),s.set(new Uint8Array(l.data),c),c+=l.data.byteLength)})),c!==r+2)throw Error("serialize extension error, is ".concat(c,"!==").concat(r+2));return o}deserializeExtension(t){const n=new DataView(t);let r=0;const i=n.getUint8(r);r++;const o=n.getUint8(r);r++;const s=i===lee.TWO_BYTE,a=[],c=new DataView(t,2);let l=0;for(;l>4,l++),d>0&&(f=c.buffer.slice(l+2,l+2+d),l+=f.byteLength),a.push({id:u,length:d,data:f})}if(l!==o)throw Error("parse error");return{profile:i,length:o,datas:a}}decompress(t){return HUe(new Uint8Array(t))}compress(t){return jUe(new Uint8Array(t))}}const WUe={name:"DataStream",create:(e,t)=>{const n=t?new PBe(e):new OBe(e);return n.useDataStream(new zUe),n}};class VUe extends fr{constructor(t,n,r){super(),H(this,"ws",void 0),H(this,"requestId",1),H(this,"heartBeatTimer",void 0),H(this,"joinInfo",void 0),H(this,"clientId",void 0),H(this,"onOpen",(()=>{this.emit("open"),this.startHeartBeatCheck()})),H(this,"onClose",(i=>{this.emit("close"),this.dispose()})),H(this,"onMessage",(i=>{const o=JSON.parse(i.data);if(!o||o.command!=="serverResponse"||!o.requestId)return o&&o.command==="serverStatus"&&o.serverStatus&&o.serverStatus.command?(this.emit("status",o.serverStatus),void this.emit(o.serverStatus.command,o.serverStatus)):void 0;this.emit("req_".concat(o.requestId),o)})),this.joinInfo=t,this.clientId=n,this.ws=new dg("cross-channel-".concat(this.clientId),r),this.ws.on(Bt.RECONNECTING,(()=>{this.ws.reconnectMode="retry",this.emit("reconnecting")})),this.ws.on(Bt.CONNECTED,this.onOpen),this.ws.on(Bt.ON_MESSAGE,this.onMessage),this.ws.on(Bt.CLOSED,this.onClose)}isConnect(){return this.ws.state==="connected"}sendMessage(t){const n=this.requestId++;return t.requestId=n,t.seq=n,this.ws.sendMessage(t),n}waitStatus(t){return new ot(((n,r)=>{const i=window.setTimeout((()=>{r(new xe(Q.TIMEOUT,"wait status timeout, status: ".concat(t)))}),5e3);this.once(t,(o=>{window.clearTimeout(i),o.state&&o.state!==0?r(new xe(Q.CROSS_CHANNEL_WAIT_STATUS_ERROR,"wait status error, status: ".concat(t))):n(void 0)})),this.once("dispose",(()=>{window.clearTimeout(i),r(new xe(Q.WS_ABORT))}))}))}async request(t){if(this.ws.state==="closed")throw new xe(Q.WS_DISCONNECT);const n=()=>new ot(((s,a)=>{this.ws.once(Bt.CLOSED,(()=>a(new xe(Q.WS_ABORT)))),this.ws.once(Bt.CONNECTED,s)}));this.ws.state!=="connected"&&await n();const r=this.sendMessage(t),i=new ot(((s,a)=>{const c=()=>{a(new xe(Q.WS_ABORT))};this.ws.once(Bt.RECONNECTING,c),this.ws.once(Bt.CLOSED,c),this.once("req_".concat(r),s),Ei(3e3).then((()=>{this.removeAllListeners("req_".concat(r)),this.ws.off(Bt.RECONNECTING,c),this.ws.off(Bt.CLOSED,c),a(new xe(Q.TIMEOUT,"cross channel ws request timeout"))}))})),o=await i;if(!o||o.code!==200)throw new xe(Q.CROSS_CHANNEL_SERVER_ERROR_RESPONSE,"response: ".concat(JSON.stringify(o)));return o}async connect(t){this.ws.removeAllListeners(Bt.REQUEST_NEW_URLS),this.ws.on(Bt.REQUEST_NEW_URLS,(n=>{n(t)})),await this.ws.init(t)}dispose(){this.clearHeartBeatCheck(),this.emit("dispose"),this.removeAllListeners(),this.ws.close()}sendPing(t){const n=this.requestId++;return t.requestId=n,this.ws.sendMessage(t),n}startHeartBeatCheck(){this.heartBeatTimer&&window.clearInterval(this.heartBeatTimer),this.heartBeatTimer=window.setInterval((()=>{this.sendPing({command:"ping",appId:this.joinInfo.appId,cname:this.joinInfo.cname,uid:this.joinInfo.uid.toString(),sid:this.joinInfo.sid,ts:+new Date,requestId:0})}),3e3)}clearHeartBeatCheck(){window.clearInterval(this.heartBeatTimer),this.heartBeatTimer=void 0}}class GUe extends fr{set state(t){t!==this._state&&(t!==zo.RELAY_STATE_FAILURE&&(this.errorCode=gh.RELAY_OK),this.emit("state",t,this.errorCode),this._state=t)}get state(){return this._state}constructor(t,n,r,i,o){super(),H(this,"joinInfo",void 0),H(this,"sid",void 0),H(this,"clientId",void 0),H(this,"cancelToken",Lo.CancelToken.source()),H(this,"workerToken",void 0),H(this,"requestId",0),H(this,"signal",void 0),H(this,"prevChannelMediaConfig",void 0),H(this,"httpRetryConfig",void 0),H(this,"_resolution",void 0),H(this,"_state",zo.RELAY_STATE_IDLE),H(this,"errorCode",gh.RELAY_OK),H(this,"onStatus",(s=>{D.debug("[".concat(this.clientId,"] ChannelMediaStatus: ").concat(JSON.stringify(s))),s&&s.command&&(s.command==="onAudioPacketReceived"&&this.emit("event",Ul.PACKET_RECEIVED_AUDIO_FROM_SRC),s.command==="onVideoPacketReceived"&&this.emit("event",Ul.PACKET_RECEIVED_VIDEO_FROM_SRC),s.command==="onSrcTokenPrivilegeDidExpire"&&(this.errorCode=gh.SRC_TOKEN_EXPIRED,this.state=zo.RELAY_STATE_FAILURE),s.command==="onDestTokenPrivilegeDidExpire"&&(this.errorCode=gh.DEST_TOKEN_EXPIRED,this.state=zo.RELAY_STATE_FAILURE))})),H(this,"onReconnect",(async()=>{D.debug("[".concat(this.clientId,"] ChannelMediaSocket disconnect, reconnecting")),this.emit("event",Ul.NETWORK_DISCONNECTED),this.state=zo.RELAY_STATE_IDLE,this.prevChannelMediaConfig&&this.sendStartRelayMessage(this.prevChannelMediaConfig).catch((s=>{this.state!==zo.RELAY_STATE_IDLE&&(D.error("auto restart channel media relay failed",s.toString()),this.errorCode=gh.SERVER_CONNECTION_LOST,this.state=zo.RELAY_STATE_FAILURE)}))})),this.joinInfo=t,this.clientId=n,this.sid=Ph(),this.signal=new VUe(this.joinInfo,this.clientId,r),this.httpRetryConfig=i,this._resolution=o}async startChannelMediaRelay(t){if(this.state!==zo.RELAY_STATE_IDLE)throw new xe(Q.INVALID_OPERATION);this.state=zo.RELAY_STATE_CONNECTING,await this.connect(),D.debug("[".concat(this.clientId,"] startChannelMediaRelay: connect success"));try{await this.sendStartRelayMessage(t)}catch(n){throw n.data&&n.data.serverResponse&&n.data.serverResponse.command==="SetSourceChannel"?new xe(Q.CROSS_CHANNEL_FAILED_JOIN_SRC):n.data&&n.data.serverResponse&&n.serverResponse.command==="SetDestChannelStatus"?new xe(Q.CROSS_CHANNEL_FAILED_JOIN_DEST):n.data&&n.data.serverResponse&&n.serverResponse.command==="StartPacketTransfer"?new xe(Q.CROSS_CHANNEL_FAILED_PACKET_SENT_TO_DEST):n}this.prevChannelMediaConfig=t}async updateChannelMediaRelay(t){if(this.state!==zo.RELAY_STATE_RUNNING)throw new xe(Q.INVALID_OPERATION);await this.sendUpdateMessage(t),this.prevChannelMediaConfig=t}async setVideoProfile(t){if(this._resolution=t,this.state!==zo.RELAY_STATE_RUNNING)throw new xe(Q.INVALID_OPERATION);const n=this.genMessage(fo.SetVideoProfile);await this.signal.request(n),D.debug("[".concat(this.clientId,"] startChannelMediaRelay: setVideoProfile success"))}async stopChannelMediaRelay(){await this.sendStopRelayMessage(),D.debug("[".concat(this.clientId,"] stopChannelMediaRelay: send stop message success")),this.state=zo.RELAY_STATE_IDLE,this.dispose()}dispose(){D.debug("[".concat(this.clientId,"] disposeChannelMediaRelay")),this.cancelToken.cancel(),this.cancelToken=Lo.CancelToken.source(),this.state=zo.RELAY_STATE_IDLE,this.emit("dispose"),this.signal.dispose(),this.prevChannelMediaConfig=void 0}async connect(){const t=await UBe(this.joinInfo,this.cancelToken.token,this.httpRetryConfig);this.workerToken=t.workerToken,await this.signal.connect(t.addressList),this.emit("event",Ul.NETWORK_CONNECTED),this.signal.on("status",this.onStatus),this.signal.on("reconnecting",this.onReconnect)}async sendStartRelayMessage(t){const n=this.genMessage(fo.StopPacketTransfer);await this.signal.request(n),await this.signal.waitStatus("Normal Quit"),D.debug("[".concat(this.clientId,"] startChannelMediaRelay: StopPacketTransfer success"));const r=this.genMessage(fo.SetSdkProfile,t);await this.signal.request(r),D.debug("[".concat(this.clientId,"] startChannelMediaRelay: SetSdkProfile success"));const i=this.genMessage(fo.SetSourceChannel,t);await this.signal.request(i),await this.signal.waitStatus("SetSourceChannelStatus"),this.emit("event",Ul.PACKET_JOINED_SRC_CHANNEL),D.debug("[".concat(this.clientId,"] startChannelMediaRelay: SetSourceChannel success"));const o=this.genMessage(fo.SetSourceUserId,t);await this.signal.request(o),D.debug("[".concat(this.clientId,"] startChannelMediaRelay: SetSourceUserId success"));const s=this.genMessage(fo.SetDestChannel,t);await this.signal.request(s),await this.signal.waitStatus("SetDestChannelStatus"),this.emit("event",Ul.PACKET_JOINED_DEST_CHANNEL),D.debug("[".concat(this.clientId,"] startChannelMediaRelay: SetDestChannel success"));const a=this.genMessage(fo.StartPacketTransfer,t);await this.signal.request(a),this.emit("event",Ul.PACKET_SENT_TO_DEST_CHANNEL),this.state=zo.RELAY_STATE_RUNNING,D.debug("[".concat(this.clientId,"] startChannelMediaRelay: StartPacketTransfer success")),this.setVideoProfile(this._resolution)}async sendUpdateMessage(t){const n=this.genMessage(fo.UpdateDestChannel,t);await this.signal.request(n),this.emit("event",Ul.PACKET_UPDATE_DEST_CHANNEL),D.debug("[".concat(this.clientId,"] sendUpdateMessage: UpdateDestChannel success"))}async sendStopRelayMessage(){const t=this.genMessage(fo.StopPacketTransfer);await this.signal.request(t),D.debug("[".concat(this.clientId,"] sendStopRelayMessage: StopPacketTransfer success"))}genMessage(t,n){const r=[],i=[],o=[];this.requestId+=1;const s={appId:this.joinInfo.appId,cname:this.joinInfo.cname,uid:this.joinInfo.uid.toString(),sdkVersion:oa,sid:this.sid,ts:Date.now(),requestId:this.requestId,seq:this.requestId,allocate:!0,clientRequest:{}};s.sdkVersion==="4.22.0"&&(s.sdkVersion="0.0.1");let a=null,c=null;switch(t){case fo.SetSdkProfile:return s.clientRequest={command:"SetSdkProfile",type:"multi_channel"},s;case fo.SetSourceChannel:if(c=n&&n.getSrcChannelMediaInfo(),!c)throw new xe(Q.UNEXPECTED_ERROR,"can not find source config");return s.clientRequest={command:"SetSourceChannel",uid:"0",channelName:c.channelName,token:c.token||this.joinInfo.appId},s;case fo.SetSourceUserId:if(c=n&&n.getSrcChannelMediaInfo(),!c)throw new xe(Q.UNEXPECTED_ERROR,"can not find source config");return s.clientRequest={command:"SetSourceUserId",uid:c.uid+""},s;case fo.SetDestChannel:if(a=n&&n.getDestChannelMediaInfo(),!a)throw new xe(Q.UNEXPECTED_ERROR,"can not find dest config");return a.forEach((l=>{r.push(l.channelName),i.push(l.uid+""),o.push(l.token||this.joinInfo.appId)})),s.clientRequest={command:"SetDestChannel",channelName:r,uid:i,token:o},s;case fo.StartPacketTransfer:return s.clientRequest={command:"StartPacketTransfer"},s;case fo.Reconnect:return s.clientRequest={command:"Reconnect"},s;case fo.StopPacketTransfer:return s.clientRequest={command:"StopPacketTransfer"},s;case fo.UpdateDestChannel:if(a=n&&n.getDestChannelMediaInfo(),!a)throw new xe(Q.UNEXPECTED_ERROR,"can not find dest config");return a.forEach((l=>{r.push(l.channelName),i.push(l.uid+""),o.push(l.token||this.joinInfo.appId)})),s.clientRequest={command:"UpdateDestChannel",channelName:r,uid:i,token:o},s;case fo.SetVideoProfile:s.clientRequest={command:"SetVideoProfile",width:this._resolution.width,height:this._resolution.height}}return s}}const JUe={name:"ChannelMediaRelay",create:function(e){return new GUe(e.joinInfo,e.clientId,e.websocketRetryConfig||jr,e.httpRetryConfig||jr,e.resolution)}};function uH(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable}))),n.push.apply(n,r)}return n}function P1(e){for(var t=1;t{this.reconnectMode="retry",this.startPingPong()})),H(this,"handleWebSocketMessage",(o=>{if(!o.data)return;const s=JSON.parse(o.data);s.requestId?this.emit("@".concat(s.requestId,"-").concat(s.sid),s):(mt.workerEvent(this.spec.sid,{actionType:"status",serverCode:s.code,workerType:this.serviceMode===au.TRANSCODE?1:2}),this.emit(pd.PUBLISH_STREAM_STATUS,s))})),this.spec=n,this.token=t,this.serviceMode=i,this.websocket=new dg("live-streaming",r),this.websocket.on(Bt.CONNECTED,this.handleWebSocketOpen),this.websocket.on(Bt.ON_MESSAGE,this.handleWebSocketMessage),this.websocket.on(Bt.REQUEST_NEW_URLS,((o,s)=>{ki(this,pd.REQUEST_NEW_ADDRESS).then(o).catch(s)})),this.websocket.on(Bt.RECONNECTING,(()=>{this.websocket.reconnectMode=this.reconnectMode}))}init(t){return this.websocket.init(t)}async request(t,n,r,i){this.reqId+=1,t==="request"&&(this.commandReqId+=1);const o=this.commandReqId,s=this.reqId;if(!s||!this.websocket)throw new xe(Q.UNEXPECTED_ERROR);const a=P1({command:t,sdkVersion:oa==="4.22.0"?"0.0.1":oa,seq:s,requestId:s,allocate:r,cname:this.spec.cname,appId:this.spec.appId,sid:this.spec.sid,uid:this.spec.uid.toString(),ts:Math.floor(Date.now()/1e3)},n);if(this.websocket.state==="closed")throw new xe(Q.WS_DISCONNECT);const c=()=>new ot(((f,h)=>{this.websocket.once(Bt.CLOSED,(()=>h(new xe(Q.WS_ABORT)))),this.websocket.once(Bt.CONNECTED,f)}));this.websocket.state!=="connected"&&await c(),a.clientRequest&&(a.clientRequest.workerToken=this.token);const l=new ot(((f,h)=>{const p=()=>{h(new xe(Q.WS_ABORT))};this.websocket.once(Bt.RECONNECTING,p),this.websocket.once(Bt.CLOSED,p),this.once("@".concat(s,"-").concat(this.spec.sid),(g=>{f(g)}))}));i&&mt.workerEvent(this.spec.sid,P1(P1({},i),{},{requestId:o,actionType:"request",payload:JSON.stringify(n.clientRequest),serverCode:0,code:0}));const u=Date.now();this.websocket.sendMessage(a);let d=null;try{d=await l}catch(f){if(this.websocket.state==="closed")throw f;return await c(),await this.request(t,n,r)}return i&&mt.workerEvent(this.spec.sid,P1(P1({},i),{},{requestId:o,actionType:"response",payload:JSON.stringify(d.serverResponse),serverCode:d.code,success:d.code===200,responseTime:Date.now()-u})),d.code!==200&&this.handleResponseError(d),d}tryNextAddress(){this.reconnectMode="tryNext",this.websocket.reconnect("tryNext")}close(){const t=oa==="4.22.0"?"0.0.1":oa;this.reqId+=1,this.websocket.state==="connected"?(this.websocket.sendMessage({command:"request",appId:this.spec.appId,cname:this.spec.cname,uid:this.spec.uid.toString(),sdkVersion:t,sid:this.spec.sid,seq:this.reqId,ts:Math.floor(Date.now()/1e3),requestId:this.reqId,clientRequest:{command:"DestroyWorker"}}),this.websocket.close(!1,!0)):this.websocket.close(!1),this.pingpongTimer&&(window.clearInterval(this.pingpongTimer),this.pingpongTimer=void 0)}handleResponseError(t){switch(t.code){case Gr.LIVE_STREAM_RESPONSE_ALREADY_EXISTS_STREAM:return void D.warning("live stream response already exists stream");case Gr.LIVE_STREAM_RESPONSE_TRANSCODING_PARAMETER_ERROR:case Gr.LIVE_STREAM_RESPONSE_BAD_STREAM:case Gr.LIVE_STREAM_RESPONSE_WM_PARAMETER_ERROR:return new xe(Q.LIVE_STREAMING_INVALID_ARGUMENT,"",{code:t.code}).throw();case Gr.LIVE_STREAM_RESPONSE_WM_WORKER_NOT_EXIST:if(t.serverResponse.command==="UnpublishStream")return;throw new xe(Q.LIVE_STREAMING_INTERNAL_SERVER_ERROR,"live stream response wm worker not exist",{retry:!0});case Gr.LIVE_STREAM_RESPONSE_NOT_AUTHORIZED:return new xe(Q.LIVE_STREAMING_PUBLISH_STREAM_NOT_AUTHORIZED,"",{code:t.code}).throw();case Gr.LIVE_STREAM_RESPONSE_FAILED_LOAD_IMAGE:{const n=new xe(Q.LIVE_STREAMING_WARN_FAILED_LOAD_IMAGE);return this.emit(pd.WARNING,n,t.serverResponse.url)}case Gr.LIVE_STREAM_RESPONSE_REQUEST_TOO_OFTEN:{const n=new xe(Q.LIVE_STREAMING_WARN_FREQUENT_REQUEST);return this.emit(pd.WARNING,n,t.serverResponse.url)}case Gr.LIVE_STREAM_RESPONSE_NOT_FOUND_PUBLISH:throw new xe(Q.LIVE_STREAMING_INTERNAL_SERVER_ERROR,"live stream response wm worker not exist",{retry:!0});case Gr.LIVE_STREAM_RESPONSE_NOT_SUPPORTED:return new xe(Q.LIVE_STREAMING_TRANSCODING_NOT_SUPPORTED,"",{code:t.code}).throw();case Gr.LIVE_STREAM_RESPONSE_MAX_STREAM_NUM:{const n=new xe(Q.LIVE_STREAMING_WARN_STREAM_NUM_REACH_LIMIT);return this.emit(pd.WARNING,n,t.serverResponse.url)}case Gr.LIVE_STREAM_RESPONSE_INTERNAL_SERVER_ERROR:return new xe(Q.LIVE_STREAMING_INTERNAL_SERVER_ERROR,"",{code:t.code}).throw();case Gr.LIVE_STREAM_RESPONSE_RESOURCE_LIMIT:throw new xe(Q.LIVE_STREAMING_INTERNAL_SERVER_ERROR,"live stream resource limit",{retry:!0,changeAddress:!0});case Gr.LIVE_STREAM_RESPONSE_WORKER_LOST:case Gr.LIVE_STREAM_RESPONSE_WORKER_QUIT:if(t.serverResponse.command==="UnpublishStream")return;throw new xe(Q.LIVE_STREAMING_INTERNAL_SERVER_ERROR,"error fail send message",{retry:!0,changeAddress:!0});case Gr.ERROR_FAIL_SEND_MESSAGE:if(t.serverResponse.command==="UnpublishStream")return;if(t.serverResponse.command==="UpdateTranscoding"||t.serverResponse.command==="ControlStream")return new xe(Q.LIVE_STREAMING_INTERNAL_SERVER_ERROR,"error fail send message",{code:t.code}).throw();throw new xe(Q.LIVE_STREAMING_INTERNAL_SERVER_ERROR,"error fail send message",{retry:!0,changeAddress:!0});case Gr.PUBLISH_STREAM_STATUS_ERROR_PUBLISH_BROKEN:case Gr.PUBLISH_STREAM_STATUS_ERROR_RTMP_CONNECT:case Gr.PUBLISH_STREAM_STATUS_ERROR_RTMP_HANDSHAKE:case Gr.PUBLISH_STREAM_STATUS_ERROR_RTMP_PUBLISH:return new xe(Q.LIVE_STREAMING_CDN_ERROR,"",{code:t.code}).throw()}}startPingPong(){this.pingpongTimer&&window.clearInterval(this.pingpongTimer),this.pingpongTimer=window.setInterval((()=>{this.websocket.state==="connected"&&this.request("ping",{}).catch(d6)}),6e3)}}function dH(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable}))),n.push.apply(n,r)}return n}function Uo(e){for(var t=1;t1&&arguments[1]!==void 0?arguments[1]:jr,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:jr;super(),H(this,"onLiveStreamWarning",void 0),H(this,"onLiveStreamError",void 0),H(this,"spec",void 0),H(this,"retryTimeout",1e4),H(this,"connection",void 0),H(this,"httpRetryConfig",void 0),H(this,"wsRetryConfig",void 0),H(this,"streamingTasks",new Map),H(this,"isStartingStreamingTask",!1),H(this,"taskMutex",new Hi("live-streaming")),H(this,"cancelToken",Lo.CancelToken.source()),H(this,"transcodingConfig",void 0),H(this,"uapResponse",void 0),H(this,"lastTaskId",1),H(this,"statusError",new Map),this.spec=t,this.httpRetryConfig=r,this.wsRetryConfig=n}async setTranscodingConfig(t){const n=Uo(Uo({},GNe),t);n.videoCodecProfile!==66&&n.videoCodecProfile!==77&&n.videoCodecProfile!==100&&(D.debug("[".concat(this.spec.clientId,"] set transcoding config, fix video codec profile: ").concat(n.videoCodecProfile," -> 100")),n.videoCodecProfile=100),n.transcodingUsers||(n.transcodingUsers=n.userConfigs),n.transcodingUsers&&(n.transcodingUsers=n.transcodingUsers.map((s=>Uo(Uo(Uo({},VNe),s),{},{zOrder:s.zOrder?s.zOrder+1:1})))),(function(s){ur(s.width)||Ln(s.width,"config.width",0,1e4),ur(s.height)||Ln(s.height,"config.height",0,1e4),ur(s.videoBitrate)||Ln(s.videoBitrate,"config.videoBitrate",1,1e6),ur(s.videoFrameRate)||Ln(s.videoFrameRate,"config.videoFrameRate"),ur(s.lowLatency)||nu(s.lowLatency,"config.lowLatency"),ur(s.audioSampleRate)||Kr(s.audioSampleRate,"config.audioSampleRate",[32e3,44100,48e3]),ur(s.audioBitrate)||Ln(s.audioBitrate,"config.audioBitrate",1,128),ur(s.audioChannels)||Kr(s.audioChannels,"config.audioChannels",[1,2,3,4,5]),ur(s.videoGop)||Ln(s.videoGop,"config.videoGop"),ur(s.videoCodecProfile)||Kr(s.videoCodecProfile,"config.videoCodecProfile",[66,77,100]),ur(s.userCount)||Ln(s.userCount,"config.userCount",0,17),ur(s.backgroundColor)||Ln(s.backgroundColor,"config.backgroundColor",0,16777215),ur(s.userConfigExtraInfo)||pi(s.userConfigExtraInfo,"config.userConfigExtraInfo",0,4096,!1),s.transcodingUsers&&!ur(s.transcodingUsers)&&(Zl(s.transcodingUsers,"config.transcodingUsers"),s.transcodingUsers.forEach(((a,c)=>{p6(a.uid),ur(a.x)||Ln(a.x,"transcodingUser[".concat(c,"].x"),0,1e4),ur(a.y)||Ln(a.y,"transcodingUser[".concat(c,"].y"),0,1e4),ur(a.width)||Ln(a.width,"transcodingUser[".concat(c,"].width"),0,1e4),ur(a.height)||Ln(a.height,"transcodingUser[".concat(c,"].height"),0,1e4),ur(a.zOrder)||Ln(a.zOrder-1,"transcodingUser[".concat(c,"].zOrder"),0,100),ur(a.alpha)||Ln(a.alpha,"transcodingUser[".concat(c,"].alpha"),0,1,!1)}))),ur(s.watermark)||z9(s.watermark,"watermark"),ur(s.backgroundImage)||z9(s.backgroundImage,"backgroundImage"),s.images&&!ur(s.images)&&(Zl(s.images,"config.images"),s.images.forEach(((a,c)=>{z9(a,"images[".concat(c,"]"))})))})(n);const r=[];n.images&&r.push(...n.images.map((s=>Uo(Uo(Uo({},H9),s),{},{zOrder:255})))),n.backgroundImage&&(r.push(Uo(Uo(Uo({},H9),n.backgroundImage),{},{zOrder:0})),delete n.backgroundImage),n.watermark&&(r.push(Uo(Uo(Uo({},H9),n.watermark),{},{zOrder:255})),delete n.watermark),n.images=r,n.transcodingUsers&&(n.userConfigs=n.transcodingUsers.map((s=>Uo({},s))),n.userCount=n.transcodingUsers.length,delete n.transcodingUsers);const i=(n.userConfigs||[]).map((s=>typeof s.uid=="number"?ot.resolve(s.uid):y$(s.uid,this.spec,this.cancelToken.token,this.httpRetryConfig)));if((await ot.all(i)).forEach(((s,a)=>{n.userConfigs&&n.userConfigs[a]&&(n.userConfigs[a].uid=s)})),this.transcodingConfig=n,this.connection)try{var o;const s=await this.connection.request("request",{clientRequest:{command:"UpdateTranscoding",transcodingConfig:this.transcodingConfig}},!1,{command:"UpdateTranscoding",workerType:1,requestByUser:!0,tid:Array.from(pu(o=this.streamingTasks).call(o)).map((a=>a.taskId)).join("#")});D.debug("[".concat(this.spec.clientId,"] update live transcoding config success, code: ").concat(s.code,", config:"),JSON.stringify(this.transcodingConfig))}catch(s){if(!s.data||!s.data.retry)throw s;s.data.changeAddress&&this.connection.tryNextAddress(),this.streamingTasks.forEach((a=>{D.warning("[".concat(this.spec.clientId,"] live streaming receive error"),s.toString(),"try to republish",a.url),this.startLiveStreamingTask(a.url,a.mode,s).then((()=>{D.debug("[".concat(this.spec.clientId,"] live streaming republish ").concat(a.url," success"))})).catch((c=>{D.error("[".concat(this.spec.clientId,"] live streaming republish failed"),a.url,c.toString()),this.onLiveStreamError&&this.onLiveStreamError(a.url,c)}))}))}}async startLiveStreamingTask(t,n,r){if(!this.transcodingConfig&&n===au.TRANSCODE)throw new xe(Q.INVALID_OPERATION,"[LiveStreaming] no transcoding config found, can not start transcoding streaming task");const i={command:"PublishStream",ts:Date.now(),url:t,uid:this.spec.uid.toString(),autoDestroyTime:100,acceptImageTimeout:!0};D.debug("[".concat(this.spec.clientId,"] start live streaming ").concat(t,", mode: ").concat(n));const o=await this.taskMutex.lock();if(!this.connection&&r)return void o();if(this.streamingTasks.get(t)&&!r)return o(),new xe(Q.LIVE_STREAMING_TASK_CONFLICT).throw();try{this.connection||(this.connection=await this.connect(n))}catch(a){throw o(),a}switch(n){case au.TRANSCODE:i.transcodingConfig=Uo({},this.transcodingConfig)}this.uapResponse&&this.uapResponse.vid&&(i.vid=this.uapResponse.vid),this.isStartingStreamingTask=!0;const s=this.lastTaskId++;try{const a=new ot(((l,u)=>{Ei(this.retryTimeout).then((()=>{if(r)return u(r);const d=this.statusError.get(t);return d?(this.statusError.delete(t),u(d)):void 0}))})),c=await ot.race([this.connection.request("request",{clientRequest:i},!0,{url:t,command:"PublishStream",workerType:n===au.TRANSCODE?1:2,requestByUser:!r,tid:s.toString()}),a]);this.isStartingStreamingTask=!1,D.debug("[".concat(this.spec.clientId,"] live streaming started, code: ").concat(c.code)),this.streamingTasks.set(t,{clientRequest:i,mode:n,url:t,taskId:s}),o()}catch(a){if(o(),this.isStartingStreamingTask=!1,!a.data||!a.data.retry||r)throw a;return a.data.changeAddress?(this.connection.tryNextAddress(),await this.startLiveStreamingTask(t,n,a)):await this.startLiveStreamingTask(t,n,a)}}stopLiveStreamingTask(t){return new ot(((n,r)=>{const i=this.streamingTasks.get(t);if(!i||!this.connection)return new xe(Q.UNEXPECTED_ERROR,"can not find streaming task to stop").throw();const o=i.mode;i.abortTask=()=>{D.debug("[".concat(this.spec.clientId,"] stop live streaming success(worker exception)")),this.streamingTasks.delete(t),n()},this.connection.request("request",{clientRequest:{command:"UnpublishStream",url:i.url}},!1,{url:t,command:"UnPublishStream",workerType:o===au.TRANSCODE?1:2,requestByUser:!0,tid:(this.lastTaskId++).toString()}).then((s=>{D.debug("[".concat(this.spec.clientId,"] stop live streaming success, code: ").concat(s.code)),this.streamingTasks.delete(t),this.streamingTasks.size===0&&(this.connection&&this.connection.close(),this.connection=void 0),n()})).catch(r)}))}resetAllTask(){var t;const n=Array.from(pu(t=this.streamingTasks).call(t));this.terminate();for(const r of n)this.startLiveStreamingTask(r.url,r.mode).catch((i=>{this.onLiveStreamError&&this.onLiveStreamError(r.url,i)}))}terminate(){this.cancelToken&&this.cancelToken.cancel(),this.streamingTasks=new Map,this.isStartingStreamingTask=!1,this.statusError=new Map,this.cancelToken=Lo.CancelToken.source(),this.uapResponse=void 0,this.connection&&this.connection.close(),this.connection=void 0}async connect(t){if(this.connection)throw new xe(Q.UNEXPECTED_ERROR,"live streaming connection has already connected");const n=await ki(this,XA.REQUEST_WORKER_MANAGER_LIST,t);return this.uapResponse=n,this.connection=new ZUe(n.workerToken,this.spec,this.wsRetryConfig,t),this.connection.on(pd.WARNING,((r,i)=>this.onLiveStreamWarning&&this.onLiveStreamWarning(i,r))),this.connection.on(pd.PUBLISH_STREAM_STATUS,(r=>this.handlePublishStreamServer(r))),this.connection.on(pd.REQUEST_NEW_ADDRESS,((r,i)=>{if(!this.connection)return i(new xe(Q.UNEXPECTED_ERROR,"can not get new live streaming address list"));ki(this,XA.REQUEST_WORKER_MANAGER_LIST,t).then((o=>{this.uapResponse=o,r(o.addressList)})).catch(i)})),await this.connection.init(n.addressList),this.connection}handlePublishStreamServer(t){const n=t.serverStatus&&t.serverStatus.url||"empty_url",r=this.streamingTasks.get(n),i=t.reason;switch(t.code){case Gr.PUBLISH_STREAM_STATUS_ERROR_PUBLISH_BROKEN:case Gr.PUBLISH_STREAM_STATUS_ERROR_RTMP_CONNECT:case Gr.PUBLISH_STREAM_STATUS_ERROR_RTMP_HANDSHAKE:case Gr.PUBLISH_STREAM_STATUS_ERROR_RTMP_PUBLISH:{const s=new xe(Q.LIVE_STREAMING_CDN_ERROR,"",{code:t.code});if(r)return D.error(s.toString()),this.onLiveStreamError&&this.onLiveStreamError(n,s);if(!this.isStartingStreamingTask)return;this.statusError.set(n,s)}case Gr.LIVE_STREAM_RESPONSE_FAILED_LOAD_IMAGE:{const s=new xe(Q.LIVE_STREAMING_WARN_FAILED_LOAD_IMAGE,i);return this.onLiveStreamWarning&&this.onLiveStreamWarning(n,s)}case Gr.LIVE_STREAM_RESPONSE_WORKER_LOST:case Gr.LIVE_STREAM_RESPONSE_WORKER_QUIT:{var o;if(!this.connection)return;this.connection.tryNextAddress();const s=Array.from(pu(o=this.streamingTasks).call(o));for(const a of s)a.abortTask?a.abortTask():(D.warning("[".concat(this.spec.clientId,"] publish stream status code"),t.code,"try to republish",a.url),this.startLiveStreamingTask(a.url,a.mode,new xe(Q.LIVE_STREAMING_INTERNAL_SERVER_ERROR,"",{code:t.code})).then((()=>{D.debug("[".concat(this.spec.clientId,"] republish live stream success"),a.url)})).catch((c=>{D.error(c.toString()),this.onLiveStreamError&&this.onLiveStreamError(a.url,c)})));return}}}hasUrl(t){return this.streamingTasks.has(t)}}const XUe={name:"LiveStreaming",create:function(e){return new YUe(e.joinInfo,e.websocketRetryConfig||jr,e.httpRetryConfig||jr)}};function QUe(e){let t=fH();return(function(n,r){let i=n.appId;i!==void 0&&(wn(r,10),jc(r,i));let o=n.cid;o!==void 0&&(wn(r,16),wn(r,o));let s=n.cname;s!==void 0&&(wn(r,26),jc(r,s));let a=n.deviceId;a!==void 0&&(wn(r,34),jc(r,a));let c=n.elapse;c!==void 0&&(wn(r,40),Qu(r,c));let l=n.fileSize;l!==void 0&&(wn(r,48),Qu(r,oh(l)));let u=n.height;u!==void 0&&(wn(r,56),Qu(r,oh(u)));let d=n.jpg;d!==void 0&&(wn(r,66),wn(r,d.length),(function(Y,M){let B=n1(Y,M.length);Y.bytes.set(M,B)})(r,d));let f=n.networkType;f!==void 0&&(wn(r,72),Qu(r,oh(f)));let h=n.osType;h!==void 0&&(wn(r,80),Qu(r,oh(h)));let p=n.requestId;p!==void 0&&(wn(r,90),jc(r,p));let g=n.sdkVersion;g!==void 0&&(wn(r,98),jc(r,g));let m=n.sequence;m!==void 0&&(wn(r,104),Qu(r,oh(m)));let y=n.sid;y!==void 0&&(wn(r,114),jc(r,y));let v=n.timestamp;v!==void 0&&(wn(r,120),Qu(r,v));let E=n.uid;E!==void 0&&(wn(r,128),wn(r,E));let b=n.vid;b!==void 0&&(wn(r,136),wn(r,b));let S=n.width;S!==void 0&&(wn(r,144),Qu(r,oh(S)));let w=n.service;w!==void 0&&(wn(r,152),wn(r,w));let C=n.callbackData;C!==void 0&&(wn(r,162),jc(r,C));let _=n.jpgEncryption;_!==void 0&&(wn(r,168),wn(r,_));let I=n.requestType;I!==void 0&&(wn(r,176),wn(r,I));let O=n.scorePorn;O!==void 0&&(wn(r,185),zE(r,O));let L=n.scoreSexy;L!==void 0&&(wn(r,193),zE(r,L));let R=n.scoreNeutral;R!==void 0&&(wn(r,201),zE(r,R));let F=n.scene;F!==void 0&&(wn(r,208),wn(r,F));let W=n.ossFilePrefix;W!==void 0&&(wn(r,218),jc(r,W));let J=n.serviceVendor;if(J!==void 0)for(let Y of J){wn(r,226);let M=fH();$Ue(Y,M),wn(r,M.limit),rje(r,M),nje(M)}})(e,t),(function(n){let r=n.bytes,i=n.limit;return r.length===i?r:r.subarray(0,i)})(t)}function KUe(e){return(function(n){let r={};e:for(;!fee(n);){let i=Yc(n);switch(i>>>3){case 0:break e;case 1:r.code=Yc(n);break;case 2:r.msg=hee(n,Yc(n));break;case 3:{let o=eje(n);r.data=qUe(n),n.limit=o;break}default:uee(n,7&i)}}return r})({bytes:t=e,offset:0,limit:t.length});var t}function qUe(e){let t={};e:for(;!fee(e);){let n=Yc(e);switch(n>>>3){case 0:break e;case 1:t.requestId=hee(e,Yc(e));break;case 2:t.requestType=Yc(e)>>>0;break;case 3:t.scorePorn=HE(e);break;case 4:t.scoreSexy=HE(e);break;case 5:t.scoreNeutral=HE(e);break;case 6:t.requestScene=Yc(e)>>>0;break;case 7:t.scene=Yc(e)>>>0;break;default:uee(e,7&n)}}return t}function $Ue(e,t){let n=e.service;n!==void 0&&(wn(t,8),wn(t,n));let r=e.vendor;r!==void 0&&(wn(t,16),wn(t,r));let i=e.token;i!==void 0&&(wn(t,26),jc(t,i));let o=e.callbackUrl;o!==void 0&&(wn(t,34),jc(t,o))}function eje(e){let t=Yc(e),n=e.limit;return e.limit=e.offset+t,n}function uee(e,t){switch(t){case 0:for(;128&pee(e););break;case 2:jE(e,Yc(e));break;case 5:jE(e,4);break;case 1:jE(e,8);break;default:throw new Error("Unimplemented type: "+t)}}let tje=new Float32Array(1);new Uint8Array(tje.buffer);let NI=new Float64Array(1),Jo=new Uint8Array(NI.buffer);function oh(e){return{low:e|=0,high:e>>31,unsigned:e>=0}}let dee=[];function fH(){const e=dee.pop();return e?(e.offset=e.limit=0,e):{bytes:new Uint8Array(64),offset:0,limit:0}}function nje(e){dee.push(e)}function jE(e,t){if(e.offset+t>e.limit)throw new Error("Skip past limit");e.offset+=t}function fee(e){return e.offset>=e.limit}function n1(e,t){let n=e.bytes,r=e.offset,i=e.limit,o=r+t;if(o>n.length){let s=new Uint8Array(2*o);s.set(n),e.bytes=s}return e.offset=o,o>i&&(e.limit=o),r}function MI(e,t){let n=e.offset;if(n+t>e.limit)throw new Error("Read past limit");return e.offset+=t,n}function hee(e,t){let n=MI(e,t),r=String.fromCharCode,i=e.bytes,o="�",s="";for(let a=0;a=t?s+=o:(c=i[a+n+1],(192&c)!=128?s+=o:(d=(31&f)<<6|63&c,d<128?s+=o:(s+=r(d),a++))):(240&f)==224?a+2>=t?s+=o:(c=i[a+n+1],l=i[a+n+2],(49344&(c|l<<8))!=32896?s+=o:(d=(15&f)<<12|(63&c)<<6|63&l,d<2048||d>=55296&&d<=57343?s+=o:(s+=r(d),a+=2))):(248&f)==240?a+3>=t?s+=o:(c=i[a+n+1],l=i[a+n+2],u=i[a+n+3],(12632256&(c|l<<8|u<<16))!=8421504?s+=o:(d=(7&f)<<18|(63&c)<<12|(63&l)<<6|63&u,d<65536||d>1114111?s+=o:(d-=65536,s+=r(55296+(d>>10),56320+(1023&d)),a+=3))):s+=o}return s}function jc(e,t){let n=t.length,r=0;for(let s=0;s=55296&&a<=56319&&s+1=55296&&a<=56319&&s+1>6&31|192:(a<65536?o[i++]=a>>12&15|224:(o[i++]=a>>18&7|240,o[i++]=a>>12&63|128),o[i++]=a>>6&63|128),o[i++]=63&a|128)}}function rje(e,t){let n=n1(e,t.limit),r=e.bytes,i=t.bytes;for(let o=0,s=t.limit;o>>=0;t>=128;)hH(e,127&t|128),t>>>=7;hH(e,t)}function Qu(e,t){let n=t.low>>>0,r=(t.low>>>28|t.high<<4)>>>0,i=t.high>>>24,o=i===0?r===0?n<16384?n<128?1:2:n<1<<21?3:4:r<16384?r<128?5:6:r<1<<21?7:8:i<128?9:10,s=n1(e,o),a=e.bytes;switch(o){case 10:a[s+9]=i>>>7&1;case 9:a[s+8]=o!==9?128|i:127&i;case 8:a[s+7]=o!==8?r>>>21|128:r>>>21&127;case 7:a[s+6]=o!==7?r>>>14|128:r>>>14&127;case 6:a[s+5]=o!==6?r>>>7|128:r>>>7&127;case 5:a[s+4]=o!==5?128|r:127&r;case 4:a[s+3]=o!==4?n>>>21|128:n>>>21&127;case 3:a[s+2]=o!==3?n>>>14|128:n>>>14&127;case 2:a[s+1]=o!==2?n>>>7|128:n>>>7&127;case 1:a[s]=o!==1?128|n:127&n}}function pH(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable}))),n.push.apply(n,r)}return n}const ije=new Map([["moderation",1],["supervise",2]]);function mH(e){return{low:e|=0,high:e>>31,unsigned:e>=0}}class oje extends fr{get connectionState(){return this._connectionState}set connectionState(t){if(this._connectionState===t)return;const n=this._connectionState;this._connectionState=t,this.emit(ci.CONNECTION_STATE_CHANGE,n,t)}get inspectType(){return this._inspectType}set inspectType(t){var n;this._inspectMode=vc(n=t.map((r=>ije.get(r)||0))).call(n,((r,i)=>r+i)),this._inspectType=t}get quality(){return this._quality}set quality(t){this._quality=t>1?1:t<.1?.1:t,this.qualityTimer&&(window.clearTimeout(this.qualityTimer),this.qualityTimer=null),this._quality>=1||(this.qualityTimer=window.setTimeout((()=>{this.quality=this._quality/this.qualityRatio}),6e4))}constructor(t){super(),H(this,"name","AgoraRTCVideoContentInspect"),H(this,"_connectionState",ba.CONNECTING),H(this,"_innerConnectionState",void 0),H(this,"sequence",0),H(this,"inspectStartTime",void 0),H(this,"workerManagerConnection",void 0),H(this,"workerConnection",void 0),H(this,"workerMessageLengthLimit",void 0),H(this,"inspectIntervalMinimum",void 0),H(this,"qualityRatio",void 0),H(this,"_connectInfo",void 0),H(this,"_cancelTokenSource",Lo.CancelToken.source()),H(this,"_retryConfig",void 0),H(this,"wmSequence",0),H(this,"inspectInterval",void 0),H(this,"inspectTimer",null),H(this,"ossFilePrefix",void 0),H(this,"extraInfo",void 0),H(this,"_inspectType",void 0),H(this,"_inspectMode",void 0),H(this,"_quality",1),H(this,"qualityTimer",null),H(this,"_inspectId",void 0),H(this,"_needWorkUrlOnly",!1),H(this,"inspectImage",(()=>{if(this.connectionState!==ba.CONNECTED)throw new xe(Q.OPERATION_ABORTED,"content inspect service connection status is ".concat(this.connectionState));this.inspectTimer&&(window.clearInterval(this.inspectTimer),this.inspectTimer=null),this.inspectTimer=window.setInterval((()=>{this.connectionState===ba.CONNECTED?this.requestToInspectImage():D.debug("[".concat(this._inspectId,"] Inspect State is not connected , "),this.connectionState)}),this.inspectInterval{this._innerConnectionState=n,D.debug("[".concat(this._inspectId,"] Inspect operation :").concat(pa[n]," ").concat(r||""))})),this.handleWorkerManagerEvents(),this.workerConnection=new dg("worker-"+this._inspectId,jr),this.handleWorkerEvents()}async init(t,n){this.emit(ci.STATE_CHANGE,pa.CONNECT_AP),this._connectInfo=t;const r=this._cancelTokenSource.token;return this._retryConfig=n,new ot(((i,o)=>{this.on(ci.CONNECTION_STATE_CHANGE,((s,a)=>{a===ba.CONNECTED&&i()})),this.requestAP(t,r,n).then((s=>{this.connectWorkerManager(s)})).catch((s=>{o(s)}))}))}async requestAP(t,n,r){const i=he("WEBCS_DOMAIN").map((a=>"https://".concat(a,"/api/v1"))),o=await(function(a,c,l,u){let{appId:d,areaCode:f,cname:h,sid:p,token:g,uid:m}=c;Zh++;const y="image_moderation_api",v={service_name:y,json_body:JSON.stringify({appId:d,areaCode:f,cname:h,command:"allocateEdge",requestId:Zh,seq:Zh,sid:p,token:g,ts:Date.now(),uid:m+""})};let E,b,S=a[0];return wc((async()=>{E=Date.now();const w=await Tc(S,{data:v,cancelToken:l,headers:{"X-Packet-Service-Type":"0","X-Packet-URI":"61"},params:{action:"wrtc_gateway"}});if(b=Date.now()-E,w.code!==0){const O=new xe(Q.UNEXPECTED_RESPONSE,"image inspect ap error, code"+w.code,{retry:!0,responseTime:b});throw D.error(O.toString()),O}const C=JSON.parse(w.json_body);if(C.code!==200){const O=new xe(Q.UNEXPECTED_RESPONSE,"image inspect ap error, code: ".concat(C.code,", reason: ").concat(C.reason),{code:C.code,responseTime:b});throw D.error(O.toString()),O}if(!C.servers||!Array.isArray(C.servers)||C.servers.length===0){const O=new xe(Q.UNEXPECTED_RESPONSE,"image inspect ap empty server",{code:C.code,responseTime:b});throw D.error(O.toString()),O}const _=he("VIDEO_INSPECT_WORKER_MANAGER_HOST"),I=he("VIDEO_INSPECT_WORKER_MANAGER_PORT");return{addressList:C.servers.map((O=>{let{address:L,wss:R}=O;if(L&&R)return"wss://".concat(L.replace(/\./g,"-"),".").concat(_,":").concat(I||R)})).filter((O=>!!O)),workerToken:C.workerToken,vid:C.vid,responseTime:b}}),((w,C)=>(mt.apworkerEvent(p,{success:!0,sc:200,serviceName:y,responseDetail:JSON.stringify(w.addressList),firstSuccess:C===0,responseTime:b,serverIp:a[C%a.length]}),!1)),((w,C)=>(mt.apworkerEvent(p,{success:!1,sc:w.data&&w.data.code||200,serviceName:y,responseTime:b,serverIp:a[C%a.length]}),!!(w.code!==Q.OPERATION_ABORTED&&w.code!==Q.UNEXPECTED_RESPONSE||w.data&&w.data.retry)&&(S=a[(C+1)%a.length],!0))),u)})(i,t,n,r);this.emit(ci.STATE_CHANGE,pa.AP_CONNECTED);const{addressList:s}=o;return this.wmSequence++,s}async connectWorkerManager(t){let n=arguments.length>1&&arguments[1]!==void 0&&arguments[1];this._needWorkUrlOnly=n,this.emit(ci.STATE_CHANGE,pa.CONNECT_WORKER_MANAGER),await this.workerManagerConnection.init(t,1e4)}async connectWorker(t){await this.workerConnection.init([t])}handleWorkerManagerEvents(){this.workerManagerConnection.on(Bt.CONNECTED,(async()=>{this.emit(ci.STATE_CHANGE,pa.WORKER_MANAGER_CONNECTED,this.workerManagerConnection.url),this.workerManagerConnection.sendMessage({appId:this._connectInfo.appId,cname:this._connectInfo.cname,uid:this._connectInfo.uid+"",sdkVersion:"4.22.0",sid:this._connectInfo.sid,seq:this.wmSequence,ts:Number(Date.now()),requestId:Math.floor(1e12*Math.random()),allocate:!0,clientRequest:{command:"join"}},!0)})),this.workerManagerConnection.on(Bt.CLOSED,(()=>{this._innerConnectionState{this._innerConnectionState{this._innerConnectionState{this.emit(ci.STATE_CHANGE,pa.GET_WORKER_MANAGER_RESPONSE);const n=this.workerManagerConnection.url;this.workerManagerConnection.close();const r=JSON.parse(t.data);if(r.code!==200)throw D.error("[".concat(this._inspectId,"] Unexpected code ").concat(r.code," from worker manager")),new xe(Q.UNEXPECTED_RESPONSE,"response code of worker is unexpected",r);if(!(r.serverResponse&&r.serverResponse.portWss&&n))throw D.error("[".concat(this._inspectId,"] Unexpected content from worker manager : ").concat(JSON.stringify(r))),new xe(Q.UNEXPECTED_RESPONSE,"response content of worker is unexpected",r);{const i=he("VIDEO_INSPECT_WORKER_PORT")||r.serverResponse.portWss,o=n.replace(/:\d+\/?$/,":".concat(i));this.emit(ci.STATE_CHANGE,pa.CONNECT_WORKER,o),this._needWorkUrlOnly?this.emit(ci.REQUEST_NEW_WORKER_URL,o):await this.connectWorker(o)}})),this.workerManagerConnection.on(Bt.WILL_RECONNECT,((t,n,r)=>{r(t)})),this.workerManagerConnection.on(Bt.REQUEST_NEW_URLS,((t,n)=>{this.requestAP(this._connectInfo,this._cancelTokenSource.token,this._retryConfig).then(t).catch(n)}))}handleWorkerEvents(){this.workerConnection.on(Bt.CONNECTED,(async()=>{this.emit(ci.STATE_CHANGE,pa.WORKER_CONNECTED,this.workerConnection.url),this.connectionState=ba.CONNECTED})),this.workerConnection.on(Bt.ON_MESSAGE,(async t=>{if(t.data instanceof ArrayBuffer){const r=KUe(new Uint8Array(t.data));if(he("SHOW_VIDEO_INSPECT_WORKER_MESSAGE")&&D.debug("[".concat(this._inspectId,"] Response message for worker of inspect content "),JSON.stringify(r)),r.code===200){if(Array.isArray(this.inspectType)&&this.inspectType.length===1&&this.inspectType[0]==="supervise")return void this.emit(ci.INSPECT_RESULT,void 0,void 0);if(r.data&&r.data.scorePorn&&r.data.scoreSexy&&r.data.scoreNeutral){var n;const i={porn:r.data.scorePorn,sexy:r.data.scoreSexy,neutral:r.data.scoreNeutral},o=vc(n=Object.keys(i)).call(n,((a,c)=>i[a]>i[c]?a:c),"porn"),s=Object.keys(i).find((a=>a===o));this.emit(ci.INSPECT_RESULT,s)}else this.emit(ci.INSPECT_RESULT,void 0,new xe(Q.UNEXPECTED_RESPONSE,r.code+"","There is an unexpected data on message"))}else this.emit(ci.INSPECT_RESULT,void 0,new xe(Q.UNEXPECTED_RESPONSE,r.code+"",r.msg))}else D.error("[".concat(this._inspectId,"] Unexpected message type from worker")),this.emit(ci.INSPECT_RESULT,void 0,new xe(Q.UNEXPECTED_RESPONSE,"invalid worker message type"))})),this.workerConnection.on(Bt.CLOSED,(()=>{this.connectionState=ba.CLOSED})),this.workerConnection.on(Bt.FAILED,(()=>{this.connectionState=ba.CLOSED})),this.workerConnection.on(Bt.RECONNECTING,(()=>{this.connectionState=this.connectionState===ba.CONNECTED?ba.RECONNECTING:ba.CONNECTING})),this.workerConnection.on(Bt.WILL_RECONNECT,((t,n,r)=>{t==="recover"&&r(t),r("tryNext")})),this.workerConnection.on(Bt.REQUEST_NEW_URLS,((t,n)=>{this.workerManagerConnection.close(),this.once(ci.REQUEST_NEW_WORKER_URL,(r=>{t([r])})),this.requestAP(this._connectInfo,this._cancelTokenSource.token,this._retryConfig).then((r=>{this.connectWorkerManager(r,!0)})).catch((r=>{n(r)}))}))}async requestToInspectImage(){this.sequence++;const t=ia(this,ci.CLIENT_LOCAL_VIDEO_TRACK),n={appId:this._connectInfo.appId,cname:this._connectInfo.cname,cid:this._connectInfo.cid,sid:this._connectInfo.sid,uid:this._connectInfo.uid,vid:this._connectInfo.vid};if(t){if(!t.isPlaying)return void this.emit(ci.INSPECT_RESULT,void 0,new xe(Q.INVALID_OPERATION,"Only the track being played can be inspected"));const r=await this.generateRequestData(t,n);this.workerConnection.sendMessage(r,!0,!0)}else this.emit(ci.INSPECT_RESULT,void 0,new xe(Q.INVALID_OPERATION,"Only the track being published can be inspected"))}async generateRequestData(t,n){let{appId:r,cname:i,cid:o,vid:s,sid:a,uid:c}=n;const l=Date.now(),u=await t.getCurrentFrameImage("image/jpeg",this.quality),d=await e$(u,r,i),f=this.sequence+"-"+o+"-"+c+"-"+l+"-"+Wn(12,""),h={appId:r,cid:o,cname:i,deviceId:"",elapse:mH(Number(l-this.inspectStartTime)),fileSize:d.byteLength,jpgEncryption:2,height:u.height,width:u.width,jpg:d,networkType:6,osType:7,requestId:f,sdkVersion:"4.22.0",sequence:this.sequence,sid:a,timestamp:mH(l),uid:c,vid:s,service:this._inspectMode,callbackData:this.extraInfo,ossFilePrefix:this.ossFilePrefix};this.extraInfo===void 0&&delete h.callbackData,this.ossFilePrefix===void 0&&delete h.ossFilePrefix;const p=QUe(h);if(p.byteLength{var o;if(!lt(o=["supervise","moderation"]).call(o,i))throw new xe(Q.INVALID_PARAMS,"".concat(i," is not a valid inspect type."))})),n.inspectType=r}if(n&&n.extraInfo&&n.extraInfo.length>1024)throw new xe(Q.INVALID_PARAMS,"inspectConfig.extraInfo length cannot exceed 1024 bytes")})(t),new oje(t)}};Dn("PROCESS_ID","process-".concat(Wn(8,""),"-").concat(Wn(4,""),"-").concat(Wn(4,""),"-").concat(Wn(4,""),"-").concat(Wn(12,""))),(function(){let e;try{e=window.localStorage.getItem("websdk_ng_global_parameter")}catch(t){return void D.error("Error loading sdk config",t.message)}if(e)try{const t=JSON.parse(window.atob(e)),n=Date.now();D.debug("Loading global parameters from cache",t),Object.keys(t).forEach((r=>{if(Object.prototype.hasOwnProperty.call(Pr,r)){const{value:i,expires:o}=t[r];if(o&&o<=n)return;bd[r]=i,Pr[r]=i}}))}catch(t){D.error("Error loading mutableParamsCache: ".concat(e),t.message)}})(),Array.isArray(bd.AREAS)&&bd.AREAS.length>0&&TI(bd.AREAS,!0);const gH=(e,t,n)=>{D.debug("setParameter key:".concat(e,", value:").concat(JSON.stringify(t))),Dn(e,t,n)};T1(JUe,!1),T1(XUe,!1),T1(OFe,!1),T1(sje,!1),T1(WUe,!1);const Tr=(function(e){const t=new fr,n=e,r={getListeners:t.getListeners.bind(t),on:(i,o)=>((function(s,a){s===Jc.SECURITY_POLICY_VIOLATION&&H$(a,!0)})(i,o),t.on.bind(t)(i,o)),addListener:t.addListener.bind(t),once:t.once.bind(t),off:t.off.bind(t),removeAllListeners:t.removeAllListeners.bind(t),emit:t.emit.bind(t),safeEmit:t.safeEmit.bind(t)};return Wj(Wj({},n),r)})({__TRACK_LIST__:vh,VERSION:oa,BUILD:fI,ESM_BUNDLER:!1,ESM:!0,UMD:!1,DEV:!1,setParameter:gH,getParameter:he,getSupportedCodec:async function(){let e={audio:[],video:[]};try{let t=new RTCPeerConnection;const n=await(async function(r){let i;return fn().supportUnifiedPlan?(r.addTransceiver("video",{direction:"recvonly"}),r.addTransceiver("audio",{direction:"recvonly"}),i=(await r.createOffer()).sdp):i=(await r.createOffer({offerToReceiveAudio:!0,offerToReceiveVideo:!0})).sdp,i})(t);if(!n)return e;t.close(),t=null,e=(function(r){const i={video:[],audio:[]};return r.match(/ VP8/i)&&i.video.push("VP8"),r.match(/ VP9/i)&&i.video.push("VP9"),r.match(/ AV1/i)&&i.video.push("AV1"),r.match(/ H264/i)&&i.video.push("H264"),r.match(/ H265/i)&&i.video.push("H265"),r.match(/ opus/i)&&i.audio.push("OPUS"),r.match(/ PCMU/i)&&i.audio.push("PCMU"),r.match(/ PCMA/i)&&i.audio.push("PCMA"),r.match(/ G722/i)&&i.audio.push("G722"),i})(n)}catch(t){throw new xe(Q.CREATE_OFFER_FAILED,t.toString&&t.toString()).print()}return e},checkSystemRequirements:function(){const e=mt.reportApiInvoke(null,{name:Zr.CHECK_SYSTEM_REQUIREMENTS,options:[],tag:vr.TRACER});let t=!1;try{const o=window.RTCPeerConnection,s=navigator.mediaDevices&&navigator.mediaDevices.getUserMedia,a=window.WebSocket;t=!!(o&&s&&a),t&&aI()&&sq(75)&&new o().close()}catch(o){return D.error("check system requirement failed: ",o),!1}let n=!1;const r=an();r.name===An.CHROME&&Number(r.version)>=58&&(nc.engine.name!=="WebKit"||(function(){const o=an();if(w4()){if(o.os===ii.MAC_OS)return!0;if(o.os===ii.IOS){const s=nc.os.version&&nc.os.version.split(".");if(s&&Number(s[0])===14&&s[1]&&Number(s[1])>=3||s&&Number(s[0])>14)return!0}}return!1})())&&(n=!0),(r.name===An.FIREFOX&&Number(r.version)>=56||r.name===An.OPERA&&Number(r.version)>=45||r.name===An.SAFARI&&Number(r.version)>=11||r.name==="WebKit"&&(vo()||Ma())&&r.osVersion&&Number(r.osVersion.split(".")[0])>=11||uq()||an().name===An.QQ)&&(n=!0),D.debug("checkSystemRequirements, api:",t,"browser",n);const i=t&&n;return e.onSuccess(i),i},getDevices:function(e){return xs.enumerateDevices(!0,!0,e)},getMicrophones:function(e){return xs.getRecordingDevices(e)},getCameras:function(e){return xs.getCamerasDevices(e)},getElectronScreenSources:Vq,getPlaybackDevices:function(e){return xs.getSpeakers(e)},createClient:function(){var e;let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{codec:"vp8",audioCodec:"opus",mode:"rtc"};const n=mt.reportApiInvoke(null,{name:Zr.CREATE_CLIENT,options:[t],tag:vr.TRACER});try{(function(r){Kr(r.codec,"config.codec",["vp8","vp9","av1","h264","h265"]),Kr(r.mode,"config.mode",["rtc","live","p2p"]),r.audioCodec!==void 0&&Kr(r.audioCodec,"config.audioCodec",["opus","pcmu","pcma","g722"]),r.proxyServer!==void 0&&pi(r.proxyServer,"config.proxyServer",1,1e4),r.turnServer!==void 0&&mq(r.turnServer),r.httpRetryConfig!==void 0&&sM(r.httpRetryConfig),r.websocketRetryConfig!==void 0&&sM(r.websocketRetryConfig)})(t)}catch(r){throw n.onError(r),r}return(cq(16,0)||lq(16,0,!0))&&(t.codec==="vp9"&&(t.codec="vp8",D.debug("browser not support vp9, force use vp8")),Dn("UNSUPPORTED_VIDEO_CODEC",["vp9"])),t.audioCodec===void 0&&(t.audioCodec="opus"),n.onSuccess(),new _Fe($a($a({forceWaitGatewayResponse:!0},t),{},{role:lt(e=["rtc","p2p"]).call(e,t.mode)?"host":t.role||"audience"}))},createCameraVideoTrack:async function(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};const t=he("CAMERA_CAPTURE_CONFIG"),n=mt.reportApiInvoke(null,{tag:vr.TRACER,name:Zr.CREATE_CAM_VIDEO_TRACK,options:[or({},e),t]});t&&(e.encoderConfig=t);const r=O4(e),i=Wn(8,"track-cam-");let o=null;D.info("start create camera video track with config",JSON.stringify(e),"trackId",i);try{o=(await Os({video:r},i)).getVideoTracks()[0]||null}catch(a){throw n.onError(a),a}if(!o){const a=new Be(Q.UNEXPECTED_ERROR,"can not find track in media stream");return n.onError(a),a.throw(D)}e.optimizationMode&&dE(i,o,e,$c(e.encoderConfig));const s=new iC(o,e,r,e.scalabiltyMode?p5(e.scalabiltyMode):{numSpatialLayers:1,numTemporalLayers:1},e.optimizationMode,i);return n.onSuccess(s.getTrackId()),D.info("create camera video success, trackId:",i),s},createCustomVideoTrack:function(e){const t=mt.reportApiInvoke(null,{tag:vr.TRACER,name:Zr.CREATE_CUSTOM_VIDEO_TRACK,options:[e]}),n=new Kn(e.mediaStreamTrack,{width:e.width,height:e.height,frameRate:e.frameRate,bitrateMax:e.bitrateMax,bitrateMin:e.bitrateMin},e.scalabiltyMode?p5(e.scalabiltyMode):{numSpatialLayers:1,numTemporalLayers:1},e.optimizationMode,Wn(8,"track-cus-"),[nr.CUSTOM_TRACK]);return t.onSuccess(n.getTrackId()),D.info("create custom video track success with config",e,"trackId",n.getTrackId()),n},createScreenVideoTrack:async function(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"disable";const n=mt.reportApiInvoke(null,{tag:vr.TRACER,name:Zr.CREATE_SCREEN_VIDEO_TRACK,options:[or({},e),t]});e.encoderConfig?typeof e.encoderConfig=="string"||e.encoderConfig.width&&e.encoderConfig.height||(e.encoderConfig.width={max:1920},e.encoderConfig.height={max:1080}):e.encoderConfig="1080p_2";const r=(function(u){const d={};u.screenSourceType&&(d.mediaSource=u.screenSourceType),u.extensionId&&Od()&&(d.extensionId=u.extensionId);const{displaySurface:f,selfBrowserSurface:h,surfaceSwitching:p,systemAudio:g}=u;(zA(107)||eM(107)||tM(93))&&(f&&(Kr(f,"displaySurface",["browser","window","monitor"]),d.displaySurface=f),h?(Kr(h,"selfBrowserSurface",["exclude","include"]),d.selfBrowserSurface=h):d.selfBrowserSurface="include",p&&(Kr(p,"surfaceSwitching",["exclude","include"]),d.surfaceSwitching=p)),(zA(105)||eM(105)||tM(91))&&g&&(Kr(g,"systemAudio",["exclude","include"]),d.systemAudio=g),u.electronScreenSourceId&&(d.sourceId=u.electronScreenSourceId);const m=u.encoderConfig?aE(u.encoderConfig):null;return d.mandatory={chromeMediaSource:"desktop",maxWidth:m?m.width:void 0,maxHeight:m?m.height:void 0},m&&(m.frameRate&&(typeof m.frameRate=="number"?(d.mandatory.maxFrameRate=m.frameRate,d.mandatory.minFrameRate=m.frameRate):(d.mandatory.maxFrameRate=m.frameRate.max||m.frameRate.ideal||m.frameRate.exact||void 0,d.mandatory.minFrameRate=m.frameRate.min||m.frameRate.ideal||m.frameRate.exact||void 0),d.frameRate=m.frameRate),m.width&&(d.width=m.width),m.height&&(d.height=m.height)),d})(e),i=Wn(8,"track-scr-v-");let o=null,s=null;const a=fn();if(!a.supportShareAudio&&t==="enable"){const u=new Be(Q.NOT_SUPPORTED,"your browser or platform is not support share-screen with audio");return n.onError(u),u.throw(D)}D.info("start create screen video track with config",e,"withAudio",t,"trackId",i);try{const u=await Os({screen:r,screenAudio:t==="auto"?a.supportShareAudio:t==="enable"},i);o=u.getVideoTracks()[0]||null,s=u.getAudioTracks()[0]||null}catch(u){throw n.onError(u),u}if(!o){const u=new Be(Q.UNEXPECTED_ERROR,"can not find track in media stream");return n.onError(u),u.throw(D)}if(!s&&t==="enable"){o&&o.stop();const u=new Be(Q.SHARE_AUDIO_NOT_ALLOWED);return n.onError(u),u.throw(D)}e.optimizationMode||(e.optimizationMode="detail"),e.optimizationMode&&(dE(i,o,e,e.encoderConfig&&aE(e.encoderConfig)||void 0),e.encoderConfig&&typeof e.encoderConfig!="string"&&(e.encoderConfig.bitrateMin=e.encoderConfig.bitrateMax));const c=new Kn(o,e.encoderConfig?aE(e.encoderConfig):{},e.scalabiltyMode?p5(e.scalabiltyMode):{numSpatialLayers:1,numTemporalLayers:1},e.optimizationMode,i,[nr.SCREEN_TRACK]);if(!s)return n.onSuccess(c.getTrackId()),D.info("create screen video track success","video:",c.getTrackId()),c;const l=new mr(s,void 0,Wn(8,"track-scr-a-"),!1);return n.onSuccess([c.getTrackId(),l.getTrackId()]),D.info("create screen video track success","video:",c.getTrackId(),"audio:",l.getTrackId()),[c,l]},createMicrophoneAndCameraTracks:async function(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const n=he("CAMERA_CAPTURE_CONFIG"),r=mt.reportApiInvoke(null,{tag:vr.TRACER,name:Zr.CREATE_MIC_AND_CAM_TRACKS,options:[e,t,n]});n&&(t.encoderConfig=n);const i=O4(t),o=lB(e),s=Wn(8,"track-mic-"),a=Wn(8,"track-cam-");let c=null,l=null;D.info("start create camera video track(".concat(a,") and microphone audio track(").concat(s,") with config, audio: ").concat(JSON.stringify(e),", video: ").concat(JSON.stringify(t)));try{const f=await Os({audio:o,video:i},"".concat(s,"-").concat(a));c=f.getAudioTracks()[0],l=f.getVideoTracks()[0]}catch(f){throw r.onError(f),f}if(!c||!l){const f=new Be(Q.UNEXPECTED_ERROR,"can not find tracks in media stream");return r.onError(f),f.throw(D)}t.optimizationMode&&dE(a,l,t,$c(t.encoderConfig));const u=new _4(c,e,o,s),d=new iC(l,t,i,t.scalabiltyMode?p5(t.scalabiltyMode):{numSpatialLayers:1,numTemporalLayers:1},t.optimizationMode,a);return r.onSuccess([u.getTrackId(),d.getTrackId()]),D.info("create camera video track(".concat(a,") and microphone audio track(").concat(s,") success")),[u,d]},createMicrophoneAudioTrack:async function(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};const t=mt.reportApiInvoke(null,{tag:vr.TRACER,name:Zr.CREATE_MIC_AUDIO_TRACK,options:[e]}),n=lB(e),r=Wn(8,"track-mic-");let i=null;D.info("start create microphone audio track with config",JSON.stringify(e),"trackId",r);try{i=(await Os({audio:n},r)).getAudioTracks()[0]||null}catch(s){throw t.onError(s),s}if(!i){const s=new Be(Q.UNEXPECTED_ERROR,"can not find track in media stream");return t.onError(s),s.throw(D)}const o=new _4(i,e,n,r);return t.onSuccess(o.getTrackId()),D.info("create microphone audio track success, trackId:",r),o},createCustomAudioTrack:function(e){const t=mt.reportApiInvoke(null,{tag:vr.TRACER,name:Zr.CREATE_CUSTOM_AUDIO_TRACK,options:[e]}),n=new mr(e.mediaStreamTrack,e.encoderConfig?P4(e.encoderConfig):{},Wn(8,"track-cus-"),!1);return D.info("create custom audio track success with config",e,"trackId",n.getTrackId()),t.onSuccess(n.getTrackId()),n},createBufferSourceAudioTrack:async function(e){var t;const{cacheOnlineFile:n,encoderConfig:r}=e;let{source:i}=e;const o={source:i instanceof AudioBuffer?"AudioBuffer":i instanceof File?(t=File.name)!==null&&t!==void 0?t:"File":i,cacheOnlineFile:n,encoderConfig:r},s=mt.reportApiInvoke(null,{tag:vr.TRACER,name:Zr.CREATE_BUFFER_AUDIO_TRACK,options:[o]});if(he("DISABLE_WEBAUDIO"))throw new Be(Q.NOT_SUPPORTED,"can not create BufferSourceAudioTrack when WebAudio disabled");const a=Wn(8,"track-buf-");D.info("start create buffer source audio track with config",JSON.stringify(o),"trackId",a);const c=i;if(!(i instanceof AudioBuffer))try{i=await(async function(d,f){let h=null;if(typeof d=="string"){const g=ZB.get(d);if(g)return D.debug("use cached audio resource: ",d),g;try{h=(await wc((()=>Lo.get(d,{responseType:"arraybuffer"})),void 0,void 0,{maxRetryCount:3})).data}catch(m){throw new Be(Q.FETCH_AUDIO_FILE_FAILED,m.toString())}}else h=await new ot(((m,y)=>{const v=new FileReader;v.onload=E=>{E.target?m(E.target.result):y(new Be(Q.READ_LOCAL_AUDIO_FILE_ERROR))},v.onerror=()=>{y(new Be(Q.READ_LOCAL_AUDIO_FILE_ERROR))},v.readAsArrayBuffer(d)}));const p=await(function(g){const m=$p();return new ot(((y,v)=>{m.decodeAudioData(g,(E=>{y(E)}),(E=>{v(new Be(Q.DECODE_AUDIO_FILE_FAILED,E.toString()))}))}))})(h);return typeof d=="string"&&f&&ZB.set(d,p),p})(i,n)}catch(d){return s.onError(d),d.throw(D)}const l=new IBe(i),u=new TBe(c,l,r?P4(r):{},a);return D.info("create buffer source audio track success, trackId:",a),s.onSuccess(u.getTrackId()),u},setAppType:function(e){if(D.debug("setAppType: ".concat(e)),!(Number.isInteger(e)&&e>=0))throw D.debug("Invalid appType"),new xe(Q.INVALID_PARAMS,"invalid app type",e);Dn("APP_TYPE",Math.floor(e))},setLogLevel:function(e){D.setLogLevel(e)},enableLogUpload:function(){he("USE_NEW_LOG")?Dn("UPLOAD_LOG",!0):D.enableLogUpload()},disableLogUpload:function(){he("USE_NEW_LOG")?Dn("UPLOAD_LOG",!1):D.disableLogUpload()},createChannelMediaRelayConfiguration:function(){return new P$},checkAudioTrackIsActive:async function(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:5e3;const n=mt.reportApiInvoke(null,{tag:vr.TRACER,name:Zr.CHECK_AUDIO_TRACK_IS_ACTIVE,options:[t]});if(!(e instanceof mr||e instanceof Jh)){const c=new xe(Q.INVALID_TRACK,"the parameter is not a audio track");return n.onError(c),c.throw()}t&&t<1e3&&(t=1e3);const r=e instanceof mr?e.getTrackLabel():"remote_track",i=e.getVolumeLevel();let o=i,s=i;const a=Date.now();return new ot((c=>{const l=setInterval((()=>{const u=e.getVolumeLevel();o=u>o?u:o,s=u1e-4,f=Date.now()-a;if(d||f>t){clearInterval(l);const h=d,p={duration:f,deviceLabel:r,maxVolumeLevel:o,result:h};D.info("[track-".concat(e.getTrackId(),"] check audio track active completed. ").concat(JSON.stringify(p))),n.onSuccess(p),c(h)}}),200)}))},checkVideoTrackIsActive:async function(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:5e3;const n=mt.reportApiInvoke(null,{tag:vr.TRACER,name:Zr.CHECK_VIDEO_TRACK_IS_ACTIVE,options:[t]});if(!(e instanceof Kn||e instanceof Gh)){const d=new xe(Q.INVALID_TRACK,"the parameter is not a video track");return n.onError(d),d.throw()}t&&t<1e3&&(t=1e3);const r=e instanceof Kn?e.getTrackLabel():"remote_track",i=e.getMediaStreamTrack(!0),o=document.createElement("video");o.style.width="1px",o.style.height="1px",o.setAttribute("muted",""),o.muted=!0,o.setAttribute("playsinline",""),o.controls=!1,(Ri()||w4())&&(o.style.opacity="0.01",o.style.position="fixed",o.style.left="0",o.style.top="0",document.body.appendChild(o)),o.srcObject=new MediaStream([i]),o.play();const s=document.createElement("canvas");s.width=160,s.height=120;let a=0,c=0;try{const d=Date.now();a=await(function(f,h,p,g){let m,y=0,v=null;return new ot(((E,b)=>{function S(){y>g&&m&&(m(),E(y));const w=p.getContext("2d");if(!w){const I=new xe(Q.UNEXPECTED_ERROR,"can not get canvas 2d context.");return D.error(I.toString()),void b(I)}w.drawImage(f,0,0,160,120);const C=w.getImageData(0,0,p.width,p.height),_=Math.floor(C.data.length/3);if(v){for(let I=0;I<_;I+=3)if(C.data[I]!==v[I])return y+=1,void(v=C.data);v=C.data}else v=C.data}setTimeout((()=>{m&&(m(),E(y))}),h),m=EI((()=>{S()}),30)}))})(o,t,s,4),c=Date.now()-d}catch(d){throw n.onError(d),d}pFe===An.SAFARI&&(o.pause(),o.remove()),o.srcObject=null;const l=a>4,u={duration:c,changedPicNum:a,deviceLabel:r,result:l};return D.info("[track-".concat(e.getTrackId(),"] check video track active completed. ").concat(JSON.stringify(u))),n.onSuccess(u),l},setArea:TI,audioElementPlayCenter:Io,resumeAudioContext:function(){Io.autoResumeAfterInterruption(!0)},processExternalMediaAEC:function(e){kFe.processExternalMediaAEC(e)},registerExtensions:function(e){const t=he("PLUGIN_INFO")||[];e.forEach((n=>{"name"in n&&!lt(t).call(t,n.name)&&t.push(n.name);const r=n;r.__registered__=!0,r.logger.hookLog=D.extLog,r.reporter.hookApiInvoke=mt.extApiInvoke,r.parameters&&Object.keys(r.parameters).forEach((i=>{r.parameters[i]=he(i)}))})),gH("PLUGIN_INFO",t)},ChannelMediaRelayError:gh,ChannelMediaRelayEvent:Ul,ChannelMediaRelayState:zo,RemoteStreamFallbackType:yBe,RemoteStreamType:vBe,ConnectionDisconnectedReason:Tn,AudienceLatencyLevelType:KLe,AREAS:gn,preload:async function(e,t,n,r){return D$(e,t,n,r)}});Object.defineProperties(Tr,{onAudioAutoplayFailed:{get:()=>ws.onAudioAutoplayFailed,set:e=>{ws.onAudioAutoplayFailed=e}},onAutoplayFailed:{get:()=>ws.onAutoplayFailed,set:e=>{ws.onAutoplayFailed=e}},_onSecurityPolicyViolation:{value:void 0,writable:!0},_cspEventHandlerPointer:{value:void 0,writable:!0},onSecurityPolicyViolation:{get:()=>Tr._onSecurityPolicyViolation,set(e){Tr._onSecurityPolicyViolation=e,H$(e)}},__CLIENT_LIST__:{get:()=>he("SHOW_GLOBAL_CLIENT_LIST")?hd:[]}}),xs.on(z0.CAMERA_DEVICE_CHANGED,(e=>{D.info("camera device changed",JSON.stringify(e)),Tr.onCameraChanged&&Tr.onCameraChanged(e),Tr.safeEmit(Jc.CAMERA_CHANGED,e)})),xs.on(z0.RECORDING_DEVICE_CHANGED,(e=>{D.info("microphone device changed",JSON.stringify(e)),Tr.onMicrophoneChanged&&Tr.onMicrophoneChanged(e),Tr.safeEmit(Jc.MICROPHONE_CHANGED,e)})),xs.on(z0.PLAYOUT_DEVICE_CHANGED,(e=>{D.debug("playout device changed",JSON.stringify(e)),Tr.onPlaybackDeviceChanged&&Tr.onPlaybackDeviceChanged(e),Tr.safeEmit(Jc.PLAYBACK_DEVICE_CHANGED,e)})),Io.onAutoplayFailed=()=>{D.info("detect audio element autoplay failed"),ws.onAudioAutoplayFailed&&ws.onAudioAutoplayFailed()},In.on("autoplay-failed",(()=>{D.info("detect webaudio autoplay failed"),ws.onAudioAutoplayFailed&&ws.onAudioAutoplayFailed(),Tr.safeEmit(Jc.AUTOPLAY_FAILED)})),In.on(mi.STATE_CHANGE,((e,t)=>{D.info("audio context state changed: ".concat(t," => ").concat(e)),Tr.onAudioContextStateChanged&&Tr.onAudioContextStateChanged(e,t),Tr.safeEmit(Jc.AUDIO_CONTEXT_STATE_CHANGED,e,t)})),Fr.on(Th.NETWORK_STATE_CHANGE,((e,t)=>{D.info("[network-indicator] network state changed, ".concat(t," => ").concat(e))})),window&&(window.__ARTC__=Tr);const aje="d035320941e34cd5bc4ec106eff05580";var mee=(e=>(e.Host="host",e.Audience="audience",e))(mee||{});class gee{constructor(t){et(this,"client",null);et(this,"isConnected",!1);et(this,"currentChannel","");et(this,"config");if(this.config=t,!Ws.useRTC){Pe.log("[RTC] 未启用RTC,跳过客户端创建");return}}ensureClient(){if(!this.client){if(!Ws.useRTC)throw new Error("RTC is not enabled");try{Tr.setLogLevel(3),Tr.disableLogUpload()}catch{}this.client=Tr.createClient({mode:"live",codec:"vp8"}),Pe.log("[RTC] 创建RTC客户端成功"),this.setupEventListeners()}}setupEventListeners(){this.client&&(this.client.on("connection-state-change",(t,n,r)=>{t==="CONNECTED"?(this.isConnected=!0,Pe.log("[RTC] 已成功加入频道")):t==="DISCONNECTED"&&(this.isConnected=!1,Pe.warn("[RTC] 已离开频道"))}),this.client.on("user-joined",()=>{Pe.log("[RTC] 远端用户加入频道")}),this.client.on("user-left",()=>{Pe.log("[RTC] 远端用户离开频道")}),this.client.on("user-published",async(t,n)=>{try{Pe.log("[RTC] 远端用户发布音视频流:",t.uid,n),await this.client.subscribe(t,n),n==="video"&&(Pe.log("[RTC] 已订阅视频流 uid=",t.uid),setTimeout(()=>{t.videoTrack?Pe.log("[RTC] 视频轨道已可用,可以开始播放"):Pe.warn("[RTC] 订阅成功但视频轨道尚未准备好,可能需要等待")},500))}catch(r){Pe.error("[RTC] 自动订阅失败:",r)}}),this.client.on("user-unpublished",()=>{Pe.log("[RTC] 远端用户停止发布音视频流")}),this.client.on("user-info-updated",(t,n)=>{Pe.log("[RTC] 远端用户信息更新:",t.uid,n)}))}ensureMediaDevicesPolyfill(){try{if(!(typeof window<"u"&&typeof navigator<"u"))return;const n=window.location.protocol,r=navigator;if(r.mediaDevices||(r.mediaDevices={}),n==="file:"||n==="http:"){if(typeof r.mediaDevices.enumerateDevices!="function")r.mediaDevices.enumerateDevices=async()=>[];else{const o=r.mediaDevices.enumerateDevices.bind(r.mediaDevices);r.mediaDevices.enumerateDevices=async(...s)=>{try{return await o(...s)}catch{return[]}}}const i=`[RTC] 当前为非安全上下文(${n})。已禁用本地设备枚举,仅观看远端视频可用。建议使用 https 或 localhost。`;Pe.warn(i)}}catch(t){Pe.warn("[RTC] 屏蔽本地设备枚举失败:",t)}}async joinChannel(t,n,r){if(this.ensureClient(),Pe.log("[RTC] 加入频道参数:",{channelName:t,token:n,userId:r}),!this.client)throw new Error("RTC client not initialized");if(this.isConnected&&this.currentChannel===t){Pe.log("[RTC] 已经在频道中,无需重复加入:",t);return}this.isConnected&&this.currentChannel!==t&&(Pe.log("[RTC] 已在其他频道,先离开当前频道:",this.currentChannel),await this.leaveChannel());try{const i=aje,o=(t??"").toString().trim();if(!o)throw new Error("RTC channel name is empty");if(typeof n=="string"&&n.trim()==="")throw new Error("RTC token is empty string");const s=n===void 0?null:n,a=Number(r);if(isNaN(a))throw new Error(`Invalid UID: ${r}. UID must be a number.`);await this.client.join(i,o,s,a),this.currentChannel=o}catch(i){throw Pe.error("[RTC]Failed to join channel:",i),i}}async setClientRole(t){if(this.ensureClient(),!this.client)throw new Error("RTC client not initialized");await this.client.setClientRole(t),Pe.log("[RTC] 已设置客户端角色:",t)}async subscribe(t){if(this.ensureClient(),!this.client)throw new Error("RTC client not initialized");try{await this.client.subscribe(t,"video"),Pe.log("[RTC] 成功订阅用户视频流:",t.uid)}catch(n){throw Pe.error("Failed to subscribe to user:",n),n}}getRemoteUsers(){return this.client?this.client.remoteUsers:[]}async leaveChannel(){if(!(!this.client||!this.isConnected))try{await this.client.leave(),this.isConnected=!1,this.currentChannel=""}catch(t){throw Pe.error("Failed to leave channel:",t),t}}async renewToken(t){if(this.ensureClient(),!this.client)throw new Error("RTC client not initialized");try{Pe.log("[RTC]刷新token",t),await this.client.renewToken(t)}catch(n){throw Pe.error("Failed to renew token:",n),n}}destroy(){this.client&&(this.client.removeAllListeners(),this.client=null),this.isConnected=!1,this.currentChannel=""}}et(gee,"insecureNoticeShown",!1);class cje{constructor(){et(this,"rtcClient");et(this,"currentVideoTrack",null);et(this,"isWatching",!1);et(this,"rtcToken","");et(this,"userId","");et(this,"rtcTokenExpireTime",0);et(this,"onTokenUpdate",t=>{if(!Ws.useRTC){Pe.log("[RTC] 未启用RTC,不处理Token更新");return}const n=t.rtcToken,r=(t==null?void 0:t.rtcTokenExpireTime)||0;if(!n||typeof n!="string"){Pe.warn("[RTC] 收到无效的Token更新数据:",t);return}const i=Math.floor(Date.now()/1e3),o=300;if(this.rtcToken&&this.rtcTokenExpireTime>0){const s=this.rtcTokenExpireTime-i;if(s>o){Pe.log("[RTC] 当前Token还有较长时间才过期,跳过更新",{remainingSeconds:s,expireTime:new Date(this.rtcTokenExpireTime*1e3).toLocaleString()});return}}this.rtcToken=n,this.rtcTokenExpireTime=r,Pe.log("[RTC]Token已更新"),Pe.log("[RTC] User ID:",t==null?void 0:t.userId),this.rtcTokenExpireTime>0&&Pe.log("[RTC]Token过期时间:",new Date(this.rtcTokenExpireTime*1e3).toLocaleString()),this.rtcClient.renewToken(n)});this.rtcClient=new gee,this.listenTokenUpdate()}listenTokenUpdate(){qr.on("onRtcTokenChanged",this.onTokenUpdate)}async startWatching(t,n,r){try{const i=t??qi.sn;try{const c=await qr.request("getRtcToken",{},1e4);if(!c.rtcToken)return Pe.error("[RTC] Token为空"),!1;this.rtcToken=c.rtcToken,this.userId=c.userId}catch(c){return Pe.error("[RTC] 从IPC获取RTC Token失败",c),!1}Pe.log("[RTC] 加入频道参数:",{printerId:qi.printerId,channel:i,uid:this.userId,tokenLength:this.rtcToken.length,tokenPrefix:this.rtcToken.substring(0,20)+"..."}),await this.rtcClient.joinChannel(i,this.rtcToken,this.userId),await this.rtcClient.setClientRole(mee.Host),await this.waitForRemoteUsers();const o=this.rtcClient.getRemoteUsers();if(Pe.log(`[RTC Service] 频道中共有 ${o.length} 个远端用户`),o.length===0)return Pe.warn("[RTC Service] 频道中没有其他用户,请确保有其他设备已加入同一频道"),!1;let s;const a=o.filter(c=>c.hasVideo);return a.length>0?s=a[0]:(s=o[0],Pe.log(`[RTC Service] 选择用户(没有视频流): ${s.uid}`)),s?(await this.waitForVideoTrack(s),s.videoTrack?(this.currentVideoTrack=s.videoTrack,this.isWatching=!0,!0):(Pe.warn("User has no video track"),!1)):(Pe.warn("No target user found"),!1)}catch(i){throw Pe.error("Failed to start watching video stream:",i),i}}async stopWatching(){try{Pe.log("[RTC] 停止观看视频流"),this.currentVideoTrack&&(this.currentVideoTrack=null),this.isWatching=!1,await this.rtcClient.leaveChannel()}catch(t){throw Pe.error("Failed to stop watching video stream:",t),t}}getCurrentVideoTrack(){return this.currentVideoTrack}isCurrentlyWatching(){return this.isWatching}getRemoteUsers(){return this.rtcClient.getRemoteUsers()}getVideoUsers(){return this.rtcClient.getRemoteUsers().filter(t=>t.hasVideo)}async switchUser(t){try{Pe.log("Switching to user:",t),this.isWatching&&(this.currentVideoTrack=null,this.isWatching=!1);const r=this.rtcClient.getRemoteUsers().find(i=>i.uid===t);return r?(await this.rtcClient.subscribe(r),r.videoTrack?(this.currentVideoTrack=r.videoTrack,this.isWatching=!0,Pe.log("Successfully switched to user:",t),!0):!1):(Pe.warn(`Target user ${t} not found`),!1)}catch(n){throw Pe.error("Failed to switch user:",n),n}}async waitForVideoTrack(t){return new Promise(n=>{let r=0;const i=50,o=()=>{if(r++,t.videoTrack){const a=typeof t.videoTrack.getMediaStreamTrack=="function";Pe.log(`[RTC Service] 视频轨道已准备就绪: ${t.uid}, 轨道可用: ${a}`),n()}else r>=i?(Pe.warn(`[RTC Service] 等待视频轨道超时: ${t.uid}`),n()):setTimeout(o,200)};o()})}async waitForRemoteUsers(){return new Promise(t=>{let n=0;const r=30;let i=!1;const o=()=>{n++;const s=this.rtcClient.getRemoteUsers();s.length>0?(s.forEach((a,c)=>{Pe.log(`[RTC Service] 第 ${c+1} 个远端用户: UID=${a.uid}, 有视频=${a.hasVideo}, 有音频=${a.hasAudio}, 视频轨道=${!!a.videoTrack}`)}),i=!0,t()):n>=r?(i||Pe.warn("[RTC Service] 等待超时,未找到远端用户"),t()):setTimeout(o,200)};o()})}checkAgoraConfig(){const t=[];return{isValid:t.length===0,issues:t}}destroy(){try{qr.off("onRtcTokenChanged",this.onTokenUpdate),this.stopWatching(),this.rtcClient.destroy(),Pe.log("RTC service destroyed")}catch(t){Pe.error("Failed to destroy RTC service:",t)}}}const D5=new cje;class lje{constructor(){et(this,"sn","");et(this,"emitter",sT());et(this,"printerId","");et(this,"connectionStatus",0);et(this,"pendingRequests",new Map);et(this,"requestIdCounter",1);et(this,"onConnectionStatus",t=>{Pe.log("[RTM ] 连接状态变化:",t);let n;switch(typeof t=="object"&&"status"in t?n=t.status:n=t,this.connectionStatus=n,n){case 2:Pe.log("[RTM ] 正在连接到打印机...");break;case 1:Pe.log("[RTM ] 已成功连接到打印机"),this.emitter.emit("connected");break;case 0:Pe.log("[RTM ] 已断开与打印机的连接"),this.emitter.emit("disconnected");break;default:Pe.warn("[RTM ] 未知的连接状态:",n)}});et(this,"onPrinterEventRaw",t=>{let n=t;if(t.event&&typeof t.event=="string")try{n=JSON.parse(t.event)}catch(r){Pe.error("[RTM ] 解析事件数据失败:",r),n=t}this.emitter.emit("autoReportStatus",n.result)});et(this,"onRtmMessage",t=>{Pe.logJson("[RTM]收到消息:",t);const n=t==null?void 0:t.message;if(!n){Pe.warn("[RTM ] 消息数据为空");return}const r=JSON.parse(n);r.id!==void 0&&this.handleResponse(r)});Pe.log("当前协议非 RTM,跳过 RTM 初始化")}async initializeConnectionStatus(){try{const t=await qr.request("getConnectStatus",{printerId:this.printerId},1e4);Pe.log("[RTM ] 初始连接状态:",t),t.printerId===this.printerId?this.connectionStatus=t.connectStatus:(this.connectionStatus=0,Pe.error("[RTM ] 打印机ID不匹配")),this.onConnectionStatus(this.connectionStatus)}catch(t){Pe.error("[RTM ] 获取初始连接状态失败:",t),this.connectionStatus=0}}listenIPCEvent(){qr.on("onRtmMessage",this.onRtmMessage),qr.on("onConnectionStatus",this.onConnectionStatus),qr.on("onPrinterEventRaw",this.onPrinterEventRaw)}handleResponse(t){const{id:n}=t,r=this.pendingRequests.get(n.toString());if(r){const{resolve:i,timer:o}=r;clearTimeout(o),this.pendingRequests.delete(n.toString()),t.method===Rt.GetBasicInfo&&this.emitter.emit("status",t.result),i(t.result)}}async request(t,n={},r=5e3){const i=this.requestIdCounter++,o={...n,id:i},s=JSON.stringify(o);return new Promise((a,c)=>{const l=setTimeout(()=>{this.pendingRequests.delete(i.toString()),c(new Error(`[RTM] 请求超时 (${r}ms)`))},r);this.pendingRequests.set(i.toString(),{resolve:a,reject:c,timer:l}),Pe.logJson("[RTM]消息发送:",s),qr.request("sendRtmMessage",{printerId:this.printerId,message:s},r).then(()=>{}).catch(u=>{clearTimeout(l),this.pendingRequests.delete(i.toString()),Pe.error("[RTM] 发送失败:",{method:t,params:n,error:u}),c(u)})})}async startPrint(t,n){return this.request(Rt.StartPrint,{...n})}async pausePrint(t,n,r=5e3){return this.request(Rt.PausePrint,{...n},r)}async resumePrint(t,n,r=5e3){return this.request(Rt.ResumePrint,{...n},r)}async stopPrint(t,n,r=5e3){return this.request(Rt.CancelPrint,{...n},r)}async urgentStop(t,n){return this.request(Rt.UrgentStop,{...n})}async feed(t,n,r=5e3){return this.request(Rt.Feed,{...n},r)}async retreat(t,n,r=5e3){return this.request(Rt.Retreat,{...n},r)}async getSystemInfo(t,n){return this.request(Rt.GetSystemInfo,{...n})}async getBaseInfo(t,n){return this.request(Rt.GetBasicInfo,{...n})}async getPrintsInfo(t,n){return this.request(Rt.GetPrintsInfo,{...n})}async getHomeStatus(t,n){return this.request(Rt.GetHomeStatus,{...n})}async setPrintConfig(t,n){return this.request(Rt.SetPrintConfig,{...n})}async xyzHomeControl(t,n){return this.request(Rt.XYZHomeControl,{...n})}async xyzMoveControl(t,n){return this.request(Rt.XYZMoveControl,{...n})}async temperatureControl(t,n){return this.request(Rt.TemperatureControl,{...n})}async setLight(t,n){return this.request(Rt.LightSwitch,{...n})}async setFan(t,n){return this.request(Rt.FanControl,{...n})}async setPrintSpeed(t,n){return this.request(Rt.PrintSpeedControl,{...n})}async setDeviceName(t,n){return this.request(Rt.SetDeviceName,{...n})}async otaUpgrade(t,n){return this.request(Rt.OTAUpgrade,{...n})}async getFileList(t,n){var r,i;try{const o=n.params.offset,s=n.params.limit,a=Math.floor(o/s)+1,c=await qr.request("getFileList",{printerId:this.printerId,pageNumber:a,pageSize:s},1e4),l={error_code:0,offset:((r=n.params)==null?void 0:r.offset)||0,total:c.totalFiles,file_list:c.fileList.map(u=>({filename:u.fileName,type:"file",print_time:u.printTime,layer:u.layer,size:u.size,create_time:u.createTime,total_filament_used:u.totalFilamentUsed,total_print_times:u.totalPrintTimes,last_print_time:u.lastPrintTime}))};return Pe.log("[RTM ] 本地文件列表返回结果:",l),l}catch(o){return Pe.error("[RTM ] 本地文件列表失败:",o),{error_code:o.code||1,offset:((i=n.params)==null?void 0:i.offset)||0,total:0,file_list:[]}}}async getFileDetail(t,n){try{Pe.log("[RTM ] 正在获取文件详情:",n);const r=await qr.request("getFileDetail",{printerId:this.printerId,fileName:n.params.filename},1e4),i={error_code:0,filename:r.fileName,print_time:r.printTime,layer:r.layer,size:r.size,create_time:r.createTime,total_filament_used:r.totalFilamentUsed,total_print_times:r.totalPrintTimes,last_print_time:r.lastPrintTime,color_map:(r.colorMapping||[]).map(o=>({t:o.t,color:o.color,name:o.type})),thumbnail:r.thumbnail};return Pe.log("[RTM ] 获取文件详情返回结果:",i),i}catch(r){throw Pe.error("[RTM ] 获取文件详情失败:",r),r}}async getBaseInfoIPC(t,n){try{return{error_code:0,...await qr.request("getPrinterStatusRaw",{printerId:this.printerId},1e4)}}catch(r){throw Pe.error("[RTM ] 获取基本信息失败:",r),r}}async getSn(){try{const t=await qr.request("get_sn",{},1e4);return Pe.log("[RTM ]获取SN成功:",t),t}catch(t){throw Pe.error("[RTM ]获取SN失败:",t),t}}async getFileThumbnail(t,n){return this.request(Rt.GetFileThumbnail,{...n})}async deleteFile(t,n){return this.request(Rt.DeleteFile,{...n})}async getPrintHistoryList(t,n,r=1,i=20){return this.getPrintTaskList(r,i)}async getPrintTaskList(t=1,n=100){try{const r=await qr.request("getPrintTaskList",{printerId:this.printerId,pageNumber:t,pageSize:n},1e4);if(!r||r===null)return Pe.error("[RTM ] 获取打印任务列表响应为空"),{error_code:1,total:0,history_task_list:[]};const i={error_code:0,total:r.totalTasks||0,history_task_list:(r.taskList||[]).map(o=>({task_id:o.taskId,task_name:o.taskName,begin_time:o.beginTime,end_time:o.endTime,task_status:o.taskStatus,time_lapse_video_status:0,time_lapse_video_url:"",time_lapse_video_size:0,time_lapse_video_duration:0}))};return Pe.log("[RTM ] 获取打印任务列表返回结果:",i),i}catch(r){return Pe.error("[RTM ] 获取打印任务列表失败:",r),{error_code:1,total:0,history_task_list:[]}}}async deletePrintHistory(t,n){var r;try{const i=((r=n.params)==null?void 0:r.list)||[];return Pe.log("[RTM]删除打印任务请求:",{printerId:this.printerId,taskIds:i}),{error_code:(await qr.request("deletePrintTasks",{printerId:this.printerId,taskIds:i},1e4)).error_code}}catch(i){throw Pe.error("[RTM ] 删除打印任务失败:",i),i}}async loadFilament(t,n,r=5e3){return this.request(Rt.LoadFilamenting,{...n},r)}async unloadFilament(t,n,r=5e3){return this.request(Rt.UnloadFilamenting,{...n},r)}async setFilamentInfo(t,n){return this.request(Rt.SetFilamentInfo,{...n})}async setMonoFilamentInfo(t,n){return this.request(Rt.SetMonoFilamentInfo,{...n})}async getMonoFilamentInfo(t,n){return this.request(Rt.GetMonoFilamentInfo,{...n})}async setAutoFillFilament(t,n){return this.request(Rt.SetAutoFillFilament,{...n})}async getCanvasInfo(t,n){return this.request(Rt.GetCanvasInfo,{...n})}async autoLeveling(t,n){return this.request(Rt.AutoLeveling,{...n})}async vibrationOptimize(t,n){return this.request(Rt.VibrationOptimize,{...n})}async pidDetect(t,n){return this.request(Rt.PIDDetect,{...n})}async oneKeyCheck(t,n){return this.request(Rt.OneKeyCheck,{...n})}async getAIDetectionSettings(t,n){return this.request(Rt.GetAIDetectionSettings,{...n})}async setAIDetectionSettings(t,n){return this.request(Rt.SetAIDetectionSettings,{...n})}}const Ku=new lje,uje={class:"dialog-header font-size16"},dje={class:"dialog-content bg-color"},fje={class:"noodle-detection-cards"},hje={class:"detection-cards"},pje={class:"detection-card"},mje={class:"card-info"},gje={class:"card-title"},vje={class:"card-description"},yje={class:"config-section"},Eje={class:"config-card"},bje={class:"config-label"},Sje={class:"config-card"},Aje={class:"config-label"},Cje={class:"bottom-container"};var rc=(e=>(e[e.On=1]="On",e[e.Off=0]="Off",e))(rc||{}),vee=(e=>(e.Low="low",e.Medium="medium",e.High="high",e))(vee||{}),yee=(e=>(e.Notify="notification",e.Pause="pause",e))(yee||{});const wje=Je({__name:"ai-detection",props:{title:{type:String,default:"AI功能"},detectionItems:{type:Array,required:!0},detectionFrequency:{type:String,default:"medium"},anomalyHandling:{type:String,default:"notification"},cancelText:{type:String,default:"关闭"},saveText:{type:String,default:"保存"},modelValue:{type:Boolean,default:!1},loading:{type:Boolean,default:!1}},emits:["update:modelValue","save","close"],setup(e,{emit:t}){const{isMobile:n}=gs(),{t:r}=Eo(),i=e,o=t,s=V({get:()=>i.modelValue,set:y=>o("update:modelValue",y)}),a=se(0),c=se("medium"),l=se("notification"),u=se(0),d=V(()=>a.value===0),f=()=>{const y=i.detectionItems.find(E=>E.key==="noodleDetection");a.value=(y==null?void 0:y.value)===1?1:0,c.value=i.detectionFrequency,l.value=i.anomalyHandling;const v=i.detectionItems.find(E=>E.key==="foreignObjectDetection");u.value=(v==null?void 0:v.value)===1?1:0};Ye(()=>i.modelValue,y=>{y&&f()},{immediate:!0}),Ye(()=>i.detectionItems,()=>{i.modelValue&&f()},{deep:!0}),Ye(()=>[i.detectionFrequency,i.anomalyHandling],()=>{i.modelValue&&(c.value=i.detectionFrequency,l.value=i.anomalyHandling)});const h=()=>{s.value=!1,o("close")},p=()=>{const y={spaghetti_detection:{status:a.value,frequency:c.value,handing:l.value},foreign_object_detection:{status:u.value}};o("save",y),s.value=!1},g=()=>{},m=()=>{};return(y,v)=>{const E=pr,b=Ug,S=Fg,w=Zd;return ne(),Ze(w,{modelValue:s.value,"onUpdate:modelValue":v[3]||(v[3]=C=>s.value=C),width:P(n)?"90%":"500px","show-close":!1,style:Ut({padding:0,maxHeight:P(n)?"80vh":"70vh",overflow:"auto"}),"close-on-click-modal":!1,"close-on-press-escape":!0,class:"bg-color"},{header:Re(()=>[G("div",uje,[G("span",null,Ue(e.title),1),be(E,{class:"close-btn",type:"info",size:"small",onClick:h},{default:Re(()=>[be(P(Wd))]),_:1})])]),default:Re(()=>[G("div",dje,[G("div",fje,[G("div",hje,[G("div",pje,[G("div",mje,[G("div",gje,Ue(P(r)("aiDetection.noodleDetection")),1),G("div",vje,Ue(P(r)("aiDetection.noodleDetectionDesc")),1)]),be(S,{modelValue:a.value,"onUpdate:modelValue":v[0]||(v[0]=C=>a.value=C),class:"card-select",onChange:g},{default:Re(()=>[be(b,{label:P(r)("aiDetection.on"),value:1},null,8,["label","value"]),be(b,{label:P(r)("aiDetection.off"),value:0},null,8,["label","value"])]),_:1},8,["modelValue"])])]),G("div",yje,[G("div",Eje,[G("div",bje,Ue(P(r)("aiDetection.detectionFrequency")),1),be(S,{modelValue:c.value,"onUpdate:modelValue":v[1]||(v[1]=C=>c.value=C),class:"config-select",disabled:d.value,onChange:m},{default:Re(()=>[be(b,{label:P(r)("aiDetection.low"),value:"low"},null,8,["label","value"]),be(b,{label:P(r)("aiDetection.medium"),value:"medium"},null,8,["label","value"]),be(b,{label:P(r)("aiDetection.high"),value:"high"},null,8,["label","value"])]),_:1},8,["modelValue","disabled"])]),G("div",Sje,[G("div",Aje,Ue(P(r)("aiDetection.anomalyHandling")),1),be(S,{modelValue:l.value,"onUpdate:modelValue":v[2]||(v[2]=C=>l.value=C),class:"config-select",disabled:d.value,onChange:m},{default:Re(()=>[be(b,{label:P(r)("aiDetection.notify"),value:"notification"},null,8,["label","value"]),be(b,{label:P(r)("aiDetection.pause"),value:"pause"},null,8,["label","value"])]),_:1},8,["modelValue","disabled"])])])]),G("div",Cje,[be(E,{class:"cancel-btn",onClick:h},{default:Re(()=>[yt(Ue(e.cancelText),1)]),_:1}),be(E,{class:"save-btn",type:"primary",onClick:p,loading:e.loading},{default:Re(()=>[yt(Ue(e.saveText),1)]),_:1},8,["loading"])])])]),_:1},8,["modelValue","width","style"])}}}),Tje=rr(wje,[["__scopeId","data-v-bcd626cd"]]),WE=1e3,di=oy("printer-mqtt",()=>{const r=String(Ws.wan).toLowerCase()==="true",i=se(),o=se(!1),{t:s}=Eo(),a=se(qi.sn),c=se(!1);async function l(){var _e;if(!r){const urlSn=(qi.sn||"").trim();if(urlSn){a.value=urlSn;return}try{const Me=await Ku.getSn(),it=(_e=Me==null?void 0:Me.sn)==null?void 0:_e.trim();it&&(a.value=it)}catch(Me){Pe.warn("[IPC] get_sn 失败,沿用 URL sn",Me)}}}const u=se(!1),d=se([]),f=se([]),h=se(1),p=se(15),g=se(0),m=se(!0),y=se(!1),v=se(""),E=se(),b=se([]),S=se(""),w=se(0);let C=null;const _=se({}),I=eo({moveStep:10,modelFanSpeed:0,auxiliaryFanSpeed:0,chassisFanSpeed:0,lightValue:0,curPrinterMode:1,printModeOptions:[{label:"control.slient",value:0},{label:"control.balanced",value:1},{label:"control.sport",value:2},{label:"control.ludicrous",value:3}],xPos:0,yPos:0,zPos:0}),O=se(),L=se(),R=se(""),F=se([]),W=se([]),J=se(""),Y=se(""),M=se(xn.Local),B=se(0),q=se([]),z=se(""),A=se(!1),T=se(),k=se({error_code:0,spaghetti_detection:{status:rc.Off,frequency:vee.Medium,handing:yee.Notify},foreign_object_detection:{status:rc.Off}}),j=V(()=>{var _e,Me;return((Me=(_e=O.value)==null?void 0:_e.external_device)==null?void 0:Me.u_disk)??!1}),re=V(()=>{var _e,Me;return((Me=(_e=O.value)==null?void 0:_e.external_device)==null?void 0:Me.camera)??!1}),me=V(()=>{var _e,Me,it,zt;return((_e=i.value)==null?void 0:_e.machine_model)==tc.CC2?!0:((zt=(it=(Me=O.value)==null?void 0:Me.external_device)==null?void 0:it.chassis_camera)==null?void 0:zt.configured)==1}),te=V(()=>{var _e,Me,it,zt;return((_e=i.value)==null?void 0:_e.machine_model)==tc.CC2?!0:((zt=(it=(Me=O.value)==null?void 0:Me.external_device)==null?void 0:it.chassis_lighting)==null?void 0:zt.configured)==1}),X=V(()=>{var _e,Me;return((_e=i.value)==null?void 0:_e.machine_model)==tc.CC2?qi.region!=qC.China&&jn():((Me=i.value)==null?void 0:Me.machine_model)==tc.C2?me.value&&te.value&&jn():!1}),fe=V(()=>{var _e,Me,it,zt;return((_e=i.value)==null?void 0:_e.machine_model)==tc.CC2?!0:((zt=(it=(Me=O.value)==null?void 0:Me.external_device)==null?void 0:it.auxiliary_fan)==null?void 0:zt.configured)==1}),le=V(()=>{var _e,Me,it,zt;return((_e=i.value)==null?void 0:_e.machine_model)==tc.CC2?!0:((zt=(it=(Me=O.value)==null?void 0:Me.external_device)==null?void 0:it.exhaust_grille)==null?void 0:zt.configured)==1}),ve=V(()=>{var _e,Me,it,zt;return((_e=i.value)==null?void 0:_e.machine_model)==tc.CC2?!0:((zt=(it=(Me=O.value)==null?void 0:Me.external_device)==null?void 0:it.chassis_fan)==null?void 0:zt.configured)==1}),Z=V(()=>{var Me,it;const _e=((Me=L.value)==null?void 0:Me.filename)??"";if(((it=O.value)==null?void 0:it.machine_status.status)===Ge.Printing&&_e)if(M.value===xn.UDisk){const zt=W.value.find(Fi=>Fi.filename===_e);return(zt==null?void 0:zt.layer)??0}else{const zt=F.value.find(Fi=>Fi.filename===_e);return zt?(zt==null?void 0:zt.layer)??0:(Pe.log("当前打印文件不存在缓存,重新获取文件详情获取总层数",_e),jI(_e,xn.Local,void 0,!1),B)}return 0}),ae=V(()=>{var _e;return((_e=E.value)==null?void 0:_e.canvas_info.auto_refill)??!1}),pe=V(()=>{var _e;return((_e=E.value)==null?void 0:_e.canvas_info.active_tray_id)??-1}),K=se(-1),ce=`lastLoadedSlotId:${a.value}`,ye=localStorage.getItem(ce);ye&&(K.value=Number(ye));const ee=V(()=>{var _e;for(const Me of((_e=E.value)==null?void 0:_e.canvas_info.canvas_list)??[]){const it=Me.tray_list.find(zt=>zt.status==Oo.loaded);if(it)return K.value=it.tray_id,localStorage.setItem(ce,it.tray_id.toString()),it.tray_id}return-1}),$=V(()=>{var _e;for(const Me of((_e=E.value)==null?void 0:_e.canvas_info.canvas_list)??[])if(Me.connected)return!0;return!1});Ye($,(_e,Me)=>{!_e&&Me&&r1()},{immediate:!0});const ge=V(()=>L.value===void 0?0:L.value.print_duration),ie=V(()=>L.value===void 0?0:L.value.remaining_time_sec),Ie=V(()=>{var Me;return((Me=O.value)==null?void 0:Me.machine_status.status)??Ge.Offline}),Ce=V(()=>{var _e;return((_e=O.value)==null?void 0:_e.machine_status.sub_status)??0}),oe=se(0),Ne=V(()=>{const _e=Ce.value,Me=[De.LoadStartCanvas,De.LoadNozzleHeatingCanvas,De.LoadManualInsertFilamentCanvas,De.LoadCutFilamentCanvas,De.LoadDrawFilamentCanvas,De.LoadPushFilamentCanvas,De.LoadFlushFilamentCanvas,De.LoadCompleteCanvas,De.LoadFailedCanvas],it=[De.UnloadStartCanvas,De.UnloadNozzleHeatingCanvas,De.UnloadCheckFilamentCanvas,De.UnloadCutFilamentCanvas,De.UnloadDrawFilamentCanvas,De.UnloadCompleteCanvas,De.UnloadFailedCanvas];return Me.includes(_e)||it.includes(_e)}),x=V(()=>Ie.value===Ge.Initializing),N=V(()=>c.value),U=V(()=>Ie.value===Ge.Printing),de=V(()=>Ie.value===Ge.Idle),we=V(()=>Ie.value===Ge.Loading),Ae=V(()=>Ie.value===Ge.UnLoading),Le=V(()=>Ie.value===Ge.AutoLeveling),ue=V(()=>Ie.value===Ge.PidCalibration),Ee=V(()=>Ie.value===Ge.ResonanceTester),He=V(()=>Ie.value===Ge.SelfCheck),Xe=V(()=>Ie.value===Ge.Upgrade),qe=V(()=>Ie.value===Ge.ManualHoming),It=V(()=>Ie.value===Ge.FileSending),We=V(()=>Ie.value===Ge.Extrudering),$e=V(()=>Ie.value===Ge.PowerOffResume),ht=V(()=>Ce.value===De.Homed),Ht=V(()=>Ce.value===De.Printing),_t=V(()=>Ie.value===Ge.Printing&&Ce.value===De.Paused),qt=V(()=>Ie.value===Ge.Printing&&Ce.value===De.Paused),nn=V(()=>Ie.value===Ge.Printing&&Ce.value===De.Interruption),kn=V(()=>Ie.value===Ge.Printing&&Ce.value===De.Stopped),Jn=V(()=>Ie.value===Ge.Printing&&Ce.value===De.PrintComplete),oi=V(()=>Ie.value===Ge.Printing&&Ce.value===De.Stopping),Se=V(()=>Ie.value===Ge.Printing&&Ce.value===De.Pausing),Oe=V(()=>Ie.value===Ge.Printing&&Ce.value===De.Resuming),ct=V(()=>Ie.value===Ge.Printing&&Ce.value===De.Resumed),gt=V(()=>Ie.value===Ge.Printing&&Ce.value===De.HotendPreheating),Et=V(()=>Ie.value===Ge.Printing&&Ce.value===De.HotendCooling),$n=V(()=>Ie.value===Ge.Printing&&Ce.value===De.BedPreheating),Mi=V(()=>Ie.value===Ge.Printing&&Ce.value===De.BedCooling),$o=V(()=>Ie.value===Ge.Printing&&Ce.value===De.Homing),Tl=V(()=>Ie.value===Ge.Printing&&Ce.value===De.Homed),ua=V(()=>Ie.value===Ge.Printing&&Ce.value===De.AutoLeveling),Ve=V(()=>Ie.value===Ge.Printing&&Ce.value===De.AutoLevelingComplete),Ct=V(()=>Ie.value===Ge.Printing&&Ce.value===De.UnloadNozzleHeatingCanvas),un=V(()=>Ie.value===Ge.Printing&&Ce.value===De.UnloadCheckFilamentCanvas),hr=V(()=>Ie.value===Ge.Printing&&Ce.value===De.UnloadCutFilamentCanvas),si=V(()=>Ie.value===Ge.Printing&&Ce.value===De.UnloadDrawFilamentCanvas),No=V(()=>Ie.value===Ge.Printing&&Ce.value===De.LoadNozzleHeatingCanvas),Bi=V(()=>Ie.value===Ge.Printing&&Ce.value===De.LoadManualInsertFilamentCanvas),Mo=V(()=>Ie.value===Ge.Printing&&Ce.value===De.LoadCutFilamentCanvas),o0=V(()=>Ie.value===Ge.Printing&&Ce.value===De.LoadDrawFilamentCanvas),A6=V(()=>Ie.value===Ge.Printing&&Ce.value===De.LoadPushFilamentCanvas),Oee=V(()=>Ie.value===Ge.Printing&&Ce.value===De.LoadFlushFilamentCanvas),_ee=V(()=>Ie.value===Ge.Printing&&Ce.value===De.LoadCompleteCanvas);V(()=>Ce.value===De.ManualInsertFilament),V(()=>Ce.value===De.BiteFilament);const Ree=V(()=>Ce.value===De.BiteFilamentEnd),kee=V(()=>Ce.value===De.CutFilament),xee=V(()=>Ce.value===De.EjectFilament),Dee=V(()=>Ce.value===De.EjectFilamentComplete),Lee=V(()=>Ce.value===De.UnloadCompleteCanvas),Nee=V(()=>Ce.value===De.LoadCompleteCanvas),Mee=V(()=>Ce.value===De.ResonanceOptimizing),Bee=V(()=>Ce.value===De.ResonanceOptimized);V(()=>Ce.value===De.ResonanceOptimizeFailed),V(()=>Ce.value===De.PidPreheating),V(()=>Ce.value===De.PidDetecting);const Fee=V(()=>Ce.value===De.PidCompleted);V(()=>Ce.value===De.PidFailed);const Uee=V(()=>Ce.value===De.AutoLeveling),jee=V(()=>Ce.value===De.AutoLevelingComplete),Hee=V(()=>Ce.value===De.OTAInfoUpdating),zee=V(()=>Ce.value===De.OTADownloading),Wee=V(()=>Ce.value===De.OTAExtracting),Vee=V(()=>Ce.value===De.OTAUpdating),BI=V(()=>Ce.value===De.OTAComplete),Gee=V(()=>Ce.value===De.OTAFailed),Jee=V(()=>Ce.value===De.InitializeComplete),Zee=V(()=>Ie.value===Ge.TimeLapseVideoGenerating&&Ce.value===De.TimeLapseVideoGenerating),Yee=V(()=>Ie.value===Ge.Printing&&Ce.value===De.TimeLapseVideoGeneratingComplete),Xee=V(()=>Ie.value===Ge.Printing&&Ce.value===De.TimeLapseVideoGeneratingFailed),Qee=V(()=>Ie.value===Ge.PowerOffResume&&Ce.value==De.Default);V(()=>Ce.value===De.FileSendingComplete),Ye(BI,_e=>{_e&&setTimeout(async()=>{await l(),Pe.log("固件升级完成之后注册客户端"),dn.registerClient(a.value)},2e3)}),Ye($,_e=>{_e||r1()},{immediate:!0});const Kee=se("");dn.emitter.on("status",c2),dn.emitter.on("autoReportStatus",FI),dn.emitter.on("systemAutoReportStatus",qee),dn.emitter.on("getBaseInfo",xu),dn.emitter.on("getSystemInfo",l2),dn.emitter.on("sendHeartBeat",ete),dn.emitter.on("connected",async()=>{await l(),c.value=!0,dn.registerClient(a.value),dn.subscribeAotuReportTopic(a.value)}),dn.emitter.on("disconnected",()=>{c.value=!1,u.value=!1}),dn.emitter.on("registerSuccess",async()=>{u.value=!0,await xu(),await l2(),me.value&&await zI(),await r1()}),Ku.emitter.on("connected",async()=>{c.value=!0,u.value=!0,await xu(),await l2(),await r1(),X.value&&await WI()}),Ku.emitter.on("disconnected",()=>{c.value=!1,u.value=!1}),Ku.emitter.on("status",c2),Ku.emitter.on("autoReportStatus",FI),Jl.emitter.on("registerMaxRetryReached",()=>{Zt.error(s("toastMessages.DeviceRegisterFailed"))}),dn.emitter.on("ConnectionLimitExceeded",()=>{Zt.error(s("toastMessages.ConnectionLimitExceeded"))});async function FI(_e){if(!(!_e||typeof _e!="object")&&O.value){if(_e.extruder&&(O.value.extruder||(O.value.extruder={}),Object.assign(O.value.extruder,_e.extruder)),_e.heater_bed&&(O.value.heater_bed||(O.value.heater_bed={}),Object.assign(O.value.heater_bed,_e.heater_bed)),_e.print_status&&(O.value.print_status||(O.value.print_status={}),Object.assign(O.value.print_status,_e.print_status)),_e.fans&&(O.value.fans||(O.value.fans={}),_e.fans.fan&&(O.value.fans.fan||(O.value.fans.fan={}),Object.assign(O.value.fans.fan,_e.fans.fan)),_e.fans.box_fan&&(O.value.fans.box_fan||(O.value.fans.box_fan={}),Object.assign(O.value.fans.box_fan,_e.fans.box_fan)),_e.fans.aux_fan&&(O.value.fans.aux_fan||(O.value.fans.aux_fan={}),Object.assign(O.value.fans.aux_fan,_e.fans.aux_fan)),_e.fans.heater_fan&&(O.value.fans.heater_fan||(O.value.fans.heater_fan={}),Object.assign(O.value.fans.heater_fan,_e.fans.heater_fan)),_e.fans.controller_fan&&(O.value.fans.controller_fan||(O.value.fans.controller_fan={}),Object.assign(O.value.fans.controller_fan,_e.fans.controller_fan))),_e.gcode_move&&(O.value.gcode_move||(O.value.gcode_move={}),_e.gcode_move.speed_mode,Object.assign(O.value.gcode_move,_e.gcode_move)),_e.tool_head&&(O.value.tool_head||(O.value.tool_head={homed_axes:""}),Object.assign(O.value.tool_head,_e.tool_head)),_e.ztemperature_sensor&&(O.value.ztemperature_sensor||(O.value.ztemperature_sensor={}),Object.assign(O.value.ztemperature_sensor,_e.ztemperature_sensor)),_e.led&&(O.value.led||(O.value.led={}),Object.assign(O.value.led,_e.led)),_e.external_device&&(O.value.external_device||(O.value.external_device={u_disk:!1,camera:!1,chassis_camera:{configured:0},chassis_lighting:{configured:0},auxiliary_fan:{configured:0},exhaust_grille:{configured:0},chassis_fan:{configured:0}}),Object.assign(O.value.external_device,_e.external_device)),_e.machine_status){O.value.machine_status||(O.value.machine_status={status:0,sub_status:0,progress:0,exception_status:[],sub_status_reason_code:0});const Me=_e.machine_status.exception_status??[];q.value=[...Me],Me.length>0&&Pe.log("[RTM]异常码上报: ",Me),Object.assign(O.value.machine_status,_e.machine_status)}_e.canvas_info&&(E.value||(E.value={}),E.value.canvas_info||(E.value.canvas_info={}),Object.assign(E.value.canvas_info,_e.canvas_info)),_e.mono_filament_info&&(T.value||(T.value={}),Object.assign(T.value,_e.mono_filament_info)),_e.spaghetti_detection&&(k.value||(k.value={}),k.value.spaghetti_detection||(k.value.spaghetti_detection={}),Object.assign(k.value.spaghetti_detection,_e.spaghetti_detection)),_e.foreign_object_detection&&(k.value||(k.value={}),k.value.foreign_object_detection||(k.value.foreign_object_detection={}),Object.assign(k.value.foreign_object_detection,_e.foreign_object_detection)),c2(O.value)}}async function qee(_e){!_e||typeof _e!="object"||(i.value||(i.value={}),Object.assign(i.value,_e),Pe.log("[MQTT]自动上报系统信息:",i.value))}Ye(()=>{var _e;return(_e=O.value)==null?void 0:_e.machine_status.progress},_e=>{_e&&_e>0&&It.value&&jn()}),Ye(()=>It.value,(_e,Me)=>{!_e&&Me&&(w.value=100,w.value=0,S.value="",Pe.log("[ALL] 清理文件传输进度信息"))}),Ye(()=>Ie.value,async(_e,Me)=>{if(Me===Ge.Printing&&_e!==Ge.Printing&&(C!==null&&(clearTimeout(C),C=null),xu()),_e===Ge.Printing){C!==null&&(clearTimeout(C),C=null);const it=60;let zt=0;const Fi=async()=>{var Ji,Du;if(Ie.value!==Ge.Printing){C=null;return}if(zt>=it){Pe.log(`[ALL]轮询获取文件名已达最大次数${it}次,停止轮询`),C=null;return}zt++,await xu();const Vr=((Du=(Ji=O.value)==null?void 0:Ji.print_status)==null?void 0:Du.filename)||"";if(Vr){C=null;const Il=10,s0=1e3;(async()=>{let Va=!1;for(let Lu=1;Lu<=Il;Lu++){Pe.log(`[ALL]第${Lu}次请求打印文件缩略图:`,Vr);const u2=Lu==Il;if(await UI(Vr,xn.Local,u2,"print")){Pe.log("[MQTT]获取到缩略图,停止重试"),Va=!0;break}LusetTimeout(i1,s0))}Va||Pe.log(`[ALL]重试${Il}次后仍未获取到缩略图`)})()}else Ie.value===Ge.Printing?C=setTimeout(Fi,500):C=null};Fi()}_e===Ge.Offline&&(c.value=!1,u.value=!1,Pe.warn("[RTM] 主状态变为离线(-1)"))});async function c2(_e){var Me,it,zt,Fi,Vr,Ji,Du,Il,s0,Df,Va,Lu,u2,i1,VI,GI,JI;_e&&(((Me=O.value)==null?void 0:Me.machine_status.sub_status)!==void 0&&(oe.value=O.value.machine_status.sub_status),O.value=_e,L.value=(it=O.value)==null?void 0:it.print_status,R.value=((Fi=(zt=O.value)==null?void 0:zt.print_status)==null?void 0:Fi.uuid)||"",I.lightValue=((Vr=_e==null?void 0:_e.led)==null?void 0:Vr.status)??0,I.modelFanSpeed=Math.round((((Du=(Ji=_e==null?void 0:_e.fans)==null?void 0:Ji.fan)==null?void 0:Du.speed)??0)*100/255),I.auxiliaryFanSpeed=Math.round((((s0=(Il=_e==null?void 0:_e.fans)==null?void 0:Il.aux_fan)==null?void 0:s0.speed)??0)*100/255),I.chassisFanSpeed=Math.round((((Va=(Df=_e==null?void 0:_e.fans)==null?void 0:Df.box_fan)==null?void 0:Va.speed)??0)*100/255),I.curPrinterMode=(_e==null?void 0:_e.gcode_move.speed_mode)??1,I.xPos=Number((u2=(Lu=O.value)==null?void 0:Lu.gcode_move.x)==null?void 0:u2.toFixed(1)),I.yPos=Number((VI=(i1=O.value)==null?void 0:i1.gcode_move.y)==null?void 0:VI.toFixed(1)),I.zPos=Number((JI=(GI=O.value)==null?void 0:GI.gcode_move.z)==null?void 0:JI.toFixed(1)),v.value=(_e==null?void 0:_e.tool_head.homed_axes)??"",Pe.log("[ALL]设备全量信息更新:",O.value))}function $ee(_e){var Me;q.value=[..._e],(Me=O.value)!=null&&Me.machine_status&&(O.value.machine_status.exception_status=[..._e])}async function ete(){try{o.value=!0;const _e={type:"PING"};Pe.log("[MQTT]发送心跳包"),await dn.sendHeartBeat(a.value,_e)}catch{}finally{o.value=!1}}async function tte(_e){try{o.value=!0;const Me={method:Rt.StartPrint,params:_e};_e.storage_media===xn.UDisk&&!_e.filename.startsWith("/")&&(_e.filename="/"+_e.filename);let it;return jn()||(it=await dn.startPrint(a.value,Me)),it.error_code!==0&&it.error_code!==Eh.BedMeshDataMissing?Lt(xt.ErrorCodeAndCustom,it.error_code,"error",s("toastMessages.startFailed")):setTimeout(()=>{xu()},500),it}catch(Me){return Lt(xt.CustomMessage,0,"error",s("toastMessages.startFailed")+Me.message),{error_code:1}}finally{o.value=!1}}async function nte(){try{o.value=!0;const _e={method:Rt.PausePrint};let Me;jn()||(Me=await dn.pausePrint(a.value,_e,1e4*6)),Me.error_code!==0&&Lt(xt.ErrorCodeAndCustom,Me.error_code,"error",s("toastMessages.pauseFailed"))}catch(_e){Lt(xt.CustomMessage,0,"error",s("toastMessages.pauseFailed")+_e.message)}finally{o.value=!1}}async function rte(_e=1e4*6){try{o.value=!0;const Me={method:Rt.ResumePrint};let it;jn()||(it=await dn.resumePrint(a.value,Me,_e)),it.error_code!==0&&Lt(xt.ErrorCodeAndCustom,it.error_code,"error",s("toastMessages.resumeFailed"))}catch(Me){Lt(xt.CustomMessage,0,"error",s("toastMessages.resumeFailed")+Me.message)}finally{o.value=!1}}async function ite(){try{o.value=!0;const _e={method:Rt.CancelPrint};let Me;jn()||(Me=await dn.stopPrint(a.value,_e,1e4*6)),Me.error_code!==0&&Lt(xt.ErrorCodeAndCustom,Me.error_code,"error",s("toastMessages.stopFailed"))}catch(_e){Lt(xt.CustomMessage,0,"error",s("toastMessages.stopFailed")+_e.message)}finally{o.value=!1}}async function UI(_e,Me=xn.Local,it=!0,zt="preview"){try{if(_e==="")return Pe.error("Filename is empty when getting file thumbnail!",_e),"";o.value=!0,Me===xn.UDisk&&!_e.startsWith("/")&&(_e="/"+_e);const Fi={method:Rt.GetFileThumbnail,params:{storage_media:Me,file_name:_e}};let Vr;if(jn()||(Vr=await dn.getFileThumbnail(a.value,Fi)),Vr.error_code===0){const Ji=Vr.thumbnail??"";return zt==="preview"?J.value=Ji:Y.value=Ji,Ji}else return it&&Lt(xt.ErrorCodeMsg,Vr.error_code),""}catch(Fi){return it&&Lt(xt.CustomMessage,0,"error",s("errorCodes.GetThumbnailFailed")+Fi.message),""}}async function ote(_e=xn.Local,Me,it=0,zt=20){try{o.value=!0;const Fi={method:Rt.GetFileList,params:{storage_media:_e,...Me&&{dir:Me},offset:it,limit:zt}};let Vr;if(jn()||(Vr=await dn.getFileList(a.value,Fi,1e4*3)),Vr.error_code==Eh.PrinterBusy?A.value=!0:A.value=!1,Vr.error_code===0){const Ji=(Il,s0)=>{const Df=new Map(s0.value.map(Va=>[Va.filename,Va]));for(const Va of Il)Df.set(Va.filename,Va);s0.value=Array.from(Df.values())},Du=Vr.file_list||[];return _e===xn.Local?Ji(Du,F):_e===xn.UDisk&&Ji(Du,W),{res:!0,file_list:Vr.file_list,total:Vr.total??0}}else return Vr.error_code==Eh.UDiskNotDetected?(Pe.log("u盘不存在"),{res:!1,file_list:[],total:0}):Vr.error_code==Eh.PrinterBusy&&_e==xn.UDisk&&Me=="/"&&it==0?(Pe.warn("请求U盘列表首页时,打印机正忙"),{res:!1,file_list:[],total:0}):(Lt(xt.ErrorCodeAndCustom,Vr.error_code,"error",s("toastMessages.getFileListFailed")),{res:!1,file_list:[],total:0})}catch{return Lt(xt.CustomMessage,0,"error",s("toastMessages.getFileListFailed")),{res:!1,file_list:[],total:0}}finally{o.value=!1}}async function jI(_e,Me,it,zt=!0,Fi="preview"){try{o.value=!0,Me===xn.UDisk&&!_e.startsWith("/")&&(_e="/"+_e);const Vr={method:Rt.GetFileDetail,params:{storage_media:Me,filename:_e,...it&&{dir:it}}};let Ji;return jn()||(Ji=await dn.getFileDetail(a.value,Vr,5e3)),Ji.error_code===0?(_.value=Ji,B.value=Ji.layer??0,jn(),Ji):(zt&&Lt(xt.ErrorCodeAndCustom,Ji.error_code,"error",s("toastMessages.getFileInfoFailed")),Ji)}catch(Vr){return zt&&Lt(xt.CustomMessage,0,"error",Vr.message),{}}finally{o.value=!1}}async function ste(_e,Me){try{o.value=!0;const it={method:Rt.DeleteFile,params:{storage_media:Me,file_path:_e}};let zt;jn()||(zt=await dn.deletePrintFile(a.value,it)),zt.error_code!==0&&Lt(xt.ErrorCodeMsg,zt.error_code,"error")}catch{Lt(xt.ErrorCodeMsg,0,"error",s("toastMessages.deleteFileFailed"))}finally{o.value=!1}}async function ate(){try{o.value=!0;const _e={method:Rt.GetHistoryTask};let Me;if(jn()||(Me=await dn.getPrintHistoryList(a.value,_e,1e4*3)),Me.error_code!==0)return Lt(xt.ErrorCodeAndCustom,Me.error_code,"error",s("toastMessages.getHistoryFailed")),[];{const it=Me.history_task_list.sort((zt,Fi)=>Fi.begin_time-zt.begin_time);return d.value=it,f.value=HI(it),it}}catch(_e){return Lt(xt.CustomMessage,0,"error",s("toastMessages.getHistoryFailed")+_e.message),[]}finally{o.value=!1}}async function cte(_e=!1){if(y.value)return[];try{y.value=!0,_e?h.value+=1:(h.value=1,d.value=[],f.value=[]);const Me={method:Rt.GetHistoryTask};Pe.log(`RTM历史列表请求: 第${h.value}页, 每页${p.value}条`);const it=await Ku.getPrintHistoryList(a.value,Me,h.value,p.value);if(it.error_code!==0)return Lt(xt.ErrorCodeAndCustom,it.error_code,"error",s("toastMessages.getHistoryFailed")),[];{g.value=it.total||0,m.value=it.history_task_list.length>=p.value,Pe.log(`RTM懒加载: 第${h.value}页, 返回${it.history_task_list.length}条, 总计${g.value}条, 还有更多: ${m.value}`);const zt=it.history_task_list.sort((Fi,Vr)=>Vr.begin_time-Fi.begin_time);return _e?d.value=[...d.value,...zt]:d.value=zt,f.value=HI(d.value),zt}}catch(Me){return Lt(xt.CustomMessage,0,"error",s("toastMessages.getHistoryFailed")+Me.message),[]}finally{y.value=!1}}function HI(_e){return _e.map(Me=>({Thumbnail:"",TaskName:Me.task_name,BeginTime:Me.begin_time,EndTime:Me.end_time,TaskStatus:Me.task_status,SliceInformation:{},AlreadyPrintLayer:0,TaskId:Me.task_id,MD5:"",CurrentLayerTalVolume:0,TimeLapseVideoStatus:Me.time_lapse_video_status,TimeLapseVideoUrl:Me.time_lapse_video_url,TimeLapseVideoSize:Me.time_lapse_video_size,TimeLapseVideoDuration:Me.time_lapse_video_duration,ErrorStatusReason:0}))}async function lte(_e){try{o.value=!0;const Me={method:Rt.HistoryDelete,params:{list:_e}};let it;jn()||(it=await dn.deletePrintHistory(a.value,Me)),it.error_code!==0&&Lt(xt.ErrorCodeAndCustom,it.error_code,"error",s("toastMessages.delHistoryFailed"))}catch(Me){Lt(xt.CustomMessage,0,"error",s("toastMessages.delHistoryFailed")+Me.message)}finally{o.value=!1}}async function zI(){try{o.value=!0;const _e={method:Rt.GetLivingVideoUrl},Me=await dn.getLivingVideoUrl(a.value,_e);return Me.error_code!==0?(Lt(xt.ErrorCodeAndCustom,Me.error_code,"error",s("toastMessages.getLivingVideoUrl")),""):(z.value=Me.url,Me.url)}catch(_e){return Pe.error("Failed to get living video URL: "+_e.message),""}finally{o.value=!1}}async function ute(){try{o.value=!0;const _e={method:Rt.Feed};let Me;jn()||(Me=await dn.feed(a.value,_e,1e4*6*5)),Me.error_code!==0&&Lt(xt.ErrorCodeAndCustom,Me.error_code,"error",s("toastMessages.feedFailed"))}catch(_e){Lt(xt.CustomMessage,0,"error",s("toastMessages.feedFailed")+_e.message)}finally{o.value=!1}}async function dte(){try{o.value=!0;const _e={method:Rt.Retreat};let Me;jn()||(Me=await dn.retreat(a.value,_e,1e4*6*5)),Me.error_code!==0&&Lt(xt.ErrorCodeAndCustom,Me.error_code,"error",s("toastMessages.UnloadFilamentFailed"))}catch(_e){Lt(xt.CustomMessage,0,"error",s("toastMessages.UnloadFilamentFailed")+_e.message)}finally{o.value=!1}}async function fte(_e){try{o.value=!0;const Me={method:Rt.LightSwitch,params:{power:_e?1:0}};let it;return jn()||(it=await dn.setLight(a.value,Me)),it.error_code!==0?(Lt(xt.ErrorCodeAndCustom,it.error_code,"error",s("toastMessages.executionFailed")),!1):!0}catch(Me){return Lt(xt.CustomMessage,0,"error",s("toastMessages.executionFailed")+Me.message),!1}finally{o.value=!1}}async function hte(_e){try{o.value=!0;const Me={method:Rt.FanControl,params:{..._e.modelFanSpeed!==void 0&&{fan:_e.modelFanSpeed},..._e.chassisFanSpeed!==void 0&&{box_fan:_e.chassisFanSpeed},..._e.auxiliaryFanSpeed!==void 0&&{aux_fan:_e.auxiliaryFanSpeed}}};let it;return jn()||(it=await dn.setFan(a.value,Me)),it.error_code!==0?(Lt(xt.ErrorCodeAndCustom,it.error_code,"error",s("toastMessages.executionFailed")),!1):!0}catch(Me){return Lt(xt.CustomMessage,0,"error",s("toastMessages.executionFailed")+Me.message),!1}finally{o.value=!1}}async function pte(_e,Me=!0){try{o.value=!0;const it={method:Rt.PrintSpeedControl,params:{mode:_e}};let zt;return jn()||(zt=await dn.setPrintSpeed(a.value,it)),zt.error_code!==0?(Me&&Lt(xt.ErrorCodeAndCustom,zt.error_code,"error",s("toastMessages.executionFailed")),!1):!0}catch(it){return Me&&Lt(xt.CustomMessage,0,"error",s("toastMessages.executionFailed")+it.message),!1}finally{o.value=!1}}async function mte(){try{o.value=!0;const _e={method:Rt.AutoLeveling},Me=await dn.autoLeveling(a.value,_e);Me.error_code!==0&&Lt(xt.ErrorCodeAndCustom,Me.error_code,"error",s("toastMessages.executionFailed"))}catch(_e){Lt(xt.CustomMessage,0,"error",s("toastMessages.executionFailed")+_e.message)}finally{o.value=!1}}async function gte(){try{o.value=!0;const _e={method:Rt.VibrationOptimize},Me=await dn.vibrationOptimize(a.value,_e);Me.error_code!==0&&Lt(xt.ErrorCodeAndCustom,Me.error_code,"error",s("toastMessages.executionFailed"))}catch(_e){Lt(xt.CustomMessage,0,"error",s("toastMessages.executionFailed")+_e.message)}finally{o.value=!1}}async function vte(){try{o.value=!0;const _e={method:Rt.PIDDetect},Me=await dn.pidDetect(a.value,_e);Me.error_code!==0&&Lt(xt.ErrorCodeAndCustom,Me.error_code,"error",s("toastMessages.executionFailed"))}catch(_e){Lt(xt.CustomMessage,0,"error",s("toastMessages.executionFailed")+_e.message)}finally{o.value=!1}}async function yte(){try{o.value=!0;const _e={method:Rt.OneKeyCheck,params:{ringing_optimize:!0,pid_check:!0,auto_bed_leveling:!0}},Me=await dn.oneKeyCheck(a.value,_e);Me.error_code!==0&&Lt(xt.ErrorCodeAndCustom,Me.error_code,"error",s("toastMessages.executionFailed"))}catch(_e){Lt(xt.CustomMessage,0,"error",s("toastMessages.executionFailed")+_e.message)}finally{o.value=!1}}async function l2(){try{o.value=!0;const _e={method:Rt.GetSystemInfo};let Me;jn()||(Me=await dn.getSystemInfo(a.value,_e)),Me.error_code!==0?Lt(xt.ErrorCodeAndCustom,Me.error_code,"error",s("toastMessages.GetSystemInfoFailed")):i.value=Me}catch(_e){Lt(xt.CustomMessage,0,"error",s("toastMessages.GetSystemInfoFailed")+_e.message)}finally{o.value=!1}}async function xu(){try{o.value=!0;const _e={method:Rt.GetBasicInfo};let Me;jn()||(Me=await dn.getBaseInfo(a.value,_e)),Me.error_code!==0&&Lt(xt.ErrorCodeAndCustom,Me.error_code,"error",s("toastMessages.GetBaseInfoFailed"))}catch(_e){Lt(xt.CustomMessage,0,"error",s("toastMessages.GetBaseInfoFailed")+_e.message)}finally{o.value=!1}}async function rZe(){try{o.value=!0;const _e={method:Rt.GetBasicInfo},Me=await Ku.getBaseInfoIPC(a.value,_e);return O.value=Me,c2(O.value),Me}catch(_e){throw new Error(s("toastMessages.GetBaseInfoFailed")+_e.message)}finally{o.value=!1}}async function Ete(_e){try{o.value=!0;const Me={method:Rt.SetDeviceName,params:{hostname:_e}};let it;jn()||(it=await dn.setDeviceName(a.value,Me)),it.error_code!==0&&Zt.error(s("toastMessages.executionFailed"))}catch{Zt.error(s("toastMessages.executionFailed"))}finally{o.value=!1}}async function bte(){try{o.value=!0;const _e={method:Rt.OTAUpgrade};let Me;jn()||(Me=await dn.otaUpgrade(a.value,_e)),Me.error_code!==0&&Zt.error(s("toastMessages.otaUpgradeFailed"))}catch{Zt.error(s("toastMessages.otaUpgradeFailed"))}finally{o.value=!1}}async function Ste(){try{o.value=!0;const _e={method:Rt.UrgentStop};let Me;jn()||(Me=await dn.urgentStop(a.value,_e)),Me.error_code!==0&&Zt.error(s("toastMessages.executionFailed"))}catch{Zt.error(s("toastMessages.executionFailed"))}finally{o.value=!1}}async function Ate(_e){try{o.value=!0;const Me={method:Rt.XYZHomeControl,params:{homed_axes:_e.toLowerCase()}};let it;jn()||(it=await dn.xyzHomeControl(a.value,Me,5e3*10)),it.error_code!==0&&Lt(xt.ErrorCodeAndCustom,it.error_code,"error",s("toastMessages.SetHomeZeroFailed"))}catch(Me){Lt(xt.CustomMessage,0,"error",s("toastMessages.SetHomeZeroFailed")+Me.message)}finally{o.value=!1}}async function Cte(_e,Me){try{if(o.value=!0,await xu(),!v.value.includes(_e.toLowerCase())){Lt(xt.CustomMessage,0,"error",s("toastMessages.homingBeforeMove"));return}const it={method:Rt.XYZMoveControl,params:{axes:_e.toLowerCase(),distance:Me}};let zt;jn()||(zt=await dn.xyzMoveControl(a.value,it,5e3*5)),zt.error_code!==0&&Lt(xt.ErrorCodeAndCustom,zt.error_code,"error",s("toastMessages.SetAxisMoveFailed"))}catch(it){Lt(xt.CustomMessage,0,"error",s("toastMessages.SetAxisMoveFailed")+it.message)}finally{o.value=!1}}async function wte(_e){try{o.value=!0;const Me={method:Rt.GetTimeLapseVideoList,params:{url:_e}},it=await dn.getTimeLapseVideoList(a.value,Me);it.error_code!==0?Lt(xt.ErrorCodeAndCustom,it.error_code,"error",s("toastMessages.executionFailed")):b.value.push(it.url)}catch(Me){Lt(xt.CustomMessage,0,"error",s("toastMessages.executionFailed")+Me.message)}finally{o.value=!1}}async function Tte(_e){try{o.value=!0;const Me={method:Rt.TemperatureControl,params:_e};let it;jn()||(it=await dn.temperatureControl(a.value,Me)),it.error_code!==0&&Lt(xt.ErrorCodeAndCustom,it.error_code,"error",s("toastMessages.SetTemperatureFailed"))}catch(Me){Lt(xt.CustomMessage,0,"error",s("toastMessages.SetTemperatureFailed")+Me.message)}finally{o.value=!1}}async function Ite(_e,Me){try{o.value=!0;const it={method:Rt.LoadFilamenting,params:{canvas_id:_e,tray_id:Me}};let zt;if(jn()||(zt=await dn.loadFilamentCanvas(a.value,it,1e4*6*5)),zt.error_code!==0)return Lt(xt.ErrorCodeAndCustom,zt.error_code,"error",s("toastMessages.LoadFilamentFailed")),!1;if(zt.error_code===0)return!0}catch(it){Lt(xt.CustomMessage,0,"error",s("toastMessages.LoadFilamentFailed")+it.message)}finally{o.value=!1}}async function Pte(_e,Me){try{o.value=!0;const it={method:Rt.UnloadFilamenting,params:{canvas_id:_e,tray_id:Me}};let zt;if(jn()||(zt=await dn.unloadFilamentCanvas(a.value,it,1e4*6*5)),zt.error_code!==0)return Lt(xt.ErrorCodeAndCustom,zt.error_code,"error",s("toastMessages.UnloadFilamentFailed")),!1;if(zt.error_code===0)return!0}catch(it){Lt(xt.CustomMessage,0,"error",s("toastMessages.UnloadFilamentFailed")+it.message)}}async function Ote(_e){try{o.value=!0;const Me={method:Rt.SetMonoFilamentInfo,params:_e};let it;return jn()||(it=await dn.setMonoFilamentInfo(a.value,Me)),it.error_code!==0?(Lt(xt.ErrorCodeAndCustom,it.error_code,"error",s("toastMessages.SetFilamentInfoFailed")),!1):!0}catch(Me){return Lt(xt.CustomMessage,0,"error",s("toastMessages.SetFilamentInfoFailed")+Me.message),!1}finally{o.value=!1}}async function r1(){try{if(!u.value||$.value)return!1;o.value=!0;const _e={method:Rt.GetMonoFilamentInfo};let Me;return jn()||(Me=await dn.getMonoFilamentInfo(a.value,_e)),Me.error_code!==0?(Lt(xt.ErrorCodeAndCustom,Me.error_code,"error",s("toastMessages.GetFilamentInfoFailed")),!1):(T.value=Me.mono_filament_info,!0)}catch(_e){return Lt(xt.CustomMessage,0,"error",s("toastMessages.GetFilamentInfoFailed")+_e.message),!1}finally{o.value=!1}}async function _te(_e){try{o.value=!0;const Me={method:Rt.SetFilamentInfo,params:_e};let it;return jn()||(it=await dn.setFilamentInfoCanvas(a.value,Me)),it.error_code!==0?(Lt(xt.ErrorCodeAndCustom,it.error_code,"error",s("toastMessages.SetFilamentInfoFailed")),!1):!0}catch(Me){Lt(xt.CustomMessage,0,"error",s("toastMessages.SetFilamentInfoFailed")+Me.message)}finally{o.value=!1}}async function Rte(_e){try{o.value=!0;const Me={method:Rt.SetAutoFillFilament,params:{auto_refill:_e}};let it;return jn()||(it=await dn.setAutoFillFilamentCanvas(a.value,Me)),it.error_code!==0?(Lt(xt.ErrorCodeAndCustom,it.error_code,"error",s("toastMessages.SetAutoRefillFailed")),!1):!0}catch(Me){return Lt(xt.CustomMessage,0,"error",s("toastMessages.SetAutoRefillFailed")+Me.message),!1}}async function kte(){try{o.value=!0;const _e={method:Rt.GetCanvasInfo};let Me;jn()||(Me=await dn.getCanvasInfoCanvas(a.value,_e)),Me.error_code!==0?Lt(xt.ErrorCodeAndCustom,Me.error_code,"error",s("toastMessages.GetCanvasInfoFailed")):Me.error_code===0&&(E.value=Me)}catch(_e){Lt(xt.CustomMessage,0,"error",s("toastMessages.GetCanvasInfoFailed")+_e.message)}finally{o.value=!1}}async function WI(){try{o.value=!0;const _e={method:Rt.GetAIDetectionSettings},Me=await Ku.getAIDetectionSettings(a.value,_e);Me.error_code!==0?Lt(xt.ErrorCodeAndCustom,Me.error_code,"error",s("toastMessages.GetAIDetectionSettingsFailed")):k.value=Me}catch(_e){Lt(xt.CustomMessage,0,"error",s("toastMessages.GetAIDetectionSettingsFailed")+_e.message)}}async function xte(_e){try{o.value=!0;const Me={method:Rt.SetAIDetectionSettings,params:_e};let it;if(jn(),it.error_code!==0)Lt(xt.ErrorCodeAndCustom,it.error_code,"error",s("toastMessages.SetAIDetectionSettingsFailed"));else return it}catch(Me){Lt(xt.CustomMessage,0,"error",s("toastMessages.SetAIDetectionSettingsFailed")+Me.message)}}return{isExecutingCommand:o,isConnected:c,websocketHistorytaskDetails:f,deviceControlModel:I,isPrinting:U,isPrintPrinting:Ht,isPrintPaused:_t,elapsedPrintTime:ge,remainingPrintTime:ie,printerInfo:L,curPrintFileName:Kee,status:Ie,subStatus:Ce,lastSubStatus:oe,deviceStatus:O,deviceAttributes:i,totalPrintLayer:Z,isIdle:de,isPrintStopped:kn,isInitializeComplete:Jee,isOTAInfoUpdating:Hee,isOTADownloading:zee,isOTAExtracting:Wee,isOTAUpdating:Vee,isOTAComplete:BI,isOTAFailed:Gee,isBiteFilamentEnd:Ree,isCutFilament:kee,isEjectFilament:xee,isEjectFilamentComplete:Dee,isResonanceOptimizing:Mee,isResonanceCompleted:Bee,isAutoLeveling:Uee,isAutoLevelingComplete:jee,isPrintCompleted:Jn,isPrintStopping:oi,isPrintPausing:Se,isPrintResuming:Oe,isPrintResumed:ct,isPrintHotendPreheating:gt,isPrintHotendCooling:Et,isPrintBedPreheating:$n,isPrintBedCooling:Mi,isPrintHoming:$o,isPrintHomed:Tl,isPrintAutoLeveling:ua,isPrintAutoLevelingComplete:Ve,isPrintEjectFilament:Ct,isPrintUnloadCheckFilamentCanvas:un,isPrintUnloadCutFilamentCanvas:hr,isPrintUnloadDrawFilamentCanvas:si,isPrintLoadNozzleHeatingCanvas:No,isPrintLoadManualInsertFilamentCanvas:Bi,isPrintLoadCutFilamentCanvas:Mo,isPrintLoadDrawFilamentCanvas:o0,isPrintLoadPushFilamentCanvas:A6,isPrintLoadFlushFilamentCanvas:Oee,isPrintLoadCompleteCanvas:_ee,isMainLoading:we,isMainUnLoading:Ae,isMainAutoLevel:Le,isMainResonanceTesting:Ee,isMainPid:ue,isMainUpgrade:Xe,isMainHoming:qe,isPidCompleted:Fee,isHomed:ht,isMainFileSending:It,isMainExtrudering:We,isMainSelfTest:He,isMainInitializing:x,isMainConnected:N,isPaused:qt,isFilamentInterruption:nn,currentThumbnail:J,currentPrintThumbnail:Y,canvas:E,historytaskDetails:d,videoGeneratedSuccessUrls:b,canvasConnected:$,isLoadCompleteCanvas:Nee,canvasAutoRefill:ae,getFileDetail:jI,exportTimeLapse:wte,startPrint:tte,pausePrint:nte,resumePrint:rte,stopPrint:ite,loadFilament:ute,unloadFilament:dte,setLight:fte,setFanSpeed:hte,setPrintSpeedPct:pte,autoLeveling:mte,vibrationOptimize:gte,pidDetect:vte,oneKeyCheck:yte,getSystemInfo:l2,getBaseInfo:xu,setDeviceName:Ete,otaUpgrade:bte,urgentStop:Ste,xyzHomeControl:Ate,xyzMoveControl:Cte,temperatureControl:Tte,getFileList:ote,deletePrintFile:ste,getPrintHistoryList:ate,getPrintHistoryListLazy:cte,deletePrintHistory:lte,rtmHistoryCurrentPage:h,rtmHistoryPageSize:p,rtmHistoryTotal:g,rtmHistoryHasMore:m,rtmHistoryLoading:y,getLivingVideoUrl:zI,getFileThumbnail:UI,isRegisterSuccess:u,currentPrintPathType:M,setFilamentInfoCanvas:_te,setAutoFillFilamentCanvas:Rte,getCanvasInfoCanvas:kte,loadFilamentCanvas:Ite,unloadFilamentCanvas:Pte,setMonoFilamentInfo:Ote,isSubGeneratingTimeLapse:Zee,isSubGeneratingTimeLapseComplete:Yee,isSubGeneratingTimeLapseFailed:Xee,previewFileDetail:_,exceptionCodeList:q,monoFilamentInfo:T,LoadedSlotId:ee,currentSendingFileName:S,currentUploadFileProgress:w,isUDiskInserted:j,isFilamentDrivingStatus:Ne,currentActiveTrayId:pe,lastLoadedSlotId:K,isUnloadCompleteCanvas:Lee,livingVideoUrl:z,cameraConnection:re,printerBusy:A,isMainPowerOffResume:$e,isPowerOffResuming:Qee,aiDetectionSettings:k,isCameraUpgraded:me,setExceptionCodeList:$ee,getMonoFilamentInfo:r1,getAIDetectionSettings:WI,setAIDetectionSettings:xte,isChassisLightUpgraded:te,isAuxiliaryFanUpgraded:fe,isExhaustGrilleUpgraded:le,isChassisFanUpgraded:ve,isNeedShowAiSetting:X}}),Ije=oy("vide-stream",()=>{const e=se(!1),t=se(!1),n=se(0),r=V(()=>{if(!t.value)return"";let l="";if(l=o.livingVideoUrl,l){const u=l.includes("?")?"&":"?";return`${l}${u}_t=${n.value}`}return l}),i=El(),o=di(),s=V(()=>!0);async function a(){try{if(Pe.log("[VIDEO-STORE] openVideoStream 开始, 当前 isPlaying:",t.value,"protocolType:",Ws.protocolType),e.value=!0,await new Promise(l=>setTimeout(l,1e3)),Ws.protocolType==="MQTT"&&o.isCameraUpgraded)await o.getLivingVideoUrl(),n.value=Date.now(),t.value=!t.value;else{const l=await i.openVideoStream(!t.value);Yt(l)?(n.value=Date.now(),t.value=!t.value):(Zt.error("Video stream is not available"),t.value=!1)}}catch(l){Zt.error(l.message)}finally{e.value=!1}}async function c(){o.isCameraUpgraded&&(e.value=!0,await o.getLivingVideoUrl(),n.value=Date.now(),e.value=!1)}return{isLoading:e,videoUrl:r,isPlaying:t,openVideoStream:a,cameraConnection:s,getVideoStreamUrl:c,refreshKey:n}}),Eee=oy("host",()=>({curPrintHost:se("")})),Pje={class:"file-name font-size18 color-white-65 status-text-margin"},Oje={class:"status-text"},_je=Je({__name:"print-status",props:["status","subStatus","isMQTTConnected","lastSubStatus"],setup(e){const{t}=Eo(),n=e,r=()=>{if((n.status===Ge.Printing||n.status==Ge.ManualHoming||n.status==Ge.FileSending||n.status==Ge.TimeLapseVideoGenerating||n.status==Ge.AutoLeveling||n.status==Ge.PidCalibration||n.status==Ge.ResonanceTester||!n.isMQTTConnected)&&pp())return!1},i=()=>{if(n.status==Ge.FileSending&&n.isMQTTConnected)return bbe();if(n.status==Ge.PidCalibration)return t("printStatus.pidTun");if(n.status==Ge.ResonanceTester)return t("printStatus.inputShape");if(n.status==Ge.SelfCheck)return t("printStatus.deviceSelfCheck");if(n.status==Ge.Upgrade)return t("printStatus.upgrade");if(n.status==Ge.ComponentUpgrade)return t("printStatus.componentUpgrade");if(n.status==Ge.AutoLeveling)return t("printStatus.autoLevel")},o=()=>n.isMQTTConnected?n.status===Ge.Printing||n.status==Ge.Idle||n.status==Ge.FileSending||n.status==Ge.Loading||n.status==Ge.UnLoading||n.status==Ge.ManualHoming||n.status==Ge.Extrudering||n.status==Ge.TimeLapseVideoGenerating||n.status==Ge.Extrudering||n.status==Ge.PowerOffResume?s.value:a():t("printStatus.offline");V(()=>{switch(n.status){case wt.Idle:return t("printStatus.idle");case wt.Resuming:return t("printStatus.resuming");case wt.Printing:return t("printStatus.printing");case wt.Pausing:return t("printStatus.pausing");case wt.Paused:return t("printStatus.paused");case wt.Stopping:return t("printStatus.stopping");case wt.Stopped:return t("printStatus.stopped");case wt.Error:return t("printStatus.deviceBusy");case wt.AutoLeveled:case wt.Preheated:case wt.Preparing:return t("printStatus.preparing");case wt.FileUploading:return t("printStatus.fileUploading");case wt.Completed:return t("printStatus.completed");case wt.DeviceTesting:return t("printStatus.deviceSelfChecking");case wt.AutoLevel:return t("printStatus.autoLeveling");case wt.ResonanceTesting:return t("printStatus.inputShaping");case wt.Busy:return t("printStatus.deviceBusy");case wt.FileChecking:return t("printStatus.fileChecking");case wt.Homing:return t("printStatus.homing");case wt.FeedOut:return t("printStatus.unloading");case wt.PIDDetect:return t("printStatus.pidTuning");case wt.Preheating:return t("printStatus.preheating");default:return""}});const s=V(()=>{switch(n.status){case Ge.Idle:return t("printStatus.idle");case Ge.Printing:switch(n.subStatus){case De.HotendPreheating:case De.HotendCooling:return t("printStatus.nozzleHeating");case De.BedPreheating:case De.BedCooling:return t("printStatus.bedPreheating");case De.Homing:case De.Homed:return t("printStatus.homing");case De.AutoLeveling:case De.AutoLevelingComplete:return t("printStatus.autoLeveling");case De.Pausing:return t("printStatus.pausing");case De.Paused:return t("printStatus.paused");case De.Interruption:return t("printStatus.filamentInterruption");case De.Resuming:case De.Resumed:return t("printStatus.resuming");case De.Stopping:return t("printStatus.stopping");case De.Stopped:return t("printStatus.stopped");case De.PrintComplete:return t("printStatus.completed");case De.UnloadNozzleHeatingCanvas:case De.UnloadCheckFilamentCanvas:case De.UnloadCutFilamentCanvas:case De.UnloadDrawFilamentCanvas:return t("printStatus.unloading");case De.LoadNozzleHeatingCanvas:case De.LoadManualInsertFilamentCanvas:case De.LoadCutFilamentCanvas:case De.LoadDrawFilamentCanvas:case De.LoadPushFilamentCanvas:case De.LoadFlushFilamentCanvas:case De.LoadCompleteCanvas:return t("printStatus.loading");case De.Printing:return t("printStatus.printing");default:return""}case Ge.Loading:switch(n.subStatus){case De.NozzleHeating:case De.ManualInsertFilament:case De.BiteFilament:case De.BiteFilamentEnd:case De.CutFilament:case De.EjectFilament:case De.LoadNozzleHeatingCanvas:case De.LoadManualInsertFilamentCanvas:case De.LoadCutFilamentCanvas:case De.LoadDrawFilamentCanvas:case De.LoadPushFilamentCanvas:case De.LoadFlushFilamentCanvas:return t("printStatus.loading");default:return t("printStatus.preparing")}case Ge.UnLoading:switch(n.subStatus){case De.CutFilament:case De.EjectFilament:case De.UnloadNozzleHeatingCanvas:case De.UnloadCheckFilamentCanvas:case De.UnloadCutFilamentCanvas:case De.UnloadDrawFilamentCanvas:return t("printStatus.unloading");default:return t("printStatus.preparing")}case Ge.Extrudering:switch(n.subStatus){case De.ExtruderLoading:case De.ExtruderLoadComplete:return t("printStatus.loading");case De.ExtruderUnloading:case De.ExtruderUnloadingComplete:return t("printStatus.unloading");default:return t("printStatus.preparing")}case Ge.AutoLeveling:return t("printStatus.autoLeveling");case Ge.PidCalibration:return t("printStatus.pidTuning");case Ge.ResonanceTester:return t("printStatus.inputShaping");case Ge.SelfCheck:return t("printStatus.deviceSelfChecking");case Ge.Upgrade:return t("printStatus.upgrading");case Ge.ComponentUpgrade:return t("printStatus.componentUpgrading");case Ge.ManualHoming:return t("printStatus.homing");case Ge.FileSending:return t("printStatus.fileSending");case Ge.TimeLapseVideoGenerating:return t("printStatus.timeLapseVideoGenerating");case Ge.PowerOffResume:switch(n.subStatus){case De.Default:return t("printStatus.powerOffResumeWait");default:return t("printStatus.powerOffResume")}default:return"未知主状态:"+n.status}}),a=()=>{if(n.status==Ge.AutoLeveling)return t("printStatus.autoLeveling");if(n.status==Ge.PidCalibration)return t("printStatus.pidTuning");if(n.status==Ge.ResonanceTester)return t("printStatus.inputShaping");if(n.status==Ge.Upgrade)return t("printStatus.upgrading");if(n.status==Ge.ComponentUpgrade)return t("printStatus.componentUpgrading");if(n.status==Ge.SelfCheck)switch(n.subStatus){case De.PidPreheating:case De.PidDetecting:case De.PidCompleted:case De.PidFailed:return t("printStatus.pidTuning");case De.ResonanceOptimizing:case De.ResonanceOptimized:case De.ResonanceOptimizeFailed:case De.AccelerometerNormal:case De.AccelerometerError:return t("printStatus.inputShaping");case De.AutoLeveling:case De.AutoLevelingComplete:return t("printStatus.autoLeveling");default:return""}switch(n.subStatus){case De.OTAInfoUpdating:case De.OTADownloading:case De.OTAExtracting:case De.OTAUpdating:case De.OTAComplete:return t("printStatus.upgrading");case De.Pausing:return t("printStatus.pausing");case De.Paused:return t("printStatus.paused");case De.Interruption:return t("printStatus.filamentInterruption");case De.Resuming:return t("printStatus.resuming");case De.Resumed:return t("printStatus.resumed");case De.Stopping:return t("printStatus.stopping");case De.Stopped:return t("printStatus.stopped");default:return""}};V(()=>{switch(n.status){case wt.Idle:return"status-idle";case wt.Resuming:case wt.FileUploading:case wt.FileChecking:case wt.DeviceTesting:case wt.AutoLevel:case wt.ResonanceTesting:case wt.Homing:case wt.FeedOut:case wt.PIDDetect:case wt.Preparing:case wt.Preheating:case wt.Preheated:case wt.AutoLeveled:return"status-preparing";case wt.Printing:return"status-printing";case wt.Pausing:return"status-pausing";case wt.Paused:return"status-paused";case wt.Stopping:return"status-stopping";case wt.Stopped:return"status-stopped";case wt.Error:return"status-error";case wt.Busy:return"status-busy";case wt.Completed:return"status-completed";default:return"status-other"}});const c=V(()=>{if(!n.isMQTTConnected)return"status-error";switch(n.status){case Ge.Idle:return"status-idle";case Ge.Printing:switch(n.subStatus){case De.Paused:case De.Interruption:return"status-paused";case De.Stopped:return"status-stopped";case De.PrintComplete:return"status-completed";case De.Pausing:return"status-pausing";case De.Stopping:return"status-stopping";default:return"status-printing"}case Ge.PowerOffResume:switch(n.subStatus){case De.Default:return"status-paused";default:return"status-printing"}case Ge.Loading:case Ge.UnLoading:case Ge.Extrudering:case Ge.AutoLeveling:case Ge.PidCalibration:case Ge.ResonanceTester:case Ge.SelfCheck:case Ge.ManualHoming:case Ge.FileSending:case Ge.TimeLapseVideoGenerating:case Ge.Upgrade:case Ge.ComponentUpgrade:return"status-preparing";default:return"status-other"}}),l=V(()=>c.value);V(()=>{switch(n.status){case wt.Idle:return DO;case wt.Resuming:case wt.FileUploading:case wt.FileChecking:case wt.Preparing:case wt.Printing:case wt.DeviceTesting:case wt.AutoLevel:case wt.ResonanceTesting:case wt.Homing:case wt.FeedOut:case wt.PIDDetect:case wt.Stopping:case wt.Pausing:case wt.Preheating:case wt.Preheated:case wt.AutoLeveled:return A2;case wt.Paused:return xO;case wt.Stopped:return NO;case wt.Error:case wt.Busy:return MO;case wt.Completed:return LO;default:return null}});const u=V(()=>{if(!n.isMQTTConnected)return MO;switch(n.status){case Ge.Idle:return DO;case Ge.Printing:switch(n.subStatus){case De.Paused:case De.Interruption:return xO;case De.Stopped:return NO;case De.PrintComplete:return LO;default:return A2}case Ge.PowerOffResume:switch(n.subStatus){case De.Default:return Nue;default:return A2}case Ge.Loading:case Ge.UnLoading:case Ge.Extrudering:case Ge.AutoLeveling:case Ge.PidCalibration:case Ge.ResonanceTester:case Ge.SelfCheck:case Ge.ManualHoming:case Ge.FileSending:case Ge.TimeLapseVideoGenerating:case Ge.Upgrade:case Ge.ComponentUpgrade:return A2;default:return null}}),d=V(()=>u.value);V(()=>{const p=n.status;return p===wt.Resuming||p===wt.Printing||p===wt.Pausing||p===wt.Stopping||p===wt.Preparing||p===wt.FileUploading||p===wt.FileChecking||p===wt.DeviceTesting||p===wt.AutoLevel||p===wt.ResonanceTesting||p===wt.Homing||p===wt.FeedOut||p===wt.PIDDetect||p===wt.Preheating||p===wt.Preheated||p===wt.AutoLeveled?"is-loading":""});const f=V(()=>{if(!n.isMQTTConnected)return"";const p=n.status;return p===Ge.Loading||p===Ge.UnLoading||p===Ge.Extrudering||p===Ge.AutoLeveling||p===Ge.PidCalibration||p===Ge.ResonanceTester||p===Ge.SelfCheck||p===Ge.ManualHoming||p===Ge.Upgrade||p===Ge.FileSending||p===Ge.TimeLapseVideoGenerating||p===Ge.ComponentUpgrade||p===Ge.PowerOffResume&&n.subStatus!==De.Default||p===Ge.Printing&&n.subStatus!==De.Paused&&n.subStatus!==De.Stopped&&n.subStatus!==De.PrintComplete&&n.subStatus!==De.Interruption?"is-loading":""}),h=V(()=>f.value);return(p,g)=>(ne(),Te(Ft,null,[G("span",Pje,Ue(i()),1),vn(G("span",{class:"file-name font-size18 color-white-65"},Ue(s.value),513),[[_r,r()]]),G("span",null,[G("span",{class:je([l.value,"status-container"])},[(ne(),Ze(Br(d.value),{class:je([h.value,"mr-1"])},null,8,["class"])),G("span",Oje,Ue(o()),1)],2)])],64))}}),bee=rr(_je,[["__scopeId","data-v-3c12f447"]]),Rje={class:"myDialogHeader font-size14"},kje={style:{margin:"14px 10px"}},xje={class:"dialog-content font-size14"},Dje={style:{textAlign:"center"}},Lje={class:"dialog-footer"},Nje=Je({__name:"confirm-dialog",props:{modelValue:Boolean,confirmTitle:{type:String,required:!0},confirmMessage:{type:String,required:!0},confirmBtnTxt:{type:String,required:!0},showCancelBtn:{type:Boolean,default:!0}},emits:["confirm","update:modelValue","cancel"],setup(e,{emit:t}){const{isMobile:n}=gs(),r=e,i=t,o=V({get:()=>r.modelValue,set:c=>i("update:modelValue",c)}),s=()=>{i("cancel"),o.value=!1},a=()=>{i("confirm"),o.value=!1};return(c,l)=>{const u=pr,d=Zd;return ne(),Ze(d,{modelValue:o.value,"onUpdate:modelValue":l[0]||(l[0]=f=>o.value=f),width:P(n)?"90%":"31%",style:Ut(P(n)?{top:"50%",transform:"translateY(-50%)",padding:0,backgroundColor:"#1c1d1e",borderRadius:"4px",overflow:"hidden"}:{padding:0,backgroundColor:"#1c1d1e",maxWidth:"440px",borderRadius:"4px",overflow:"hidden"}),"show-close":!1,"close-on-click-modal":!1},{header:Re(()=>[G("div",Rje,[G("span",kje,Ue(c.$t(`dialogs.${e.confirmTitle}`)),1),be(u,{class:"close-dialog-btn",type:"info",onClick:s,size:"small"},{default:Re(()=>[be(P(Wd),{style:{width:"14px",height:"14px"}})]),_:1})])]),default:Re(()=>[G("div",xje,[G("p",Dje,Ue(e.confirmMessage),1)]),G("div",Lje,[e.showCancelBtn?(ne(),Ze(u,{key:0,class:"cancel-btn",onClick:s},{default:Re(()=>[yt(Ue(c.$t("buttons.cancel")),1)]),_:1})):Ke("",!0),be(u,{class:"confirm-btn",type:"primary",onClick:a},{default:Re(()=>[yt(Ue(c.$t(`buttons.${e.confirmBtnTxt}`)),1)]),_:1})])]),_:1},8,["modelValue","width","style"])}}}),al=rr(Nje,[["__scopeId","data-v-db1dbc8b"]]),Mje={class:"warning-dialog-header font-size14"},Bje={class:"warning-title"},Fje={style:{"margin-left":"8px"}},Uje={class:"warning-dialog-content font-size14"},jje={class:"warning-message"},Hje={key:0,class:"exception-codes"},zje=Je({__name:"warning-dialog",props:{modelValue:Boolean,warningMessage:{type:String,required:!0},firstExceptionError:{type:Object,default:()=>({})}},emits:["update:modelValue","close"],setup(e,{emit:t}){const{isMobile:n}=gs(),{t:r}=Eo(),i=e,o=t,s=V({get:()=>i.modelValue,set:u=>o("update:modelValue",u)}),a=()=>{o("close"),s.value=!1},c=V(()=>!i.firstExceptionError||typeof i.firstExceptionError.code!="number"?!1:Gue(i.firstExceptionError.code)),l=()=>c.value?r("dialogs.warning"):r("dialogs.errorNotice");return(u,d)=>{const f=Pn,h=pr,p=Zd;return ne(),Ze(p,{modelValue:s.value,"onUpdate:modelValue":d[0]||(d[0]=g=>s.value=g),top:"0",width:P(n)?"90%":"40%",style:Ut(P(n)?{top:"20px",padding:0,backgroundColor:"#1c1d1e","--el-dialog-margin-top":"0",maxHeight:"30vh"}:{top:"20px",padding:0,backgroundColor:"#1c1d1e",maxWidth:"450px","--el-dialog-margin-top":"0",maxHeight:"30vh"}),"show-close":!1,"close-on-click-modal":!1,"close-on-press-escape":!1},{header:Re(()=>[G("div",Mje,[G("div",Bje,[be(f,{class:je(["warning-icon",c.value?"is-severe":"is-info"])},{default:Re(()=>[be(P(j1e))]),_:1},8,["class"]),G("span",Fje,Ue(l()),1)]),be(h,{class:"close-dialog-btn",type:"info",onClick:a,size:"small"},{default:Re(()=>[be(P(Wd),{style:{width:"14px",height:"14px"}})]),_:1})])]),default:Re(()=>[G("div",Uje,[G("div",jje,[G("p",{class:je(c.value?"msg-severe":"msg-info")},Ue(e.warningMessage),3),e.firstExceptionError?(ne(),Te("div",Hje,[G("p",{class:je(["exception-item",c.value?"msg-severe":"msg-info"])},Ue(e.firstExceptionError.message),3)])):Ke("",!0)])])]),_:1},8,["modelValue","width","style"])}}}),Wje=rr(zje,[["__scopeId","data-v-de9bb654"]]);function See(){const e=El(),t=di(),n=V(()=>e.printerInfo),r=se(!1),i=se(!1);Ye(()=>t.isPowerOffResuming,j=>{j?i.value=!0:i.value=!1},{immediate:!0}),Ye(()=>t.status,j=>{Ge.Printing,j===Ge.Idle&&(t.currentPrintThumbnail="")},{immediate:!0});const o=se(!1),s=se(""),a=se({code:0,message:""});Ye(()=>t.exceptionCodeList,j=>{if(j&&j.length>0){if(Pe.log("触发异常码列表更新: ",j),j.includes(zc.NoodleDefect)||j.includes(zc.foreignDetection))return;s.value=m("dialogs.exceptionHappenedGoCheck");const re=Wue(j,m,y.value);if(re){const me=j.filter(X=>X===zc.XMotorDriverError||X===zc.YMotorDriverError||X===zc.ZMotorDriverError||X===zc.ExtruderMotorDriverError),te=me.join("、");a.value.message=`${m("dialogs.errorCodePrefix")}${te}, ${re}`,a.value.code=me[0]}else{const me=j[0],te=zue(me),X=m(te);a.value.message=`${m("dialogs.errorCodePrefix")}${me}, ${X}`,a.value.code=me}o.value=!0,Pe.log("局域网下,弹出警告框后,重置异常码列表"),t.setExceptionCodeList([])}});const c=()=>{o.value=!1},l=V(()=>t.lastSubStatus),u=V(()=>t.printerInfo),d=V(()=>{var j;return(j=t.deviceStatus)==null?void 0:j.machine_status}),f=V(()=>{var re;const j=(re=d.value)==null?void 0:re.progress;return typeof j=="number"&&!isNaN(j)?Math.max(0,Math.min(100,j)):0}),h=V(()=>{var j;return(j=u.value)==null?void 0:j.current_layer}),p=V(()=>t.totalPrintLayer),g=V(()=>t.isPrinting?w9e($J.Base64,t.currentPrintThumbnail):""),{t:m,locale:y}=Eo(),v=se(!1),E=se(!1),b=se(!1),S=se("confirmPausePrint"),w=se("confirmStopPrint"),C=se("powerOffResume"),_=se("confirm"),I=se("confirm"),O=se("resume"),L=V(()=>m("dialogs.confirmPausePrintMsg")),R=V(()=>m("dialogs.confirmStopPrintMsg")),F=V(()=>m("dialogs.powerOffResumeMsg"));function W(){E.value=!0}function J(){b.value=!0}const Y=V(()=>{var j;return((j=t.printerInfo)==null?void 0:j.filename)||t.curPrintFileName});ln(()=>{Ye(z,j=>{(j===wt.Completed||j===wt.Stopped)&&(e.currentThumbnail="")},{immediate:!0})});const M=V(()=>!(t.isPrintHotendPreheating||t.isPrintHotendCooling||t.isPrintBedPreheating||t.isPrintBedCooling||t.isPrintHoming||t.isPrintHomed||t.isPrintAutoLeveling||t.isPrintAutoLevelingComplete||t.isPrintResuming||t.isPrintResumed||t.isPrintPrinting||t.isPrintUnloadCheckFilamentCanvas||t.isPrintUnloadCutFilamentCanvas||t.isPrintUnloadDrawFilamentCanvas||t.isPrintLoadNozzleHeatingCanvas||t.isPrintLoadManualInsertFilamentCanvas||t.isPrintLoadCutFilamentCanvas||t.isPrintLoadDrawFilamentCanvas||t.isPrintLoadPushFilamentCanvas||t.isPrintLoadFlushFilamentCanvas||t.isPrintLoadCompleteCanvas)),B=V(()=>!(t.isPrintPaused||t.isFilamentInterruption)),q=V(()=>t.isPrinting&&(t.isPrintStopping||t.isPrintStopped||t.isPrintCompleted)),z=V(()=>{{const j=t.status,re=t.subStatus,me=re!=null?Pbe(re):"";return Pe.log(`主状态(${j}) 子状态(${re}) (${me})`),t.status}}),A=V(()=>t.subStatus),T=V(()=>t.isFilamentInterruption),k=V(()=>{var j,re;return{name:(j=t.deviceAttributes)==null?void 0:j.hostname,ip:(re=t.deviceAttributes)==null?void 0:re.ip}});return ln(()=>{Ye(()=>t.isRegisterSuccess,j=>{v.value=j},{immediate:!0})}),yc(()=>{r.value=!0}),{printerInfo:n,pauseDisableButton:M,resumeDisableBtn:B,stopDisableBtn:q,status:z,subStatus:A,deviceInfo:k,currentThumbnail:g,showPauseComfirmDialog:E,showStopComfirmDialog:b,showPowerOffResumeDialog:i,pauseComfirmTitle:S,stopComfirmTitle:w,powerOffResumeTitle:C,pauseComfirmMsg:L,stopComfirmMsg:R,powerOffResumeMsg:F,pauseComfirmBtnTxt:_,stopComfirmBtnTxt:I,powerOffResumeBtnTxt:O,displayFileName:Y,curProgress:f,curPrintLayer:h,totalPrintLayer:p,isMQTTConnected:v,pausePrint:W,stopPrint:J,showWarningDialog:o,firstExceptionError:a,warningMessage:s,lastSubStatus:l,closeWarningDialog:c,isFilamentInterruption:T}}var Fc=(e=>(e[e.NotExecuted=0]="NotExecuted",e[e.Executing=1]="Executing",e[e.Success=2]="Success",e[e.Failed=3]="Failed",e))(Fc||{});function Aee(){const e=El(),t=di(),n=t,r=n.deviceControlModel,i=se(0),o=se(0),s=se(0),a=se(0),c=se(!1),l=async()=>{c.value=!1,a.value=1;const R=await n.setLight(!1);a.value=R?2:3},u=()=>{c.value=!1,a.value===0?(a.value=3,Cn(()=>{a.value=0})):a.value=0};Ye(()=>t.subStatus,R=>{(R===De.PrintComplete||R===De.Stopped)&&n.setPrintSpeedPct(MZ.Balanced,!1)});const d=async R=>{i.value=1;let F;F=await t.setFanSpeed({chassisFanSpeed:R/100*255}),i.value=F?2:3},f=async R=>{let F;o.value=1,F=await t.setFanSpeed({auxiliaryFanSpeed:R/100*255}),o.value=F?2:3},h=async R=>{let F;s.value=1,F=await t.setFanSpeed({modelFanSpeed:R/100*255}),s.value=F?2:3},p=async R=>{var J,Y,M,B;const F=(Y=(J=t.aiDetectionSettings)==null?void 0:J.spaghetti_detection)==null?void 0:Y.status,W=(B=(M=t.aiDetectionSettings)==null?void 0:M.foreign_object_detection)==null?void 0:B.status;if(R===0&&(F===rc.On||W===rc.On))c.value=!0;else{a.value=1;const q=await n.setLight(R>0);a.value=q?2:3}},g=V(()=>!e.isIdle),m=V(()=>!t.isPrinting),y=V(()=>t.isMainInitializing||!t.isMainConnected||!t.isChassisLightUpgraded),v=V(()=>!(t.isIdle||t.isPrinting||t.isMainExtrudering||t.isMainExtrudering)||!t.isAuxiliaryFanUpgraded),E=V(()=>!(t.isIdle||t.isPrinting||t.isMainExtrudering||t.isMainExtrudering)||!t.isChassisFanUpgraded),b=V(()=>!(t.isIdle||t.isPrinting||t.isMainExtrudering||t.isMainExtrudering)),S=V(()=>!t.isIdle),w=(R,F)=>(R==="Z"&&(F=F*-1),t.xyzMoveControl(R,r.moveStep*F)),C=R=>t.xyzHomeControl(R),_=se(r.curPrinterMode),I=se(r.curPrinterMode),O=se(!1);Ye(()=>r.curPrinterMode,R=>{O.value||(I.value=R,_.value=R)});const L=async R=>{const F=I.value;O.value=!0;try{await n.setPrintSpeedPct(R)?I.value=R:_.value=F}finally{O.value=!1}};return ln(()=>{}),yc(()=>{}),{onchassisFanSpeedChange:d,onAuxiliaryFanSpeedChange:f,onModelFanSpeedChange:h,onLightChange:p,deviceControlModel:r,controlDisabled:g,move:w,moveToHome:C,setPrintSpeedPct:L,changeSpeedDisabled:m,lightDisabled:y,fanDisabled:b,xyzDisabled:S,uiPrinterMode:_,auxiliaryFanDisabled:v,chassisFanDisabled:E,chassisFanCmdStatus:i,auxiliaryFanCmdStatus:o,modelFanCmdStatus:s,lightCmdStatus:a,onLightOffConfirm:l,showLightOffDialog:c,onLightOffCancel:u}}const Vje={class:"status-container"},Gje={class:"model-image"},Jje=["src"],Zje={class:"flex-1 flex flex-col justify-between ml-[18px]"},Yje={class:"right-first"},Xje={class:"file-name font-size18"},Qje={class:"print-control-buttons"},Kje={class:"right-second"},qje={class:"right-third"},$je={class:"progress-text font-size24"},eHe={style:{"margin-left":"280px"},class:"layer font-size18"},tHe={class:"layer font-size18"},nHe={width:"12",height:"1",viewBox:"0 0 12 1",style:{display:"inline-block","vertical-align":"middle"}},rHe={class:"right-third"},iHe={class:"progress-text font-size24"},oHe=Je({__name:"device-status",setup(e){const t=El(),n=di(),r=n,i=V(()=>n.currentUploadFileProgress>0&&o.value===Ge.FileSending&&L.value),{status:o,pauseDisableButton:s,resumeDisableBtn:a,stopDisableBtn:c,currentThumbnail:l,showPauseComfirmDialog:u,showStopComfirmDialog:d,showPowerOffResumeDialog:f,pauseComfirmTitle:h,stopComfirmTitle:p,powerOffResumeTitle:g,pauseComfirmMsg:m,stopComfirmMsg:y,powerOffResumeMsg:v,pauseComfirmBtnTxt:E,stopComfirmBtnTxt:b,powerOffResumeBtnTxt:S,displayFileName:w,curProgress:C,curPrintLayer:_,totalPrintLayer:I,subStatus:O,isMQTTConnected:L,isFilamentInterruption:R,pausePrint:F,stopPrint:W,showWarningDialog:J,warningMessage:Y,lastSubStatus:M,closeWarningDialog:B,firstExceptionError:q}=See(),z=se(!1),A=()=>{z.value=!0},T=()=>{z.value=!1};return ln(()=>{window.addEventListener("pagehide",()=>{t.onBeforeUnmount()})}),xi(()=>{}),(k,j)=>{const re=Dw,me=pr,te=KG;return ne(),Te("div",Vje,[G("div",Gje,[z.value?Ke("",!0):(ne(),Te("img",{key:0,src:P(EJ),alt:"default",class:"model-thumb"},null,8,Jje)),vn(be(re,{src:P(l),onLoad:A,onError:T},null,8,["src"]),[[_r,!!P(l)]])]),G("div",Zje,[vn(G("div",Yje,[G("span",Xje,Ue(P(w)),1),G("div",Qje,[!P(r).isPaused&&!P(R)?(ne(),Ze(me,{key:0,class:"print-control-button",disabled:P(s),onClick:P(F)},{default:Re(()=>[G("span",null,[be(P(KC))])]),_:1},8,["disabled","onClick"])):Ke("",!0),P(r).isPaused||P(R)?(ne(),Ze(me,{key:1,class:"print-control-button",disabled:P(a),onClick:j[0]||(j[0]=X=>P(r).resumePrint(1e4*6))},{default:Re(()=>[G("span",null,[be(P(QC))])]),_:1},8,["disabled"])):Ke("",!0),be(me,{class:"print-control-button",disabled:P(c),onClick:P(W)},{default:Re(()=>[G("span",null,[be(P($W))])]),_:1},8,["disabled","onClick"])])],512),[[_r,P(r).isPrinting]]),G("div",Kje,[be(bee,{status:P(o),subStatus:P(O),isMQTTConnected:P(L),lastSubStatus:P(M)},null,8,["status","subStatus","isMQTTConnected","lastSubStatus"])]),vn(G("div",qje,[G("span",$je,[yt(Ue(P(C)),1),j[6]||(j[6]=G("span",{class:"font-size16"},"%",-1))]),G("span",eHe,[yt(Ue(k.$t("printStatus.layerProgress")),1),j[7]||(j[7]=G("span",{class:"mr-1 layer font-size18"},":",-1)),yt(" "+Ue(P(_))+"/"+Ue(P(I)),1)]),G("span",tHe,[(ne(),Te("svg",nHe,[...j[8]||(j[8]=[G("line",{x1:"0",y1:"0.5",x2:"12",y2:"0.5",stroke:"currentColor","stroke-width":"1"},null,-1)])])),yt(Ue(P(eZ)(P(r).remainingPrintTime)),1)])],512),[[_r,P(r).isPrinting]]),vn(G("div",rHe,[G("span",iHe,[yt(Ue(P(n).currentUploadFileProgress),1),j[9]||(j[9]=G("span",{class:"font-size16"},"%",-1))])],512),[[_r,i.value]]),vn(be(te,{percentage:P(C),"show-text":!1,"stroke-width":8},null,8,["percentage"]),[[_r,P(r).isPrinting]]),vn(be(te,{percentage:P(n).currentUploadFileProgress,"show-text":!1,"stroke-width":8},null,8,["percentage"]),[[_r,i.value]])]),be(al,{modelValue:P(u),"onUpdate:modelValue":j[1]||(j[1]=X=>En(u)?u.value=X:null),"confirm-title":P(h),"confirm-message":P(m),"confirm-btn-txt":P(E),onConfirm:P(r).pausePrint},null,8,["modelValue","confirm-title","confirm-message","confirm-btn-txt","onConfirm"]),be(al,{modelValue:P(d),"onUpdate:modelValue":j[2]||(j[2]=X=>En(d)?d.value=X:null),"confirm-title":P(p),"confirm-message":P(y),"confirm-btn-txt":P(b),onConfirm:P(r).stopPrint},null,8,["modelValue","confirm-title","confirm-message","confirm-btn-txt","onConfirm"]),be(al,{modelValue:P(f),"onUpdate:modelValue":j[3]||(j[3]=X=>En(f)?f.value=X:null),"confirm-title":P(g),"confirm-message":P(v),"confirm-btn-txt":P(S),onConfirm:j[4]||(j[4]=X=>P(r).resumePrint(1e4*6*2)),onCancel:P(r).stopPrint},null,8,["modelValue","confirm-title","confirm-message","confirm-btn-txt","onCancel"]),be(Wje,{modelValue:P(J),"onUpdate:modelValue":j[5]||(j[5]=X=>En(J)?J.value=X:null),"warning-message":P(Y),firstExceptionError:P(q),onClose:P(B)},null,8,["modelValue","warning-message","firstExceptionError","onClose"])])}}}),sHe=rr(oHe,[["__scopeId","data-v-84625f57"]]),aHe={class:"fdm-card"},cHe={class:"fdm-card-header"},lHe={class:"fdm-card-header-left"},uHe={class:"fdm-card-header-right"},dHe=Je({__name:"fdm-card",props:{isOpen:{type:Boolean,default:!0},isOpenModifiers:{}},emits:["update:isOpen"],setup(e){const t=Nh(e,"isOpen"),n=se(null);function r(){t.value=!t.value}return(i,o)=>{const s=z5e;return ne(),Te("div",aHe,[G("div",cHe,[G("div",lHe,[St(i.$slots,"title",{},void 0,!0)]),G("div",uHe,[St(i.$slots,"actions",{},void 0,!0),G("span",{class:je(["toggle-icon",{rotated:t.value}]),onClick:r},[be(P(qW))],2)])]),be(s,null,{default:Re(()=>[vn(G("div",{ref_key:"content",ref:n,class:"fdm-card-content"},[St(i.$slots,"default",{},void 0,!0)],512),[[_r,t.value]])]),_:3})])}}}),ku=rr(dHe,[["__scopeId","data-v-13ce3744"]]),fHe={class:"z-axis"},hHe=["disabled"],pHe=["disabled"],mHe={class:"home-icon"},gHe=["disabled"],vHe={class:"arc-button-container"},yHe=["disabled"],EHe=["disabled"],bHe=["disabled"],SHe=["disabled"],AHe=["disabled"],CHe={class:"xy-axis-home"},wHe=["disabled"],THe={class:"home-icon"},IHe=["disabled"],PHe={class:"home-icon"},OHe=Je({__name:"axis-control",props:{xyzDisabled:{type:Boolean,default:!1}},emits:["z-up","z-down","x-up","x-down","y-up","y-down","home-all","home-x","home-y","home-z"],setup(e,{emit:t}){const{isMobile:n}=gs(),r=n.value?"40px":"56px",i={width:r,height:r},o={height:n.value?"122px":"158px"},s=n.value?"122px":"158px",a={width:s,height:s};return(c,l)=>(ne(),Te("div",{class:"axis-container",style:o},[G("div",fHe,[G("button",{class:"control-button z-axis-item",disabled:e.xyzDisabled,onClick:l[0]||(l[0]=u=>c.$emit("z-up"))}," Z↑ ",8,hHe),l[10]||(l[10]=G("div",{class:"line"},null,-1)),G("button",{class:"z-axis-item control-button",disabled:e.xyzDisabled,onClick:l[1]||(l[1]=u=>c.$emit("home-z"))},[G("span",mHe,[be(P(fce))])],8,pHe),l[11]||(l[11]=G("div",{class:"line"},null,-1)),G("button",{class:"control-button z-axis-item",disabled:e.xyzDisabled,onClick:l[2]||(l[2]=u=>c.$emit("z-down"))}," Z↓ ",8,gHe)]),G("div",{class:"xy-axis",style:a},[G("div",vHe,[G("button",{class:"sector top",disabled:e.xyzDisabled,onClick:l[3]||(l[3]=u=>c.$emit("y-up"))},[...l[12]||(l[12]=[G("span",null," Y+ ",-1)])],8,yHe),G("button",{class:"sector right",disabled:e.xyzDisabled,onClick:l[4]||(l[4]=u=>c.$emit("x-up"))},[...l[13]||(l[13]=[G("span",null," X+ ",-1)])],8,EHe),G("button",{class:"sector bottom",disabled:e.xyzDisabled,onClick:l[5]||(l[5]=u=>c.$emit("y-down"))},[...l[14]||(l[14]=[G("span",null," Y- ",-1)])],8,bHe),G("button",{class:"sector left",disabled:e.xyzDisabled,onClick:l[6]||(l[6]=u=>c.$emit("x-down"))},[...l[15]||(l[15]=[G("span",null," X- ",-1)])],8,SHe),l[16]||(l[16]=G("div",{class:"line horizontal"},null,-1)),l[17]||(l[17]=G("div",{class:"line vertical"},null,-1))]),G("button",{class:"home",style:i,disabled:e.xyzDisabled,onClick:l[7]||(l[7]=u=>c.$emit("home-all"))},[G("span",null,[be(P(lce),{width:"20",height:"20"})])],8,AHe)]),G("div",CHe,[G("button",{class:"z-axis-item control-button",disabled:e.xyzDisabled,onClick:l[8]||(l[8]=u=>c.$emit("home-x"))},[G("span",THe,[be(P(yce))])],8,wHe),l[18]||(l[18]=G("div",{class:"line"},null,-1)),G("button",{class:"z-axis-item control-button",disabled:e.xyzDisabled,onClick:l[9]||(l[9]=u=>c.$emit("home-y"))},[G("span",PHe,[be(P(mce))])],8,IHe)])]))}}),Cee=rr(OHe,[["__scopeId","data-v-d4b831ae"]]),_He={class:"flex items-center gap-2 justify-between"},RHe={class:"flex items-center gap-2"},kHe={class:"flex items-center gap-2"},xHe={key:0,class:"flex items-center gap-2"},DHe=["disabled"],LHe={key:0},NHe={key:1},MHe=["disabled"],BHe={key:0},FHe={key:1},UHe=Je({__name:"value-control",props:Dm({title:String,componentType:{type:String,default:null},showInput:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1},defaultOpenValue:{type:Number,default:100},cmdStatus:{type:Number,default:Fc.NotExecuted}},{value:{type:Number,default:0},valueModifiers:{}}),emits:Dm(["change"],["update:value"]),setup(e,{emit:t}){const n=e,r=se(!1),i=se(null),o=se(!1),s=se(!1),a=Nh(e,"value"),c=se(""),l=t,u=se(!1),d=se(0),f=se(!1),h=se(!1),p=se(!1),g=se(""),m=se(0),y=di(),v=V(()=>o.value||n.cmdStatus===Fc.Executing);function E(O){var L;if(n.disabled&&(O.stopPropagation(),((L=y.deviceAttributes)==null?void 0:L.machine_model)==tc.C2)){let R=!1;switch(n.componentType){case na.AuxiliaryFan:R=!y.isAuxiliaryFanUpgraded;break;case na.ExhaustGrille:R=!y.isExhaustGrilleUpgraded;break;case na.ChassisFan:R=!y.isChassisFanUpgraded;break;case na.ChassisLight:R=!y.isChassisLightUpgraded;break}R&&(u.value=!0)}}function b(){n.disabled||v.value||Cn(()=>{p.value=r.value,g.value=c.value,m.value=d.value;const O=r.value?0:n.defaultOpenValue;d.value=O,h.value=!0,o.value=!0,s.value=!0,r.value=O>0,c.value=`${O}%`,l("change",d.value)})}function S(O){n.disabled||v.value||(O<0&&(O=0),O>100&&(O=100),p.value=r.value,g.value=c.value,m.value=d.value,d.value=O,Cn(()=>{h.value=!0,o.value=!0,c.value=`${d.value}%`,r.value=d.value>0,l("change",d.value)}))}const w=se(!1),C=se(!1);function _(){n.disabled||v.value||a.value<=0||(w.value=!0,S(d.value-10))}function I(){n.disabled||v.value||a.value>=100||(C.value=!0,S(d.value+10))}return Ye(()=>n.cmdStatus,(O,L)=>{L===Fc.Executing&&O===Fc.Success&&(r.value=d.value>0,c.value=`${d.value}%`,Pe.log("命令成功,开关状态已反转并更新输入值:",r.value,c.value),o.value=!1,s.value=!1,w.value=!1,C.value=!1),L===Fc.Executing&&O===Fc.Failed&&(o.value=!1,s.value=!1,w.value=!1,C.value=!1,r.value=p.value,c.value=g.value,d.value=m.value),o.value&&O===Fc.NotExecuted&&L!==Fc.NotExecuted&&(o.value=!1,s.value=!1,w.value=!1,C.value=!1,r.value=p.value,c.value=g.value,d.value=m.value,Pe.log("取消操作,已重置 pending 并回滚 UI"))}),Ye(()=>a.value,O=>{n.cmdStatus!==Fc.Executing&&(r.value=O>0,c.value=`${O}%`),!f.value&&!h.value&&(d.value=O,f.value=!0)}),ln(()=>{d.value=a.value,c.value=`${a.value}%`,a.value===0?r.value=!1:r.value=!0}),yc(()=>{i.value&&(clearTimeout(i.value),i.value=null)}),(O,L)=>{const R=Mw,F=Pn,W=iG;return ne(),Te(Ft,null,[G("div",{class:je(["value-control",{"is-disabled":n.disabled}]),onClickCapture:E},[G("div",_He,[G("div",RHe,[G("span",null,[St(O.$slots,"icon",{},void 0,!0)]),G("span",null,Ue(n.title),1)]),G("div",kHe,[be(R,{"model-value":r.value,size:"large",onChange:b,disabled:n.disabled||v.value,loading:s.value,class:"custom-switch"},null,8,["model-value","disabled","loading"])])]),n.showInput?(ne(),Te("div",xHe,[G("button",{class:"gray-button",onClick:_,disabled:n.disabled||v.value||a.value<=0},[w.value?(ne(),Te("span",LHe,[be(F,{class:"is-loading",style:{"font-size":"14px"}},{default:Re(()=>[be(P(dl))]),_:1})])):(ne(),Te("span",NHe,[be(P(Cce))]))],8,DHe),be(W,{class:"flex-1 no-border-input",readonly:!0,"model-value":c.value,style:{"min-width":"60px"},disabled:n.disabled},null,8,["model-value","disabled"]),G("button",{class:"gray-button",onClick:I,disabled:n.disabled||v.value||a.value>=100},[C.value?(ne(),Te("span",BHe,[be(F,{class:"is-loading",style:{"font-size":"14px"}},{default:Re(()=>[be(P(dl))]),_:1})])):(ne(),Te("span",FHe,[be(P(eV))]))],8,MHe)])):Ke("",!0)],34),be(al,{modelValue:u.value,"onUpdate:modelValue":L[0]||(L[0]=J=>u.value=J),"confirm-title":O.$t("errorNotice"),"confirm-message":O.$t("dialogs.needUpgradeComponent"),"confirm-btn-txt":"confirm","show-cancel-btn":!1},null,8,["modelValue","confirm-title","confirm-message"])],64)}}}),wd=rr(UHe,[["__scopeId","data-v-ff828c0f"]]),jHe={style:{width:"fit-content"}},HHe={class:"flex items-center gap-2 justify-between xyz-pos"},zHe=Je({__name:"step-setting",props:Dm(["xPos","yPos","zPos"],{step:{type:Number,default:1},stepModifiers:{}}),emits:["update:step"],setup(e){const t=se([{name:"0.1mm",value:.1},{name:"1mm",value:1},{name:"10mm",value:10},{name:"30mm",value:30}]),n=Nh(e,"step");return(r,i)=>{const o=WG,s=zG;return ne(),Te("div",jHe,[G("div",HHe,[G("span",null,"X:"+Ue(e.xPos??""),1),G("span",null,"Y:"+Ue(e.yPos??""),1),G("span",null,"Z:"+Ue(e.zPos??""),1)]),be(s,{modelValue:n.value,"onUpdate:modelValue":i[0]||(i[0]=a=>n.value=a),size:"large",class:"fdm-radio-button-group"},{default:Re(()=>[(ne(!0),Te(Ft,null,Rr(t.value,a=>(ne(),Ze(o,{label:a.name,value:a.value,key:a.name,style:{width:"72px",height:"42px"}},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])])}}}),wee=rr(zHe,[["__scopeId","data-v-d3248eec"]]),WHe={class:"control-container"},VHe={class:"flex-1 relative ml-4 flex flex-col justify-between"},GHe={class:"flex items-center gap-2 justify-between mb-[10px]"},JHe={class:"self-end flex items-center"},ZHe={class:"fan-container"},YHe=Je({__name:"device-control",setup(e){const{deviceControlModel:t,onchassisFanSpeedChange:n,onAuxiliaryFanSpeedChange:r,onModelFanSpeedChange:i,onLightChange:o,controlDisabled:s,move:a,moveToHome:c,setPrintSpeedPct:l,changeSpeedDisabled:u,chassisFanDisabled:d,lightDisabled:f,fanDisabled:h,auxiliaryFanDisabled:p,xyzDisabled:g,uiPrinterMode:m,chassisFanCmdStatus:y,auxiliaryFanCmdStatus:v,modelFanCmdStatus:E,lightCmdStatus:b,showLightOffDialog:S,onLightOffConfirm:w,onLightOffCancel:C}=Aee();return(_,I)=>{const O=Ug,L=Fg;return ne(),Te(Ft,null,[be(ku,null,{title:Re(()=>[yt(Ue(_.$t("control.control")),1)]),default:Re(()=>[G("div",WHe,[be(Cee,{class:"self-center",xyzDisabled:P(g),onHomeAll:I[0]||(I[0]=R=>P(c)("XYZ")),onHomeX:I[1]||(I[1]=R=>P(c)("X")),onHomeY:I[2]||(I[2]=R=>P(c)("Y")),onHomeZ:I[3]||(I[3]=R=>P(c)("Z")),onXUp:I[4]||(I[4]=R=>P(a)("X",1)),onXDown:I[5]||(I[5]=R=>P(a)("X",-1)),onYUp:I[6]||(I[6]=R=>P(a)("Y",1)),onYDown:I[7]||(I[7]=R=>P(a)("Y",-1)),onZUp:I[8]||(I[8]=R=>P(a)("Z",1)),onZDown:I[9]||(I[9]=R=>P(a)("Z",-1))},null,8,["xyzDisabled"]),G("div",VHe,[G("div",GHe,[be(wee,{step:P(t).moveStep,"onUpdate:step":I[10]||(I[10]=R=>P(t).moveStep=R),"x-pos":P(t).xPos,"y-pos":P(t).yPos,"z-pos":P(t).zPos,disabled:P(s)},null,8,["step","x-pos","y-pos","z-pos","disabled"]),G("div",JHe,[G("span",null,Ue(_.$t("control.printSpeed")),1),be(L,{modelValue:P(m),"onUpdate:modelValue":I[11]||(I[11]=R=>En(m)?m.value=R:null),placeholder:"",style:{width:"140px"},"show-arrow":!1,offset:4,class:"ml-[10px] no-border-select disabled-cursor",disabled:P(u),onChange:P(l)},{default:Re(()=>[(ne(!0),Te(Ft,null,Rr(P(t).printModeOptions,R=>(ne(),Ze(O,{key:R.value,label:_.$t(R.label),value:R.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","disabled","onChange"])])]),G("div",ZHe,[be(wd,{class:"flex-1",title:_.$t("control.model"),value:P(t).modelFanSpeed,"onUpdate:value":I[12]||(I[12]=R=>P(t).modelFanSpeed=R),onChange:P(i),disabled:P(h),defaultOpenValue:100,cmdStatus:P(E),"component-type":P(na).ModelFan},{icon:Re(()=>[be(P(Mh))]),_:1},8,["title","value","onChange","disabled","cmdStatus","component-type"]),be(wd,{class:"flex-1",title:_.$t("control.sideFan"),value:P(t).auxiliaryFanSpeed,"onUpdate:value":I[13]||(I[13]=R=>P(t).auxiliaryFanSpeed=R),onChange:P(r),disabled:P(p),defaultOpenValue:100,cmdStatus:P(v),"component-type":P(na).AuxiliaryFan},{icon:Re(()=>[be(P(Mh))]),_:1},8,["title","value","onChange","disabled","cmdStatus","component-type"]),be(wd,{class:"flex-1",title:_.$t("control.Case"),"show-input":!0,value:P(t).chassisFanSpeed,"onUpdate:value":I[14]||(I[14]=R=>P(t).chassisFanSpeed=R),onChange:P(n),disabled:P(d),defaultOpenValue:100,cmdStatus:P(y),"component-type":P(na).ExhaustGrille},{icon:Re(()=>[be(P(Mh))]),_:1},8,["title","value","onChange","disabled","cmdStatus","component-type"]),be(wd,{class:"flex-1",title:_.$t("control.Lighting"),"show-input":!1,value:P(t).lightValue,"onUpdate:value":I[15]||(I[15]=R=>P(t).lightValue=R),onChange:P(o),disabled:P(f),defaultOpenValue:1,cmdStatus:P(b),"component-type":P(na).ChassisLight},{icon:Re(()=>[be(P(tV))]),_:1},8,["title","value","onChange","disabled","cmdStatus","component-type"])])])])]),_:1}),be(al,{modelValue:P(S),"onUpdate:modelValue":I[16]||(I[16]=R=>En(S)?S.value=R:null),"confirm-title":_.$t("errorNotice"),"confirm-message":_.$t("aiDetection.lightOffConfirm"),"confirm-btn-txt":_.$t("close"),onConfirm:P(w),onCancel:P(C)},null,8,["modelValue","confirm-title","confirm-message","confirm-btn-txt","onConfirm","onCancel"])],64)}}}),XHe=rr(YHe,[["__scopeId","data-v-b895cfac"]]),QHe={class:"popover-content"},KHe={class:"canvas-container"},qHe={class:"slots-grid"},$He=["onClick"],eze={class:"fraction"},tze={class:"numerator"},nze={class:"denominator"},rze={class:"canvas-title"},ize=Je({__name:"tray-card-mapping-select",props:{canvas:{default:()=>({})},gFilamentType:{default:""},gFilamentName:{default:""}},emits:["mapping-update","close-popover"],setup(e,{emit:t}){const n=e,r=t,{t:i}=Eo(),o=V(()=>n.canvas.canvas_info.canvas_list||[]),s=m=>{if(n.canvas.canvas_info&&n.canvas.canvas_info.canvas_list.length>m){const y=n.canvas.canvas_info.canvas_list[m];if(y&&y.tray_list)return y.tray_list}return Array(4).fill(null)},a=m=>c(m)!==wi.NoRecognition,c=m=>m?m.status===Oo.Empty?wi.NoFilament:!m.filament_color||m.filament_color.trim()===""||!m.filament_type||m.filament_type.trim()===""?wi.NoRecognition:m.filament_type:wi.NoRecognition,l=m=>m?c(m)===wi.NoRecognition?"#434343":yd(m.filament_color)||"transparent":"transparent",u=m=>{const y=l(m);if(!y||y==="transparent"){const v=c(m);return v===wi.NoFilament||v===wi.NoRecognition?"#FFFFFF":Gc((m==null?void 0:m.filament_color)||"#000000")}return Gc(y)},d=m=>m?c(m)===wi.NoRecognition:!1,f=m=>{if(!m)return!1;const y=c(m);if(y===wi.NoFilament||y===wi.NoRecognition)return!1;const v=y===n.gFilamentType,E=n.gFilamentName&&fm(m.filament_name)===fm(n.gFilamentName);return v||E},h=m=>{if(!m)return"";const y=c(m);return y===wi.NoRecognition?"":m.status===Oo.Empty?i("multiColor.EmptyFilament"):y!==n.gFilamentType?i("multiColor.FilamentTypeNotMatch"):m.filament_name?m.filament_name:"-"},p=m=>{const y={padding:"8px",background:"#333334",textAlign:"center",width:"auto",minWidth:"80px",border:"1px solid black",whiteSpace:"nowrap",boxSizing:"border-box"};return m?c(m)!==n.gFilamentType?{...y,color:"#ff4d4f"}:{...y,color:"white"}:y},g=m=>{m.filament_color=yd(m.filament_color),r("mapping-update",m),r("close-popover")};return(m,y)=>{const v=Dp;return ne(),Te("div",QHe,[G("div",KHe,[(ne(!0),Te(Ft,null,Rr(o.value,(E,b)=>(ne(),Te("div",{key:b,class:"canvas-group"},[G("div",qHe,[(ne(!0),Te(Ft,null,Rr(s(Number(b)),(S,w)=>(ne(),Ze(v,{key:w,placement:"bottom",effect:"dark",trigger:"hover","show-arrow":!1,offset:12,disabled:!a(S),"popper-style":p(S)},{reference:Re(()=>[G("div",{class:je(["slot-item",{"transparent-bg":!1,"bordered-slot":d(S),"disabled-slot":!f(S)}]),style:Ut({"background-color":l(S),color:u(S)}),onClick:C=>f(S)?g(S):null},[G("div",eze,[G("div",tze,Ue(S?S.tray_id+1:b+(w+1)),1),G("div",nze,Ue(c(S)),1)])],14,$He)]),default:Re(()=>[yt(" "+Ue(h(S)),1)]),_:2},1032,["disabled","popper-style"]))),128))]),G("div",rze,"CANVAS-"+Ue(b),1)]))),128))])])}}}),oze=rr(ize,[["__scopeId","data-v-8578b5da"]]),sze={class:"all-container"},aze={class:"header-container"},cze={class:"btn-autofeed"},lze={class:"btn-container"},uze={class:"content-container"},dze=["onClick"],fze={class:"slot-dropdown"},hze={key:0,class:"empty-mapping-note font-size16"},pze={key:1,class:"note font-size12"},O1=4,mze=Je({__name:"tray-card-preview",props:{title:{default:""},existEmptyMapping:{type:Boolean,default:!1},canvas:{default:()=>({})}},emits:["mapping-update"],setup(e,{emit:t}){const{isMobile:n}=gs(),r=se("#373737"),i=se(!1),o=se(!1),s=di(),a=async I=>{const O=!!I;o.value=!0;try{await s.setAutoFillFilamentCanvas(O)&&(i.value=O,Pe.log("设置自动续料开关",O))}catch(L){Pe.error("Failed to set auto-refill",L),i.value=!O}finally{o.value=!1}};Ye(()=>s.canvasAutoRefill,I=>{I!==void 0&&(i.value=I)},{immediate:!0});const{amsMappingInfoData:c}=Vt("amsMappingInfoData"),{canvasPreviewMap:l}=Vt("canvasPreviewMap"),{slotArray:u}=Vt("slotArray"),d=se([]),f=se(1),h=V(()=>Math.ceil(d.value.length/O1)),p=V(()=>{const I=(f.value-1)*O1,O=I+O1;return d.value.slice(I,O)}),g=()=>{f.value>1&&f.value--},m=()=>{f.value{f.value=1};Ye([l,()=>{var I;return(I=c.value)==null?void 0:I.ColorMapping}],([I,O])=>{try{pp()&&(d.value=I||[]),y()}catch(L){Pe.error("Error in filamentMap watch:",L),d.value=[]}},{immediate:!0});const v=I=>{if(!u.value||!I)return"";const O=u.value.find(L=>L.id===I);return(O==null?void 0:O.filamentColor)??""},E=I=>{if(!u.value||!I)return"";const O=u.value.find(L=>L.id===I);return(O==null?void 0:O.filamentType)??""},b=se([]);Ye(()=>{var I;return(I=c.value)==null?void 0:I.ColorMapping},I=>{I&&(b.value=new Array(O1).fill(!1))},{immediate:!0});const S=I=>{if(I===""||!u.value)return"";const O=u.value.find(L=>L.id===I);return(O==null?void 0:O.filamentName)??""},w=se(-1),C=I=>{{d.value[w.value].mapFilamentColor=I.filament_color,d.value[w.value].mapFilamentType=I.filament_type,d.value[w.value].mapFilamentName=I.filament_name,d.value[w.value].trayId=Number(I.tray_id),d.value[w.value].canvasId=0,d.value[w.value].isSuccess=!0,l.value[w.value].mapFilamentColor=I.filament_color,l.value[w.value].mapFilamentType=I.filament_type,l.value[w.value].mapFilamentName=I.filament_name,l.value[w.value].trayId=Number(I.tray_id),l.value[w.value].canvasId=0,l.value[w.value].isSuccess=!0;return}},_=I=>{const O=(f.value-1)*O1+I;w.value=O};return(I,O)=>{const L=Pn,R=Mw,F=pr,W=Dp;return ne(),Te("div",sze,[G("div",aze,[be(L,null,{default:Re(()=>[be(P(Fle))]),_:1}),G("div",cze,[G("span",null,Ue(I.$t("multiColor.autoFeed")),1),be(R,{modelValue:i.value,"onUpdate:modelValue":O[0]||(O[0]=J=>i.value=J),loading:o.value,onChange:a,"active-color":"#409EFF","inactive-color":"#DCDFE6"},null,8,["modelValue","loading"])]),G("div",lze,[be(F,{class:"icon-btn",onClick:g,disabled:f.value<=1},{default:Re(()=>[be(P(Hle))]),_:1},8,["disabled"]),G("span",null,Ue(f.value)+"/"+Ue(h.value),1),be(F,{class:"icon-btn",onClick:m,disabled:f.value>=h.value},{default:Re(()=>[be(P(Vle))]),_:1},8,["disabled"])])]),G("div",uze,[p.value&&p.value.length>0?(ne(),Te(Ft,{key:0},[(ne(!0),Te(Ft,null,Rr(p.value,(J,Y)=>(ne(),Te("div",{key:Y,class:"tray-container"},[J.gFilamentName?(ne(),Ze(W,{key:0,placement:"top",effect:"dark",trigger:"hover","show-arrow":!1,offset:2,"popper-style":{padding:"8px",background:"#333334",color:"white",textAlign:"center",width:"100px",minWidth:"100px",maxHeight:"34px",border:"1px solid black"}},{reference:Re(()=>[G("div",{class:"slot-type",style:Ut({backgroundColor:J.gFilamentColor,color:P(Gc)(J.gFilamentColor)})},Ue(J.gFilamentType),5)]),default:Re(()=>[yt(" "+Ue(J.gFilamentName),1)]),_:2},1024)):(ne(),Te("div",{key:1,class:"slot-type",style:Ut({backgroundColor:J.gFilamentColor,color:P(Gc)(J.gFilamentColor)})},Ue(J.gFilamentType),5)),be(P(Qle)),be(W,{placement:P(n)?"bottom":"left",visible:b.value[Y],"onUpdate:visible":M=>b.value[Y]=M,trigger:"click",width:300,"popper-style":{padding:"8px",background:"#434343"}},{reference:Re(()=>[G("div",{class:"slot-id-container",style:Ut({backgroundColor:J.mapFilamentColor?J.mapFilamentColor:r.value,color:P(Gc)(J.mapFilamentColor)}),onClick:M=>_(Y)},[P(pp)()&&!J.isSuccess?(ne(),Te(Ft,{key:0},[],64)):(ne(),Te(Ft,{key:1},[G("span",null,Ue(J.trayId+1),1),G("div",null,[be(P($le),{class:"arrow-down hor-line",style:Ut({"--fill-color":P(Gc)(J.mapFilamentColor)})},null,8,["style"])]),be(W,{placement:"bottom",effect:"dark",trigger:"hover","show-arrow":!1,offset:22,"popper-style":{padding:"8px",background:"#333334",color:"white",textAlign:"center",width:"100px",minWidth:"100px",maxHeight:"34px",border:"1px solid black"}},{reference:Re(()=>[G("span",null,Ue(J.mapFilamentType),1)]),default:Re(()=>[yt(" "+Ue(J.mapFilamentName),1)]),_:2},1024)],64)),G("div",fze,[be(P(qW),{class:"arrow-down",style:Ut({"--fill-color":P(Gc)(J.mapFilamentColor)})},null,8,["style"])])],12,dze)]),default:Re(()=>[be(oze,{canvas:I.canvas,gFilamentType:J.gFilamentType,gFilamentName:J.gFilamentName,onMappingUpdate:C,onClosePopover:M=>b.value[Y]=!1},null,8,["canvas","gFilamentType","gFilamentName","onClosePopover"])]),_:2},1032,["placement","visible","onUpdate:visible"])]))),128)),p.value.length<4?(ne(!0),Te(Ft,{key:0},Rr(4-p.value.length,J=>(ne(),Te("div",{key:"filler-"+J,class:"tray-container tray-placeholder"}))),128)):Ke("",!0)],64)):Ke("",!0)]),I.existEmptyMapping?(ne(),Te("div",hze,[G("span",null,Ue(I.$t("multiColor.existEmptyMappingNote")),1)])):(ne(),Te("div",pze,[G("span",null,Ue(I.$t("multiColor.selectCANVASNote")),1)]))])}}}),gze=rr(mze,[["__scopeId","data-v-cf19f61d"]]),vze={class:"myDialogHeader"},yze={class:"print-task-content"},Eze={class:"file-info"},bze={class:"model-preview"},Sze=["src"],Aze={class:"print-info"},Cze={class:"info-group"},wze={class:"print-time"},Tze={class:"info-group"},Ize={class:"material-weight"},Pze={class:"info-group"},Oze={class:"material-weight"},_ze={class:"print-bed-options"},Rze={class:"target-checkbox"},kze={class:"label-text"},xze={key:0,class:"target-checkbox"},Dze={class:"label-text"},Lze={class:"target-checkbox"},Nze={class:"label-text"},Mze={class:"bottom-container"},Bze=768,Fze=Je({__name:"print-preview",props:{modelValue:Boolean,fileData:{type:Object,default:()=>({name:"",previewImage:"",printTime:"",materialWeight:"",TotalLayers:0})},canvas:{type:Object,default:()=>({})}},emits:["confirm-print","ams-confirm-print","update:modelValue","confirm-print-mqtt"],setup(e,{emit:t}){Dre(R=>({"52b48529":I.value}));const n=di(),r=e,i=V(()=>n.canvasConnected??!1),{amsMappingInfoData:o}=Vt("amsMappingInfoData"),{canvasPreviewMap:s}=Vt("canvasPreviewMap"),a=()=>s.value.findIndex(R=>R.mapFilamentColor===""),c=se(!1),l=V(()=>{const R=r.fileData.materialWeight,F=typeof R=="number"?R:Number(R);return Number.isNaN(F)?"--":F.toFixed(2)}),u=t,d=se({timeLapse:!1,bedLeveling:!1,openCANVAS:!0,selectedBed:"A"});let f=null;const h=se(!1),p=se(window.innerWidth),g=V(()=>p.value>=Bze?"calc(50vh - 380px)":"5vh"),m=()=>{p.value=window.innerWidth};ln(()=>{window.addEventListener("resize",m)}),xi(()=>{window.removeEventListener("resize",m)});const y=V({get:()=>r.modelValue,set:R=>u("update:modelValue",R)}),v=se(!0),E=()=>{h.value||(v.value=!1)};Ye(()=>r.fileData.previewImage,()=>{v.value=!0});const b=()=>{d.value.timeLapse=!1,d.value.bedLeveling=!1,d.value.openCANVAS=!0,d.value.selectedBed="A",c.value=!1,I.value=_.value};Ye(()=>y.value,R=>{R?(h.value=!1,f!==null&&(clearTimeout(f),f=null)):(h.value=!0,f!==null&&clearTimeout(f),f=window.setTimeout(()=>{b(),f=null},500))});const S=()=>{if(i.value){if(a()!==-1){c.value=!0;return}{const R={filename:r.fileData.name,storage_media:xn.Local,config:{delay_video:d.value.timeLapse,printer_check:d.value.bedLeveling,print_layout:d.value.selectedBed,bedlevel_force:!1,slot_map:s.value.map(F=>({t:F.t,canvas_id:F.canvasId,tray_id:F.trayId}))}};Pe.log("MQTT多色打印",JSON.parse(JSON.stringify(R))),u("confirm-print-mqtt",R)}}else{const R={filename:r.fileData.name,storage_media:xn.Local,config:{delay_video:d.value.timeLapse,printer_check:d.value.bedLeveling,print_layout:d.value.selectedBed}};Pe.log("MQTT单色打印",R),u("confirm-print-mqtt",R)}y.value=!1},w=()=>{y.value=!1},C=R=>`data:image/png;base64,${R}`,_=se("#333334"),I=se("#333334"),O=R=>{const F=performance.now();I9e(R.target).then(W=>{const J=P9e(I.value,W);if(Pe.log("色差距离:",J,"颜色1:",I.value,"颜色2:",W),J<1.2){const M=Xn(W).luminance()>.5?"#1c1c1d":"#585858";Pe.log(`颜色太相似 (ΔE=${J}),自动选择对比色: ${M}`),I.value=M}}).catch(W=>{Pe.error("Failed to get or analyze main color of image:",W),I.value=_.value}).finally(()=>{const J=performance.now()-F;Pe.log(`[性能统计] 模型图/背景色色差分析总耗时: ${J.toFixed(2)}ms`)})};function L(R){Pe.log("映射更新,选择的颜色:",R)}return(R,F)=>{const W=pr,J=WG,Y=zG,M=Zd;return ne(),Ze(M,{modelValue:y.value,"onUpdate:modelValue":F[4]||(F[4]=B=>y.value=B),"show-close":!1,width:"auto",top:g.value,style:Ut({backgroundColor:_.value,padding:"0px 0px 6px",maxWidth:i.value?"446px":"420px",minWidth:"100px",borderRadius:"4px",overflow:"hidden"})},{header:Re(()=>[G("div",vze,[G("span",null,Ue(R.$t("sendPrintTask")),1),be(W,{class:"close-dialog-btn",type:"info",onClick:w,size:"small"},{default:Re(()=>[be(P(Wd))]),_:1})])]),default:Re(()=>[G("div",yze,[G("div",Eze,Ue(P(mp)(e.fileData.name)),1),G("div",bze,[vn(G("img",{src:C(e.fileData.previewImage),alt:"模型预览",class:"model-image",onError:E,onLoad:O},null,40,Sze),[[_r,v.value]]),vn(be(P(oue),{class:"model-image"},null,512),[[_r,!v.value&&!h.value]])]),G("div",Aze,[G("div",Cze,[be(P(Rce)),G("span",wze," "+Ue(e.fileData.printTime||"--"),1)]),G("div",Tze,[be(P(Dce)),G("span",Ize," "+Ue(l.value)+"g",1)]),G("div",Pze,[be(P(Zle)),G("span",Oze," "+Ue(e.fileData.totalLayers),1)])]),vn(be(gze,{existEmptyMapping:c.value,canvas:e.canvas,onMappingUpdate:L},null,8,["existEmptyMapping","canvas"]),[[_r,i.value]]),G("div",_ze,[be(Y,{modelValue:d.value.selectedBed,"onUpdate:modelValue":F[0]||(F[0]=B=>d.value.selectedBed=B)},{default:Re(()=>[be(J,{value:"A"},{default:Re(()=>[yt(Ue(R.$t("texturedPlate")),1)]),_:1}),be(J,{value:"B"},{default:Re(()=>[yt(Ue(R.$t("smoothPlate")),1)]),_:1})]),_:1},8,["modelValue"])]),G("div",{class:je(["print-options",{"two-options":!0}])},[vn(G("label",Rze,[vn(G("input",{type:"checkbox","onUpdate:modelValue":F[1]||(F[1]=B=>d.value.openCANVAS=B)},null,512),[[Y0,d.value.openCANVAS]]),F[5]||(F[5]=G("span",{class:"checkmark"},null,-1)),G("span",kze,Ue(R.$t("multiColor.openCANVAS")),1)],512),[[_r,!1]]),!P(jn)()&&P(n).isCameraUpgraded?(ne(),Te("label",xze,[vn(G("input",{type:"checkbox","onUpdate:modelValue":F[2]||(F[2]=B=>d.value.timeLapse=B)},null,512),[[Y0,d.value.timeLapse]]),F[6]||(F[6]=G("span",{class:"checkmark"},null,-1)),G("span",Dze,Ue(R.$t("timeLapse")),1)])):Ke("",!0),G("label",Lze,[vn(G("input",{type:"checkbox","onUpdate:modelValue":F[3]||(F[3]=B=>d.value.bedLeveling=B)},null,512),[[Y0,d.value.bedLeveling]]),F[7]||(F[7]=G("span",{class:"checkmark"},null,-1)),G("span",Nze,Ue(R.$t("bedLeveling")),1)])])]),G("div",Mze,[be(W,{class:"cancel-btn",onClick:w},{default:Re(()=>[yt(Ue(R.$t("buttons.cancel")),1)]),_:1}),be(W,{class:"confirm-btn",type:"primary",onClick:S},{default:Re(()=>[yt(Ue(R.$t("buttons.print")),1)]),_:1})])]),_:1},8,["modelValue","top","style"])}}}),Tee=rr(Fze,[["__scopeId","data-v-e2c0238c"]]),Uze=Je({__name:"customLoading",setup(e){return(t,n)=>{const r=Pn;return ne(),Ze(r,{class:"is-loading"},{default:Re(()=>[be(P(dl))]),_:1})}}});class jze{static hexToRgb(t){const n=t.replace(/^#/,"");if(!/^([0-9A-Fa-f]{3}){1,2}$/.test(n))return console.error(`[ColorTool] 无效的十六进制颜色:${t},请传入如#FF6464或FF6464的格式`),null;const r=n.length===3?n.split("").map(a=>a.repeat(2)).join(""):n,i=parseInt(r.slice(0,2),16),o=parseInt(r.slice(2,4),16),s=parseInt(r.slice(4,6),16);return[i,o,s]}static normalizeRgb(t,n=16){const r=t.map(o=>Math.max(0,Math.min(255,o))),i=255/(n-1);return r.map(o=>Math.round(o/i)*i)}static rgbToHsv(t,n,r){const i=t/255,o=n/255,s=r/255,a=Math.max(i,o,s),c=Math.min(i,o,s);let l=0,u=0;const d=a*100,f=a-c;if(a!==0&&(u=f/a*100),f!==0){switch(a){case i:l=(o-s)/f+(o=u[0]&&S<=u[1]&&_>=u[0]&&_<=u[1]&&w>=g&&I>=g,J=S>=f[0]&&S<=f[1]&&_>=f[0]&&_<=f[1]&&w>=g&&I>=g,Y=C>=p&&O>=p,M=w.04045?Math.pow((t+.055)/1.055,2.4):t/12.92}function vH(e,t,n){const r=VE(e),i=VE(t),o=VE(n),s=r*.4124564+i*.3575761+o*.1804375,a=r*.2126729+i*.7151522+o*.072175,c=r*.0193339+i*.119192+o*.9503041;return[s*100,a*100,c*100]}function yH(e,t,n){const s=e/95.047,a=t/100,c=n/108.883,l=.008856,u=903.3,d=s>l?Math.cbrt(s):(u*s+16)/116,f=a>l?Math.cbrt(a):(u*a+16)/116,h=c>l?Math.cbrt(c):(u*c+16)/116,p=116*f-16,g=500*(d-f),m=200*(f-h);return[p,g,m]}function EH(e){if(!e||!/^#?[0-9A-Fa-f]{3}([0-9A-Fa-f]{3})?$/.test(e))return null;const t=jze.hexToRgb(e);return t||null}function zze(e,t,n,r,i,o){const s=Math.sqrt(t*t+n*n),a=Math.sqrt(i*i+o*o),c=(s+a)/2,l=.5*(1-Math.sqrt(Math.pow(c,7)/(Math.pow(c,7)+Math.pow(25,7)))),u=(1+l)*t,d=(1+l)*i,f=Math.sqrt(u*u+n*n),h=Math.sqrt(d*d+o*o);let p=Math.atan2(n,u)*180/Math.PI,g=Math.atan2(o,d)*180/Math.PI;p<0&&(p+=360),g<0&&(g+=360);const m=r-e,y=h-f;let v=g-p;v>180&&(v-=360),v<-180&&(v+=360);const E=2*Math.sqrt(f*h)*Math.sin(v*Math.PI/360),b=(e+r)/2,S=(f+h)/2;let w=(p+g)/2;Math.abs(p-g)>180&&(w+=180),w>360&&(w-=360);const C=1-.17*Math.cos((w-30)*Math.PI/180)+.24*Math.cos(2*w*Math.PI/180)+.32*Math.cos((3*w+6)*Math.PI/180)-.2*Math.cos((4*w-63)*Math.PI/180),_=30*Math.exp(-Math.pow((w-275)/25,2)),I=2*Math.sqrt(Math.pow(S,7)/(Math.pow(S,7)+Math.pow(25,7))),O=1+.015*Math.pow(b-50,2)/Math.sqrt(20+Math.pow(b-50,2)),L=1+.045*S,R=1+.015*S*C,F=-Math.sin(2*_*Math.PI/180)*I,W=1,J=1,Y=1;return Math.sqrt(Math.pow(m/(W*O),2)+Math.pow(y/(J*L),2)+Math.pow(E/(Y*R),2)+F*(y/(J*L))*(E/(Y*R)))}function Wze(e,t=50){const n=EH(e);if(!n)return null;const[r,i,o]=vH(n[0],n[1],n[2]),[s,a,c]=yH(r,i,o);let l=Number.POSITIVE_INFINITY,u=null;for(const d of Hze){const f=EH(d.colorHex);if(!f)continue;const[h,p,g]=vH(f[0],f[1],f[2]),[m,y,v]=yH(h,p,g),E=zze(s,a,c,m,y,v);E(e.File="file",e.PrintHistory="printHistory",e.UDisk="UDisk",e))(Ai||{});function Vze(){const{t:e}=Eo(),t=El(),n=di(),r=n,i=se([]),o=se([]),s=se(""),a=se(""),c=se(""),l=se(!1),u=se(1),d=se(50),f=se(1),h=se(50),p=se("/"),g=se(0),m=se(0),y=se({}),v=se(new Map),E=se(new Map),b=se(new Map),S=se(new Map),w=se(!1),C=se(null),_=se(!1),I=se(!1),O=se(!1),L=()=>{C.value||(C.value=Zt({message:e("toastMessages.loadingData"),type:"info",duration:0,icon:hn(Uze),dangerouslyUseHTMLString:!0}))},R=()=>{C.value&&(C.value.close(),C.value=null)};xi(()=>{R()}),ln(()=>{var ue,Ee;j.value.length===0&&L(),Ye(()=>{var He,Xe;return(Xe=(He=n.deviceStatus)==null?void 0:He.external_device)==null?void 0:Xe.u_disk},He=>{He!==void 0&&(Pe.log("u盘状态发生变化",He),E.value.clear(),b.value.clear(),S.value.clear(),o.value=[],f.value=1,h.value=50,m.value=0,p.value="/",K(xn.UDisk,"/"))}),Ye(()=>n.isRegisterSuccess,He=>{He&&(K(xn.Local),Ie())}),((Ee=(ue=n.deviceStatus)==null?void 0:ue.external_device)==null?void 0:Ee.u_disk)&&(p.value="/",K(xn.UDisk,"/",0,Ya))}),se([]);const F=se("file"),W=V(()=>r.status),J=V(()=>n.subStatus);Ye(W,ue=>{(ue===wt.Completed||ue===wt.Stopped)&&(L(),K(xn.Local),setTimeout(()=>{K(xn.UDisk,"/")},1e3),Ie())},{immediate:!0}),Ye(J,ue=>{(ue===De.PrintComplete||ue===De.Stopped)&&(Pe.log("打印完成或停止,5s后刷新历史任务列表..."),setTimeout(()=>{Ie()},4e3),K(xn.Local),setTimeout(()=>{K(xn.UDisk,"/")},1e3),Pe.log("打印完成或停止,清空当前打印缩略图..."),n.currentThumbnail="")}),Ye(()=>n.status,(ue,Ee)=>{Ee===Ge.FileSending&&ue!==Ge.FileSending&&(Pe.log("[ALL]旧状态-文件传输中,新状态-非文件传输中,2s后将刷新文件列表..."),ce(xn.Local),setTimeout(async()=>{var He;if(await K(xn.Local),Pe.log("[ALL]刷新文件列表成功"),n.isPrinting){const Xe=(He=n.printerInfo)==null?void 0:He.filename;if(Xe&&!i.value.some(qe=>qe.filename===Xe)){for(let We=1;We<=3;We++)if(await new Promise(ht=>setTimeout(ht,1e3)),ce(xn.Local),Pe.log(`[ALL]第${We}次刷新本地文件列表...`),await K(xn.Local),i.value.some(ht=>ht.filename===Xe)){Pe.log("[ALL]找到文件,停止重试");return}Pe.log("[ALL]重试3次后仍未找到文件")}}},1e3))});const Y=V(()=>!(n.isIdle||n.isPrintStopped||n.isPrintCompleted||n.isMainLoading&&n.isLoadCompleteCanvas||n.isMainUnLoading&&n.isEjectFilamentComplete||n.isMainAutoLevel&&n.isAutoLevelingComplete||n.isMainPid&&n.isPidCompleted||n.isMainResonanceTesting&&n.isResonanceCompleted||n.isMainHoming&&n.isHomed)),M=V(()=>!(n.isIdle||n.isPrintStopped||n.isPrintCompleted||n.isMainUnLoading&&n.isEjectFilamentComplete||n.isMainLoading&&n.isLoadCompleteCanvas||n.isMainAutoLevel&&n.isAutoLevelingComplete||n.isMainPid&&n.isPidCompleted||n.isMainResonanceTesting&&n.isResonanceCompleted||n.isMainHoming&&n.isHomed)),B=V(()=>!(n.isIdle||n.isPrintStopped||n.isPrintCompleted)),q=V(()=>!n.isIdle),z=V(()=>n.isPrinting),A=V(()=>!n.isIdle),T=V(()=>!n.isIdle),k=V(()=>n.historytaskDetails),j=V(()=>{{const ue=[];return F.value==="file"||F.value==="printHistory"?i.value&&i.value.length>0&&ue.push(...i.value.map(Ee=>({name:Ee.filename,usedSize:0,totalSize:0,storageType:0,type:1,CreateTime:Ee.create_time??0,FileSize:Ee.size??0,Thumbnail:"",LayerHeight:Ee.layer??0,TotalLayers:Ee.layer??0,EstFilamentLength:Ee.total_filament_used??0}))):F.value==="UDisk"&&o.value&&o.value.length>0&&ue.push(...o.value.map(Ee=>({name:Ee.filename,usedSize:0,totalSize:0,storageType:1,type:1,CreateTime:Ee.create_time??0,FileSize:Ee.size??0,Thumbnail:"",LayerHeight:Ee.layer??0,TotalLayers:Ee.layer??0,EstFilamentLength:Ee.total_filament_used??0}))),ue}});Ye(j,ue=>{ue&&ue.length>0&&R()}),Ye(w,ue=>{ue&&R()});const re=V(()=>n.canvas),me=se([]);Ye(()=>{var ue,Ee;return(Ee=(ue=re.value)==null?void 0:ue.canvas_info)==null?void 0:Ee.canvas_list},(ue,Ee)=>{if(!ue&&!Ee)return;if(!ue||!Ee){Pe.log("canvas_list信息发生变化(空值变化)",ue),me.value=ue||[];return}if(ue.length!==Ee.length){Pe.log("canvas_list信息发生变化(长度变化)",ue),me.value=ue;return}const He=JSON.stringify(ue),Xe=JSON.stringify(Ee);He!==Xe&&(Pe.log("canvas_list信息发生变化(内容变化)",ue),me.value=ue)},{deep:!0});const te=V(()=>{var He,Xe,qe,It,We;const ue=[];if(!ee.value.color_map||!me.value||me.value.length===0)return Pe.warn("缺少Gcode文件多色信息或多色耗材信息为空,无法进行多色映射"),ue;const Ee=[];for(const $e of me.value)if($e!=null&&$e.tray_list)for(const ht of $e.tray_list)Ee.push({canvasId:$e.canvas_id||0,tray:ht});for(let $e=0;$et.amsMappingInfoData),fe=()=>{const ue={FilePath:"xxxxx"};return t.getAmsMappingInfo(ue)},le=V(()=>t.mockAmsInfo1),ve=V(()=>{var Ee;const ue=[];return(Ee=le.value)!=null&&Ee.AmsBoxs&&le.value.AmsBoxs.forEach((He,Xe)=>{He!=null&&He.TrayList&&He.TrayList.forEach((qe,It)=>{ue.push(qe)})}),ue});ui("amsMappingInfoData",{amsMappingInfoData:X}),ui("slotArray",{slotArray:ve});const Z=V(()=>te.value);ui("canvasPreviewMap",{canvasPreviewMap:Z});const ae=V(()=>{{const ue=k.value||[],Ee=j.value||[],He=new Map(Ee.map(qe=>[qe.name,{exists:!0,TotalLayers:qe.TotalLayers}]));return ue.map(qe=>{var It;return{Thumbnail:"",TaskName:qe.task_name,BeginTime:qe.begin_time,EndTime:qe.end_time,TaskStatus:qe.task_status,SliceInformation:{},AlreadyPrintLayer:0,TaskId:qe.task_id,MD5:"",CurrentLayerTalVolume:0,TimeLapseVideoStatus:qe.time_lapse_video_status,TimeLapseVideoUrl:qe.time_lapse_video_url,TimeLapseVideoSize:qe.time_lapse_video_size,TimeLapseVideoDuration:qe.time_lapse_video_duration,ErrorStatusReason:0,noExistPrintFile:!He.has(qe.task_name),TotalLayers:(It=He.get(qe.task_name))==null?void 0:It.TotalLayers}})}}),pe=async(ue,Ee)=>{{if(_.value)return;if(Ee=="back"){if(p.value=="/")return;const Xe=p.value.split("/").filter(qe=>qe);Xe.length>0&&(Xe.pop(),p.value=Xe.length>0?"/"+Xe.join("/")+"/":"/")}else{if(p.value.split("/").length>6){Pe.warn("U盘层级大于5级,不允许进入下一级",p.value),Lt(xt.CustomMessage,0,"error",e("toastMessages.UDiskLevelTooDeep"));return}p.value=p.value+ue+"/"}f.value=1;const He=p.value||"/";b.value.has(He)?h.value=b.value.get(He):h.value=1,S.value.has(He)?m.value=S.value.get(He):m.value=0,Pe.log("当前文件夹路径:",p.value),K(xn.UDisk,p.value,0,Ya)}},K=async(ue=xn.Local,Ee,He=0,Xe=Ya)=>{var qe,It;if(ue==xn.Local){const We=Math.floor(He/Ya)+1;if(u.value=We,v.value.has(We)){Pe.log("使用本地文件缓存,页码:",We),i.value=v.value.get(We),O.value=!0;return}if(He>g.value){O.value=!0;return}I.value=!0;let $e;try{$e=await n.getFileList(ue,Ee,He,Xe)}finally{I.value=!1,O.value=!0}if(w.value=$e.file_list.length===0,i.value=$e.file_list,((qe=$e.file_list)==null?void 0:qe.length)===0)d.value=1,g.value=0;else{const ht=$e.total??0;d.value=Math.max(1,Math.ceil(ht/Ya)),g.value=ht}v.value.set(We,$e.file_list),Pe.log("缓存本地文件数据,页码:",We),O.value=!0}else if(ue==xn.UDisk){const We=Math.floor(He/Ya)+1,$e=Ee||"/";if(E.value.has($e)&&E.value.get($e).has(We)&&(o.value=E.value.get($e).get(We),h.value=b.value.get($e),S.value.has($e)&&(m.value=S.value.get($e)),o.value.length!==0)){Pe.log("使用U盘文件缓存,路径:",$e,"页码:",We),f.value=We;return}{const Ht=S.value.get($e)??m.value;if(He>Ht){Pe.log("下边界处理,offset:",He,"totalForDir:",Ht);return}}_.value=!0;const ht=await n.getFileList(ue,Ee,He,Xe);if(_.value=!1,!ht.res)return;if(f.value=We,o.value=ht.file_list,((It=ht.file_list)==null?void 0:It.length)===0)h.value=1,b.value.set($e,1),m.value=0,S.value.set($e,0);else{const Ht=ht.total??0;h.value=Math.max(1,Math.ceil(Ht/Ya)),b.value.set($e,h.value),m.value=Ht,S.value.set($e,Ht)}{const Ht=o.value.filter(qt=>!qt.filename.toLowerCase().endsWith(".gcode")),_t=o.value.filter(qt=>qt.filename.toLowerCase().endsWith(".gcode"));o.value=[...Ht,..._t]}E.value.has($e)||E.value.set($e,new Map),E.value.get($e).set(We,o.value)}},ce=(ue,Ee)=>{ue===xn.Local?(v.value.clear(),Pe.log("清除本地文件缓存")):ue===xn.UDisk&&E.value.has("/")&&(E.value.get("/").clear(),Pe.log("清除U盘文件缓存,路径:","/"))},ye=async(ue,Ee=xn.Local)=>{const He=[];He.push(ue),await n.deletePrintFile(He,Ee),ce(Ee),K(Ee)},ee=V(()=>n.previewFileDetail),$=async ue=>{if(ue===""){Pe.log("获取文件详情(单个)时,url为空!",ue);return}l.value=!1;{s.value=ue,a.value=ue;let Ee;if(F.value==="UDisk"?(c.value=await n.getFileThumbnail(ue,xn.UDisk,!1),Ee=await n.getFileDetail(ue,xn.UDisk,void 0,!0)):(c.value=await n.getFileThumbnail(ue,xn.Local,!1),Ee=await n.getFileDetail(ue,xn.Local,void 0,!0)),Ee.error_code!=_be)return;if(Array.isArray(n.previewFileDetail.color_map)&&n.previewFileDetail.color_map.length===0){Lt(xt.CustomMessage,0,"error",e("toastMessages.InvalidFile"));return}await Cn(),l.value=!0}},ge=V(()=>{{const ue=ee.value;return{Thumbnail:c.value,EstTime:(ue==null?void 0:ue.print_time)??0,EstWeight:(ue==null?void 0:ue.total_filament_used)??0}}}),ie=async ue=>{{const Ee=await n.getFileDetail(ue,xn.Local,void 0,!1);if(Ee.error_code!=0){Lt(xt.ErrorCodeAndCustom,Ee.error_code,"error",e("toastMessages.exportFileFailed"));return}qm(ue,df.Local)}},Ie=async()=>{await n.getPrintHistoryList()},Ce=async ue=>{const Ee=[];Ee.push(ue),await n.deletePrintHistory(Ee),Ie()},oe=()=>F.value=="UDisk"?xn.UDisk:xn.Local,Ne=async ue=>{ue.storage_media=oe(),y.value=ue,Pe.log("本次打印参数:",JSON.parse(JSON.stringify(y.value))),(await n.startPrint(ue)).error_code===Eh.BedMeshDataMissing&&(y.value.config.bedlevel_force=!0,Ne(y.value))},x=(ue,Ee)=>Ee?t.startPrintAmsWithMapping(ue):(t.curPrintFileName=mp(ue.Filename),t.startPrint(ue)),N=V(()=>F.value==="file"?u.value:F.value==="UDisk"?f.value:1),U=V(()=>F.value==="file"?d.value:F.value==="UDisk"?h.value:1),de=async(ue,Ee,He)=>{F.value==="file"?(d.value=Ee,await K(xn.Local,He,(ue-1)*Ya,Ya)):(h.value=Ee,await K(xn.UDisk,p.value,(ue-1)*Ya,Ya))},we=ue=>{const Ee=ue/1048576;let He=0;return Ee<20?He=1e3:Ee<100?He=3e3:Ee<500?He=3500:Ee<1e3?He=4500:He=5500,Math.max(1e3,Math.min(5500,He))};function Ae(ue){F.value=ue}return{onDeletePrintFile:ye,onGetPrintFileInfo:$,onConfirmPrint:x,onConfirmPrintMqtt:Ne,onDeletePrintHistory:Ce,getFileList:K,calculateProcessingTime:we,switchTab:Ae,onUploadError:ue=>{Pe.error("Upload failed:",ue)},onGetAmsMappingInfo:fe,onPageChange:de,onGetUDiskFileList:pe,canvas:re,fileListData:j,printHistoryTaskDetailData:ae,printFileInfoData:ge,btnDisabled:B,currentTab:F,historyListDisabledDeleteBtn:z,historyListDisabledExportBtn:A,fileListDisabledExportBtn:T,amsMappingInfoData:X,loadingMessage:C,ListTab:Ai,currentThumbnail:c,hasGetThumbnailSuccess:l,fileListPrintBtnDisabled:Y,currentPage:N,totalPages:U,currentFolderPath:p,importBtnDisabled:q,historyListPrintBtnDisabled:M,uDiskListLoading:_,localListLoading:I,localListFetched:O,onExportPrintFile:ie}}const Gze={class:"file-list-wrapper"},Jze={class:"file-list-container"},Zze={key:0,class:"table-loading-container"},Yze={class:"empty-state"},Xze={class:"empty-content"},Qze={class:"empty-title"},Kze={key:0,class:"table-expand-content"},qze={key:0,class:"pagination-container"},$ze={class:"page-input-wrapper"},eWe={class:"page-input-container bg-color"},tWe={class:"page-separator"},nWe="delete",rWe="deleteFile",iWe=Je({__name:"print-file-list",props:{fileList:{type:Array,default:()=>[]},amsMappingInfoData:{type:Object},printFileInfo:{type:Object,default:()=>({})},btnDisabled:{type:Boolean,default:!1},fileListDisabledExportBtn:{type:Boolean,default:!1},hasGetThumbnailSuccess:{type:Boolean,default:!1},fileListPrintBtnDisabled:{type:Boolean,default:!1},currentPageProp:{type:Number,default:1},totalPagesProp:{type:Number,default:1},currentFolderPath:{type:String,default:"/"},currentTab:{type:String,default:Ai.File},canvas:{type:Object,default:()=>({})},uDiskListLoading:{type:Boolean,default:!1},localListLoading:{type:Boolean,default:!1},localListFetched:{type:Boolean,default:!1}},emits:["start-print","export-printFile","delete-printFile","get-printFileInfo","confirm-print","get-amsMapping","prevFilePage","nextFilePage","pageChange","getFileList","confirm-print-mqtt"],setup(e,{emit:t}){const n=di(),{isMobile:r}=gs(),i=jn(),{t:o}=Eo(),s=e,a=t,c=se([]),l=se([]),u=se(!1),d=se(""),f=se(""),h=se(!1),p=se(!1),g=V(()=>o("dialogs.deleteFileConfirmation",{fileName:d.value})),m=V(()=>s.currentPageProp),y=V(()=>s.totalPagesProp),v=se(s.currentPageProp),E=se("back"),b=eo({name:"",previewImage:"",printTime:"",materialWeight:"",totalLayers:0}),S=fe=>s.btnDisabled,w=V(()=>s.currentTab===Ai.UDisk?l.value:c.value),C=V(()=>{const fe=[...s.fileList];if(s.currentTab===Ai.UDisk&&s.currentFolderPath!=="/"){const le={name:"..",FileSize:0,TotalLayers:0,CreateTime:0,EstFilamentLength:0,isBackRow:!0};fe.unshift(le)}return fe}),_=V(()=>s.currentTab===Ai.File&&(!s.localListFetched||s.localListLoading)),I=fe=>fe.name,O=fe=>!fe.endsWith(".gcode");function L(fe){if(fe<19693)return"--";const le=new Date(fe*1e3),ve=le.getFullYear(),Z=String(le.getMonth()+1).padStart(2,"0"),ae=String(le.getDate()).padStart(2,"0"),pe=String(le.getHours()).padStart(2,"0"),K=String(le.getMinutes()).padStart(2,"0"),ce=String(le.getSeconds()).padStart(2,"0");return`${ve}-${Z}-${ae} ${pe}:${K}:${ce}`}function R(fe){return fe===0?"-":fe.toString()}const F=fe=>{f.value=d.value,s.currentTab===Ai.UDisk&&s.currentFolderPath!=="/"?d.value=s.currentFolderPath+fe.name:d.value=fe.name,M.value=!0,a("get-printFileInfo",d.value),p.value=!0,B.value=!1},W=async fe=>{try{s.currentTab===Ai.UDisk?await qm(fe,df.Udisk):await qm(fe,df.Local)}catch(le){Pe.error("File export failed:",le)}},J=()=>{s.currentTab===Ai.UDisk?a("pageChange",m.value-1,y.value,s.currentFolderPath+s.currentFolderPath):a("pageChange",m.value-1,y.value)},Y=()=>{s.currentTab===Ai.UDisk?a("pageChange",m.value+1,y.value,s.currentFolderPath):a("pageChange",m.value+1,y.value)},M=se(!1),B=se(!1),q=()=>{h.value=!1,p.value=!1,M.value=!1,B.value=!1,d.value="",Object.assign(b,{name:"",previewImage:"",printTime:"",materialWeight:"",totalLayers:0})};Ye(()=>s.amsMappingInfoData,fe=>{!fe||!p.value||(M.value=!0,M.value&&B.value&&(h.value=!0,p.value=!1))});const z=fe=>{fe&&Object.assign(b,{name:d.value,previewImage:fe==null?void 0:fe.Thumbnail,printTime:fe!=null&&fe.EstTime?tZ(fe.EstTime):"00h 00m 00s",materialWeight:(fe==null?void 0:fe.EstWeight)??0})};Ye([()=>s.printFileInfo,()=>s.hasGetThumbnailSuccess],([fe])=>{!fe||!s.hasGetThumbnailSuccess||Object.keys(fe).length===0||!p.value||(z(fe),B.value=!0,M.value&&B.value&&(h.value=!0,p.value=!1))}),Ye(()=>h.value,fe=>{fe||q()}),Ye(()=>s.currentPageProp,fe=>{v.value=fe});const A=(fe,le)=>{a("confirm-print",fe,le)},T=fe=>{var le,ve;if(((ve=(le=n.deviceStatus)==null?void 0:le.extruder)==null?void 0:ve.filament_detected)===$C.NoFilament&&!n.canvasConnected){Lt(xt.CustomMessage,0,"error",o("toastMessages.noFilamentDetected"));return}a("confirm-print-mqtt",fe)},k=fe=>{if(fe.isBackRow){if(E.value="back",s.currentTab===Ai.UDisk&&s.uDiskListLoading){Pe.log("U盘加载中时,忽略点击");return}a("getFileList",s.currentFolderPath,"back");return}if(O(fe.name)){if(E.value="forward",s.currentTab===Ai.UDisk&&s.uDiskListLoading)return;a("getFileList",fe.name,E.value);return}const le=fe.name;b.totalLayers=fe.TotalLayers;const ve=s.currentTab===Ai.UDisk?l:c;ve.value.includes(le)?ve.value=[]:ve.value=[le]};function j(fe){d.value=fe.name,u.value=!0}function re(){d.value&&(a("delete-printFile",d.value),u.value=!1)}const me=fe=>{const Z=fe.target.value.replace(/[^0-9]/g,"");v.value=parseInt(Z)},te=()=>{const fe=parseInt(v.value.toString())||1,le=Math.max(1,Math.min(fe,y.value));v.value=le,a("pageChange",le,y.value)},X=()=>{var fe,le;{if(s.currentTab===Ai.UDisk&&!n.isUDiskInserted)return o("table.emptyState.noUdisk");if(s.currentTab===Ai.UDisk&&((le=(fe=n.deviceStatus)==null?void 0:fe.external_device)!=null&&le.u_disk)&&n.printerBusy)return o("table.emptyState.loadingFile");if(s.currentTab===Ai.File)return o("table.emptyState.noFile")}return o("table.emptyState.noFile")};return(fe,le)=>{const ve=Pn,Z=pr,ae=Ww,pe=zw;return ne(),Te("div",Gze,[G("div",Jze,[_.value?(ne(),Te("div",Zze,[be(ve,{class:"table-loading-icon is-loading"},{default:Re(()=>[be(P(dl))]),_:1})])):(ne(),Ze(pe,{key:1,data:C.value,class:je(["uniform-table",{"mobile-uniform-table":P(r)}]),"expand-row-keys":w.value,onRowClick:k,"row-key":I},{empty:Re(()=>[G("div",Yze,[e.currentTab===P(Ai).UDisk&&!P(n).isUDiskInserted?(ne(),Ze(P(yue),{key:0,class:"empty-icon"})):e.currentTab===P(Ai).File&&!_.value?(ne(),Ze(P(jO),{key:1,class:"empty-icon"})):e.currentTab===P(Ai).UDisk&&P(n).printerBusy?(ne(),Ze(P(Z3),{key:2,class:"empty-Loading-icon spin"})):e.currentTab===P(Ai).UDisk&&!e.uDiskListLoading?(ne(),Ze(P(jO),{key:3,class:"empty-icon"})):Ke("",!0),G("div",Xze,[G("h3",Qze,Ue(X()),1)])])]),default:Re(()=>[be(ae,{type:"expand",width:"1","expand-row-keys":w.value,"row-key":I},{default:Re(({row:K})=>[!O(K.name)&&!K.isBackRow?(ne(),Te("div",Kze,[be(Z,{type:"primary",onClick:ce=>F(K),disabled:e.fileListPrintBtnDisabled},{default:Re(()=>[yt(Ue(fe.$t("buttons.startPrint")),1)]),_:2},1032,["onClick","disabled"]),!P(i)&&!(e.currentTab===P(Ai).UDisk&&e.currentFolderPath!=="/")?(ne(),Ze(Z,{key:0,type:"primary",onClick:ce=>W(K.name),disabled:e.fileListDisabledExportBtn},{default:Re(()=>[yt(Ue(fe.$t("buttons.export")),1)]),_:2},1032,["onClick","disabled"])):Ke("",!0),e.currentTab!==P(Ai).UDisk?(ne(),Ze(Z,{key:1,type:"primary",onClick:ce=>j(K),disabled:S(K)},{default:Re(()=>[yt(Ue(fe.$t("buttons.delete")),1)]),_:2},1032,["onClick","disabled"])):Ke("",!0)])):Ke("",!0)]),_:1},8,["expand-row-keys"]),be(ae,{label:fe.$t("fileTable.fileName"),"min-width":P(r)?"50%":void 0,"show-overflow-tooltip":""},{default:Re(({row:K})=>[G("span",{class:je({"ellipsis-text":P(r)})},[K.isBackRow?(ne(),Ze(P(UO),{key:0,style:{display:"inline-block","vertical-align":"middle","margin-right":"10px",transform:"translateY(-1px)"}})):O(K.name)?(ne(),Ze(P(mue),{key:1,style:{display:"inline-block","vertical-align":"middle","margin-right":"4px"}})):K.isBackRow?Ke("",!0):(ne(),Ze(P(Cue),{key:2,style:{display:"inline-block","vertical-align":"middle","margin-right":"4px"}})),yt(" "+Ue(K.isBackRow?fe.$t("buttons.backToParent"):P(mp)(K.name)||"-"),1)],2)]),_:1},8,["label","min-width"]),be(ae,{label:fe.$t("fileTable.fileSize"),"min-width":P(r)?"30%":void 0,width:P(r)?void 0:"160"},{default:Re(({row:K})=>[yt(Ue(K.isBackRow?"":O(K.name)?"--":P(nZ)(K.FileSize)),1)]),_:1},8,["label","min-width","width"]),be(ae,{label:fe.$t("fileTable.layerHeight"),"min-width":P(r)?"20%":void 0,width:P(r)?void 0:"160"},{default:Re(({row:K})=>[yt(Ue(K.isBackRow?"":O(K.name)?"--":K.TotalLayers||"-"),1)]),_:1},8,["label","min-width","width"]),P(r)?Ke("",!0):(ne(),Te(Ft,{key:0},[be(ae,{label:fe.$t("fileTable.createTime"),width:"160"},{default:Re(({row:K})=>[yt(Ue(K.isBackRow?"":O(K.name)?"--":L(K.CreateTime)),1)]),_:1},8,["label"]),be(ae,{label:fe.$t("fileTable.filamentConsume"),width:"160"},{default:Re(({row:K})=>[yt(Ue(K.isBackRow?"":O(K.name)?"--":(()=>{const ce=R(K.EstFilamentLength);return ce==="-"?ce:ce+"g"})()),1)]),_:1},8,["label"])],64))]),_:1},8,["data","class","expand-row-keys"]))]),P(pp)()?(ne(),Te("div",qze,[be(Z,{class:"page-button",onClick:J,disabled:m.value<=1},{default:Re(()=>[be(P(UO))]),_:1},8,["disabled"]),G("div",$ze,[G("div",eWe,[vn(G("input",{"onUpdate:modelValue":le[0]||(le[0]=K=>v.value=K),class:"page-number-input",onInput:me,onKeyup:Wc(te,["enter"]),type:"text",maxlength:"2"},null,544),[[Qz,v.value]]),G("span",tWe,"/ "+Ue(y.value),1)])]),be(Z,{class:"page-button",onClick:Y,disabled:m.value>=y.value},{default:Re(()=>[be(P(fue))]),_:1},8,["disabled"])])):Ke("",!0),be(al,{modelValue:u.value,"onUpdate:modelValue":le[1]||(le[1]=K=>u.value=K),"confirm-title":rWe,"confirm-message":g.value,"confirm-btn-txt":nWe,onConfirm:re},null,8,["modelValue","confirm-message"]),be(Tee,{modelValue:h.value,"onUpdate:modelValue":le[2]||(le[2]=K=>h.value=K),"file-data":b,amsMappingInfoData:e.amsMappingInfoData,canvas:e.canvas,onConfirmPrint:A,onConfirmPrintMqtt:T},null,8,["modelValue","file-data","amsMappingInfoData","canvas"])])}}}),oWe=rr(iWe,[["__scopeId","data-v-b3782355"]]),sWe={class:"table-expand-content"},aWe={key:0,class:"rtm-loading-container"},cWe={class:"loading-more"},lWe="deleteRecord",uWe="delete",dWe=Je({__name:"print-history-list",props:{printHistoryList:{type:Array,default:()=>[]},printFileInfo:{type:Object,default:()=>({})},btnDisabled:{type:Boolean,default:!1},historyListDisabledDeleteBtn:{type:Boolean,default:!1},historyListDisabledExportBtn:{type:Boolean,default:!1},hasGetThumbnailSuccess:{type:Boolean,default:!1},historyListPrintBtnDisabled:{type:Boolean,default:!1},canvas:{type:Object,default:()=>({})}},emits:["start-print","export-printFile","delete-printHistory","get-printFileInfo","confirm-print","confirm-print-mqtt"],setup(e,{emit:t}){const{isMobile:n}=gs(),{t:r}=Eo(),i=se(!1),o=di(),s=jn(),a=e,c=t,l=V(()=>n.value?{width:"100%"}:{width:"100%"}),u=se([]),d=se(!1),f=se(null),h=se(""),p=se(!1),g=V(()=>r("dialogs.deleteRecordConfirmation",{record:h.value})),m={0:"Other",1:"Complete",2:"Cancel",3:"Cancel",4:"Printing",5:"Pause"},y={1:"#0079D1",3:"#FFFFFF",default:"#E0E0E0"},v={fontFamily:"var(--app-font-family)",fontSize:"14px",fontWeight:"350",lineHeight:"20px",letterSpacing:"0em"},E=eo({name:"",previewImage:"",printTime:"",materialWeight:"",totalLayers:""}),b=V(()=>C.value?_.value:a.printHistoryList),S=A=>a.historyListPrintBtnDisabled,w=A=>!1,C=V(()=>!1),_=se([]);Ye(()=>a.printHistoryList,A=>{C.value||(_.value=A)},{deep:!0});const I=(A,T)=>{c("confirm-print",A,T)},O=A=>{c("confirm-print-mqtt",A)},L=A=>{var T,k;if(((k=(T=o.deviceStatus)==null?void 0:T.extruder)==null?void 0:k.filament_detected)===$C.NoFilament&&!o.canvasConnected){Lt(xt.CustomMessage,0,"error",r("toastMessages.noFilamentDetected"));return}h.value=A.TaskName,c("get-printFileInfo",A.TaskName),p.value=!0};Ye([()=>a.printFileInfo,()=>a.hasGetThumbnailSuccess],([A])=>{!A||!a.hasGetThumbnailSuccess||Object.keys(A).length===0||!p.value||(Object.assign(E,{name:h.value,previewImage:A==null?void 0:A.Thumbnail,printTime:A!=null&&A.EstTime?tZ(A.EstTime):"00h 00m 00s",materialWeight:(A==null?void 0:A.EstWeight)??0}),i.value=!0)},{deep:!0}),Ye(()=>i.value,A=>{A||(p.value=!1)});const R=A=>m[A]||"Unknow",F=A=>{const T=y[A]||y.default;return{...v,color:T}},W=(A,T)=>{const k=T-A,j=Math.floor(k/3600),re=Math.floor(k%3600/60);return`${String(j).padStart(2,"0")}h${String(re).padStart(2,"0")}m`},J=A=>{const T=new Date(A*1e3),k=le=>String(le).padStart(2,"0"),j=T.getFullYear(),re=k(T.getMonth()+1),me=k(T.getDate()),te=k(T.getHours()),X=k(T.getMinutes()),fe=k(T.getSeconds());return`${j}-${re}-${me} ${te}:${X}:${fe}`},Y=A=>{const T=A.TaskId;E.totalLayers=A.TotalLayers,u.value.includes(T)?u.value=[]:u.value=[T]},M=A=>{c("export-printFile",A)};function B(A){f.value=A.TaskId,h.value=mp(A.TaskName),d.value=!0}function q(){f.value&&(c("delete-printHistory",f.value),d.value=!1)}const z=A=>{};return ln(async()=>{}),(A,T)=>{const k=pr,j=Bg,re=Ww,me=zw,te=Pn;return ne(),Te("div",{class:je(["control-container",{mobile:P(n)}]),onScroll:z},[be(me,{data:b.value,"empty-text":A.$t("table.noData"),style:Ut(l.value),class:je(["uniform-table",{"mobile-uniform-table":P(n)}]),"expand-row-keys":u.value,onRowClick:Y,"row-key":X=>X.TaskId,scroll:{y:!1}},{default:Re(()=>[be(re,{type:"expand",width:"1"},{default:Re(({row:X})=>[G("div",sWe,[be(j,{content:A.$t("tooltip.fileNotExist"),placement:"top",disabled:!w(X)},{default:Re(()=>[be(k,{type:"primary",onClick:Nr(fe=>L(X),["stop"]),disabled:S(X)},{default:Re(()=>[yt(Ue(A.$t("reprint")),1)]),_:2},1032,["onClick","disabled"])]),_:2},1032,["content","disabled"]),P(s)?Ke("",!0):(ne(),Ze(j,{key:0,content:A.$t("tooltip.fileNotExist"),placement:"top",disabled:!w(X)},{default:Re(()=>[be(k,{type:"primary",onClick:Nr(fe=>M(X.TaskName),["stop"]),disabled:e.historyListDisabledExportBtn},{default:Re(()=>[yt(Ue(A.$t("export")),1)]),_:2},1032,["onClick","disabled"])]),_:2},1032,["content","disabled"])),be(k,{type:"primary",onClick:fe=>B(X),disabled:e.historyListDisabledDeleteBtn},{default:Re(()=>[yt(Ue(A.$t("delete")),1)]),_:2},1032,["onClick","disabled"])])]),_:1}),be(re,{label:A.$t("fileName"),"min-width":P(n)?"50%":void 0,"show-overflow-tooltip":""},{default:Re(({row:X})=>[G("span",{class:je({"ellipsis-text":P(n)})},Ue(P(mp)(X.TaskName)),3)]),_:1},8,["label","min-width"]),be(re,{width:P(n)?void 0:"160","min-width":P(n)?"20%":"160",label:A.$t("status")},{default:Re(({row:X})=>[G("span",{style:Ut(F(X.TaskStatus))},Ue(A.$t(`status.${R(X.TaskStatus)}`)),5)]),_:1},8,["width","min-width","label"]),P(n)?Ke("",!0):(ne(),Ze(re,{key:0,width:"200",label:A.$t("startTime")},{default:Re(({row:X})=>[yt(Ue(J(X.BeginTime)),1)]),_:1},8,["label"])),be(re,{width:P(n)?void 0:"160","min-width":P(n)?"30%":void 0,label:A.$t("totalConsumption")},{default:Re(({row:X})=>[yt(Ue(W(X.BeginTime,X.EndTime)),1)]),_:1},8,["width","min-width","label"]),P(n)?Ke("",!0):(ne(),Ze(re,{key:1,width:"160",label:A.$t("fileSize")},{default:Re(()=>[...T[2]||(T[2]=[yt("-",-1)])]),_:1},8,["label"]))]),_:1},8,["data","empty-text","style","class","expand-row-keys","row-key"]),P(s)&&P(o).rtmHistoryLoading?(ne(),Te("div",aWe,[G("div",cWe,[be(te,{class:"is-loading"},{default:Re(()=>[be(P(dl))]),_:1}),G("span",null,Ue(A.$t("loadingMore")),1)])])):Ke("",!0),be(Tee,{modelValue:i.value,"onUpdate:modelValue":T[0]||(T[0]=X=>i.value=X),canvas:e.canvas,"file-data":E,onConfirmPrint:I,onConfirmPrintMqtt:O},null,8,["modelValue","canvas","file-data"]),be(al,{modelValue:d.value,"onUpdate:modelValue":T[1]||(T[1]=X=>d.value=X),"confirm-title":lWe,"confirm-message":g.value,"confirm-btn-txt":uWe,onConfirm:q},null,8,["modelValue","confirm-message"])],34)}}}),fWe=rr(dWe,[["__scopeId","data-v-35929abf"]]),hWe={class:"import-button-container"},pWe=["accept"],mWe=Je({__name:"import-button",props:{accept:{type:String,default:".gcode"},disabled:{type:Boolean,default:!0}},emits:["upload-success","upload-error"],setup(e,{emit:t}){const{t:n}=Eo(),r=t,i=se(null),o=se(!1),s=se(0),a=se(""),c=di();Ye(()=>c.isConnected,p=>{!p&&o.value&&pp()&&(Pe.error("MQTT连接状态变化检测到断开 - 正在上传文件:",a.value),o.value=!1,a.value="",s.value=0,Zt.error(n("printStatus.offline")+","+n("toastMessages.uploadFileFailed")))});const l=async()=>{qi.printerId?f():!o.value&&i.value&&(i.value.value="",i.value.click())},u=p=>{if(!p||typeof p!="object")return;const{uploadedBytes:g,totalBytes:m}=p;if(typeof g!="number"||typeof m!="number"||m<=0)return;const y=g/m*100,v=Math.floor(y);s.value=v,c.isMainFileSending&&(c.currentUploadFileProgress=v,Pe.log("[MQTT] 文件传输进度:",v)),c.currentSendingFileName&&(o.value=!0,a.value=c.currentSendingFileName)};let d=!1;ln(()=>{d||(qr.on("upload_progress",u),d=!0,Pe.log("[上传进度] 已注册全局事件监听器")),c.isMainFileSending&&(o.value=!0,a.value=c.currentSendingFileName,s.value=c.currentUploadFileProgress,Pe.log("[上传进度] 恢复上传状态:",{fileName:c.currentSendingFileName,progress:c.currentUploadFileProgress}))});const f=async()=>{const p=await ib.openFileDialog("GCODE (*.gcode)|*.gcode");if(p&&p.length>0){let g=p[0];g=g.replace(/\\/g,"/");const m=g.split("/").pop()||"";try{o.value=!0,a.value=m,c.currentSendingFileName=m,s.value=0,await ib.uploadFile({filePath:g,fileName:m,printerId:qi.printerId??""}),r("upload-success",{fileName:a.value,fileSize:0,timestamp:new Date})}catch(y){Pe.error("File upload failed:",y),Lt(xt.CustomMessage,0,"error",y.message)}finally{s.value===100?setTimeout(()=>{(o.value||a.value)&&(o.value=!1,a.value="")},1e3):(o.value=!1,a.value="")}}},h=async p=>{var y;const m=(y=p.target.files)==null?void 0:y[0];if(m){if(!m.name.toLowerCase().endsWith(".gcode")){Zt.error("Only supports uploading .gcode files");return}o.value=!0,a.value=m.name,s.value=0;try{if(pp()){if(Pe.log("开始上传前检查MQTT连接状态:",c.isConnected),!c.isConnected)throw new Error(n("printStatus.offline")+","+n("toastMessages.uploadFileFailed"));const v={file:m,targetPath:df.Local,onProgress:E=>{s.value=Math.floor(E*100)},onConnectionCheck:()=>c.isConnected};await Tbe(v),r("upload-success",{fileName:m.name,fileSize:m.size,timestamp:new Date})}}catch(v){c.isConnected?r("upload-error",v instanceof Error?v.message:n("toastMessages.uploadFileFailed")):r("upload-error",n("printStatus.offline")+", "+n("toastMessages.uploadFileFailed"))}finally{s.value===100?setTimeout(()=>{(o.value||a.value)&&(o.value=!1,a.value="")},1e3):(o.value=!1,a.value="")}}};return(p,g)=>{const m=pr;return ne(),Te("div",hWe,[G("input",{type:"file",ref_key:"fileInput",ref:i,style:{display:"none"},accept:e.accept,onChange:h},null,40,pWe),be(m,{type:"info",size:"small",class:"import-button small-btn-size global-font-14",onClick:l,disabled:e.disabled},{default:Re(()=>[G("span",null,[be(P(eV))]),yt(" "+Ue(p.$t("import")),1)]),_:1},8,["disabled"])])}}}),gWe=rr(mWe,[["__scopeId","data-v-73636b9e"]]),vWe={class:"title-container"},yWe={class:"left-buttons"},EWe={class:"right-buttons bg-color232425"},bWe={class:"control-container"},SWe=Je({__name:"file-list",setup(e){const{fileListData:t,printHistoryTaskDetailData:n,printFileInfoData:r,btnDisabled:i,historyListDisabledDeleteBtn:o,historyListDisabledExportBtn:s,fileListDisabledExportBtn:a,currentTab:c,amsMappingInfoData:l,hasGetThumbnailSuccess:u,fileListPrintBtnDisabled:d,currentPage:f,totalPages:h,importBtnDisabled:p,historyListPrintBtnDisabled:g,localListFetched:m,localListLoading:y,uDiskListLoading:v,onDeletePrintFile:E,onGetPrintFileInfo:b,onConfirmPrint:S,onConfirmPrintMqtt:w,onDeletePrintHistory:C,switchTab:_,onUploadError:I,onGetAmsMappingInfo:O,onPageChange:L,ListTab:R,currentFolderPath:F,onGetUDiskFileList:W,canvas:J,onExportPrintFile:Y}=Vze(),M=jn(),B=V(()=>c.value===R.File||c.value===R.UDisk?oWe:fWe);return(q,z)=>{const A=pr;return ne(),Ze(ku,null,{title:Re(()=>[yt(Ue(q.$t("file")),1)]),default:Re(()=>[G("div",vWe,[G("div",yWe,[be(A,{size:"small",class:je(["global-font-14 medium-btn-size",{active:P(c)===P(R).File}]),onClick:z[0]||(z[0]=T=>P(_)(P(R).File))},{default:Re(()=>[yt(Ue(q.$t("printerFile")),1)]),_:1},8,["class"]),P(M)?Ke("",!0):(ne(),Ze(A,{key:0,size:"small",class:je(["global-font-14 medium-btn-size",{active:P(c)===P(R).UDisk}]),onClick:z[1]||(z[1]=T=>P(_)(P(R).UDisk))},{default:Re(()=>[yt(Ue(q.$t("buttons.eDisk")),1)]),_:1},8,["class"])),be(A,{size:"small",class:je(["global-font-14 medium-btn-size",{active:P(c)===P(R).PrintHistory}]),onClick:z[2]||(z[2]=T=>P(_)(P(R).PrintHistory))},{default:Re(()=>[yt(Ue(q.$t("printHistory")),1)]),_:1},8,["class"])]),G("div",EWe,[be(gWe,{accept:".gcode",disabled:P(p),onUploadError:P(I)},null,8,["disabled","onUploadError"])])]),G("div",bWe,[vn((ne(),Ze(Br(B.value),{fileList:P(t),printHistoryList:P(n),amsMappingInfoData:P(l),printFileInfo:P(r),btnDisabled:P(i),historyListPrintBtnDisabled:P(g),historyListDisabledDeleteBtn:P(o),historyListDisabledExportBtn:P(s),fileListDisabledExportBtn:P(a),hasGetThumbnailSuccess:P(u),fileListPrintBtnDisabled:P(d),currentPageProp:P(f),totalPagesProp:P(h),currentFolderPath:P(F),currentTab:P(c),canvas:P(J),uDiskListLoading:P(v),localListFetched:P(m),localListLoading:P(y),onGetFileList:P(W),onPageChange:P(L),onDeletePrintFile:P(E),onGetPrintFileInfo:P(b),onGetAmsMapping:P(O),onConfirmPrint:P(S),onConfirmPrintMqtt:P(w),onDeletePrintHistory:P(C),onExportPrintFile:P(Y)},null,40,["fileList","printHistoryList","amsMappingInfoData","printFileInfo","btnDisabled","historyListPrintBtnDisabled","historyListDisabledDeleteBtn","historyListDisabledExportBtn","fileListDisabledExportBtn","hasGetThumbnailSuccess","fileListPrintBtnDisabled","currentPageProp","totalPagesProp","currentFolderPath","currentTab","canvas","uDiskListLoading","localListFetched","localListLoading","onGetFileList","onPageChange","onDeletePrintFile","onGetPrintFileInfo","onGetAmsMapping","onConfirmPrint","onConfirmPrintMqtt","onDeletePrintHistory","onExportPrintFile"])),[[_r,!0]])])]),_:1})}}}),bH=rr(SWe,[["__scopeId","data-v-ff76a677"]]),AWe={class:"temperature-name"},CWe={class:"temperature-value"},wWe="modify",TWe="confirmTemperature",IWe=Je({__name:"temp-control",props:{name:{type:String,required:!0},currentValue:{type:[Number,String],required:!0},targetValue:{type:Number,default:0},min:{type:Number,default:0},max:{type:Number,required:!0},editable:{type:Boolean,default:!0},iconComponent:{type:Object,required:!0},tempDisabled:{type:Boolean,default:!1}},emits:["update","confirm"],setup(e,{emit:t}){const{t:n}=Eo(),r=e,i=t,o=V(()=>typeof r.currentValue=="number"?r.currentValue.toFixed(2):r.currentValue),s=V(()=>typeof r.currentValue=="number"),a=se(r.targetValue);Ye(()=>r.targetValue,g=>{a.value=g});const c=se(!1),l=se(!1),u=V(()=>n("dialogs.updateTemperatureConfirmation",{device:n(`temperature.${r.name}`),temperature:a.value}));function d(g){if(g==null||isNaN(g)){a.value=r.targetValue;return}g>r.max?(Pe.log("温度输入超过最大值"),a.value=r.max):g{const y=Pn,v=Dve,E=al;return ne(),Te(Ft,null,[G("div",{class:"temperature-control-row",onKeydown:Wc(p,["enter"])},[be(y,null,{default:Re(()=>[(ne(),Ze(Br(e.iconComponent)))]),_:1}),G("span",AWe,Ue(g.$t(`temperature.${e.name}`)),1),G("span",CWe,[yt(Ue(o.value),1),s.value?(ne(),Te(Ft,{key:0},[yt("℃")],64)):Ke("",!0),e.editable?(ne(),Te(Ft,{key:1},[yt(" / ")],64)):Ke("",!0)]),e.editable?(ne(),Ze(v,{key:0,modelValue:a.value,"onUpdate:modelValue":m[0]||(m[0]=b=>a.value=b),modelModifiers:{number:!0},min:e.min,max:e.max,disabled:e.tempDisabled,class:"temperature-input",controls:!1,"data-unit":"℃",onChange:d},null,8,["modelValue","min","max","disabled"])):Ke("",!0)],32),be(E,{modelValue:l.value,"onUpdate:modelValue":m[1]||(m[1]=b=>l.value=b),"confirm-title":TWe,"confirm-message":u.value,"confirm-btn-txt":wWe,onConfirm:f,onCancel:h},null,8,["modelValue","confirm-message"])],64)}}}),GE=rr(IWe,[["__scopeId","data-v-1eb676e7"]]);function PWe(){El();const e=di(),t=V(()=>e.deviceStatus),n=V(()=>{var u,d;return(d=(u=e.deviceStatus)==null?void 0:u.extruder)==null?void 0:d.temperature}),r=V(()=>{var d,f;return(f=(d=e.deviceStatus)==null?void 0:d.extruder)==null?void 0:f.target}),i=V(()=>{var u,d;return(d=(u=e.deviceStatus)==null?void 0:u.heater_bed)==null?void 0:d.temperature}),o=V(()=>{var u,d;return(d=(u=e.deviceStatus)==null?void 0:u.heater_bed)==null?void 0:d.target}),s=V(()=>{var u,d;return e.isChassisFanUpgraded?(d=(u=e.deviceStatus)==null?void 0:u.ztemperature_sensor)==null?void 0:d.temperature:"--"}),a=V(()=>!(e.isPrinting||e.isIdle||e.isMainExtrudering));return{onNozzleConfirm:u=>(Pe.log("确认喷嘴温度:",u),e.temperatureControl({extruder:u})),deviceStatus:t,onBedConfirm:u=>(Pe.log("确认热床温度:",u),e.temperatureControl({heater_bed:u})),tempDisabled:a,extruderTemperature:n,extruderTargetTemperature:r,hotBedTemperature:i,hotBedTargetTemperature:o,boxTemperature:s}}const OWe={class:"control-container"},_We={class:"header"},RWe={class:"label"},kWe={class:"value"},xWe={class:"temperature-display"},DWe=Je({__name:"device-temp",setup(e){const{onNozzleConfirm:t,onBedConfirm:n,tempDisabled:r,extruderTemperature:i,extruderTargetTemperature:o,hotBedTemperature:s,hotBedTargetTemperature:a,boxTemperature:c}=PWe();return(l,u)=>(ne(),Ze(ku,null,{title:Re(()=>[yt(Ue(l.$t("temperature.temperature")),1)]),default:Re(()=>[G("div",OWe,[G("div",_We,[G("span",RWe,Ue(l.$t("temperature.name")),1),G("span",kWe,Ue(l.$t("temperature.currentTarget")),1)]),G("div",xWe,[be(GE,{name:"nozzle",currentValue:P(i)||0,targetValue:P(o)||0,min:0,max:350,iconComponent:P(Mce),tempDisabled:P(r),onConfirm:P(t)},null,8,["currentValue","targetValue","iconComponent","tempDisabled","onConfirm"]),be(GE,{name:"heatedbed",currentValue:P(s)||0,targetValue:P(a)||0,min:0,max:110,iconComponent:P(Uce),tempDisabled:P(r),onConfirm:P(n)},null,8,["currentValue","targetValue","iconComponent","tempDisabled","onConfirm"]),be(GE,{name:"chamber",currentValue:P(c)??"--",min:0,max:100,editable:!1,tempDisabled:P(r),iconComponent:P(zce)},null,8,["currentValue","tempDisabled","iconComponent"])])])]),_:1}))}}),SH=rr(DWe,[["__scopeId","data-v-05855162"]]),LWe={class:"myDialogHeader font-size14"},NWe={style:{margin:"14px 10px"}},MWe={class:"dialog-content font-size14"},BWe={key:0,class:"image-container"},FWe={class:"dialog-footer"},UWe=Je({__name:"ai-detection-prompt",props:{modelValue:{type:Boolean,default:!1},message:{type:String,required:!0},imageUrl:{type:String,default:""}},emits:["confirm","update:modelValue","close"],setup(e,{emit:t}){const{isMobile:n}=gs(),r=e,i=t,o=V({get:()=>r.modelValue,set:c=>i("update:modelValue",c)}),s=()=>{i("close"),o.value=!1},a=()=>{i("confirm"),o.value=!1};return(c,l)=>{const u=pr,d=Dw,f=Zd;return ne(),Ze(f,{modelValue:o.value,"onUpdate:modelValue":l[0]||(l[0]=h=>o.value=h),width:P(n)?"90%":"31%",style:Ut(P(n)?{top:"50%",transform:"translateY(-50%)",padding:0,backgroundColor:"#1c1d1e",borderRadius:"4px",overflow:"hidden"}:{padding:0,backgroundColor:"#1c1d1e",maxWidth:"440px",borderRadius:"4px",overflow:"hidden"}),"show-close":!1,"close-on-click-modal":!1},{header:Re(()=>[G("div",LWe,[G("span",NWe,Ue(c.$t("dialogs.errorNotice")),1),be(u,{class:"close-dialog-btn",type:"info",onClick:s,size:"small"},{default:Re(()=>[be(P(Wd),{style:{width:"14px",height:"14px"}})]),_:1})])]),default:Re(()=>[G("div",MWe,[e.imageUrl?(ne(),Te("div",BWe,[be(d,{src:e.imageUrl,alt:e.message,class:"detection-image","preview-src-list":[e.imageUrl],"initial-index":0,fit:"contain","preview-teleported":""},null,8,["src","alt","preview-src-list"])])):Ke("",!0),G("p",{class:"dialog-message",style:Ut({textAlign:"center",marginTop:e.imageUrl?"16px":"0"})},Ue(e.message),5)]),G("div",FWe,[be(u,{class:"confirm-btn",type:"primary",onClick:a},{default:Re(()=>[yt(Ue(c.$t("buttons.confirm")),1)]),_:1})])]),_:1},8,["modelValue","width","style"])}}}),AH=rr(UWe,[["__scopeId","data-v-9019dc31"]]),L5="data:image/jpeg;base64,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",jWe={key:0,class:"connection-failed font-size16"},HWe={key:1,class:"connection-failed font-size16"},zWe={key:2,class:"connection-failed font-size16"},WWe={key:3,class:"relative flex justify-center items-center"},VWe=["src"],GWe={key:0},JWe={key:1},CH=3,ZWe=Je({__name:"monitor",setup(e){El();const t=di(),n=t,r=Ije(),{t:i}=Eo(),o=se(0),s=se(0),a=se(!1),c=se(null),l=se(!1),u=se(!1),d=se(!1),f=se("");function h(){if(!_.value||!O.value||!I.value)return null;try{const T=I.value.querySelector("video");if(!T||T.readyState!==HTMLMediaElement.HAVE_ENOUGH_DATA)return Pe.warn("[AI] RTC视频元素未准备好,无法截取帧"),null;const k=document.createElement("canvas");k.width=T.videoWidth||T.clientWidth,k.height=T.videoHeight||T.clientHeight;const j=k.getContext("2d");if(!j)return Pe.warn("[AI] 无法获取canvas上下文"),null;j.drawImage(T,0,0,k.width,k.height);const re=k.toDataURL("image/png");return Pe.log("[AI] 成功截取RTC视频帧"),re}catch(T){return Pe.error("[AI] 截取RTC视频帧失败:",T),null}}Ye(()=>t.exceptionCodeList,T=>{if(!(!T||!T.includes(zc.NoodleDefect)&&!T.includes(zc.foreignDetection))){if(O.value){const k=h();f.value=k||L5}else f.value=L5;Pe.log("[AI] 显示异常提示框"),T.includes(zc.foreignDetection)?d.value=!0:u.value=!0,t.setExceptionCodeList([])}}),Ye(()=>t.isPrinting,T=>{T||(d.value=!1)}),Ye(()=>{var T,k;return(k=(T=t.deviceStatus)==null?void 0:T.machine_status)==null?void 0:k.sub_status_reason_code},T=>{if(T===oV.NoodleDefect){if(O.value){const k=h();f.value=k||L5}else f.value=L5;Pe.log("[AI] 显示炒面异常提示框"),u.value=!0}});const p=V(()=>{var T,k,j,re;return[{key:"noodleDetection",title:i("aiDetection.noodleDetection"),description:i("aiDetection.noodleDetectionDesc"),value:(((k=(T=t.aiDetectionSettings)==null?void 0:T.spaghetti_detection)==null?void 0:k.status)??0)===1?rc.On:rc.Off},{key:"foreignObjectDetection",title:i("aiDetection.foreignObjectDetection"),description:i("aiDetection.foreignObjectDetectionDesc"),value:(((re=(j=t.aiDetectionSettings)==null?void 0:j.foreign_object_detection)==null?void 0:re.status)??0)===1?rc.On:rc.Off}]}),g=V(()=>{var T,k,j;return(j=(k=(T=t.aiDetectionSettings)==null?void 0:T.spaghetti_detection)==null?void 0:k.frequency)==null?void 0:j.toString()}),m=V(()=>{var T,k,j;return(j=(k=(T=t.aiDetectionSettings)==null?void 0:T.spaghetti_detection)==null?void 0:k.handing)==null?void 0:j.toString()}),y=V(()=>p.value.map(T=>({...T})));async function v(){await t.getAIDetectionSettings(),l.value=!0}function E(){l.value=!1}function b(T){try{Pe.log("[AI] 保存AI设置:",T),(T.spaghetti_detection.status===rc.On||T.foreign_object_detection.status===rc.On)&&t.deviceControlModel.lightValue===bJ.Off&&(t.setLight(!0),Pe.log("[AI] 打开灯光")),t.setAIDetectionSettings(T)}catch(k){Pe.error("[AI] 保存AI设置失败:",k)}}function S(){Pe.log("[AI] 用户确认了炒面缺陷提示",t.exceptionCodeList),u.value=!1}async function w(){if(!a.value)try{a.value=!0,await r.getVideoStreamUrl(),r.refreshKey=Date.now(),o.value+=1}catch{}finally{setTimeout(()=>{a.value=!1},1e3)}}const C=V(()=>t.cameraConnection&&t.isRegisterSuccess),_=V(()=>"false".toLowerCase()==="true"),I=se(null),O=se(!1),L=se(!1),R=se(0),F=V(()=>_.value?O.value:r.isPlaying),W=V(()=>_.value?L.value:r.isLoading);async function J(){var T;if(O.value||L.value){Pe.log("[RTC] 已经在播放或加载中,无需重复开始");return}try{if(L.value=!0,Pe.log("[RTC] 开始启动观看"),await D5.startWatching(void 0,void 0)){await M();const j=D5.getCurrentVideoTrack();if(Pe.log("[RTC] 获取视频轨道:",j?"存在":"不存在",j?{isPlaying:j.isPlaying}:null),j&&I.value){const re=I.value.childNodes.length;Pe.log("[RTC] 清理容器前子节点数量:",re);try{for(;I.value.firstChild;)I.value.removeChild(I.value.firstChild);Pe.log("[RTC] 容器清理完成,清理前子节点数:",re)}catch(te){Pe.warn("[RTC] 清理容器子节点失败:",te)}try{Pe.log("[RTC] 停止视频轨道,停止前 isPlaying:",j.isPlaying),j.stop(),Pe.log("[RTC] 视频轨道已停止")}catch(te){Pe.warn("[RTC] 停止视频轨道失败:",te)}Pe.log("[RTC] 准备播放视频轨道到容器"),await j.play(I.value),Pe.log("[RTC] videoTrack.play() 调用完成,播放后 isPlaying:",j.isPlaying),await Y();const me=(T=I.value)==null?void 0:T.querySelector("video");me&&Pe.log("[RTC] 视频元素状态:",{readyState:me.readyState,videoWidth:me.videoWidth,videoHeight:me.videoHeight,clientWidth:me.clientWidth,clientHeight:me.clientHeight,paused:me.paused,ended:me.ended,currentTime:me.currentTime}),O.value=!0,R.value=0,Pe.log("[RTC] 视频播放已启动")}else Pe.warn("[RTC] 视频轨道或容器不可用",{videoTrack:j?"存在":"不存在",container:I.value?"存在":"不存在"}),O.value=!1}else Pe.warn("[RTC] 启动观看失败"),O.value=!1}catch(k){Pe.error("[RTC] startWatching 失败:",k),O.value=!1,R.value{J()},3e3)):(Pe.error("[RTC] 已达到最大重试次数,停止重试"),R.value=0)}finally{L.value=!1}}async function Y(){return new Promise(T=>{let k=0;const j=100,re=()=>{var te;k++;const me=(te=I.value)==null?void 0:te.querySelector("video");if(me)if(me.style.width="100%",me.style.height="100%",me.style.objectFit="contain",me.style.display="block",me.style.visibility="visible",me.style.opacity="1",me.style.zIndex="1",me.style.position="relative",me.readyState>=HTMLMediaElement.HAVE_CURRENT_DATA)Pe.log("[RTC] 视频元素已有数据"),T();else{let X=null,fe=!1;const le=()=>{fe||(fe=!0,X&&(clearTimeout(X),X=null),me.removeEventListener("loadeddata",le),me.removeEventListener("playing",ve),Pe.log("[RTC] 视频数据已加载,画面显示正常"),T())},ve=()=>{fe||(fe=!0,X&&(clearTimeout(X),X=null),me.removeEventListener("loadeddata",le),me.removeEventListener("playing",ve),Pe.log("[RTC] 视频开始播放"),T())};me.addEventListener("loadeddata",le,{once:!0}),me.addEventListener("playing",ve,{once:!0}),X=setTimeout(()=>{fe||(fe=!0,me.removeEventListener("loadeddata",le),me.removeEventListener("playing",ve),Pe.warn("[RTC] 等待视频数据加载超时,但继续显示"),T())},8e3)}else k>=j?(Pe.warn("[RTC] 等待视频元素超时"),T()):setTimeout(re,100)};re()})}async function M(){return new Promise(T=>{let k=0;const j=50,re=()=>{k++,I.value?T():k>=j?(Pe.warn("[RTC] 等待容器元素超时"),T()):setTimeout(re,100)};re()})}async function B(){var T;try{(T=D5.getCurrentVideoTrack())==null||T.stop(),await D5.stopWatching()}catch(k){Pe.error("[RTC] stopWatching 失败:",k)}finally{O.value=!1}}async function q(){_.value?O.value?await B():await J():await r.openVideoStream()}ln(async()=>{_.value?await J():C.value&&(await w(),r.isPlaying=!0)}),xi(async()=>{c.value&&(clearTimeout(c.value),c.value=null),_.value&&await B()}),Ye(C,async(T,k)=>{c.value&&(clearTimeout(c.value),c.value=null),T&&!k?_.value?await J():(await w(),r.isPlaying=!0):!T&&k&&(_.value?(await B(),Pe.log("[RTC] 不满足播放条件,停止RTC播放")):(r.isPlaying=!1,s.value++,Pe.log("[VIDEO] 不满足播放条件,停止视频播放")))}),Ye(()=>t.isCameraUpgraded,async T=>{var k;T&&((k=t.deviceAttributes)==null?void 0:k.machine_model)==tc.C2&&(_.value?((O.value||L.value)&&(await B(),await new Promise(j=>setTimeout(j,500))),await J()):(r.isPlaying=!0,await w()))});function z(){Pe.error("[VIDEO] Image load error"),r.isPlaying&&(s.value+=1,s.value>=3&&(Pe.log("[VIDEO] 多次加载失败,尝试重新打开视频流"),r.isPlaying=!1,setTimeout(()=>{r.openVideoStream(),s.value=0},2e3)))}function A(){s.value>0&&(s.value=0,Pe.log("[VIDEO] Image loaded successfully, reset retry counter",{isPlaying:r.isPlaying}))}return(T,k)=>{const j=pr,re=Gw;return ne(),Te(Ft,null,[be(ku,null,{title:Re(()=>[yt(Ue(T.$t("camera.title")),1)]),actions:Re(()=>[Ke("",!0)]),default:Re(()=>{var me;return[vn((ne(),Te("div",{class:je("video-container"+(F.value?" is-playing":""))},[P(t).cameraConnection?!P(t).isCameraUpgraded&&((me=P(t).deviceAttributes)==null?void 0:me.machine_model)==P(tc).C2?(ne(),Te("div",HWe,Ue(T.$t("camera.cameraNotUpgraded")),1)):!P(r).cameraConnection||!P(n).isConnected?(ne(),Te("div",zWe,[be(P(FO)),k[4]||(k[4]=yt(" Connection failed ",-1))])):(ne(),Te("div",WWe,[_.value?(ne(),Te("div",{key:1,ref_key:"rtcContainerRef",ref:I,style:{width:"100%",background:"#000",position:"relative"}},null,512)):(ne(),Te("img",{class:"video-img",key:o.value,src:P(r).videoUrl,alt:"",onError:z,onLoad:A},null,40,VWe)),W.value?Ke("",!0):(ne(),Ze(j,{key:2,class:"video-control-btn",onClick:q},{default:Re(()=>[F.value?(ne(),Te("span",GWe,[be(P(KC),{width:"26",height:"26"})])):(ne(),Te("span",JWe,[be(P(QC),{width:"26",height:"26"})]))]),_:1}))])):(ne(),Te("div",jWe,[be(P(FO)),k[3]||(k[3]=yt(" Camera not connected ",-1))]))],2)),[[re,W.value]])]}),_:1}),P(t).isNeedShowAiSetting?(ne(),Ze(Tje,{key:0,modelValue:l.value,"onUpdate:modelValue":k[0]||(k[0]=me=>l.value=me),"detection-items":y.value,"detection-frequency":g.value,"anomaly-handling":m.value,onSave:b,onClose:E},null,8,["modelValue","detection-items","detection-frequency","anomaly-handling"])):Ke("",!0),be(AH,{modelValue:u.value,"onUpdate:modelValue":k[1]||(k[1]=me=>u.value=me),message:P(i)("aiDetection.noodleDefectAlert"),"image-url":f.value,onConfirm:S},null,8,["modelValue","message","image-url"]),be(AH,{modelValue:d.value,"onUpdate:modelValue":k[2]||(k[2]=me=>d.value=me),message:P(i)("aiDetection.foreignObjectDetectionAlert"),"image-url":f.value,onConfirm:S},null,8,["modelValue","message","image-url"])],64)}}}),wH=rr(ZWe,[["__scopeId","data-v-27c11937"]]),YWe={class:"control-container"},XWe={class:"export-container"},QWe=Je({__name:"history-video-table",props:{tableData:{type:Array,default:()=>[]},exportTimeLapseListData:{type:Array,default:()=>[]},disabled:{type:Boolean,default:!1},showCreateTime:{type:Boolean,default:!0},showSelectAll:{type:Boolean,default:!0}},emits:["export-video"],setup(e,{emit:t}){const n=t,r=e;Ye(()=>r.exportTimeLapseListData,c=>{!c||Object.keys(c).length===0||c.forEach((l,u)=>{})});const i=se([]),o=c=>{i.value=c},s=()=>{const c=[];for(let l=0;l{const l=new Date(c*1e3),u=y=>String(y).padStart(2,"0"),d=l.getFullYear(),f=u(l.getMonth()+1),h=u(l.getDate()),p=u(l.getHours()),g=u(l.getMinutes()),m=u(l.getSeconds());return`${d}-${f}-${h} ${p}:${g}:${m}`};return(c,l)=>{const u=Ww,d=zw,f=pr;return ne(),Te("div",YWe,[be(d,{data:e.tableData,"empty-text":c.$t("table.noData"),onSelectionChange:o,"row-key":"BeginTime",class:"uniform-table"},{default:Re(()=>[be(u,{type:"selection",width:"35"}),e.showSelectAll?(ne(),Ze(u,{key:0,label:c.$t("table.selectAll"),"min-width":"6%"},null,8,["label"])):Ke("",!0),be(u,{label:c.$t("table.fileName"),"min-width":"20%","show-overflow-tooltip":""},{default:Re(({row:h})=>[yt(Ue(P(mp)(h.TaskName)),1)]),_:1},8,["label"]),be(u,{label:c.$t("table.fileSize"),"min-width":"13%"},{default:Re(({row:h})=>[yt(Ue(P(nZ)(h.TimeLapseVideoSize)),1)]),_:1},8,["label"]),e.showCreateTime?(ne(),Ze(u,{key:1,label:c.$t("table.creationTime"),"min-width":"18%"},{default:Re(({row:h})=>[yt(Ue(a(h.BeginTime)),1)]),_:1},8,["label"])):Ke("",!0),be(u,{label:c.$t("table.videoDuration"),"min-width":"10%"},{default:Re(({row:h})=>[yt(Ue(h.TimeLapseVideoDuration)+"s",1)]),_:1},8,["label"])]),_:1},8,["data","empty-text"]),G("div",XWe,[be(f,{type:"info",disabled:e.disabled||i.value.length===0,onClick:s,class:"export-btn"},{default:Re(()=>[yt(Ue(c.$t("buttons.export")),1)]),_:1},8,["disabled"])])])}}}),KWe=rr(QWe,[["__scopeId","data-v-02fe7137"]]);function qWe(){const{t:e}=Eo(),t=El(),n=di(),r=se(),i=V(()=>!n.isIdle),o=V(()=>{{const d=n.websocketHistorytaskDetails;if(!d)return;const f=[];for(let h=0;hn.videoGeneratedSuccessUrls),a=V(()=>{var d;return(d=t.exportTimeLapseListData)==null?void 0:d.Data}),c=se([]),l=se("");return Ye(()=>n.subStatus,async d=>{if(d==De.TimeLapseVideoGeneratingComplete){await n.getPrintHistoryList();const f=s.value.shift();f&&(Pe.log("延时摄影合成成功,正在下载文件... ",f),await qm(f,df.Local),Pe.log("------------请求下载成功(直链方式)--------"),l.value=c.value.shift()??"",Pe.log("延时摄影合成成功,正在合成下一个视频... ",l.value),l.value&&await n.exportTimeLapse(l.value))}else d==De.TimeLapseVideoGeneratingFailed&&(Pe.log("延时摄影合成失败:",l.value),Zt.error(e("toastMessages.TimeLapseVideoGenerateFailed")+l.value),s.value.shift(),l.value=c.value.shift()??"",l.value&&(Pe.log("延时摄影合成失败,正在合成下一个视频... ",l.value),await n.exportTimeLapse(l.value)),await n.getPrintHistoryList())}),{onExportTimeLapse:async d=>{if(Pe.log("需要合成的延时视频: ",d),d.length>0)c.value=d,l.value=c.value.shift()??"",l.value&&await n.exportTimeLapse(l.value);else return!1},tableData:o,exportTimeLapseListData:a,btnDisabled:i}}const $We={class:"tableData-container"},eVe=Je({__name:"video-history",setup(e){const{isMobile:t}=gs(),{tableData:n,exportTimeLapseListData:r,onExportTimeLapse:i,btnDisabled:o}=qWe();return(s,a)=>(ne(),Ze(ku,null,{title:Re(()=>[yt(Ue(s.$t("table.videoList")),1)]),default:Re(()=>[G("div",$We,[be(KWe,{tableData:P(n),disabled:P(o),exportTimeLapseListData:P(r),showCreateTime:!P(t),showSelectAll:!P(t),onExportVideo:P(i)},null,8,["tableData","disabled","exportTimeLapseListData","showCreateTime","showSelectAll","onExportVideo"])])]),_:1}))}}),TH=rr(eVe,[["__scopeId","data-v-50c90669"]]);function tVe(){const e=di(),t=se(!1),n=se([]),r=`historyEditFilamentColorMono:${qi.sn}`;ln(()=>{try{const d=localStorage.getItem(r);if(d){const f=JSON.parse(d);Array.isArray(f)&&(n.value=f.slice(0,6))}}catch(d){Pe.error("加载单色历史耗材颜色缓存失败",d)}});const i=async()=>{await e.loadFilament()},o=async()=>{await e.unloadFilament()},s=()=>{Pe.log("编辑按钮被点击"),t.value=!0},a=V(()=>!(e.isIdle||e.isMainHoming||e.autoLeveling||e.isMainPid||e.isMainResonanceTesting||e.isMainSelfTest||e.isMainHoming||e.isMainExtrudering)),c=V(()=>!(e.isIdle||e.isPrintStopped)),l=V(()=>!(e.isIdle||e.isPrintStopped));return{showEditDialog:t,historyEditFilamentColor:n,editBtnDisabled:a,feedBtnDisabled:c,unfeedBtnDisabled:l,onFeedClick:i,onUnfeedClick:o,onEditClick:s,onUpdateFilament:async d=>{const f=d.filament_color,h=n.value.indexOf(f);h!==-1&&n.value.splice(h,1),n.value.unshift(f),n.value.length>6&&h===-1&&n.value.pop();try{localStorage.setItem(r,JSON.stringify(n.value))}catch(g){Pe.log("保存单色历史耗材颜色缓存失败",g)}await e.setMonoFilamentInfo(d)?Pe.log("更新耗材成功"):Pe.log("更新耗材失败")}}}var Iee=(e=>(e.Idle="-1",e.Feeding="0",e.Unloading="1",e))(Iee||{});const ec="#2f302f";function nVe(){El();const e=di(),t=se(!1),n=se(!0),r=se("-1"),i=se("#FF912F"),o=se(ic.Lite),s=se(0),a=V(()=>r.value!="-1"),c=se(jg.Idle),l=se(!1),u=se("-1"),d=se(!1),f=se("-1"),h=se(0),p=se([]),g=`historyEditFilamentColor:${qi.sn}`,m=se(),y=se(),v=se("-1"),E=async()=>{await e.getCanvasInfoCanvas()},b=V(()=>e.canvas);function S(ve){return ve.filament_color==""&&ve.status==Oo.Empty?wi.NoFilament:ve.filament_color==""?wi.NoRecognition:ve.filament_name}const w=V(()=>{var pe,K,ce,ye;const ve=[{id:"0",filament_name:"-",filament_color:ec,filament_type:"",brand:"-",top:"26%",left:"29.5%",enable:!0,status:Oo.Empty},{id:"1",filament_name:"-",filament_color:ec,filament_type:"",brand:"-",top:"50%",left:"29.5%",enable:!1,status:Oo.Empty},{id:"2",filament_name:"-",filament_color:ec,filament_type:"",brand:"-",top:"50%",left:"60%",enable:!0,status:Oo.Empty},{id:"3",filament_name:"-",filament_color:ec,filament_type:"",brand:"-",top:"26%",left:"60%",enable:!0,status:Oo.Empty}],Z=(ye=(ce=(K=(pe=b.value)==null?void 0:pe.canvas_info)==null?void 0:K.canvas_list)==null?void 0:ce[0])==null?void 0:ye.tray_list;if(!Array.isArray(Z)||Z.length===0)return ve;const ae=[];for(let ee=0;ee(m.value=w.value.find(Z=>Z.id===String(ve)),m.value),_=ve=>w.value.find(Z=>Z.id===String(ve));Ye(()=>e.LoadedSlotId,ve=>{v.value=String(e.LoadedSlotId),y.value=_(String(ve))},{immediate:!0}),Ye(()=>e.status,ve=>{(ve===Ge.Loading||ve===Ge.UnLoading)&&e.currentActiveTrayId!==-1&&(u.value=String(e.currentActiveTrayId),f.value="0",d.value=!0,m.value=C(u.value))},{immediate:!0}),Ye(()=>e.isLoadCompleteCanvas,ve=>{e.canvasConnected&&e.isMainLoading&&(u.value="-1",f.value="-1",d.value=!1)},{immediate:!0}),Ye(()=>e.isUnloadCompleteCanvas,ve=>{e.canvasConnected&&e.isMainUnLoading&&(u.value="-1",f.value="-1",d.value=!1)},{immediate:!0}),Ye(()=>e.currentActiveTrayId,ve=>{(e.isMainLoading||e.isMainUnLoading)&&(u.value=String(ve),f.value="0",d.value=!0,m.value=C(u.value))},{immediate:!0}),ln(()=>{try{const ve=localStorage.getItem(g);if(ve){const Z=JSON.parse(ve);Array.isArray(Z)&&(p.value=Z.slice(0,6))}}catch(ve){Pe.error("Failed to load cached filament colors",ve)}}),ln(()=>{Ye(()=>e.isRegisterSuccess,ve=>{ve&&E()},{immediate:!0})});const I=se(0),O=4,L=se([{id:b0.CheckDuringInsertion,label:"multiColor.insertDetection",value:!0,description:"multiColor.insertDetectionDesc",note:"multiColor.insertDetectionNote",activeColor:"#409EFF",loading:!1},{id:b0.CheckDuringPowerOn,label:"multiColor.bootDetection",value:!1,description:"multiColor.bootDetectionDesc",inactiveColor:"#DCDFE6",loading:!1},{id:b0.AutoFeed,label:"multiColor.autoMaterialContinuation",value:!0,description:"multiColor.autoMaterialContinuationDesc",activeColor:"#409EFF",loading:!1}]),R=V(()=>L.value.filter(ve=>ve.id===b0.AutoFeed)),F=async(ve,Z)=>{if(R.value[Z].id===b0.AutoFeed){L.value[2].loading=!0;try{await e.setAutoFillFilamentCanvas(ve)&&(L.value[2].value=ve,Pe.log("设置自动续料开关",ve))}catch(ae){Pe.error("Failed to set auto-refill",ae)}finally{L.value[2].loading=!1}}Pe.log("点击开关1",R.value[Z].label,R.value[Z].value)};Ye(()=>r.value,ve=>{var Z;i.value=((Z=_(ve))==null?void 0:Z.filament_color)??"",Pe.log("当前选中槽位的颜色变化",ve,i.value)},{immediate:!0});const W=ve=>{var Z;return((Z=w.value.find(ae=>ae.id===String(ve)))==null?void 0:Z.filament_name)===wi.NoRecognition},J=ve=>{var Z;return((Z=w.value.find(ae=>ae.id===String(ve)))==null?void 0:Z.status)===Oo.Empty},Y=async ve=>{{const Z=ve;Z.canvas_id=h.value,Z.tray_id=Number(r.value);const ae=Z.filament_color,pe=p.value.indexOf(ae);pe!==-1&&p.value.splice(pe,1),p.value.unshift(ae),p.value.length>6&&pe===-1&&p.value.pop();try{localStorage.setItem(g,JSON.stringify(p.value))}catch(ce){Pe.log("保存历史耗材颜色缓存失败",ce)}await e.setFilamentInfoCanvas(Z)&&(i.value=Z.filament_color)}},M=()=>{t.value=!0,Pe.log("编辑图标被点击了,槽位:",r.value)},B=(ve,Z)=>{r.value=String(Number(ve)),i.value=Z,Pe.log("盘位被点击",r.value,i.value)},q=(ve,Z)=>{r.value=String(Number(ve)),i.value=Z,t.value=!0,Pe.log("盘位被双击,显示编辑框",r.value,i.value)},z=se(!1),A=()=>{z.value=!0},T=ve=>{s.value=ve,I.value=ve,Pe.log(`托盘导航被点击, ${ve}`)};Ye(()=>e.canvasAutoRefill,ve=>{Pe.log("自动续料的开关变化",ve),L.value[2].value=ve??!1},{immediate:!0});const k=async()=>{Pe.log(`[ CANVASid:${h.value} ][ 槽位id:${u.value} ]进料按钮被点击`),f.value="0",await e.loadFilamentCanvas(h.value,Number(r.value))&&E(),u.value="-1",f.value="-1",d.value=!1},j=async()=>{Pe.log(`[ CANVASid:${h.value} ][ 槽位id:${u.value} ]退料按钮被点击`),f.value="1",await e.unloadFilamentCanvas(h.value,Number(r.value))&&E(),u.value="-1",f.value="-1",d.value=!1},re=ve=>ve===ic.Lite?L.value.filter(Z=>Z.id===b0.AutoFeed):L.value,me=ve=>{Pe.log("耗材名称更新")},te=ds,X=V(()=>!(e.isIdle||e.isMainHoming||e.isPaused||e.isFilamentInterruption)||d.value||!a.value||v.value===r.value||W(Number(r.value))||J(Number(r.value))),fe=V(()=>!(e.isIdle||e.isMainHoming||e.isPaused||e.isFilamentInterruption)||d.value||!a.value||v.value!==r.value||W(Number(r.value))||J(Number(r.value))),le=V(()=>!(e.isIdle||e.isMainHoming)||d.value||!a.value);return{filterSettingSwitchs:R,filamentFrom:te,showEditDialog:t,showSettingDialog:z,enbleEditFilament:n,curSelectSlotColor:i,amsListCurrentPage:I,amsListSlotsPerPage:O,curSelectSlotId:r,curVersion:o,curTrayNavIndex:s,isSelectSlot:a,isFeedWithdrawSloting:d,curAmsStatus:c,curAutoFeedSwitch:l,curFeedWithdrawSlotId:u,canvas:b,liteTrays:w,feedBtnDisabled:X,unfeedBtnDisabled:fe,editBtnDisabled:le,historyEditFilamentColor:p,curFeedWithdrawStatus:f,curActiveTrayInfo:m,curLoadedTrayInfo:y,onEditClick:M,onSwitchChange:F,onSettingClick:A,onSlotClick:B,onSlotDoubleClick:q,onTrayNavClick:T,onFeedClick:k,onUnfeedClick:j,getSettingSwitchs:re,onUpdateMaterial:me,onUpdateFilament:Y}}const rVe={class:"dialog-header"},iVe={class:"dialog-content bg-color"},oVe={class:"setting-item"},sVe={class:"setting-title"},aVe={class:"setting-item"},cVe={class:"setting-title"},lVe={class:"setting-item"},uVe={class:"setting-title"},dVe={class:"setting-item"},fVe={class:"setting-title"},hVe={class:"custom-color-picker"},pVe={class:"color-category"},mVe={class:"category-title"},gVe={class:"color-grid"},vVe=["onClick"],yVe={class:"color-category"},EVe={class:"category-title"},bVe={class:"color-grid more-colors"},SVe=["onClick"],AVe={class:"setting-item"},CVe={class:"setting-title"},wVe={class:"temperature-range"},TVe={style:{"margin-right":"10px"}},IVe={style:{"margin-left":"10px"}},PVe={class:"bottom-container"},OVe=Je({__name:"update-filament-mono",props:{title:{type:String,default:""},modelValue:{type:Boolean,default:!1},curBrand:{type:String,default:"?"},curFilamentType:{type:String,default:"?"},curFilamentName:{type:String,default:"?"},curColor:{type:String,default:"#409eff"},historyEditFilamentColor:{type:Array,default:()=>[]}},emits:["update:modelValue","update-filament"],setup(e,{emit:t}){const{isMobile:n}=gs(),r=t,i=e,o=se(["ELEGOO","Generic"]),s=V(()=>String(h.value??"").trim().toUpperCase()),a=V(()=>s.value==="ELEGOO"?DZ():s.value==="GENERIC"?LZ():l4()),c=V(()=>NZ()),l=se(!1),u=se(!1),d=se(!1),f=se(i.curFilamentName),h=se(i.curBrand),p=se(i.curFilamentType),g=se(!1),m=se(""),y=se(!1),v=(W,J)=>{const Y=Pi(W),M=String(J??"").trim().toUpperCase();return M?M==="ELEGOO"?!!(Y!=null&&Y.elegoo):M==="GENERIC"?!!(Y!=null&&Y.generic):!0:!0},E=V(()=>{const W=String(p.value??"").trim(),J=s.value;let Y;return W?Y=ob(W)||[]:Y=a.value,J&&(Y=Y.filter(M=>v(M,J))),!W&&!J?l4():Y}),b=["#FFFFFF","#FFF242","#DBF47A","#09CC3A","#077747","#0B6283","#0BE2A0","#74D9F3","#48A7FA","#2850DF","#433089","#A03BF7","#F32FF8","#D4B1DD","#F95D77","#F72221","#7C4C00","#F88D36","#FCEBD7","#D2C5A3","#AF7832","#898989","#BCBCBC","#000000"],S=W=>{m.value=W,g.value=!1,y.value=!1},w=()=>{var W,J,Y,M;return{canvas_id:0,tray_id:0,brand:h.value,filament_type:(W=Pi(f.value))==null?void 0:W.type,filament_name:f.value,filament_code:(J=Pi(f.value))==null?void 0:J.code,filament_color:m.value||i.curColor,filament_min_temp:(Y=Pi(f.value))==null?void 0:Y.temperature.min,filament_max_temp:(M=Pi(f.value))==null?void 0:M.temperature.max}};function C(){l.value=!1;const W=Pi(f.value);if(!s.value){const Y=o.value.find(M=>v(f.value,M));Y&&(h.value=Y)}if(!String(p.value??"").trim()){const Y=W==null?void 0:W.type;Y&&(p.value=Y)}}function _(){d.value=!1;const W=E.value;W.length>0?f.value=W[0]:f.value=""}function I(){u.value=!1;const W=E.value;W.includes(f.value)||(f.value=W[0]||"")}const O=V({get:()=>i.modelValue,set:W=>r("update:modelValue",W)});Ye(O,W=>{W&&(f.value=i.curFilamentName,h.value=i.curBrand,p.value=i.curFilamentType,m.value="",l.value=!1,u.value=!1,y.value=!1)});const L=()=>{p.value="",f.value="",h.value="",m.value=ec,l.value=!1,u.value=!1,y.value=!1},R=()=>{if(!o.value.includes(h.value)){u.value=!0;return}if(f.value===wi.NoRecognition||f.value===wi.NoFilament){l.value=!0;return}const W=m.value||i.curColor||"";if(!b.some(Y=>String(Y).toUpperCase()===String(W).toUpperCase())){y.value=!0;return}l.value=!1,u.value=!1,y.value=!1,r("update-filament",w()),m.value="",O.value=!1},F=()=>{O.value=!1};return(W,J)=>{const Y=pr,M=Ug,B=Fg,q=Dp,z=Zd;return ne(),Ze(z,{modelValue:O.value,"onUpdate:modelValue":J[4]||(J[4]=A=>O.value=A),width:P(n)?" 90%":"500px","show-close":!1,"close-on-click-modal":!1,style:{padding:0},class:"bg-color"},{header:Re(()=>[G("div",rVe,[G("span",null,Ue(e.title),1),be(Y,{class:"close-btn",type:"info",size:"small",onClick:F},{default:Re(()=>[be(P(Wd))]),_:1})])]),default:Re(()=>{var A,T;return[G("div",iVe,[G("div",oVe,[G("span",sVe,Ue(W.$t("multiColor.manufacturer")),1),be(B,{modelValue:h.value,"onUpdate:modelValue":J[0]||(J[0]=k=>h.value=k),class:je(["select-filament",{"error-select":u.value}]),placeholder:W.$t("multiColor.pleaseSelect"),onChange:I},{default:Re(()=>[(ne(!0),Te(Ft,null,Rr(o.value,k=>(ne(),Ze(M,{key:k,label:k,value:k},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","class"])]),G("div",aVe,[G("span",cVe,Ue(W.$t("multiColor.filamentType")),1),be(B,{modelValue:p.value,"onUpdate:modelValue":J[1]||(J[1]=k=>p.value=k),class:je(["select-filament",{"error-select":d.value}]),placeholder:W.$t("multiColor.pleaseSelect"),onChange:_},{default:Re(()=>[(ne(!0),Te(Ft,null,Rr(c.value,k=>(ne(),Ze(M,{key:k,label:k,value:k},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","class"])]),G("div",lVe,[G("span",uVe,Ue(W.$t("multiColor.filamentSilk")),1),be(B,{modelValue:f.value,"onUpdate:modelValue":J[2]||(J[2]=k=>f.value=k),class:je(["select-filament",{"error-select":l.value}]),placeholder:W.$t("multiColor.pleaseSelect"),onChange:C},{default:Re(()=>[(ne(!0),Te(Ft,null,Rr(E.value,k=>(ne(),Ze(M,{key:k,label:k,value:k},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","class"])]),G("div",dVe,[G("span",fVe,Ue(W.$t("multiColor.color")),1),be(q,{"popper-style":P(n)?{left:"50%",transform:"translateX(-50%)",marginTop:"8px",padding:0}:{marginLeft:"8px",padding:0},placement:P(n)?"bottom":"right","show-arrow":!1,width:"330",trigger:"click",visible:g.value,"onUpdate:visible":J[3]||(J[3]=k=>g.value=k)},{reference:Re(()=>[be(Y,{class:je(["color-button",{"error-color":y.value}]),style:Ut({backgroundColor:m.value||e.curColor})},null,8,["class","style"])]),default:Re(()=>[G("div",hVe,[G("div",pVe,[G("div",mVe,[yt(Ue(W.$t("multiColor.historyColor"))+" ",1),be(P(J3))]),G("div",gVe,[(ne(!0),Te(Ft,null,Rr(e.historyEditFilamentColor,(k,j)=>(ne(),Te("div",{key:"box-"+j,class:"color-dot",style:Ut({backgroundColor:k}),onClick:re=>S(k)},null,12,vVe))),128))])]),G("div",yVe,[G("div",EVe,[yt(Ue(W.$t("multiColor.moreColor"))+" ",1),be(P(J3))]),G("div",bVe,[(ne(),Te(Ft,null,Rr(b,(k,j)=>G("div",{key:"more-"+j,class:"color-dot",style:Ut({backgroundColor:k}),onClick:re=>S(k)},null,12,SVe)),64))])])])]),_:1},8,["popper-style","placement","visible"])]),G("div",AVe,[G("span",CVe,Ue(W.$t("multiColor.nozzleTmperature")),1),G("div",wVe,[G("span",TVe,Ue((A=P(Pi)(f.value))==null?void 0:A.temperature.min)+"°C",1),be(P(rV)),G("span",IVe,Ue((T=P(Pi)(f.value))==null?void 0:T.temperature.max)+"°C",1)])]),G("div",PVe,[be(Y,{class:"cancel-btn",type:"info",onClick:F},{default:Re(()=>[yt(Ue(W.$t("buttons.cancel")),1)]),_:1}),be(Y,{class:"reset-btn",type:"primary",onClick:L},{default:Re(()=>[yt(Ue(W.$t("buttons.reset")),1)]),_:1}),be(Y,{class:"confirm-btn",type:"primary",onClick:R},{default:Re(()=>[yt(Ue(W.$t("buttons.confirm")),1)]),_:1})])])]}),_:1},8,["modelValue","width"])}}}),_Ve=rr(OVe,[["__scopeId","data-v-0ed6e997"]]),RVe={key:0,class:"loading-container"},kVe={key:1,class:"single-color"},xVe={class:"preview"},DVe={class:"tray-label"},LVe={key:1,class:"tray-label"},NVe={class:"actions"},MVe=Je({__name:"single-color",setup(e){const{onFeedClick:t,onUnfeedClick:n,onEditClick:r,onUpdateFilament:i,showEditDialog:o,historyEditFilamentColor:s,editBtnDisabled:a,feedBtnDisabled:c,unfeedBtnDisabled:l}=tVe(),u=di(),d=V(()=>{var m;return((m=u.monoFilamentInfo)==null?void 0:m.brand)??""}),f=V(()=>{var m;return((m=u.monoFilamentInfo)==null?void 0:m.filament_type)??""}),h=V(()=>{var m;return((m=u.monoFilamentInfo)==null?void 0:m.filament_name)??""}),p=V(()=>{var m;return((m=u.monoFilamentInfo)==null?void 0:m.filament_color)??""}),g=V(()=>u.canvas===void 0);return(m,y)=>{const v=Pn,E=Dp,b=pr;return ne(),Ze(ku,null,{title:Re(()=>[yt(Ue(m.$t("filament")),1)]),default:Re(()=>[g.value?(ne(),Te("div",RVe,[be(v,{class:"loading-icon is-loading"},{default:Re(()=>[be(P(dl))]),_:1})])):(ne(),Te("div",kVe,[G("div",xVe,[be(P(Hue),{class:"single-filament-rack",style:Ut({"--curFilamentColor":p.value,"--tray-length":"110px"}),onDblclick:Nr(P(r),["stop"])},null,8,["style","onDblclick"]),be(P(Fue),{class:"tray-guideline"}),h.value?(ne(),Ze(E,{key:0,placement:"top",effect:"dark",trigger:"hover","show-arrow":!1,offset:2,"popper-style":{padding:"8px",background:p.value||"#333334",color:P(Gc)(p.value||"#333334"),textAlign:"center",width:"auto",minWidth:"100px",maxHeight:"34px",border:"1px solid black"}},{reference:Re(()=>[G("span",DVe,Ue(f.value),1)]),default:Re(()=>[yt(" "+Ue(h.value),1)]),_:1},8,["popper-style"])):(ne(),Te("span",LVe,Ue(f.value),1))]),G("div",NVe,[be(b,{type:"primary",class:"action-btn",disabled:P(c),onClick:P(t)},{default:Re(()=>[yt(Ue(m.$t("buttons.feed")),1)]),_:1},8,["disabled","onClick"]),be(b,{type:"primary",class:"action-btn",disabled:P(l),onClick:P(n)},{default:Re(()=>[yt(Ue(m.$t("buttons.unfeed")),1)]),_:1},8,["disabled","onClick"]),be(b,{class:"edit-btn",disabled:P(a),onClick:P(r)},{default:Re(()=>[yt(Ue(m.$t("buttons.edit")),1)]),_:1},8,["disabled","onClick"])])])),be(_Ve,{modelValue:P(o),"onUpdate:modelValue":y[0]||(y[0]=S=>En(o)?o.value=S:null),curBrand:d.value,curFilamentType:f.value,curFilamentName:h.value,curColor:p.value,historyEditFilamentColor:P(s),onUpdateFilament:P(i)},null,8,["modelValue","curBrand","curFilamentType","curFilamentName","curColor","historyEditFilamentColor","onUpdateFilament"])]),_:1})}}}),IH=rr(MVe,[["__scopeId","data-v-6700aeb5"]]),BVe={class:"dialog-header"},FVe={class:"dialog-content bg-color"},UVe={class:"setting-item"},jVe={class:"setting-title"},HVe={key:1,class:"font-size12"},zVe={class:"setting-item"},WVe={class:"setting-title"},VVe={class:"setting-item"},GVe={class:"setting-title"},JVe={key:1,class:"font-size12"},ZVe={class:"setting-item"},YVe={class:"setting-title"},XVe={class:"custom-color-picker"},QVe={class:"color-category"},KVe={class:"category-title"},qVe={class:"color-grid"},$Ve=["onClick"],eGe={class:"color-category"},tGe={class:"category-title"},nGe={class:"color-grid more-colors"},rGe=["onClick"],iGe={class:"setting-item"},oGe={class:"setting-title"},sGe={class:"temperature-range"},aGe={style:{"margin-right":"10px"}},cGe={style:{"margin-left":"10px"}},lGe={class:"bottom-container"},uGe=Je({__name:"update-filament",props:Dm({title:{type:String,default:""},temperatureMin:{type:Number,default:190},temperatureMax:{type:Number,default:220},modelValue:{type:Boolean,default:!1},enbleEditFilament:{type:Boolean,default:!1},curSelectSlotColor:{type:String,default:"#409eff"},curSelectSlotId:{type:String,default:""},liteTrays:{type:Array,default:()=>[]},historyEditFilamentColor:{type:Array,default:()=>[]}},{curFilamentName:{type:String,default:""},curFilamentNameModifiers:{},curFilamentType:{type:String,default:""},curFilamentTypeModifiers:{},curBrand:{type:String,default:""},curBrandModifiers:{}}),emits:Dm(["update:modelValue","update:filamentName","update-color","update:manufacturer","update-filament"],["update:curFilamentName","update:curFilamentType","update:curBrand"]),setup(e,{emit:t}){const{isMobile:n}=gs(),r=t,i=se(["ELEGOO","Generic"]),o=e,s=V(()=>String(C.value??"").trim().toUpperCase()),a=V(()=>l4()),c=A=>{const T=String(A??"").trim();return T?a.value.find(j=>j.toUpperCase().trim()===T.toUpperCase())??"":""},l=A=>{const T=Pi(A);if(A&&(T!=null&&T.type)){w.value=T.type;return}A||(w.value="")},u=A=>{const T=c(A);S.value!==T&&(S.value=T),l(T)},d=V(()=>s.value==="ELEGOO"?DZ():s.value==="GENERIC"?LZ():l4()),f=V(()=>{const A=s.value,T=NZ();return A?T.filter(k=>(ob(k)||[]).some(re=>h(re,A))):T}),h=(A,T)=>{const k=Pi(A),j=String(T??"").trim().toUpperCase();return j?j==="ELEGOO"?!!(k!=null&&k.elegoo):j==="GENERIC"?!!(k!=null&&k.generic):!0:!0},p=V(()=>{const A=String(w.value??"").trim(),T=s.value;let k;return A?k=ob(A)||[]:k=d.value,T&&(k=k.filter(j=>h(j,T))),!A&&!T?a.value:k}),g=se(!1),m=se(!1),y=se(!1),v=V(()=>{var A;return(A=o.liteTrays.find(T=>T.id==o.curSelectSlotId))==null?void 0:A.filament_name}),E=V(()=>{var A;return(A=o.liteTrays.find(T=>T.id==o.curSelectSlotId))==null?void 0:A.brand}),b=V(()=>{var A;return(A=o.liteTrays.find(T=>T.id==o.curSelectSlotId))==null?void 0:A.filament_type}),S=Nh(e,"curFilamentName"),w=Nh(e,"curFilamentType"),C=Nh(e,"curBrand");ln(()=>{Ye(v,A=>{A&&u(A)},{immediate:!0}),Ye(E,A=>{if(A&&C.value!==A){const T=i.value.find(k=>k.toUpperCase().trim()===A.toUpperCase().trim());T?C.value=T:C.value=A}},{immediate:!0}),Ye(b,A=>{if(!A)return;if(!w.value){w.value=A;return}if(String(w.value).trim().toUpperCase()!==String(A).trim().toUpperCase()){const k=f.value;(k.length===0||!k.includes(w.value))&&(w.value=A)}},{immediate:!0}),Ye(()=>o.curSelectSlotColor,A=>{A&&!I.value&&(I.value="")},{immediate:!0}),Ye(s,A=>{if(!w.value)return;const T=f.value;A&&T.length>0&&!T.includes(w.value)&&(w.value="")},{immediate:!0})});const _=se(!1),I=se(""),O=se(!1),L=["#FFFFFF","#FFF242","#DBF47A","#09CC3A","#077747","#0B6283","#0BE2A0","#74D9F3","#48A7FA","#2850DF","#433089","#A03BF7","#F32FF8","#D4B1DD","#F95D77","#F72221","#7C4C00","#F88D36","#FCEBD7","#D2C5A3","#AF7832","#898989","#BCBCBC","#000000"],R=A=>{I.value=A,_.value=!1,O.value=!1},F=()=>{var A,T,k,j;return{canvas_id:0,tray_id:0,brand:C.value,filament_type:(A=Pi(S.value))==null?void 0:A.type,filament_name:S.value,filament_code:(T=Pi(S.value))==null?void 0:T.code,filament_color:I.value?I.value:o.curSelectSlotColor,filament_min_temp:(k=Pi(S.value))==null?void 0:k.temperature.min,filament_max_temp:(j=Pi(S.value))==null?void 0:j.temperature.max}};function W(){if(g.value=!1,!s.value){const A=i.value.find(T=>h(S.value,T));A&&(C.value=A)}u(S.value)}function J(){m.value=!1;const A=p.value;A.length>0?u(A[0]):u("")}function Y(){y.value=!1;const A=p.value,T=String(S.value??""),k=c(T);if(!k){T?u(""):A.length>0&&u(A[0]);return}if(!A.includes(k)){const j=A[0]||"";u(j)}w.value&&!f.value.includes(w.value)&&(w.value="")}const M=V({get:()=>o.modelValue,set:A=>r("update:modelValue",A)});Ye(M,A=>{if(!A)return;const T=o.liteTrays.find(me=>me.id===o.curSelectSlotId),k=(T==null?void 0:T.filament_name)??"",j=(T==null?void 0:T.brand)??"",re=(T==null?void 0:T.filament_type)??"";if(k?u(k):S.value="",re?w.value=re:k||(w.value=""),j){const me=i.value.find(te=>te.toUpperCase().trim()===j.toUpperCase().trim());C.value=me??j}else C.value="";if(!k&&C.value&&w.value&&!S.value){const me=p.value;me.length>0&&u(me[0])}I.value="",g.value=!1,y.value=!1,m.value=!1,O.value=!1},{immediate:!0});const B=()=>{if(!(!i.value.find(A=>A===C.value)&&(y.value=!0,y.value))&&!((S.value===wi.NoRecognition||S.value===wi.NoFilament)&&(g.value=!0,g.value))){if(o.enbleEditFilament){const A=(I.value?I.value:o.curSelectSlotColor)||"",T=String(A).toUpperCase()===String(ec).toUpperCase();if(O.value=T,O.value)return}g.value=!1,y.value=!1,r("update-filament",F()),I.value="",M.value=!1}},q=()=>{Pe.log("重置按钮被点击了"),I.value=ec,w.value="",S.value="",C.value="",g.value=!1,y.value=!1,O.value=!1},z=()=>{M.value=!1,I.value="",u(v.value??""),C.value=E.value,g.value=!1,y.value=!1,O.value=!1};return(A,T)=>{const k=pr,j=Ug,re=Fg,me=Dp,te=Zd;return ne(),Ze(te,{modelValue:M.value,"onUpdate:modelValue":T[4]||(T[4]=X=>M.value=X),width:P(n)?" 90%":"500px","show-close":!1,"close-on-click-modal":!1,style:{padding:0},class:"bg-color"},{header:Re(()=>[G("div",BVe,[G("span",null,Ue(e.title),1),be(k,{class:"close-btn",type:"info",size:"small",onClick:z},{default:Re(()=>[be(P(Wd))]),_:1})])]),default:Re(()=>{var X,fe;return[G("div",FVe,[G("div",UVe,[G("span",jVe,Ue(A.$t("multiColor.manufacturer")),1),e.enbleEditFilament?(ne(),Ze(re,{key:0,modelValue:C.value,"onUpdate:modelValue":T[0]||(T[0]=le=>C.value=le),class:je(["select-filament",{"error-select":y.value}]),placeholder:A.$t("multiColor.pleaseSelect"),onChange:Y},{default:Re(()=>[(ne(!0),Te(Ft,null,Rr(i.value,le=>(ne(),Ze(j,{key:le,label:le,value:le},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","class"])):(ne(),Te("span",HVe,Ue(C.value),1))]),G("div",zVe,[G("span",WVe,Ue(A.$t("multiColor.filamentType")),1),be(re,{modelValue:w.value,"onUpdate:modelValue":T[1]||(T[1]=le=>w.value=le),class:je(["select-filament",{"error-select":m.value}]),placeholder:A.$t("multiColor.pleaseSelect"),onChange:J},{default:Re(()=>[(ne(!0),Te(Ft,null,Rr(f.value,le=>(ne(),Ze(j,{key:le,label:le,value:le},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","class"])]),G("div",VVe,[G("span",GVe,Ue(A.$t("multiColor.filamentSilk")),1),e.enbleEditFilament?(ne(),Ze(re,{key:0,modelValue:S.value,"onUpdate:modelValue":T[2]||(T[2]=le=>S.value=le),class:je(["select-filament",{"error-select":g.value}]),placeholder:A.$t("multiColor.pleaseSelect"),onChange:W},{default:Re(()=>[(ne(!0),Te(Ft,null,Rr(p.value,le=>(ne(),Ze(j,{key:le,label:le,value:le},null,8,["label","value"]))),128))]),_:1},8,["modelValue","placeholder","class"])):(ne(),Te("span",JVe,Ue(S.value),1))]),G("div",ZVe,[G("span",YVe,Ue(A.$t("multiColor.color")),1),be(me,{"popper-style":P(n)?{left:"50%",transform:"translateX(-50%)",marginTop:"8px",padding:0}:{marginLeft:"8px",padding:0},placement:P(n)?"bottom":"right","show-arrow":!1,width:"330",trigger:"click",visible:_.value,"onUpdate:visible":T[3]||(T[3]=le=>_.value=le)},{reference:Re(()=>[be(k,{class:je(["color-button",{"error-color":O.value}]),disabled:!e.enbleEditFilament,style:Ut({backgroundColor:I.value||e.curSelectSlotColor})},null,8,["class","disabled","style"])]),default:Re(()=>[G("div",XVe,[G("div",QVe,[G("div",KVe,[yt(Ue(A.$t("multiColor.historyColor"))+" ",1),be(P(J3))]),G("div",qVe,[(ne(!0),Te(Ft,null,Rr(e.historyEditFilamentColor,(le,ve)=>(ne(),Te("div",{key:"box-"+ve,class:"color-dot",style:Ut({backgroundColor:le}),onClick:Z=>R(le)},null,12,$Ve))),128))])]),G("div",eGe,[G("div",tGe,[yt(Ue(A.$t("multiColor.moreColor"))+" ",1),be(P(J3))]),G("div",nGe,[(ne(),Te(Ft,null,Rr(L,(le,ve)=>G("div",{key:"more-"+ve,class:"color-dot",style:Ut({backgroundColor:le}),onClick:Z=>R(le)},null,12,rGe)),64))])])])]),_:1},8,["popper-style","placement","visible"])]),G("div",iGe,[G("span",oGe,Ue(A.$t("multiColor.nozzleTmperature")),1),G("div",sGe,[G("span",aGe,Ue((X=P(Pi)(S.value))==null?void 0:X.temperature.min)+"°C",1),be(P(rV)),G("span",cGe,Ue((fe=P(Pi)(S.value))==null?void 0:fe.temperature.max)+"°C",1)])]),G("div",lGe,[be(k,{class:"cancel-btn",type:"info",onClick:z},{default:Re(()=>[yt(Ue(A.$t("buttons.cancel")),1)]),_:1}),be(k,{class:"reset-btn",type:"primary",onClick:q},{default:Re(()=>[yt(Ue(A.$t("buttons.reset")),1)]),_:1}),be(k,{class:"confirm-btn",type:"primary",onClick:B},{default:Re(()=>[yt(Ue(A.$t("buttons.confirm")),1)]),_:1})])])]}),_:1},8,["modelValue","width"])}}}),Pee=rr(uGe,[["__scopeId","data-v-72c9a817"]]),dGe={class:"vertical-icon-card"},fGe={key:2,class:"icon-number font-size12"},hGe={key:1,class:"name-text font-size14"},pGe={class:"name-wrapper font-size14"},mGe=Je({__name:"tray-card",props:{amsSlot:{},displayHeaderMode:{default:"icon"},curSelectSlotId:{},curFeedWithdrawSlotId:{},curAmsStatus:{}},emits:["update:modelValue","update-switch","click-slot","update-filament"],setup(e,{emit:t}){const n=se(!1),r=se(!1),i=e,o=se(i.amsSlot.filamentName),s=se(i.amsSlot.brand),a=se(i.amsSlot.filamentColor),c=t;function l(){return{ams_type:ic.Standard,ams_id:u(i.amsSlot.id),tray_id:i.amsSlot.id,target_brand:s.value,target_type:i.amsSlot.filamentType,target_name:o.value,target_color:a.value}}function u(g){return g[0]}const d=()=>{n.value=!0};function f(){c("update-filament",l())}const h=()=>{c("click-slot",i.amsSlot.id)},p=()=>{r.value=!0,Pe.log("刷新图标被点击了!",i.amsSlot.id)};return(g,m)=>{const y=Pn,v=pr;return ne(),Te("div",dGe,[G("div",{class:je(["icon-container",{"refrsh-show":g.displayHeaderMode!=="name"}])},[g.displayHeaderMode==="icon"||g.displayHeaderMode==="both"?(ne(),Te(Ft,{key:0},[g.curFeedWithdrawSlotId!=g.amsSlot.id?(ne(),Ze(y,{key:0,class:je(["refresh-icon",{"is-loading":r.value}]),onClick:p},{default:Re(()=>[be(P(QV))]),_:1},8,["class"])):(ne(),Ze(y,{key:1,class:je(["loading-icon",{"is-loading":g.amsSlot.id===g.curFeedWithdrawSlotId&&g.curAmsStatus!==P(jg).Idle}])},{default:Re(()=>[be(P(Z3))]),_:1},8,["class"])),g.curFeedWithdrawSlotId!=g.amsSlot.id?(ne(),Te("span",fGe,[St(g.$slots,"icon-number",{},()=>[m[5]||(m[5]=yt("5",-1))],!0)])):Ke("",!0)],64)):(ne(),Te("span",hGe,[St(g.$slots,"header-name",{},void 0,!0)]))],2),G("div",{class:je(["hollow-circle-container",{"with-border":g.amsSlot.id===g.curSelectSlotId}])},[G("div",{class:je(["hollow-circle",{"with-question":g.amsSlot.from===P(ds).Null,"with-slash":!g.amsSlot.enabled,"thin-border":!g.amsSlot.enabled||g.amsSlot.from===P(ds).Null}]),style:Ut({borderColor:g.amsSlot.filamentColor}),onClick:m[0]||(m[0]=E=>h())},null,6)],2),G("div",pGe,[St(g.$slots,"name",{},void 0,!0)]),be(v,{class:"bottom-btn",disabled:!g.amsSlot.enabled,onClick:d},{default:Re(()=>[g.amsSlot.enabled?g.amsSlot.from===P(ds).Rfid?(ne(),Ze(P(tle),{key:1})):(ne(),Ze(P(BO),{key:2})):(ne(),Ze(P(BO),{key:0,class:"edit-false-icon"}))]),_:1},8,["disabled"]),be(Pee,{modelValue:n.value,"onUpdate:modelValue":m[1]||(m[1]=E=>n.value=E),enbleEditFilament:g.amsSlot.enabled&&(g.amsSlot.from===P(ds).User||g.amsSlot.from===P(ds).Null),curFilamentName:o.value,"onUpdate:curFilamentName":m[2]||(m[2]=E=>o.value=E),curBrand:s.value,"onUpdate:curBrand":m[3]||(m[3]=E=>s.value=E),curFilamentColor:a.value,"onUpdate:curFilamentColor":m[4]||(m[4]=E=>a.value=E),onUpdateFilament:f},null,8,["modelValue","enbleEditFilament","curFilamentName","curBrand","curFilamentColor"])])}}}),gGe=rr(mGe,[["__scopeId","data-v-c38531c2"]]),vGe={class:"dialog-header font-size16"},yGe={key:0},EGe={key:1},bGe={class:"dialog-content bg-color"},SGe={class:"setting-header"},AGe={class:"setting-title"},CGe={key:0,class:"temperature-humidity-container"},wGe={class:"humidity"},TGe={class:"humidity-value font-size14"},IGe={class:"temperature"},PGe={class:"temperature-value font-size14"},OGe={class:"setting-description"},_Ge={key:0,class:"setting-note"},RGe={key:0,class:"bottom-container"},kGe=Je({__name:"multi-color-setting",props:{curVersion:{type:String,default:ic.Standard},humidity:{type:Number,default:35},temperature:{type:Number,default:35},settingSwitchs:{type:Array,default:()=>[]},modelValue:{type:Boolean,default:!1},showHumidity:{type:Boolean,default:!1},showReturnBtn:{type:Boolean,default:!1}},emits:["update:modelValue","confirm","update-switch"],setup(e,{emit:t}){const{isMobile:n}=gs(),r=e,i=V({get:()=>r.modelValue,set:c=>o("update:modelValue",c)}),o=t,s=()=>{i.value=!1},a=(c,l)=>{var u;(u=r.settingSwitchs[l])!=null&&u.loading||o("update-switch",c,l)};return(c,l)=>{const u=pr,d=Mw,f=Zd;return ne(),Ze(f,{modelValue:i.value,"onUpdate:modelValue":l[0]||(l[0]=h=>i.value=h),width:P(n)?" 90%":"500px","show-close":!1,style:Ut({padding:0,maxHeight:P(n)?"80vh":"70vh",overflow:"auto"}),class:"bg-color"},{header:Re(()=>[G("div",vGe,[e.curVersion===P(ic).Standard?(ne(),Te("span",yGe,Ue(c.$t("multiColor.CanvasPro"))+Ue(c.$t("setting")),1)):(ne(),Te("span",EGe,Ue(c.$t("multiColor.CanvasLite"))+Ue(c.$t("setting")),1)),be(u,{class:"close-btn",type:"info",size:"small",onClick:s},{default:Re(()=>[be(P(Wd))]),_:1})])]),default:Re(()=>[G("div",bGe,[(ne(!0),Te(Ft,null,Rr(e.settingSwitchs,(h,p)=>(ne(),Te("div",{class:"setting-item",key:p},[G("div",SGe,[be(d,{modelValue:h.value,"onUpdate:modelValue":g=>h.value=g,disabled:h.loading,onChange:g=>a(!!g,p)},null,8,["modelValue","onUpdate:modelValue","disabled","onChange"]),G("span",AGe,Ue(c.$t(h.label)),1),p===0&&e.showHumidity?(ne(),Te("div",CGe,[G("div",wGe,[be(P(nV)),G("span",TGe,Ue(e.humidity)+"%RH",1)]),G("div",IGe,[be(P(nue)),G("span",PGe,Ue(e.temperature)+"℃",1)])])):Ke("",!0)]),G("div",OGe,Ue(c.$t(h.description)),1),h.note?(ne(),Te("div",_Ge,Ue(c.$t(h.note)),1)):Ke("",!0)]))),128)),e.showReturnBtn?(ne(),Te("div",RGe,[be(u,{onClick:s},{default:Re(()=>[...l[1]||(l[1]=[yt("返回",-1)])]),_:1})])):Ke("",!0)])]),_:1},8,["modelValue","width","style"])}}}),xGe=rr(kGe,[["__scopeId","data-v-0ca0532d"]]),DGe={key:0,class:"square-mark"},LGe={key:1,class:"square-mark"},NGe=Je({__name:"tray-card-nav",props:{tray:{type:Array,default:()=>[]},selected:{type:Boolean,default:!1}},emits:["click"],setup(e){return(t,n)=>(ne(),Te("div",{class:je(["all-container",{selected:e.selected}]),onClick:n[0]||(n[0]=r=>t.$emit("click"))},[(ne(!0),Te(Ft,null,Rr(e.tray,(r,i)=>(ne(),Te("div",{key:i,class:"square",style:Ut({backgroundColor:r.from===P(ds).Null||!r.enabled?"#333334":r.filamentColor})},[r.from===P(ds).Null&&r.enabled?(ne(),Te("span",DGe,"?")):Ke("",!0),r.enabled?Ke("",!0):(ne(),Te("span",LGe,"/"))],4))),128))],2))}}),MGe=rr(NGe,[["__scopeId","data-v-dd06faea"]]),BGe="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAW4AAAG6CAYAAAAoDay2AAAQAElEQVR4AezdabCu/V3V+fu/d8hA5oQwhTCEIWFOCCJDKgyBZhJI7FCaAqmyqu0XajcUL6ySQnHAodoutYKllthlyyRgaVdbZVmA0ChgFQgioChBUAbDlJCBhIQk5zl9fa77fPf5nSv3Pk+o7hdd1T4+61nrt9b6/a/rHvZ99tnnBK9Ov8t/vvzLv/z9vvIrv/J//tN/+k//4l/9q3/1zt/+23/7zjd+4zfe4O/+3b+767/zd/7OHZgZLf97f+/v3fn7f//v38E6f+Nv/I07f+2v/bU7f/kv/+U7f+kv/aUdf+Ev/IWd/+Jf/Iv8Rzb/7sTWvQt5m97726x/x166s8z8YAYz7gzzhAymN7UMeNj10mYwT9TB4eu//uvvhD/35/7cnT/zZ/7Mne15vvMn/+SfvPNVX/VVd/7IH/kjd175ylfeefnLX37n8z7v8+689KUvvfNZn/VZd17ykpfcefGLX3znUz/1U+982qd92g76kz/5k+984id+4p0XvehFd174whfeecELXrDzx3/8x+/64z7u4+7Ax3zMx9yZ+NiP/dg7H7vhoz/6ox/Z/Luw6bsf9VEf9ciGO/D85z//zkd+5EfuSG+dPZNDvp4ZA/95z3veHaB5QF+CLMhpHJoxzHN1eBhkzd0TPw/r8I6Q8XBwBg/yaGdAGgc9Wm5/m+9ObNkj27w/l3hCH8bu/hp47vVkMLUMvNZee+8H741P//RPv/NFX/RFd77iK77izh/7Y3/szld/9Vff+RN/4k/s77ev+ZqvufO1X/u1d/7Un/pT+3vw677u6+4E78s/+2f/7J3gvUpj8B7GvD//5//8HRpomPo8nzu0XQz07Jr5oTnm0zD3+MHXmjzk47y4rq/bv/JX/sqdV73qVXf+5t/8m3f+1t/6W3e+4Ru+4Q6vr21d0J0o58k9h9vX8jv/0B/6Qz/0+3//7//sL/3SL33S7/IjeK+/2x/cn/EZn/GYP/yH//BnPec5z/nr7/u+7/v17/M+7/OcJz/5yVePecxjnPEA1lpXcLX9g8M2Xr3He7zH1fX19dU73/nOq7e//e1Xb3vb267e+ta37nz37t0r2O5s308/8sgja9ObfTrhsPk386b3e9iyqzt37uz728IV33VpcC9YDwdzyNOFoy/n4dA82bXNWM9ZmEdjM6R13b95og6Ptg9mDNfX1x7qzWP3XMNjH/vYm+f9+vp6f82urx9kvevrs+eQe+etTZ82vWN7rdeG/fWrf3193rm+vt6ve3195qvtn+vr6/01ub6+3rOre/9cX593nAXX1+f7Fl9fX+/n0+H6+kFvu5+bx1AH86+vz2ebJ2RwfX2938v19Zk9l1f3/rm+vt6z7un6+vrKP8309fWD5ztTLqPx9fW5c319vT8W+fX1tWifZ495fX29P7+bv/M2e973e5Fv/q4337jD88/nQRor8GIamjHwwI7nwXtpMl1Gy83QjL1nsRya9cyydDMG2fZVvT8+mqc7dXPnyqDZjhl4ZjtA80M5P8jSR5bZ+Z3f+Z2bzylfn17TJz7xiVdPeMITrnoOPaf6wfWnNj/ucY+7euYzn3n97Gc/+1Pf+73f+3/fvja/5vM///M/dOv9rv71hfWoC9t3ee+1/Wr9tduH9v+2XewVT3/605+8XXB/k203s3OHbA/yBM1YZ3ugp+3NZjy94x3vOG0f2Kc3v/nNp+1De58F25P2wFn2+DC1OUy//e0JLH7gvMx6zZNlZufS0MyjYWqdZjxRxqPBPu55ooMMzHHa/PjHPx7tcOZ8rMy87c20vw44eP57HfDsOicvv/PMZTzgBefb57vXfDtglgOtr9t85DqT9UEXaDk9wZNN75LWAfcitwc0TK1nBlmP0WOTAd9ZYNYFM9A6R/Bh+mboOu3znA303NHVCzppvTQ2u3cwOyvYAx0eDTRMrTNnOugGnvsDmh/nmU/3/nP0zHbgXmUnswx24/Cf23x7VdNxPm4/3r7R3D+3fHb5DPP4fQ6+53u+5wmbOyd2Dh8Hz/n2Te9p+wb42c961rO+auNv+uzP/uwv3PJ36/N4650erbi2D+3nbx/Y3/Z+7/d+X7vhg7cLbvdxtX8gekB9+Gym83bfTQMD9wbZvss+edBvectbTuCJaF8XnHmEM8qwa+ns/t3t1+u7d/fryuZ5Os17V2GD/Y1uvlunQb9e2kyDjnlyPnYu1oGjbrYPOpgfHz0+DzyPnsO0N4Ac81wf82D7zgDtz42O/Tp6PG84H+igjHmy7buDk51mGmTO4Zudhc3gDDNfl3789gtOvl0+yFw3ba5H8+s7m8aymGe2p8/n0XwsA/MEr5xPh+5fR4ZlNHjdpqfvujI+NgPNoztDP5Rjua7nn56Qy6ZH8zobt6tfHs8uT8dO9+L18HXj8dFwzHjlZZPlwMOQttf18mX8ZjxRltdsD9yvjAYa5nXM0C49YS/w6brY7GvKZ9hv//Zv759lruv5fNKTnrR/eOvYDfYgHwev0fbB/YT3f//3/9QP/dAP/T+3H538L5/yKZ/yjHYfxlf3wrXxxNUf/+N//P3/6B/9o//j9rO0795+RficZzzjGde+ILbe/kGAwU3gbm4+Ub0pPLjttxr7d9e+y/ah7QloD+vgS3B2uevRmH/a7jqNYZ5h1nM9HHRorDOZBnnXaualsV2g6+oAD2iYes752BkYaKhLQ9fje74xb2b2Pf+Yj3WwHa+lnBe8kXjl/GYeDd6oPoh5vuidpWsGnh7W5XWPPLMdHXDdfDPo8CDNt+daNC7DPPAYXRfMMqCdN5mfR8sC3xn5ruf6chnQwaxjbofmO8d92TfD1PpyLLOXNtvHfEhf6sicpRd4MGe77lfX6wN0Hp3nPZSWp3XAzE+b0/kY+M4Dmqcf0/wj8mM5DXbN2Ezj0Ix1JtNQFzfjMH3fQPnw9hMD34DKfE088YlPPHk/m8Eu9vlDB/fA9xrY2T5jr7dvkL/ywz/8w7/jFa94xX+3fYA/Yetun24+4W6wWed/r7Y/zHry9gddr/jKr/zKV25/OPfK7Qfo8D9sPxJ51XbQX99+HvMcB7uQi4MLetJjH8q/9Vu/dcJuWt8NvelNbzq9/vWvP/3mb/7m6Td+4zdOr33ta09vfOMbTz1gD9qvXkfmHeFsvXZxHh/aoQOPxpcgA5kzaWymY/oSHi1vR+82eBxlR2322zJvFC+ZL2Bf8J5nv0XbfsZ28qs9POUpTzl57vnmpz71qae0Wbb9jmnv29MPfJgd+/C0pz3tVM8M9fjmmJ7gg7On70yzDOgJOR+29+DpuM/Xrxfzth/lnbAdPZkZzMFcl2fWTZtpoGWeR9rZuIyWd575jKc+8NzVb98O1E3rTW2ug+2X0xN1eV4nc+8Ds8dg9kHjw7yvY1/b3ms+iMB7D7w3cTBPeI+bMdDBDObJzuKBb+RkYMaQxqGvzWZcVwZmKKNhzq7Pg+mnJ9MTdlzHffs88/n2ute9bv+s4/vm1Gfdr/zKr5xe85rXnH71V391//zT4UOfhzTf5+f2Ojxm+9r+7O01+cbtG+Wve8lLXvJKePGLX/zKT/qkT3rlS1/60s/c/qzx8T4HrrYPgPfeXsD/dftCftX2q/GrtsVXbd7/sr24L9v48V5MNwpu6gg3/+u//uunn/u5nzv5cNm+7T9tH/j7rzpu/Jd/+ZdP2A2+4Q1v2H+u7YE5B4MzII3L+R4U8MyBp3ucecDHl2BX7ky/wNThgTmmJ/iB76zYWWVYNqHHd90j8zzP4I3li8dz6hdJvxBur9H+IeCDbPvD4dP2o6v9ufZ8f/AHf/DpAz/wA08f9EEfdPqQD/mQG2y/BTs997nP3Wccjr7Z3vYr/unDPuzDTmZIf8RHfMRJNsEDne13Zje5GXTlz3/+809A58nNkOeMObejS+vROnUx8G6DvWNmx5nzPJ4eBvq4awYZzB4f+CBrxq6HQY6B1pV3PzxaDnPmm8EeBj2QY6C9juD17X2y/eHYyXvILwLeV9vX/v5nIt5v3nfef9AHlvcmzPfs1L2veWCeyPO14BwZL5gDj9bFQPPBjHnpyTToAD1hLxz95r6O9Xg4ODOt55tTH8S/9mu/tn/W/fzP//zpx37sx04//MM/vONHf/RHTz/90z99evWrX30RP/MzP3P62Z/92ZM9n5XbLwYfuH3ufvX2+fsNG161fbP2qu0z+lXbZ/L/tP2C+7T9g3v7Tvp6E8/Y+Jnbi/fM7QPimZt+6vbpf71hfzG3Q06Bl8Y+VLzYXuTtnP1notuFTttZ+we5XM9e0OM3Y3M+zuPTvDTe7vHmZ9TmoJvG9ngxDWY50N1jrCPDchz4gVeOQcaH7pMPPNAxh0s92fZ6oJMcPK/br8j7H/R6nmH7xXafceDD9sLvv4jyaXwEH7Y3x96lQ11z2rm0L3gsm+Btb7D9LF0ZD8PxOrIgB3u8ujQ065ihLi0HeXAvPDmPxvZoPs1r5tG8wJtabo8PM0tjWT3MA/uyCT7o5ZsvQQdkt3VdQ+610tXDvY+8l7zBvCdx8F6jp09D711sBhrszK8h2RE6uvw4bXd6fB7m202bwQxTN0+v3TIMOuAxuxadbyfv6OvA9H0Wgm++/AKF/eLn8zGm5+9s9P1iCXzX2859j+1+9s/l7TPA5/Izttdq+83TU/Yfb+//2Qr7B4ObpCdvB9xkfNAJc6YndOa+uXz6U8vNngx6gg88+TyPBhnUi3mBB/phe3L2GPPku3H4jwyyj73myZf6cvA4nEW7Nja308wDc5k5XPJ5oGPHtbCZD3Qww5xpO3P36upqf0/UjevOPi3H8ttwzJvnde06C4NOaJbbwSBvpvVAhmX5PDOfZ8bAxxP1ppe2CzrAx0fk1zXTuK4Zjp4Zujd9PXyEjvdXvj1doPPNR82D/NhePs03X9Kyo6/LBxnMe+QDH4MdoPlAA11mBh4O5mOnbPp6/DwzTM9zOmd6ot08j80ZMLPO4Ydys/1mvxiYbz64DaBQGQcZLaeBzqOBH5ox5MfzhuWdJaeBnuCBvn3cjOvSIOdhoKHMGeYyDDyoR0NZPD1aH8+cB3wsw2ZwD7zAexj0jvk8L43htn5vpHlWfSyX2aexGeRH5s3ObdrehLPN9vEEz/ODoayzZUevuX5dDPIyenr5eRj4GOwEfhofc17QheZ57/lxHXNwduAddTtYjkPd5pnTMLM559/Gs5vG4LpzL2/6efVkQcbHkMZBN60zZxrkGOgJnj0eBhpkl5inJ495R8ggP40hP3YemC/lfNg/uHsDtSCggZ6Yh9E6GOi6NC/km+lyekIOPB0M9PTnLIceBw062B7Q4IOizHxJ64MM62G45PF1glkvTN/1m7HuBG/CGeaYBjs4zHlqud1LHl8ug2YMPDmNgT5iPvd2gj7o4yCn+WkzzLPMx3x6PZdYr/PoiXZ4Os0Y+Bhmzod8GZiPuORf8pwXOuO2XjluB5vtAD3B6znUDcdO6l2zOgAAEABJREFUs35a1wx5mI+BLo/5E/m6YA6zRx/vtddy7unY1z9Cb3rN+tCsM2ca+GF2eWaggYY0BudAGe1xzGxqPR3Ix/xgBh3wHJjhys9bFAUMoIGGFvTMQWciH9eVt8834x4UzdPHga/DD86Rm/2MLl0Xgzw4Qw9kGOTmmIbmrqUL+bQenl5zLANd4GNIlzfH06fBHga9wA88uZkGeoKn4/Hl8+bM18EyDJc8vucYdHVw55mDrizO182X8fFE+THj87D+ZOcCP8hnnwa5DHsseWYw88EM+kCDDp7Imz36eF/O5YN9PHdpnizYoWUgx1DmOvm6aZ1QVw7NcjPMPXOog3VCOeZhqJeO890v8CF/Mv8I14Cjb296Htuxd+zo6xx9nix0n3zn6geevBm3R8+Mz8Ng14zNNLiGGfytEvwAZsmyWcHFMA/oYJ4H83m4fTp0llk+u/T0dHjO5zfjIJfh6c1ZDjxI43bivNj92pEfmQc6GHSAntBxJpR7XDrNMZ8OOsF+evK9P9jYfwatYxeDHuY5mwb+xG2ee9ebOc13pixOm8EM+sCDo2c+3pvz+faABvuQxnZx0NeJZ86faOfd9erH9lzHHNNgno8jD4NdDLR+nC7DUI7NetjsWriZlgMNMtAFmk9j0A9yyKfBjIN+XlxmljfHfFoWzHwz7bVzb/QRsnp25M10sM9/WKduHbMdHMyBVzd2P3zX4x27Zr5O2gw8X8fT503sPypRmGbL+WZo1k1P1pGFMvMx40G+bnr6eTOfni4cvWZZyHMWr5nmAX0JMpBhoCd4MM8t54NZDnPmN9Ogg6efd2Q96A0jB14ww3HOw10rbQZvwM42g3Pq0RPlPB0M6Ut5nmvpgZ18M5Tnzw4Nt2X2oc5tvenrhqN/nDs7Pu7py+KZz+c3XzeN7eHpTy3TCc3HDj/odm3ecb60m6cLzXOfJ+O9u6hv1w6+5JV5L6Tj+s04lGFwPsibachPy9Oua9bB/JjXzANzPm0fBx24P6/9b801H3n/4HbIPFTJDHQHYh7ONwMP8y/htpx/7PPcE783lLP5eWYwg8w8OZ2vR0PZ9PjN8iPK9GTmOH2cu385zNw5wAd65mkc9GgMU5thelOX8boWDTLgY/AamMHjwPxHg948k4b8uHPMMDsyHg7NesDHfDDHdBkNZqCh7tGbPg36euk5880Tenzgmz2H9CX0XMvsBHu8mAb59Jp5E/z6uCz/6PF1cBk+4lLu8eXXd1bgyc00NoMZjp4zeSAPZntyzM+jgwzMWIeO6eA1SOvCpZ7OzHTAPgYdmHrO9oEHekDD1GaY/f2DO1MAngygZQ4JzRj4eth8RD7WK+98Pq+ZBl1Z4KWxHPjBLGvGPGencZDpw/Tq58mDnXzai4XlNJbj/GYezcfBXIZB5ryZ8cwxrRv4YMZyfJx5cMmfO54HM+hie9C90dNvnn357OvIMcjh2OHJ6za7Lx7MfOoyHpiDGZw3PZrvfNxM67o/OjTryaHMGXzgyWigeXSs7zxeTNeN9YOdOpivx8eQH/OgObablrsHzMcy4PNoDHIsy6d5su7HLDfjZjwhA7vO0aePsMPTTZvTWAa0Hz/4szEa+PXNRy3nh5nnYf7smkEGMqBBBjQfaOBfgmz29j+cnKYweNJkDvLkpXGdtA6YJ/LimXX+PEs+uzIe8CHvyDrgXmUTfDPuDDwhc0/1MPAx6DufB+Z8Gvh1mnlpfci7pMvcDw2zZwZnBrPOnHlmPHH0mu1Dsx1zTIPHh/nzHs1H6OlfOnN2j7k9nt16PJofy82yh/HM7AY+HTtnzjRvXofXTMtxMHdeXlwmD7x5nq4MB7Me8HCeOc0PfHoyPWGvWXciXyfwaAy9/tPzWGTOGkzuPwLQlQEz5kMeXcYDHoZj1oyhDm3PvaZlwMcgAz3zMcvTSeMeLy077jsnyPWAN1kG+TIz5vkfk9H7H04ygDHhZvgtxnVkoRstezR2ll09bKaB5oE5poPr8XXzsBlkgQ9zpvXyp+aBDqTxhB2oIzNPpifqPozL2utMj5nXTD8Ml3p52HWwM2IammMe2IHpm2VH1LnEt+10hhza5dM8GujpmfnBLPc+nl4a16HBjMEuDmZoju1AGT0zWsaH5sl00NFvPrL86Jlv2/H429EB/TDnejIaZs43Ay0HOsggf2qdfOze5NhM6wANNExtnrBrxnpAB1ng0TGtj3mQ5gMP8yd4Id+sD3mYjyEd84I9X+sz45Xjmx+VKAETpj7Ox0N0j54dHqRxsDN1PZ4M6Px4ekdtBrvHB54vo8GZZjAD7U2UxiHfrIdhanNwD/MaelA+dV4899LYmfZCfbNMh8Ywc745vq1vD/SwnWC+5M/nRlcH6wczXOrOvk5z2hn0JegGPahHl3m86XLsfvRooPUw8II58Gisj800dj1e8Fv19CW2E+TOganleWkc6mLg60OPkycDekIvP22G5nmOXY+TpxP49NHndQ62ywv2+MAz48CH5nJekE3fDDygXTdtBvfqDHpi9sp1+c2X+mV6x3z+yOaYme2AM4CHH/hfTjKVgIa0svmI6eu6kenpe3KOXrOdqfWBH8x1nGUOXa/cztRm0McybJ44emZd0MOuNX2eGWjQDc1y992LLOfJgZbTMuBhvj2Q88G98HTMWI7NNLYP5jIM8mAOunxznHec+XqT6/DdJ5aDDy3Mc18Y7IDHJJ+ZHGQ6MDtT65XTQYcP8xzz7OhBnq451Hd/NJ/2uGheu1jGk5npzjTn08FO0M/HZmgvfTyTD+1gO7PH0+HTGGg+mGM+mHHQAb7ngd+c9nho0MPBDM1267vf/Mm3+XadNbk9PjTrOKdrmeVzrssvt2OW5Xmf5/GhWSc4O63j+TLT+jQ2T20GHr75UYkhFDbHDoRmPTMGvhvh0UdMP41B1xkTeTjo1uF5InAw64AeH4d8DHKgj7AjA5mzj54Z5KALvEvMq4dB9/hm6Frlc4+2A+U0f4InD2aY8+yn5XqQh81Aw9R2eN03zTPTdXnQLANzMIMe0DBzPvCx548GPR5uvsQ80AtmZ5lp7Cw6TpfpAz/IwA7QMgxpGT3hLD7kp+2CGWgdbO75zpt8zGXAtw80D8wY+JCHocx15ZAnBzPIYHp84M2MvuTzQB+H5vbyzTLMo3H3S5fRcsjDIMMyGpvTZpoHNNDz9TSDzA4NzbGMnqg3vQd+VKIAFWhoxseD5UdPD2RY7gmjg5lfh3+b1ivXMWPgw9TNlzy7R+hPzx7k43cX7cVePGfb7zHToFMW68uadYAXZMA/og6WYaDtpM3QXNbsXst5YAYa6CP4nTWzo9d8ZDs87CyY2nyEvuft0XpyXdwZdJA5B09c6vLqpJ1Dx/I0P+TFfNpzTl+C/OjzXAPomZthelPbMev0mJsn6+nw0s28qc2gh2+DHZBj/ZCHg84lnTfZY2l2Jo07I+aDDIdmDPnYbB+bj5Dl6YB5sg7wQH4JZbozf5cflcywJTxxPGTu0Lo4mGHONG+elT6+cfX0vRhA56XtQj6e0Jt5GpfN69qVgRx4GPhz5s1Zzgsz481rmWdut5ku50GzDMwgAxpk5sADPoayOA/D1dXV/qf/6Xb1ec008D02bJanm3l0kPMmyibrhXwzje1jczDnYyjrPqcnsyPjg3m+78xQFx9hj6eXNkNz7Fr1sN9243La3m2Q60J6dnnAOz6Odspx0JfHfPt5fB6Gqc1HHHOzx67XmTjIZUGXF/RkzXSYXT2dMswDWtfjAt4RdkE3HOd8XIadhfnpmE/LLkEGMl0cbn5U4v9WSSZWtAQeGI/GzTTw9T1woPlBDnwcjl05yO3iOfsxjGtPb2o7wMP2gebZTZtlk7sfXtqOXnsYdHAZbccMzbf1dHVCO834kscH2fFsHuRjM7SD+TEtBx4OMuCD5wLzZicP97ji2ZVPdMbRm3PXnB5tF4fjzHcP+bSzQMYPzRj42L1D82RapneEa5S5blrPXlyPB3qT9fLoCT7kpV0vD+fT0Ow6uhjKppa7R9klOEs/pvUw2DfLMdCymOY/DLPrzHa6NzPodY4Z6tOyOnZp0GmeHdqeHOvywIxh+maY+W1a77jrWnyQAX0b9r8OeAwteUAOA7OboHF9Po1hZvzAB7MeNPM6N++Y84M+mPVCHp7Qg+nRedgZGGiPna4370/Oj/XSR98sxzrQzAvTp6eftge35fk6YI9HYzONj8jXg+bbep4fPdDBYA/zgAZaFrd/ydMHGbYDZqAhjWF2j1oOfLAPdPfSrEcDrQNmDHzgTfACn8bQXiwDGfAxTG2GPDuBR8s9Dgy8Cb0gT88OH3hyOr6ky2J79Y7ezOh5r3Ym2uXpAn2bL6tD15vXkIM8pnXnPLVMJxzn/CPXw86DOnk4D5uBnrjkPfCjknm4xWaLwANPRnOdWD61eaK9PF0wl8U8OM68UNYZsZwOD87LeIN5hn4BLQNej9tcxp+QAQ8Hv1vg2cPOwnIMZfTE9PWBB/Ts0nwczHoxDXIeDvnm7rFOLNMzgxl4+GGog+1CfV56+lPPDg12MMwuDXIsT/tF2OPjyfhgjqevbwY56AIPeIE/ccyPvZl3X7NDO2/yUZvnOWZoj5YDb0JmlqXNNI8Gc8w3Y+ADL/BpXEbnpcv4YC6L+TAz8yW0E9vxvNbNb5bfpmc296bfbqwXeJeuLZdN7szp6UAZHW7+l5OMCrgD0m6AB7ObloM52J2w26yTxuZyOvCgOeZB82S+e3FuaNbj6aRxyG/WhWbn3PbFfNw9zs5wFsggD5uBvgR7+XTg3bZ39M1gB5yBIf/4+HSCHtTlmyeOnlkf16N5oWvO/GHanjN04rTXKE+PH/jzWnIon5qnH8xyoPPNgR94U9fPw7zJ7WCQxe7bbIcHZuAFPo1l9miemQb6EurL9OC4mzd9+ujn8TsP8zEfaHBtzPM60nVpMAczmDGksfOcxQce0CAzgzn25w2ub9aRwZyPfnmsS9eL8+SXPHmZHMz8sP+oRJCRPhb5PA9Gtxk3e5LoIINmbIbO4YGzseyozfr42Gmee/XKjqzrvHzaDh/zJzwuGY+uH9uRx3pmrI+BZ8a6wSw3x0fPDHJwTn0zmGFqM/Dsz3vOP7KOfj4N9uMyHpix/Aj+zM3Am2hPBma5xwrmwKdx3WbeEbIJefNRN8d6XYMHPOi+8uph3vG55NvDQAMNNNhtpnmdxedhPrgPM8yMtgd6csxPx3xaBmYMdJizPvCwjnvBZpCZMdAwM7MM3CvmgV6Yvsxchnk4HwcZyIMsXYbdg8chMwezHeBh4JvBjHnQHPNAh0cDzQM6mOU47H8d0E0KQLkwzvNAQO+YmevRE/owc/NE/ToxX8916enTcPTNYA9oSLdjprGcnkxDOQ3dSz62O6EHPAx0sMOL6cDTw0CXxbzugwbdchrmrGNn+nI+DjppPPPjrjzUu61TPvlSt9y5l3LehF7Ib3YWrxnnYUtel3YAABAASURBVPOE7oSOGdczp33tlMUyWu/4XMqCDh2nm2O+s3CYGa855oE9SGMdHp4owyDTC3kxP43NdmiggW8+QjY9z9Xs0nXm88y3F+sEPpSl58wLfLtmGuhLuK1nRwY0tM/r3ungR6h6UBfLsecCQx4d9g/u47LwktcBGI6d46zjLJj60mxXB7tprHdEPga5PRzMv5tMH+zbc316opw3tRnsQRoHfRnm0ZPT+WboBaehfVo3NONQt46Zlk/NA36Q064vAzMfaF5oxjB9M/AwpHHn8cPx+deB8nh6aWeCDga6HOfxQ54c+DEd9KZvLsMzm1o2cSnjOQ9mtxnryKY259NhevUxyIDWPzIPdOI65lAu837h59F8PDE9evZpHswd+vi+4NWL7fNDPoZ8vcBP9xh4wLeDm2neo0HPTph9npyHQ4/RLLsN+we3UBEetjgvZscMNNjHE5c8uT0Z7pp86Mkr56XxhMwZPAw8M9DAnzMPeK4vBzOfjnmBR2OgZ5cHfAxyc9fhgccpS+s082iYug4OOkEXZJPTfN0j5+lB91aPF3ghD+dh+zxwNvDNMQ3m0KwPzRhmT27m0xjyJsvnPHsyM9BA16eBzwOaN7U5P5bzjzjmenm6U5uhDg5H317PPS0HfTwzOT+WmzEPQx59Cbo6+LQV6I32f9NlzDza/TRjPZDhPLMuPkJnevbMuAzPfV+LdTDw7ND6QOcdtfN0QGafDvaCfII/Zztzv2z2XC//5oO7ggMKj2xRL+jSerQL00EG5mPGk9nz24ZmfAn2de3IzbiZhjrTryuffrMd8Ph4NKSxvdB5OjysE9N8XJcuL+O5phnkZj40y/jm/FjGD3zounJzMOuW52NZnDbX5wU+XWZ2Jm+C796h3I4OltMyMMPd7T/l09fdopt/j/NNsImytc5vc3PY4pNzu0bMB7MuHXgw92S8mLbn8WL+w6AT9OxjOGo9Pg7NR3Z9Hui6ZwzOBVngQ/PM+TA9veaYB7oYZND9uA9+0AWzXkyDPtahy3HIN+t1LXu84A8c87AuBp3JMt6R59muO/P2881h9pzLn2zHDHR9PRrz5bC/owWGI/hHOEAPyzwQDDzZJZTFdcx2m7GZT8ddhyc30+U8c5zPq0vDzJrtzSfGDHJIO6v9PPkRdfCxx9Pnw3GWgcw9yek8DJc8PtiZ4AEvntrj4k90Pq8czz3ZnGngh87hQ3M55gO9466P7tP+v97kw+6/G/+Z55/37t6cM9dls+u5Ls/Henwa6DDno26vLs6bXX6YPl2/HD+aZ89jqYe9bnaDDh3rAC+mYc71Y/kRM3Mfc55n2ZNN8I6wE2T6mDf5qM1B13PQbv6cdUAW0/Yw1MezQ0O+x61/hE6ebsg301AP83HYP7gbsAUlMAPviHwMs28+on09uvw48+V8MF9CHZmeOY2DDJrrmflmDDTIwpx15gsys9mfPu2Fx1Bvcr7zoWxq3nHmXcI875h3xrHjccnguGOur2eGPNxeuZlfL20Gcx2aBzTQoHOJZ0cOR8983NcLZWZan35XnJ1jbuecPPjf2avDo0G7mYb8dDOui+XBHPTyp86L9Y85rzz2OupNyHR5dGg+Znwe1KX5zfNrIx8HPRoHZ4D5mLlvfnlaD8xQjtuR01gHaNBrxkfo5Ol6XOZ8s7N5QS9ML43lGDqL3j+4hZm0AKaWhzL5JcgndNw0OAPz4NjL80DTx4594DtPN6b5wHMGmIEXT58Hnds5ZjtmaAfzMdgFfRx0QCcuw/lp19BrxoEPzdh+TM+8mRd0aSzH7pnmYx42hzqy6Zkn3L85pvXbp/Mm0yAH2j2AXTOY5Twa+MC/xDogB/dm1g1mMMuxLj6iHg515o57nGfNTN8uDuaQh/0WH9uX42Ya+DwM9ITOnC91Zu7HlzrgMYAzzGCefVqOZTQ2g+eCB/Yx/8g8eUzr2OeBGWh54Lkm1ufrmNMY+MFOema0DJfjznZu4Aceje1iM43NNDYH3tRm15rezf+tEqaCG6QdZj7qcj44EPTNdoAOzTr2zbEOH4MMh86enbL5ppp77UzP/pzTsdy5zfQ8h++e8+R2zGkzHczlds0gj51rrkfLoIwXeBP2zPI47YyQh2F2ncFzj5N1ZLc9z7o6QEPadWnMD3k4D5t1oRkHvk5zGsuAhjoeTz6GMj0z5NHQ7LHTujAzGuQ4mEEfw1F7PvmXoDvP8hjqydI6aSwDfsyHPFqGgZ4ZzxzMPQd5uD1aB2j3is067eJ8j102ITO3R0MzruMa5qAna8Z5/KllPGfgkG+m7eDQ/Zfn6/FwmBk98znn+8XY/difOQ1du5w3sX/H7TDmkXlBNg+hgX/EcaceXxe7MQx5MS/YBRnOx7wJ3rFj1sHywIPmyZ5QGfCxfWymgQY+0PkYPE5crgPNriXnXcKlzC4fH3HpDJ4+0LDWQrdCt7PpijTIpjfn6afL7fIwHP1mnaCXls+ZzwM61PH8yoAHdbAZ6NnhAR9fyvJ0gu4lrQtlvxt2JrRDOyvOz+MfPRkvPmo7QRZ4abvAw1CG+Ufm6YEMAw2+PvBtsC9r59IsAz050EfUmX5dGVzK6sjoYA48+8DDPDrmmaH3JQ06xzwfw8xvPriZlhVwMAeddOwGdJsn8+3A9GkZvgR9OdC3dfg6cfq482hze52Dge/xtW/mm4EGPtATOtM3z7yMT1+CLMjtY6CBDro84OEgg2Y8O2WxHOactpeOdcFcTvPMuBnD9OgJ+XFv5rROPLv8IJeZ6ZgGGdBQHvPC9OZ7Qy6DdDzP5oFeMF+CPZDpps1pLANaBmksAxponYnp6czsqHVBD3z4Yr38tJkOs8cz6wANtAyD881A8+hLuJQ5sy4deJf6/Nkx18PAm+DZyTu+N8ow1LNHT8+cH8tBBvsHNwFK67T9v3WGIsjgqM1rnbtrnVkP1lrotNaZ68YeGOyl7T9rrf1P/jd5w+m11n7O8UXrrLXu784dGvQw0KHrr7VEN5Ab1lr7Xxk7PeSftdZ+b1XWun8va63snTt3H7b/rLVudtdam3N6YF7rfFZ7a507p8M/cshOr3Xez8eyI9Y6n8vXgbXOXnqtd509f2udfbp9vNbZp4OzAi9tNz19eq3759RZ6/y45HbXWicsX2vt7x8ZrHXeX+vMOnyggV7rfr7W2l+Hte5zHWxnrXNGH7HW2q21HmS7a6397L2w/Ye30f7v1Iy1Frp5PIY6PV5fE3zzWuvm7HoyMK91P8/LN8Na64H3/Frr1D+64FqYv9b93JyP69EyoNe6/xqt9aBe6zyvdT5Xv3PWWvvrzAPnrXW/ZwYZpNc6d9Y6Mx/qHLXr8dY699daN6+BHZDDWmt/znlrnXtr3fd0oNeJXmuhG9iVr3X211r7mRXWOs/u64H/64AVHHD3tP2/u3f3J4jvQLzWeZmGte7P9hyKZWCO8/PMa639DUKHte6fudZZr7VO/rGrR691/wkyQ/dJh/oxf63zbnpyvbXO15QBf637nhnK6LXW/mTT7gWDzloL7eCBAa91zmhYa+3nyGGthXbIYa37nmCttT+XXXet+4/xtP2z1nqXM9c6e2udu2utrXn/X8+3yfWCecLP6WRrrf38tdYeu49djP+sdc6GdSPXWvt+hjPptRbawZtgrnXO+Wut/Yy0HMwY0mst4/7FuNba93Zj+89a5+dDFzZr7+Gw1kre7K5137Pn+YOKa51zWd7UvLXOHTqstfZrrLV2a611M691vlfBWgvd3KvXoPPjtc4dRd5aaz+L5gUzrHX//Oa1zju6a51zWfMlzltr7e/T+qftn6m3cf+XN7HW+Zqez7XW3lnrzAZdHNZa++Myz4xe65ytdeY6a91/LGudM33QWWuhm3P34d5/dNa6v+8+8+5VHkpeq7XO+4r2wRnmWM8M+3fcBYy11n5zlRyw1hI9Kta631vrrNda+3lrrX1/rTPvw+E/3cda9x+ESj49wQ/us2ytB/d7LPK11n4/dHAGvdZCO3iw1tmj9+Dwn3wMxWud98x8oNdaN9df63yfM0vrgnmtRe57a531btz7z1pnT/eetXfTWAY0eL6a1zrv88Naaz9jrQfZDujFzlprsS5irXO21pntwSw3r3XuzIxea+33M7WdtRbrBjzDWmvvNx+9te7nOhN1MX+tRe7nrXV+zRgyjz1tXuvB7lpr35PphWYcZGsttO/s4t5/dNY6Z6y17mtzWGvd7K51X8vdq3NooIEOzWudH+dxrrfWOW+evNaD1y1zFjQfWQZrrZvI1y4P1lo3j02BBzRMbV7rwT4P6q21jDdnrrVu9LGjuNb9vLle7H7Xur1n7wi7Xpv8tR7c5+vgsH9wG2bgEOCvdX6B5Gst1kW4YYEehrUe7K91nnXWOp+rB2udMxp0gIa11s3vAvhrnftrnbkOlsdrrf27kLXu98rwWg/6eR4PNE+mwXXWOp9vhrXuz3IerPXgdWRQttY5z+ND90AfsznTMPtew7XO507fWWudfTqstfY3rnOOuK3DX+v+Yza7LobOSeO1ztehYXbMsNZC+2u3i/Ef/THe3DNvrbXPaQx2YK37+ZzXWmo7+GBY6+yvdebp0RNrrf09Onfp0GvQbHet++eaZXitdfM4zLdhrfu9duO5w1tr7VZ6rfO81tqfZ77CWud5rbXfw1qLvUPH41hr7dlujv+sdd4d1o1ca72LXuvB/lr3O8quh9c6+/O9tdbav4Of97PWubfWg+eeDv8493hWlbXW/th0IJ+GtVbW3lvr/iy/CU9nlbfW/Z5krfO81uV7Xeuc21/rrO3B1XbzN44CrLUeuCHe1ttfXEtmSMc80AX6iKNvF/rrQnJYa+1fBLQzYlp/cloHLuX8ibXW/nh49qE92v2AHHi4Ds0DXvNkPujwj+fNTK4XzCFPP48GGQ+b5zXMfJid5nJZkIEsmMs7nyfHIDfDWvefWzPI602m5aDj/LXW/tqX8UHGC+3I1lr76zk7fJ36+J3vfOd+tsw886M264Eu0EDLg9m11zrfhw7wQa855sNa5683GuTOwuG4z9cBO3LgYz4N5rXO90XXj3Xotc4du+Zghjnbgc6T6fBoDDTQQNtJN+MgT2NdoIMZjtc068jwEdNPY6hLw3Yf+/98l4a11v7emdfYOvv7DgddZ611fl3XWnvE28X2n7XWzR5/rXft8Lfq/lmMt/nuYx7zmP2errbh6Ruu3Iw39dvf/vbTO97xjhP2/x8lhkte+dve9raTXYe7ad23vvWtp3KzM974xjfuHj/YBTl+wxvecPIDeDCHzuOncdCjnYub9dOT86d33GvWTWNwnXbNaRz4c5ffHg06mJ+O+elLfDxbB+wFc+DR2PWO+/xyDDzdtBnMQEMdZ77lLW85lWHQkdFgBhpo6BxeyJNPvPWtb9vfT7yuqdt1+OCcON2se9TNujDndNy+2XvY7B7M4XiGng4/tmeeO8e5bp1Y781vfvPNc86xoDGZAAAQAElEQVTXxSDvfFrm+eKBGWT66TnzQYYnjr06uOxSn+f6eCLPLu2ccs8dPT09mJ4O8Cd4wVmyZhqat8+rN73tbb9z8x5zL2/bPuvsYdcDn328Pudon6c+C7fP1v3DnpbrxvSEHeDhoL+dc3f7ncWbttftd3zOXq21nrt9ij/usY997M1vO66urk7+4Gnzd6Yhf+pt3zmn93iP9zg96UlPOjlnu8j+YGXOaO/1r3/93p379IQdfcifmmd2EA72ulaeLphxmHMaTzhL/3iuWS/WCXy6zAy8MLM8Hb6Z7tpm4OHZyePTIG/XPDNz0Evfxnbhtvw23w7IcWju/vjuY851+HLgmXEzDdfXV/t71nvh+vp617GdcLW9n0EGdDCD2b3gZgy8iTzn82MazHXMwMP8tDnNd31zWh746XIM/JgGfR6YgQaZa9FYxsPAh6mb11r78ywDe2XxfD10gi7M2Q7wYhrM3R/Nm/tm0AG6Hg3mCd6E8+TTo/kbHrm+Pr/Hrrf3l2vgq+39hD1OH/Q0bP39u2MfvOBzUEcG9gI/bY/GR+jBdm3fbb/2u77ru960zetqO/Dx2wW2vasHPqQ3/2belk7BBzSNgdbdDnigby6T0+CD/WF4+tOffvI/63zCE55wevzjH3963OMed8P2zECXm/V5dEzD7NGhzJzGl6BzRD2+a06mJ3Sb3SvdjgwebdaZcE6z85qdw8d8+hL05SDHQIN9oOviZhz02sXAk+P2aJ4cmnm3Qa99GuZemX2+nBfzA0/HTGPzBK+MnuDr8mjvVWwGGuiJ6dHQPdZzLj+mg+vkY5DZpTsrD/PlYMYwtVmPF8x8SJfxJuQgj6ee90VD+1PnTZ7nTX/qrqXr80hGYxkOfF7gdw8yM5Q/5SlPeXo+ntAz+457fr75jDODz8AJXjj6zXJnNE/efD8mubN9cJ/8qGT/4YpP+koC4G0f6uQO2rf8kwVmrI8vQQfKps6zf8nnyerFfNo9gQ548FiG/ZaDBjvBDM24ObZPg3xC1iwHHg5y92aWzXlqeTjebz72GjnHYzQ7A0/IzViOL83dVx1cb7JeGT/waVnXMIc896xrpuVmDPaBnsjTpe06g8azO+ep606P5tuPnW3GvKDLh/Tk7k2f1jti9vXkOJjr0DAzs7PrxPyQ154ZZi5rTuPZM+vwgHbtfHM+DuW6PD3eJcigbtxzL3MGtM+jcZDT+XN/+jTou1Z9XrAbys3y5jjPHJzNx3ldyzx9PWfzwTxhz2wH3+us7YP7apt9eJ/8qMSH9zaf9p/F3Cvt81G7mMOALjen98XtP0fPDFu0/1DePg12gZ4dM+TRIQ87C8ucAzTQfciZYXbNOjxsprFzcXOan3dkT3rn1K/Dp0EGdHAuL+ab7WFz+s6dR/bnsdl1dW5Du52tN7UZnAdpbBcHs0772Aw68ph2b5hXhw5l+GGw66z2zNDcLi/wZs7nAT/On+eX6QW9NK7jOaCDDPR5NNbjmSdcVx5kt3Xbx6BrH9vH+TRPjs3HjAf59XgT5Twa6Am7fJw/NU+OPT4s57nHOfPMoV5zfJtvf2Z0sDu1a+uDLOjM+zSHOtgeHwM99/Jw0AH7QZZH882bXhueYIarZz3rWU8XGLZg/xkNDfn0EbrdGK0bZreM58mZHRk/OO+93/u9T0972tNufuziQ5ePt19xbn5kY4ayWIcGGvQmpqdXNn26LK6H5Tg0x3OHBt1yGvhH5HuuZM1p82Mec70/R357eJ4fs//skZ5wPXswtU5eGl+CntfI6xXMgede5+ycrlemVyfPzJ+zXZ4MZtYsn77ZffrtK66n4zlyLzToYp0j+H773D2Y6xz3vJ+np9vsPromrzNu43adSbu+x+EMGpvBjHn0Efk6MHOzHPhmDHk0lOVj4GOd21BHb2oz8MI8o9dKpiejsRnoI/IxyHHPpXlqZzbrgQ6fBvqZz3zm6WlPf/oDn4vzNXQGeI2Bhtmhp0fr8oEGWoYhXRbL/Iz7WQQoFtI84Jkx8I4zD8qxBz57NNSj9cz0+7//+5/++1e84vSFv+/3nT7yIz/y9BEf8RE7nv/85+/cjD/8wz/89LznPW+HWcdMT6Zn94HZudsZrvW8TcuCc3ZsubNhn7d76jzepb3dG+ftve2ceXb6pnuv/xFbz3X47eH9HmWw3cPN/jbT8uffe87MdvZztpzm7fO96/DA9bA8PuoP+qAP2n/B7LU6cq9fvje9s1784hefPu7jPm7/Mwuvr/eDLw66Lq0vo5/8lKfsr70v4M5tpxnXn+yL7Iu/+ItPz3nOc/YvNHsf+qEfevr0T//00yd8wiecnvrUp1rdf4Hrmu7DdZ0j9LPkV3zpl568F+3zQMcOtqMvx6DD13nuc597+rRP+7TTx3zMx+zPm+xhcKYcO9M3L16D5z3/eSfP44TXGbzWvUfku9dru70P7PMn9v6W8cp3r72NO8d7ZdfH/r33kzPeHdxcZ9tL73v3zqU/6qM+6jTvQ2+/9nY/HmfaPemDDg77PM7sPLtQL42hXrnrpb1+r3zlK09f+IVfePLNpNcIvM54vu5eOx7QOjB1GW/u5uvTwaxr3vp+RPIOGq7e8IY3+HEJffG33tvC/kXgEKUOusR19MCfrOIJ31HMnnPCE5/4xNN7bn8o+YztV7gXvOAFpxfcw8d//MefXvjCF+4zhhe96EW7R/ui1Nn7e++Fe2bmy/XMcKO3cz9h6+u8YNMyKMflOvu8fQA4zwz2MNh9wXaenRdu967Pw3ZoPTPNq8eDfXc7g+8sPb692ecH/q63x6C76+36LzhA5tydt2vomV2Ht8+bT3c9Z3/O53zOyewPZLyWXi+vITYHM+h+8Zd8yakPTR9iOs94xjNOH7B9qL7P+7zP/gfO/hbS+77v+578wvDc7QPWh6Yvmpe97GWnZz/72Sff+X7gB37g6cM+7MP2LxzX1/fh+OQnP/nkD7KxrjP1Xd97zPV8Mfsg/+AP/uDTJ33SJ+0f4H5BsPch24erD3jfGTvDuc/+gA/Y/1bUe23fZX3Apl3Xe9KHqR0fHHz3ybfjDB/U/kDLNf3i8bmf+7n7Nxq/b/sGxHPpnsBzphN4U5ud/1mf9VmnT/zETzy98AUvPNn3uniNvBa7fsELTi+8Bx7Uo72Hdt7eq3ww25G9YNsFnvnjt5l2DV3YZ/6990OzDHR59AQPLnn8eV2dG2+7Dg18oN3fjb73eHZ/01j2wk37PNDNS9/MdV7U58Yn7L+Ye056LLov2nrOpD0v3lNPe+pTb34B7jXEvc+8buZey6l5cpyPAx/q0BN6su1aPrjfXnbli8CggJViHvCABjkGGqY2gw99vl0zTG0O242dfuEXfuH0fd/3fad/9s/+2elbv/VbT9/2bd/2Ljj6Zrjp7nvf+i77D3TGubf5nXcpn97U+852/enR3/It3/Iuj2Pvdh/bzrdtqGcHeHq7rnuPp2fPDPqQjvPMMHe+dbs/3sTs/5N/8k/239n4ovNG9hpCrx3tdTb7kPvYj/3Y02v+6389fdM3fdPpe/75Pz/5w1Yfjl/wBV9w+oLP//zTH/yDf/Dkw90H4R/4A3/g9Cmf8imnL9o+5H7P7/k9p+dsH5jeNz7AXc8vGp/xGZ9x+vxtz+90fDfsFwBfWJ/5mZ958gX7FV/xFaeXvvSlp/d7v/fbP/B9qLoP/de/4Q37ffzTf/pPT7/1W7+1/7VV9+HMl7/85ft3967zZV/+5afP3s7wGHwI+27MB/Dnft7nnXwYf9EXfdHJ/X3J9guSa75o+2D9si/7stNLXvKS/d48Fs+D9/FP/ORPnv7Vv/pX+9+rfsr2OwjPDTg7pnVju+7f4/r3//7f7+8XrxF4XbwXvvmbv/lkhl6fPKwno/ElyPTslzub7n1AX4I9Ptalj3A+8L3+2Bzs8nGQ1cMg07uU5enR7gU3Y/u84Cz45u09Kf+Wb/nmk2zX2/NKBx79LZv/Pd/zPafv/d7vPb3xjW/cv7H1enmtJqf5Xl/gQVoGPOCbwey9kDbPnObpbLz/ZZIrb6y5sAX7d9gYLAF9W48POkcc/Tk7F+z4YvV3Iv/Nv/k3p5/7uZ9j7dCHerTADPT00rgcQ920+RIell/KXKtz0nrA56XN6cm0njz2nJiDTrpOM77k8Y97ekF+xMzs/uqv/ur+5vXdoN8++i517uiY2/Oh6X+swP/N173u9Cu/8iv7d8y+M/a7MPlHf/RH79/F+B8r+MLwPyDxHbVfvL1BX/3qV+/flTvD/wDBh6cfdTzm+nr/8PWds+cH9H/kR37k9Bu/8Rv7z/3dh2vA77ztbfsXnA/t12z3IfPB/M53vGM/50M+5EP2nTduH/A/9EM/tHdd79/9u393+k//6T/tv2vwnfXTtj93+cEf/MHTL/3SL518t/7E93zP/evEvfvFQe5eXGf7Lezpkz/5k0+/+Iu/ePrJ7UPcY/D8BPcQePZ8aL9k+5GOnf/4H//j/j9o07EbzPqYRwPNS5tpmL45eM70yvPj/Dpmujzmp498KXOGx4vBfdijLzHvNthxDRzM+mYMvGAGOdBBJy1zbz6Pfvqnf3r/HyTOfOq5w4e8qfMwH2igXRPMQAMNm77aGE5X3qSWNmN/I27h/rdLzDAzD6RZD+asPyEHnp4vpDl7AWXg7LK0PE8H7t69i/Z73cX2nzquQQN9CTPbVt/lXzuZunRezIcy95vGQX8+hnbK56ybj83ymAYZ0EGHF/hpXI5lwI/T8vTMeL/+67++fxfpxx++k726vmbfoL73kw9IP0Lw232/7fcdrQ9yvzD7YPYLwWtf+7r9w8nfg/3N3/zN/X+wdeeRR06//da37u8/H9S+s7b3G6997f6B6kPfd+++G/dzYBd/5O7d0zve+c7TL//yL+9nuA/vEPfhnv0IxX34zvgTt98mv9d7vdfJNyuv267p7N6TPnDdlzN5fjQCPvj1nPuse39w/tbf/u39C9k13Lv/FV2vs/v+vb/3957esnX8guUXCc8rODs4j+Y/61nPOvndw8/8zM/sH/R+MZMFHdoOjc1ghkueHGTuj56c5gddGjuX9v5uzuNfghxk8VGbwZkY6sY8MM8eDbIJPbN7xUG3LA/zQG6GuSsDfjjOs+8cOe55pYMz0vXM9BHTt3cJV96wFWMHHcsyN4RBB+hw3JHbyfdAdflpWR4feFiHlmPgm8Ec+DQG+YQMZFiGm2mYvsz958X59evIZXxw/8Ari+VBnsY6wSwH1zHLzJP50zMDD0/w7E7P2e41H+sF3V/7tV87/fAP//DJj0J8p+rHbHIZbudf/st/efqF7btNfzDJ/4Ef+IHTG7bvaH/iJ37i5OfZvrP2IeUD0XfJruvD+bfe9KbTL2/f0f7n//yfT77L9d2tn4M/7rGPPb12+/DW9R2pH0v4cPW/xH3TG990+rXtdwTO8IuAD2u/QJh/7Md+7OQ7d/f7pO1n4j/yr//1q7kdkQAAEABJREFUyYezD1Q/x/bh6sP3jdt1fQD7RQGc4Q8nXdu9/9ftxz5+fOHPMzxPP/7jP77fj+dD/w2vf/3JGR6rn3+/aTvvyU960snvKvz8m++5Ac9VzPdB77vzn//5nz/9+Pa7Tb84HTuzb8c9YD7o8zDIMMjN2Ox5wcALfDpuB8+zdYIzwIx1cbOzzPw8c9q5aZ2Z0XJnYDPQdc10Z2A5lkE5NssgPX3vqeZjzp978iCDZr1mDHnp7pNvz+OkQcfMvw3+j0zt380oWMDggMk06IB88vFBy/T1sDmNzXyYembTP/aOsz3e9g0YegCdU0d4yeNP6Fx6Auc59XXp+ubApyc7I4+WwdRm4E3wwD6fxkCDDE+PzsegE8xgnm8se8D3HbPfPn7q9nNpH0ped/7EW9785tP/8Y//8ekf/IN/cPrO7/zO/bthH0g+BHnw6lf/zP6jiO/+7u/ev/P+3u1n4c71oWfnu77ru04+eL/jO77j9I+3s/yc/b/8l/+y//nHP/yH/3A/2y8Q//bf/vjpH/2jf7R/t/267ccyur+0/aLhfnyA+9m2633nds6rt+9ofbjrO+Pbt/tz/Z/afpzx/d///Se/kLzlLW/Z79k92HNPzvkX/+Jf7P63f/u3n3zI/tRP/dR+Xz2un9x+UfLa+0XHz1f7GbKfdXvuel7dF3h+/ejH7wbesP381HX0ZFCfR2OQYaBleMJ98Otg4AFd3wzuB4dLnXYm69nJM9O84H54EzJdDPTMaZ6MBppHx87m8+A486A+DWZ72JxuxjwZmDHke++n5SDH3QcN+XF5s3PAPDMe8Cf8j2+2c+/uH96buMkq43wH0pAfl90csAk92OT+r27g0wIa6NA8O7J8Gsrpc+Y3yqeH/ijl9G78cz7rXJzX4Mx56jK7YIbZyZ8ezQca2uPRoS8ws145PSEPs0ODDNuhvX54Qn6c9X72Z392/7GJ76h9eLun2aP1fAjP3/b77tTv8HxA6vjQ82MG2geq735dk29P3xnYDub77luX5smcYZd27fm4XNOHr5zvWjzXpl0PO8OuD2/nuLYdvo7vyvnOMLfjHLMudjb4ub37tA/2wPPlQ9uPkeQ/uv1OwBk6zsCgCzzgxfQEH/RhZmk5mOO0GdrFcMzNINOnoRmbjxkv6Mw8f7JO0IVjPudyO/k8MPPTzTE/8IKddJyH28HyPBrMQIfZ5TVPbWf6siO299DVGxVB2EKcL9vKNx+IfODD1Gb7s+8LAmSgr4PNcEnzOqc+5tmhdWgc+LzAp2M58GK6HPPx9KdHy4IuuDccjr36/JAX25Vh5/HNPqgw8GbGg57nMmfoAg06urwj5Lzbcru+6/SjD3/Dwh86+tsmj3/84/c/UKQn+GbsRwlHncen/YhC13xkHuTTdvD0aOD70cyxUxbrgb+RgvPb49EwM2eXtauTF7dj9jN2f7fch7bfNfjFwPPd807P5z4/loPX91JP5jXSB/MED6Y3tTOBF9N2XJPO55kDnwc0n8YwPX6QgRnrAQ385pjf/dCz04yh54PWw/Mcc37ajs70y/JlNB+b6e6LZwZZmL4syOlL+/zgDydfM8tpBYcDD+c1e2B5cr4ZaDnfDDwMl7LZpcEHVd32cZ6zgIeBtksHc5Dze3LMwKvjfDPmYbOeGWgo4+ngUJaPj3BGnr00NoPOhOwIvek1T6ZBz3k0Bl7IN9Px7PmxwH/4D/9h/ytx/t72y172spO/LndEfiyn/R1rOqb5/urdy1/+8hMf84IOmLEOHedhPjijmea9C7br8erRujfn3ntsHqcOuE+9oGsHXnbvPJnul2z7tI6/3/07b3/7yY9xfHj33HqveH7n8y0D79V8M9SnZUCDPp6eGfJi1+THJ8M9TE8/8KEZ31t54Hfv+bqgwwtmjwPLaRkNNMgDP31bxnfWsWuW2cdmzxWY+UDz5HRMg47zaRnwJmTNNDTrm3FePD0dmJ7e/ldLBIYjK/OgnEcHMzRP9sDnXM95NMjx9GiQOUOOecAHPuYBDZ7QMnPZbTw7tF2gwZ4ZzBNleWaYc3ru15meXrOcBj7w4ukftVkX9IEXmifToT193pF54BdVf23O33X9we0PIP11uSP8FTs4+nP2s+/j7DvRo2eui4F3xLzesWMGOzE97z//hn/wB0/lP7D9weve37ybfHvs7tcM8h/ach4dyr5/+3n6//V937f/7RnPo+fbcwxmmNqsg723MRw7vHDs+fqZ/c7DIMP2adxMB56zMPDr04GnZ9YLfB4ctQ4P6GPHnE9Ds505012floM+zjOD5wvzJ08ta5fvfBzkl9CObHaPfnMdPD3XcwbsH9wEKAINtMXACzI6TuvSoRnPrlmHB1PLYHqeWB7wL8E5UKZ7RNmR597M7Jvxo3X0QBfo+WS3j8t1zJhHA80LefnmMDt5uC4262Ggg1knTJ+WY3kag5/p+lsY/uaFv5J3Cf52yPR1p2cunz6veXb4wIM6k/l18s0gy8MTcsjT9TddeGAue81rXrP/wSs/lGFdfwuGnmfo+pm75xQ8rxg8p5Np0AlmqEsfMx7wsS7QPKAhHdeT0UAfUf/o60N+vTgf6/FxMwYeyM2Q5jfnmft644EeyICHeTQ2T/DNODTrg9lnEg66aR0z5OE56wA/mOtMTtd7lw/uCp4AcJAyBhr0yucDmJ3p25HZA5pHB+fx7JWbQXb0jrPehByml3bNNHY+1j9m+bgM6/KO4EMdrMPDzTTP7Po0D9I9Fzo8PGFPH/gYprbHcxa2I+fn0Xk6c+bbOXb1jrDHw0Dbn5yWBx6tO5GPQVbPDGYM7lGHDua7d89/aO13CeZgF3R5U3vM/Akds0zXHPg07j7ME7JL0Om8ch4d011Xl5bRQQf4GNwL5gGtb5/mAc8ceHVkZgw6mDfBN8vAHLuPNAZdndAc65Th5vK8fNeQgcz9p8318uR8cxk2O0s2wQdenLaXlpmD6/DkcNTNenZ08MS8H3+rZNtZevv/8R3Fzdh/TtWbfA+3/+TrwGbtf1jpYvSEXH966UuZbjdGd+bU9u1iPr4Nx7y92/ozP+p5VhnmB7Ozm7HHg2XQY9Izy2jQxUfMDu01sQu69tJmnZiGZtc36wMNcnAWBt3ZkdXFZRjsgAwHe+VxWexatF0doHlpbObX50EehnlNO2YM/gqXHdCFeZ5cTx50IB9DHq1rdi16enPmgy4us5fnfuhLWb1ynfrOC3wayzHk0eAcZ3pf0XIs42PgyTqLzqNBDz8MdoJe16BBNs8x84PrHz1Zntw+8MOcp3Z9HV5nYHM+hjwaml3TbA/znZu/e49c/pt7dvRje/pmDFObYf+O26LhyHOBnjcy+/QR+kfP3I11LR7k0+1ivSADMw56aWzWAZp3hOzo6UK+zpz5PKCBhnp0yNNLP4w9vzN3TrMzwAw0XNI8u/M51eWBHHgY6GCux6OBDs26877LsSyYwR6PhjQ/OE82MXvzcU2/ft6c81yDBhrq4Xm2uTzmQbP+1DJwPg46R0/GC826dJDn0fzmtFkGvNCMIX8+x3wom2fRs6ujCzToAA30zHmQJ292djOP1sPmqc18SPf8T09mD5c3846wK4cymm8+Mg/qyF2HB/z5uMyn8/fG4pPZzoR9/l7Y/iPb6NZ/9w/uUovh0iJPXt9M4+nnYZDjifqTPVhzfTzn9vVkZjmeKNPL59WNy2IdOr7U481zzWAvmKEZdyZ9CXKQtYvz+HTePd5/ZyQL3gB6zVgXaKBnh4ZLvv4lzK5d4OliSGOYHZqnR2PgmW97HHK9YNYPZhm+BJmzy8w0hrJ5Hq0DU5vtYKCBDvp5dD6vGYMspgMP5jz3+Wbc/dNH1InLOzsuj+vhOkdtrn9kGeTT4Cz3O7+eeDJdMJebZTxshjQum7rOzB4t121PlwZ6Zv0Oraxch4apzcEOeHy4Hq2DIa1Hw6bvf3ZXcsDUijwc5Nvy/sGB82O5HaD5GOjghdMx++0anpDZgXze1GaYHXlnuz9ZHb488OlY3wxHr3OcIQt8fZBhkONyc+CDWW6PDjI+DjIeBhrkZtwc85zdPJ/ndjzmch4NtH0wY5i+GVwjLs/jt8+jgQ/pmAdmoDuTdgYuw+XYrIP1IJ9HT8ihLJ7Pi/z66v7Xy3G/br4z7BxnHsghjYOddHzsul7Z7NNlNNj1fNBHyMLMnM23h2W8YIbjnIftzZx2b/m0Hj+P5gGd7z54zbR9M5ixnbSc5kE5zZ/z7PJBL8jp6TuDV0aHsmY8d82zIwtl5jQON+/CdVr7h3CBAy1BXhrLfQBgqBMfPXPQmbrZg+ebQ9eaPq885ulAWmb2gtNAy8EMdDDbwZBvz1zmXs0hH9vJxzygZUBPyJ0pA5oHZlw/rZOH9XjyCffeXE+Xh4HfnLbnPLPOzM38MGfaXn1cD8sxlE2WgxxmZoZy92gGHtB2aDkN+VgWzPLg3nny9mm5/0NYWD4hn12z3jxLn4eBBlofm8EMvMAHM3a9tC4PQ5kcmmXAi+nAg+6bb55cli8D18eX/Om5l7q4jHY2dk7Q1wnlujK9vJgnM9szxzTYxzpBh+YfMX0a6sxrOYOPIa0PZgzlPOABLaOB5oWbD+7tR+cPfHArWMBhzg4K5Ucut5euY04fec5250znHc/wQoAnURbsBB7tDKAhjYEX5jx1Z9XDPKAhHduH5tmZfroeBv2gE3hTex54QAM94by5Q5fT8mZsns8tL8w+rSejgZ7gAQ87m8ZmME/I5kznzX5ePB/77Nk/ws7s2OXVo8GMgx0wy4LnIa/cnM/TxUDLaTAHs8yMIQ/z47QOHZeb6Zie4NvjYfdL8zEvNMsgP+bpQN5trKP/7uZ17dkxT81rpuX4CP7sTS3TP3r86ekATwZmnGee4ENe3WZ8ybv54BZWmnoeeknXtTvBBx62C2aYWs4LZjmG/CPr8LAeNqfNdB7mYZABL5hBHmTpmU1d/jB2Tjs0zL5sepe0DxI7uviIfLtpHTPmgRl4t0EO+nXovohl+UfWCzJd/wfA8NE38/XSGHiXoC+HcprfjHn4EnTlcCnP06OPPc/D9OW6wA/Ncl4znUcfMXu0LtTLM/OBDnOe2h7w8LHPg3xa10wHM/RzXvoI3XZv4zpxveNZ5pnV50MZlk2vGctlaTN99MxBfuzl8Wdvah2oM3lqHWj30Xj/4LYAyr0ZzQ4GnjmYdYHON8Oc7efh5iPL7OGJ6bXjw4uOab1gn47TZtDHIOsczAMdkDfjZtxj5wMP5h4/HH2zrB2aZ6Yn8l0zjXWwHWwGM56emQ89Vjq/bswHHdfFZVPzzLrgbB6dzzudzn+X2lnyUE+3jAbZEfm4vo55cprvWjgvtk9DOQ3N7ZpBBtM3y3hpHGRgxnrYHHwA5uMj9EEfy+keQ14sS2Pgwfn12F6R7VfTzpHTx2x6U+s7K5aZg3lmtLNjPR3Mm8wHj61MDmbZ1M6dsxzsYznWuYQyPQ+TlCcAABAASURBVLlrwOlkelfI7NSna9Hy5sn82/Kjrzt3p94/uC2AYLIHbZkX6pgv6enZBZ4HOHd45vJmzLuUTZ8OdvQx0H0RNOtOrWMGWTC71+Z6ZpkZjtpsT+Z5w3OHBj7om3EzzZszD/gYptY1uzYGnXwz8IKse6T5uB42gwycby4z8yGPBjPQdoC2Q0M5H3jx8d7ysT1dMB95evTE8frN88zOsyeXBd7M+Tr8kDd7MrOMbifmyTxumm+2Y8bBLIO0bM75WIbBuc2XriW77Rx/nuUMOehC3uS0nmtiHt05rs8PcuhMWmaHR/OgOQ8HmbP1eBjofLMenp5ZD8uB5qVxM7aP9WTYnMYeA08Gdvg8zDvi6OvOzv7BPY10izGfDmZoxs04zAvWmdnRm1kad0489+j8uma+eSJPnn/0ZlYn1n1Yrqcz+WF9WbBDY3BOM80L5jJemn+EPOiBOaYvYeZHPee569pzTnuzthOXTZYdz+BBPTrwaAzzi4TfWbQcpjYDr24zDjLQm95xPnbkPDsxzzy5LN/sOYN6MpB5nGlzGgd70Bzrg1lOY8jDE66nl1fXzIe0TN8ceNA8eXZ1wuzQ/J4P2jVBBul4evV50KwLvJgGHQxT6wH/NtTH3fPDunq35a7lOXJOnf2DW2AxFGIeBjrMQ2RQlsbOnkwDH2iwi3lukr4EuS6U03xzTPPx0ZuzPOQfH1u+njOBBhqOuhnbBzqYA4+eTIeZpcu69pzzMJTZDTwaX4K9+TrQPN25l4577urqQ3m6+WE9GdgJ9qBZbo67Pg/y0+a5m471aFyXBjOWQ5pvxvP6Zh0sp4EOsqNXNn09KMNmoHVpDLyQ37zW2v8iAp/nno87fODrgRmmvjTn1cPAdx4OZhmGfF6af0RZvfjoN8d6l3DMzfOaZrCLgQZ6oj1ZGteZWofPozHwgBfM4cqPFBosKHkhpze1zoR+v/2ph3Ww/BK6RplukNkH3rHDB1lMT9gpo2VH5oW6zbEPLLpdGvi84x5fDlObdYEGj3OeQfNkdEzD3E3nN9s5YmbOb0dvZmYZ8DEPaB4dzHwzBhpkk2eW1oFmfWiWmUN+fJtvrw4NzXbS/MCH+V7Wk2OgdYIuv9dZTmM+1sXmS8+9TMce1sEgAxqmNsP0pna9Zmea9XEwg2vzaKDtghkDDemYF+auc3VALoNmXuDTWA7N8W2ZvD49YcdcfhvrQbkdM9B8zyPNAx7wgIfDzPKwHhxzMz94/sCObMMjm4bT/h33Ntz8u4UnsMzEZqAhH/Mhn5eO5XxwI83ydMzTi2kZ0CCbyJusr8MLPDDHdL1YlvZimeHY5QUZ6GNwBtAwtfn4XORh58btzbPTenLQD3Om63VNnm6c1tOZvox/9Mwgq0ODGdzn7PDk+TPjm+f1eXaCvTwMZTQ4gxfbMQedtA6Y8cymLsfBferYy8NmoIHWo6H74cP0nGnWL4v5E/m6IONBM8+ZPDADTwfMMQ26Yc50kLc3tdw8oQeyHr9ZB0/oBL6O+ah5wI89rnR83Nc/enUn06ALtN1LkPN1aDDjIIPpm4MejXV6noa3Nr3/Cf8DH9zKsIU3/x5ngYMn07OXxiC3A/QROsCP6fp5OA+b9Y4vFu/RMPfrdl5zrJvWATN/Prm8h8GeHZ2Yfndw7DsL2qWhGZuDORzP4vN0MdAgAx6GqXXmLJ/PiRz4wQzNsXP4cT7vqHl64PU315ksnzOtC2X09NNyaMYTZXnzHPfE1+GDGZeZAz+N7QF9zHgwzzl228HBDl3XPLVZ7lwMeWmznTnnYf4Eb6LMGSDDQMvT5kso15U34957dLjU44GOM+C4y5vwvMz+zOgy516aeVCPhuNsPw/D1lsbP27j/d8HPrg5W4geAC88EBwGF2TVnTMNMh0amyd4wMN6aWye0PGE8+jbUO4M0IvpmdMgn9Cb0IE8XTMGvnlyPi+N9TDIjpBD/uyl5/Ogy59oF5fTQdeb0yzH4TjnT7YPl7p83ViHxkDLwYwn8uKZzV3aY6gXH/t6ZUc9u+nZyXOdNPb844muwaOdA2kMPKDrzvOnL9c9Il+3bHp8Mz7m/LzJurL52Hg6WOY+ad4lyPVkWBfSsdx1MC+emhemT084P/Bpe2kcZNB98s1HtI9BL+imY4+F1j2ebbYDOkDDUZu3M9Z23mNouPJzOiK02Lwt7D86OV5IT1Yv5oNZDs3OyOfNjD89P3tvlukeOY8P2wND+/95Wrv7sP2HLtvGPcfQGeW6PCwHGvjmwKMn6zTTE7rNOsADvueHR4ey/O6Tzwv69jEvPmrzcdds13Nuzxzrp/nAm0wD/wi7IMeug4Gn7zFh4JmxDqQvcZ4ezNl5PNekZTENZrmemcZmGR2OnlmmF8x84M2ZB3nlZjCXT52nQ4PcDJc0D+Qekx0whznTejJ7ZhqmlvHq0l6v/JhPh2bsMye/s2PnyvQmp8vNoV1z2j4NdPeoY5645NkDGQ726Ok7m1eWdq95OnaaJ89eu7pT62/Yf7698fln3BUYtCVIY0/2zOk6U+uaYerZlYEbnh26ngfarMvHkI/NQNdplx9kQc43uwcMPHAW8ICHIY3rYHMw68L0jr5ZrgdzvvHX2n/hbHa/NHgc7TTjPAxrLfYOM3GJnSeDtc47ems9+H/HRs4HGtY692m+s/Ba+etdfsFc63zuWueO/mn7p8e41tlf69zbogf+XWvtZ7Z32v5Z6343H8MW3/x/F0bz1lo3ntl9l+EjdNY635ese+WbY3qtc2+t+7zW2v9Gx1pnTx/0MdDdB73Wg921znPX1rUX7NAYymk+rLUeeF/Jgryzab55rfO98zoTr3X29UA+eX528J2lY9cc1lrJ/Tlq0IXjzIPpp+O1zme65loP3qeO/dCMYa11895Ya+3vtdP2z1rr5v7srnW+xhbtz+laa+fjPLtrnTu8evFa6+a6PJ211iPbN1ZvNcPN3yrZgpubEdwr716aP2EHePNFOPbNoDeRF8toZ4IZaKCBBvoSZEHuzMmyZhmYj+ADf3KaD51Hw5zTeOLYa+5sb7S0PTnk0dNv5gXexNydvr555jSUyYGH+TSYY/oI3bXO/yu92Zv6uNPseZjvrXxsH9baDmdsMG+0/7vWfX+ts3beHt77j7PXOmd21zrrtdb+xbfWutc87fNp+0cPNrl/gaXNE842l8drrYtfV2utm2usde7YB7vufa1l3OH8tda+I9vNe/9Z67xvD9Zae7LW2vuGtR7Uevn0hGvB9Gj96dM8kDfTeTQcZ124lM0uDfXSzRim71yY3uzk41BupoF+NNTDMPvmtc6vTT4P1jr76fJ4reUPJpd5/xn3ZtD7C5reje0/8xB6sx74N88eFPKbe1P1xPHloN+MgVeGg8xZzXqX4Do6M2vGzsEwOzSv3ExjZ2Iz0KBfZp6ZWcbTA148NQ/y6OOebKJOnucmPdk55pnbBb57pPWAZw7mUD6ZhjrYbH/qZl73Mj0+2MVhzrQdkGMemCEtM8dHbdYtn7rMc5PW04HuXxbk6TjPTpDxL50hA9fVp+FS1xmyes08yJ+7OiCfqMu7lPN/N/h/44zfzfX+v9L1uMHr1z2Z07i55xyDDNJx3namD+39M3v/TwUHBmXwot/1Ob8Nx95m7f/OHR0QYPvbBY37Lwy7OJ12vX3rv7MeOOd07x/zPbl/dzLnfDx3zOCa+l03lvEn09tN7Neg29ULfPeKXQ9o+WQ+8LDr6tA4HwPf9Wi5a2DzEbrO058dfl25GfKwGfotq32zs+Rm8Dw4gwe7t4kj60D+Vtn/bXZ2WmDuWmawj2UY2plePRnUSzfjCTlMz7nQvcjNOMy+56tuPfcD9fg0Pp4xZ7ke8J07PRrkIMc8SGNwhveLzP3gSzt6+kADDXagfVmQ/zc8/BnwXHn+tOhL8Jrk69L69ATP6zD5mG+zD26V88+4d7X9Zwu2r921Yxt3Pnum8291qbN3/rbe7GaAlh3Bh+m7SV8YPBk44zjnY5k9PTNMbQY9KOvJK3MGXb59au+PlWevvHlyO/WwHGRmaOaFPDnwXYuGng++bjCDx3Hs8OtNdt6c6dmldUCG7z7yyM3zIOeDe8Q6fPcBPOAHs46ZBrMzsFlm34x5E3LIm5pntktjZ9NBTmPQiafWuYTZldvBrkODDi+NIV+mj4FfTs9MLgtmHczDzVPzyh/2POrZA7odHMrkx3uT/Tdcfgbm8+6508KeVwx5GGQgw7ypeWY+DfS81v63SmaJBsU47YDAAzPWBRqmn8ZHzB17IV+f13zUZpDXjflTNx+9uTu1fnM7ZjAHvcDzBGOebsjjT/Bhekd9PMNsB9c1Q/ORZWAHy7EZ6Lx0Mwa9ybNXJgfZ0ePDpQ+HuvZ0zDRupj2/5jIz38yHZh7No3HzkWXO0ivj0TyggQ88oMPMaSiLjzt8z0ndmH+py4d68ezS4VI3T2fum2X/f8H/08fp+fL8YWcdmQd8PfBa84D/MJYdsf+oJLMDml0gL+bJYzdAl8vSfHMwl9njN/uCmbnMjHUgHfOgWd8cT60DMjxRj9d90CCD9mg+5MU8+Zydx4d8HeDFx8wMOrie+ajlfM8pXR7Lwszz9KBZhz56+bJ0zJt9M/C6L/OEXTh6ZntYno6P5+nMbj3ehL0yOzBzs87RmzPtDKD17Zkx7/9m7w+wHEmyJF3P/+rh4dv/DslVDDnsTuJTjWumsIBHZs05JOdx3NsFIldEVM2ggCO8o7KyaAyj8eT80XwznO8V83ToE9bMdfnmJ9tr1mPQARrsMbM9gM/7wd+fwJwVdt7Oz6phGsw69IAHZhmNz5keTDbz9cH9DKbAt+nMw7wT45/8XGsGHWsx0Pzh0TJ6MDl/tIzmDXgw85Nl8PTN82a2J/D89QT+hOlMNjOG8fHMrj3g05PNjHneELT7mt7JMr0Tcv4J+cxymFlmxuPNPJ77GD2dJ1sz3tmlrZdNhwc8zw0P+HoYrDVPfrLMrAf0dO3LA/7w5DMPnx0aJrPXOdsD5HBqPTh9OfBkQPPoYXow+WTmMxvt3nQGfPpketZjcHbD8lkzPu8Hfz4BZwZeg/Nzwjy+HZwzjwYzHuiOlp3z+CdfH9yfyjzlueC52ehhvenTcM563hB8WgYz82gePGfZ6X3S05n10xmWg9y9YBnmAw18MzbTg3OWj4/NcmwezIzlAzkPeBj4QPNh5k/Mg+nTJ/jm2WeY5/U1T4cH/PGwDh9ooIEGGvTh1OazIwOvBQa562IznOvGH5aB3mDms3Pq83qzBk+HfkI2OLO5Fh6cuTVmDNPB/IFsNDbrYDM4Fx6YJxsef7HCC2d2+vZ6xa//eOevLx84Zl3QA/kP/nwCc07ODbR5o4f53ncz6wxkAznfPMwD3uD657iVBsJTn4tGYx2sD2Z8gge8YWtOLYPxZTSPnjeV+cR0Th6td2rzwJ4DHXqyYZ7rnvNoLMcD8yfYwzXg7I7Gk1k/83hBTlfmAAAQAElEQVTm0zc/oTudYZ2/u/bZ1f8Os7/9zs6sl/Nnpj9helgXRuvTGGQn009M57nunM813/n2GZx9ep6ztbQeH3hADyY/fR5MRwbnfubJsdkP+nOd7AndgYy2DpvBXsAb8Acya8B9jf/D/94JOL9ZMec8Hga5DAPvxHhYD+Tn6/J6va5futc/UaDU1+v/yro3zD9+ZJOBwui611Trv2lU26vNX7++av9TKbOW7cZq9/jVV7X2MX8dX2Z9XK2Ehmqtq5v5Svj1pMnVIXhAA133Wh6MP2yfSrT2qhYz6tb6vOH6/bnLoe5sZmxtve9Z96xTrbP6en1VS1s3+Hp9Va/H+7u67nncasna92Ko7dFgTww01O57Xfi15/Oc9CbD5mdunuzJ+rXvpTaPh6Faz6la/wWZyjbrt0t7T4dpxsCH2n3e5OMP1+4857NvPVTrfmg411SsdZ+n7wyhWmtlq/jrwQzVcnTBwB+mq/XcaZC5z1PPWlntPv2DP5+AcwSt6u21mvMdrtR+Q7XWVSvTr1t7bWrPq/B6+BfzxWuhBfTXr855Q3zd6VRfFfviyU4erVj3G6K61tXWtfNK/TdUa409q/XBVK03/dzr1+tL/qL1Zp17nhzLQVZ7T32o1r5fv76qparr2vZgzh40mGE0How/8zC/9t7Vuufaswx0K7SeK1Fd92OG6Y72/Ghwz3Iw+59/rH09c4XeYH31ds23wq9h9sTVdX4z24f+en1V6zm+5Lp//CmvfT/V1fv6uv+RVOvAvvPcand5A53a1zy98f01AQ0Vers/a+rd5yli1577r66zmnxYl4ba+9Xm8XQGdWdykFXXeVTsheo697r9r8dX7cw919az76P6M/4bJ+AMwZJqvRbeG7za5/z1+qqt+edr8Iqu9x0Ntbu1mTdYv25X681QrcU2VXgyr0Jv0HOTY9b7PrXX1GZ90K+7y6vdkQEPRuP6fY1DkA1q71Ot5/Zpj+niCi1M13BqM7jW0zdXv12rsmT51WJGbX2e2/jYfvgEr7os91F7rs06V+EQT/8vn9y/8rrPk6ULtfes1n1X4vUeqa0ZnsP06/Zr69qsC7Vna2amwYxhtOc5c+21Mphr01A7r657PtfSdT/furX1J3TB9fkVWvvyDbi6vIq94N6Iuj0zVNeHvD1g+jTonajW2ctq70nr1J7p8eh698/s1NV6DrOmIn/wNydQXed2Vp0tjDd6mO/1Ntfeo2Jf+8mW8Xo49Wu8/ws4AmA+MX69b6w32fDpVddNnP5TV6wL9qre1gprv3FpneHR5gHvxPi4Qmt/nTW8HujBa1zf5iVeDzRUa+3Lur7rvrfa+etx9arfevY5MYXa+1S/rZ2OdXTtrnnAp7E3Bh5UI6+9a+8hqDt/rp09nz3zmdG196nNOid0zNXbfdTne6nUF+rWDHsBDXTd+/BOyAf86roHswwP6s5r6+lUU1sfqNdwCF1gYRhd9/rzvKt1T9ObNeYnqss6e3S9n0Pt7mTXwkPU7hzWj/zmBJyjP9SxSt1nNx7/T6j31+jZPfdp/7tKVmX9xk0pvIL1K/7MT9bhPWHd6ZnPrlmOgYbpDPNgOg5l5vEw3xudBp3nHnL+5PTA+k8+zz7D0x+PD/zxaJ75ec3+9fsLqac/676+vsj125fMvTFoMGPgWws0jx64Pi0DOR6Y5YPxMU8OZtfFIMPjmYH3CdObvXT0zWA+ef66QkeG5Rg8r/GH5TQG18Q8azDQp28eyGVmGptpoOHpy57Q4elj8LzGx8AfpqePYTxab8D3HM9Zhw/jY+flP4/iD/j6GEZjnWH6B//8BJyl18X5gdlqDKO9JnqnJ7PmZBrO3nT4g+uDWxGeJRfk42dmHp/Wm41p4LthPg184A3MIB9MhmUYTm0Gb9TTn2vK4NxTz8wfjIcHMnqeo3nWjScf77tryqeH7XMybT88MOvB6c1eZ84D18fWYJi1PJr3hAzsOR3MA3083sy80c+MP9CD6QzLadel3b9ZF3h/xzrWw6y1z6yT08A/Z96swbJzn0857wnrwB5nZq+nr8ObnhlmlpmBZ8b2AnowHfM8N32YWWbGQAMN9hiYZeda3g8+n8B5brSW8wN64DxBB4+PeRhooGePYd5k9PrgnnA2NU/p9CwYyEGXR2MYb3gyDHw4u/R30J370LEH5mOggX5CH56+edbg6ZzX4s9MT4e2/gk+nP6swbPXmesP+KP14fQ+aR6cXRr4QNsXm2mggQZaZ7T5CRnwdTE8PRnIBjMPWwNmoKc7zJMBb2Z6PJoP9InpYB9+OjTQuiePlsu+e81koAej8YAPM/+J9UDneQ8zy+Ccac/rXEsP5GAd8PFANuDJgf7Bn0/AuU1jzgx/es/oyawB82BmfGLyJ68P7jFtOvoTy20qG6bBDLQehlNPzj+h88x4oDdMgy7QIJ+Z5p14ZubpYfPZP7UcTo/+bo3umXkBzQNrBzzamuHxnuwHU2cw+cwnz346J84ObU85/YSM9ym3//j09GgwYx08M+YBLYO5Fu8TdMa3dubhOWOd8eiBNaN1ad5gPP4n2FNXRuPznicblg/0+Zg3fHqn1jF/2n8y+Whsz/HMg/Hk433HOie+6/347yfgjJ0blwaz12/eV2b5d5g1WEf/E2SDtw9uF5sAn4vNwMMwF7Lu6Z8zPU9i1vDscWIynv7MePqnPj1rQI4HOryTJztZbn6ytTCZfOZhz18OPB0aZEDDmdH6nistBxpkM9M8M9BAD8xwzrS1cGbjn950eLQOjc1gBs/JLBuYQT4wP/Ep49kH62MzmE/wBnon3Jf5zEdjmb3owblGDmdn9OnzgGf97GUejXUGXmfg6/FPbQb7YZ3B9GbGPD1sDR6fhslPnzd9HRkPm2n8gz+fgPMCrSfzgO88gR4PD/jymU8ef3iy9cHNnMW0FxV7k2GwwIwH1sDk4+PpykAPaDk200ADDe7hnHnWfOLTo5+wDux33pfe+PjTzLNuWM88MNtzZvetO5CDWWe0eWANH8Y7NU8Hnzg7NMhd58nWy0Fu1hnwaLnng4E30Dkzezw7umdHbh1fH3jAA/m5xjzQo/WA5tEYTm0GHtDW0OD6MB7WkQ3M/Jn1R5+s475h/FOPp0fbh7a/+cR4k5vtBdOj+ebh6U82vo5sYD6hB7yT9XnD9P/58f+ZZ+DcwO7nefHM8NS630H3Uzb+sM764CZA8LyYGeTeeN4gNOibsfmENac/Mx5Mjgezxznrm8+M5mNwb/gJ66ZHy2d+ajPoAa07Gp+YHA/kp7bejGXYPDjn0XqTY/PznHn6g3n+fLDOGjkN42MZb8CbLh7I6dnfrIvtMVoH+CeP1oPJR5vtg3VBNh7/CZ3JaZj7s9Z8ruHNbJ0ZeNOdGYMMJqdP3wxnfs7Prt7T0we+fDQGHtAwWv+cad7kM/MGPDk4K+fAAx7WHX+Y/4PvT+A8u7PlLM2T09/h7OoPvuvz1we3F/JcLDghA55NMYz+lE2uI4fxaDB/B+sGOjSGU5vdPx5/mAczY+A9MfcjBznmY/MTMt7k5tF8OH8AZDr8gRnMGGg4+zTvxNnlT2f8c+bNrPuEfLzpYf5AzsPg3IHm69GfMPnZGQ/PmlOPZ83TN4NMb5geyJ+Q8fRP5gMP5GYM9InT05c9vXM+9ZyZNQO5fWQYeJNjMx9m5tHAHzxn/nS9J82g94P/+RNwps9z5A1m52fn9GUwHrYewzPjrQ9uAqY87AWmYRZ7Y5n1eYPx+DAzng6W/ROc19a3D4bZR8eM5XDOeicm14GZPSc93uxFy8efGcPp07p86/HgzHTO+ezQMqBh+qc3GsP0sGvzwDyY2X7A5wHNGz0zD/gYJju905efmXmg55zNOjDeaLPnoAM0jx7W5ePxZTAzhqdntu7kZ0/Ow9Mzj8ZmuecDNA/cGx5vmKeLZw9d+uyMNz4G687e19fX9V/SmWzWmmcNBtn4z30++XOvsh98PgHnOsl5vjwZfNLOH57Zp5n3CdcH92zkBkbjwXkT86Lq8kHvvMA5y2H6Z+87/Vx/9uxlng4e8N0f6A34Op/YffF1nx3+QGbfc7YGZAP78Z49OW/42eGf0AW9gXlwXkduLZ58mE+799F6s348zAfaGph1POANdEdj87PDB9fDOjA92jVkwOfh05fxeRh0BnIZHuiM1jvn06etleuZsfnU0+HJPCdsloEZZj0tx0CDLtC6w2eHN+AP9Gksdx94Ziw/vaeeHLsPrAOzH/2DzyfgjMG5Ya1h5/nUZnC21sCsGX3yaJ1Tm68PboFNmTSeeTT/BB/OnvmE/sx6MPOf+OzZwwyz5tRymOzUn7xPuZ49B+YTf/21/wVH1upMdurTG39YZi2GT5oH8u8gtyf25jh7/JlpncH4T9bjTc8MvIE3Gj0dPJ1hOQ2j9Wg8vvnUZjk+oQMyDJPzRmMzPLXZOqCnQ58Y/8k649kDzFg250LzZEDzwHyybLzxZ8ZykMFomXlgnow37wU+8CZ/zrLBdGb+4X/vBJwtnKucKW+YHuiNj82DmXVpoEHHjOHtf3NSYUJ6oEifGW9mWg400DAdbAb5P4E1eueb0gzPfcwwa3Q+4bsOf/Bc5we0vtb/a6rz9eFrfF3xzE99zvXa9GXU5pe8rjHrq+VNhiejP6Fadu1/D8L0h1f4eKi9Zjq1Z7XqugfzoBr5x39XR+37qNY+rgEWD9PVF9AgM2MzDTTQ8Cnnw2Rnnw/j4SdmnR5MPr6ZPxjfLAOeGcyYR5/M5514emaYzqntBeMN857905sMP/3ZQ/aD70/AOQ3OFs98Mv0853N+arM15z40rN+4FQzgg0cZfGDKwDys95x5T+gA31qg/wl0Ybqn/m7P8c811p0+7Tny9TDPc8W8J2TTk9H4E849znWzBuuA9eZhGmQD9wrTwbJhGsxg/cAsA575O7iG3tyzPuhjoHWGrRmNB7pgnj49Hu06WA6zF2/AnzV4wIdnTz4eNgMNcw0e8PBzL/7pmUEXgxzsyaf5QPPoyenxaJ2BWWbG5lk3MwbZYGZnea7l86Y3GZ+2t4zm0cM887ne/IO/P4E5M2foPD/hmdmVh0/wnjjz9b+Ao8AcdkEznpuhx8Mwffz8d4XwdKwbPcz/O5xdbzT7PNe4Nz051oHpTc6D8bE+1pENeCdOn7bOmmeHL+fTeGY8a2Rm0OGPlvFO8IA3vWHPmw/Tsd9o/nR5o/mgi4G2n47ueCfTg7N3avmsH+bBc+YNzsx+fMx/gg9nx/3r8fDko82jdcCMBzqjZeYn+Dp852WmgX9Cdt7XmdHWDHR5wHuuO3Md0MFgjc7AvfFhMv3R42OYdTTo4R98fwLOyLlp0HPmtLPmw3RoMMNo/XMeLQc50IP1G/cMwllEw2T4OZ/e3DQP7HP2zQP538Fa0DvX8YA/LDcPzDLgDdMgxyADmn/q8fj0YDozP1l+rqn9VwV6k1XG668YanfkJ5Rqd+t3i5zfXgAAEABJREFU1tWB0bh29/TpE3oz09X6q4zxnq+pjqzuezVDhS7UPVtX9zyl2p58vE8sh8nqfZ3shF7tDj2o3p6fNbLhyrg6T09Q78+77r4canfoE9XatzbLXKPe5/HOnIba3cp4vXfWcDzY4xhXjwenX3sfXu371qmt+T/4/gTq+3Nyjt+vvJPvevzBtM2jP35wV+tNpvRW/te/1pvg6Z8d2aAa+XHdFX4j6vf1qq5X+9BoXvXbPU82OQY+0FCh6x5rz8za16E/wT7nn66fOrzquj+zdVAZ17XPeZmvh9r5S75960Lt+6NhSjRUv11Xp/Y6Wg8DPahY696I2mvkdWdm0PkTpoNh/mCo971qz/bSqz3TwB/UzmqzfFDbq838ueas59XOazNPXnumoVpnWRnfYM1ggpmrtW7myb1vqjXKautlvB7qnmtrvSdqZ68lb9/Vuu55nerL/PX6eu7zsn6+/80TmDOs1krzEq8H51zbr9Zr8bLXd73PzE9rK9FvePvgdiGL581d74tkOr/t8suQ/5JvP+y82j/09D+B68x+2Fz7furmah2Iztw3rtZlqpUbdIC2H4bRtbvWT4/WgQqt5za+3qB2rnR69Hh4UO9nct7HdGZt7b1rr9Gt7U2XN/fFq/f89PSqdTbV+veBy8E+FfkbqrVmOrVnxbnXpzZDhS7YwxoYs1rnW63rVOveqlXRnXtfxuuhdvaSa40OjavlVawL1eXbTzBcO7MeZEC759F4UPea8YatG8z6yeaa4w/Lq+ssrB9vuCLX+Szx66G2/2u89jDbZ65prtY5jMZQoR/84QScJdQ+q9HDc85mGg/MUPs1fl5Grz5nuuuDu94vXPcCb6TauQWzYe1O3Zn8CX2orjfIs/NpnjWy2tcajeW43vflu+dPh1JZsiDXNdB4UHePV61714fq+q3Ftb6Or2pN1VpjqNBC3Xr2EtTtf5p5J6wdjG92P/W+F1+nWvdUm3nz3K0zA6/uM5/1/NEnV5atvQlZbc8MPHzCfuZqra19zWp9GM0a93bqc7ZeBpVx7bXE64H/vM7LXh9mp8+rvd4aM9T2aHiu4Z1998arva42j3d26do5rTNMu1bt3PzEdGt3Ztar7Y2Wwcz4E2qvc+1P+Y93n0C13mvVMuvmOevh6q3rfQLy2tna5PXAe9H6GcAVesP64OZUa2N6YAMvIOZVaL3px1vG6+E5v6y3bznU3uMt/DDojl2/r6nt6UG17r9ay2rzGo6H6upVR/JZ1u64hkbtmT5Rt19bzxq90cO1O7K+Qutcq8XLeD3Unb3Gt8z8hP1h/OqrNngyoOv2503EB52KXOsJHSzDUPt+a3dPj4bq2uM5117Pt29FXn8wGvi4drda+1XsC96rhtp+beaBfYCGuvczn5heve9xdkbX3Zl1kz35U/70zFDv+/LsV9uv1jnwBjqfMDmWV+RvkEF9zn9b8L+5UfucnBk4juHaGe+Js0ODzjBd9/rq7bVeH9xn2QKo/aYejfUqcm1Sv3dWeDzU7pxrj/hbWfs6CtbiQe09P83TrXt93XrWDE8fDyYb5o9+8jObeVh/dLXOzQy156/2f7mnXuK1QDZ4jW/f1VfdeAt/DbN2mE3jQb2foQ+9evd0692r2NdvAwZ7D8wDHj1Mw3Ou+xqy2teozf7AqN2p1rX17HWidr82y6r1h50+1J1NfrKO+Yl6Xyev7Z1rTu2+9U7UXsOrfW80eA2sr92h+dX1mpthMgwVe6G6/uCr2/96fdWe6+ba+hWv6zz34/+vjv9f3d+8Zq5f+xzr/XWtrnN1tmd3dO1O3TzZrBnmXx/cp1n7wpXOeuMv8XqYnht+jX/7rV9dbyTz1z/4sn/t69e+n1k7XO9+7f78wFTrwJ6Xm/XjV+v+qi9ftZnWrd72qUQLcsL94kHtTvW21r3V9qwFa+p+Ljo8mH3rXsO3ToaBN7C+Ws/p6/FVex9rRRV6u8dl/HrQq92Z61Rr79r3XDd/HV/V2rd2fkRL1s7tO/cscE3Mx+bR5rrXjV+JFvQJWbXuwVyhhbq1HlSrSyu5p3Ov8WUDXrVGmqh7rq35k9Ng72pd0+x6GGr71ujx6MHZlZ3Q1+NhoOt+HXR4IB9U67X9+vn6RydQ+0yrq1/9doZz3tX1es+Zn/z16+vpmX9Fi9YHt38Ge02vBwV4yeu7etPVdWO1s+q6oa/Xlz2gtu/Gza/oH33XPpApV0vWZoP96veZf8K19Qfe9HJz7fUz85593pmbB7XX1826UPdzqJ3bWwa1PRqqdYanrtaleOdac7X61erU5jW8HnRetL6r1TXwK/L6Q5nHqN5e23r1/vpaX/XSL6UL7uc1rj3qfq682t3p8KyBU5vr89rafu29Zt1wtZ5T7R4f7InB9b3etbuT4UrlDeNjsHYKdO1ryWCyYZ3xa3dl1XWuX6+v6bzk+jZDtZ7TMo+HyVi19+WZB7XXugfe5JVx/X8qS/x6qO1X171ZM/j6+frbE6h9hmfR+fkfiubVzqvfXtfaXu3Xs7Jk/TwR1bWmYl14vcb3P+J3uS9Rd9GN1J7pE6/q+h5vDb8eat+QrPb6X9E/pup6w9W9R936uZnrnV7tbrUOQl5dFT/cM1RX5/RGY+uHK/IN9e7pD87ieLX75jM/taxa98Z/vXDoN1TXC3+G1puHR9fes2K94eq+ono9/Err1qzac93XnrV1Z9V1/+c6+hNmjzOr92vowHcd/uS4Yi2Yl3g91O2/xus+dYCHobpy/qD2venA+NgMNFToQt3z9P7yL8j51ai9d+3edH7Fi8bD8N17ZJUfD/q1935EP+MfTqC63gvV1XT2znSM2q/fzGfGq52Pf3Lt7Pyc+tc5zAbYQqBrL6yum+RbO51hPtTuVsb1YVJbL+NvHmp37Vv7+jRY6tq4ersnng7QQOtj88AM5gqt+yQcfN1ebS2rravr2nXfY6X2G+r2a2vXUZz7GOadqNa1qtNe91utzFpQqNAFvjMYo/ptzWS6UI11/eHJqP1c597Hwzxr6eHa/XOu7Z09ejDd2a9avxXWfU9fr69qPY+XXDzr6vZlfKj361biBedT97zMXw/W/pIXVeuevn59Tcc9V29n9quyXq/R9X6tumd71ftsHR+7Bh6MPzx+dZ1LNfZi3QFjdH2+d50fvJ9AdZ3vnB/W8hp5T5kHfJDxaKArcuHMZUx7YVh/VULUvchsIdTtzwZyqDvT5Q2q9SadNbXnyf+Oq3Ug0/u0f7V+OM4npK9bkesezMBwP2e/dm+8al1XD6q1h7UDPphnnbliXeBBbZ+G2nvSU67WdWeerHaX71r82t6pZTpQO6cH1fqQsebrmy/ZwHnR1dU2z3Dmta8nB1nd6+be+NbrQO1O3evlUDuzVpeHZ6Z5J3iuUXutWY6rdb706X03TwcPplv3XuNNB/PAvWAYvyKv91Td86eecu3OqXVr+7XPz/WeHb3xqnUGFWvdQ+21tb0VvB5mr5f8+f7DCXg/imufX7XO2LlDJV6oW0+GTyjW7tXmyWWD64P7GZ4zbQE+UffGnkDt+dmt7Xsz1NY6f4L9XEsHAw3VdTgz47/D7FH3m5VXe79ZzwMzrsgFM9T26p2V5Lh2Zq6t62bnIQN9XK3nVrHWD9f8f8y1PWcjrD1Xa83pzV68wXh4vNpnYa69T21PD2Tutbbv+uPLaKiM656XOB6q9Yfs19fXutfa3a/Xl/1e9ObbbzzXpk+vWv3x5DB70RVa0ANDtdaeujJeqNYfdF+vr2r1a/PL+vhdrec+18H1/Rr53G/ttTau0NpriT88zNlU63xrr50ltWfX4mGga2f2GI8Pz5n3g88n4KzgU1qt947s7JxaVqEL3hc61bX+v/23/3blr9fs+uy+zBHV25unWlF1bXZuTq/C8VB7D9nczBF/K6srq1sz7YWhdvb0Zq6d6wK/uu6fd0IOte9bVqF1FtXbWl1YhddD9Xrc3/y659qaf2K39+P4ptLvdT3T/kcGt/r8aO2ZPOdqxbVZDnXPCrWfe92+HlSv+0nt4jW8HuQvWud06tr7TYYHetXbXjx5bd8MvBO8uveW1Z5lMF7tvcwndGC80RjGH/YeHo1rX4+Ger+OPUAGNFTGN9S7V3s++/QTNqm7K+fB6No578TkT68+98/ej34/gbrfC/X7+dX2nHltXZvfd/q6fh6mW60/mL9+fb39HXe1fuh+ZYuqt02YFVp+7TUuwBymq9Wh+RX5j6A/xXpfV/uadft1az9c9T7bq27PfKJ+z15/qq37t59u7eue93b6tAzoQe115ude1bqGrEJrtgf861/bW8HroVr5S17ferV9Gqorr9YaPgiq9RvlzLj6mq/aulpr+RVa0PdcMNT9HKu3NXKo1tp54I3GZqAHc42Z696j9jVr83Rw7V7tbPat7euckNfu8s24fvdkg+p6rvp8PKjWOX+9vqrX49dbv7Z3rqM979rZ1/FVXetr35s+TK1asjbLBoLafrX2klWiBfMSPw//1gmc5zYaD2xGn0zD+DSc86ll8PbrtkLtF5A+UV1vQP7Xr69qvfjVL+em2m8sjg9B/O/gvA5dn68xe+qMHubVXldd98qHalX9oBDVep6yQe3O16+v2nO19vuv//qvlcwea3g9VK/H+zdl+9W7p8DHs95c++zGk9f2aHCmtT1roPYsN59sr9rXp6F2317T5Z9ra6+Rf/31tZ7z1+trOtXyau/1itYvAJPbG2YerlQv1J6rtd/0rFUyQ2W8MF611l3BS0z2ktc91X2flWhBd65V23cWK3w9yGr7ui9r/RZU2zPX3ru2pzeo2zu7NNTOq/U8rKtE696r5TMqtOba2v0xrXvyZPV7V/98nrU79vjBn0/A2WnUft1pqHuu1mdKdb1e1g1q+1+Pr/rsq10f3LUvZDPBibqz6op04TJeot7zl7W+9WAN//Ch9l7W1daWmofpQd0dOdTt6VXrh20yHtTvvelgqLtjtg6q6wWpRAuyJV4Ptf2n95yrtRe/tq5eO+w/AGprxvywnT+Us07ON9NQ99pzrn0mutW6vnzAH/3Vvg+z/etlvIazQ3+XVV/V+iB6LVsaW4MrdIEPjNrZzKdH84E+MV61rmeuVsUZ1ta1WS6sVr8yrnt+ZmZQwFC/P79qve9q7zX9au1r/g7Vug97gx4GGup9n9prarPnqQfWnXPtjgwq9IN/cALOcmrVep3Mp0+fkNfdPWc/NzNjqNAbrg9uG9d7ofp4I+cO1p3zU9e9h+zv+jpQoTd8t7Za91mtfr2zdbW90dVaY0G9v+l1+Ph8g5vHH12xrh++p7/C1wO/WtesXs7+ri6vWuZ0DTSuVu+8n9r3PR1cqV+o1rpP2VV6idq9l/zt21qY4Dstr72PTu374888+mS6QuscdaFa916t7LuH6h/1Pq2vLts1oW5vQj7MfPL480Mnq9Y9jcaDasm6ubZeweuh7tn+8LKv86md80EG1e9PD64AABAASURBVLruJ09+Yjq115zZj/5nJ1D3e/xcUa2x+u31cO7Vyj2Y4dTPWXa+v9YH91lSGPDBh0XtC5nltedzs9qeHKZLgy7Qf4dZi6H23rS1w6Or9RsN3/3igQ4PV+vNX5vnfmrvP51hee2u/fi4Wtcz62AYPR3MH9S+TrXuQz73RkPtbNZgPq69np51tb3a62rPs2bYmkF1vaHktdfSOvM86IEM6l4r47kXa0ZjqL3v9Hg01M5q85nJoXZGQ4Xe7t06EFQro5/QcZ/jV0vyiept7fjD9Z5bA7Xv0d5zBtaAfFhmrtC6Vm2tAyt4PZz6Nb59115Tm4VnfzQ+UXffmoH7Hl37uVg33g9/PgFnBNX6LKjWz7Q2H5/gVdfrbn7mvNr70IOzR68PbqL2hormE7U3Oj29J555va+b/tn7TuvKvNkr8jqUaj35Zb4edPRr+9XL3d/V6lbLmN68WYeFMqjf71terb1cz4z1Z4/qegGr6351QQ9qZ9bzh2nQsS+NoTJ+hFxQrfubeVj2CZPXfT+19WSzbubaOb/29WjPQae2V5s/eXVncutP8Oq+jqzuNRVrPdclfj04N7J2Tp9wj+baueuY8cAMdV+/Wteq7VUq6/U99xyN6+4o2x/DaPc7uvbeZqh7fXVdf9brQO2MD588fu396RPVGq1z34ZTm3/w+QSq9bpIq/WzT4MzrNZ7xAwVWvDa156ra58Vvh68FtX6u3H66/G1PrhrX6Baxa/jyw0YK/TxRqrfLlz3nvao1hOr1j7/5ME60J0nWr3dg2w6dLXu5flkdUAHKrS69a7P3qnXgtfD6dW99hWt/c6cN6hW7rmcHj1rcLVeh9r89c1XdSXWDZh07bOioe6+TrXuh4bpVMZ1zuM5z9p+7X1X6cND7Z6odtc+ZqChWtcfLavWc+d9vb6q1+P+e/XxlvHhofa1nG/tdbU9a6H2fC6v1n1Uy9aD2nNtHg+v4uvBtV60vvlmWMbrofb1avPLur7r3tdaQbXuZWbe4Nx3vJNnDYbJ6vdry2r7ta9pf+tq+zr/6+B/vTtxVieq6ybr/QxrZ9Ov9/xa+BLTecnrZ5A+cX1wM88FM+MTtW/g9GYdPv26b05W93z26Hrft1pvYBn44Jg9zPTw6Nr7m0Feobe9GJOPfs71vq72rF9b175e7VkG9dl3jdrd2jxe7bk22wfkw7Wz2jyZvLZHn6jWc699T5NZC+YKvb1JqmvdCl8P03/JlZmhYq31Szweal9bV1St9TScvnlQrT/szRW6YA2MUXfOBxmu1vWqj/eoozuoljz9ur3aepV+PehCta7FNsNT174PGVQqa515Da8Huu5u3b3a+lX77TnVnU1e27Mnr/a+NG9g/sE/O4FqvWbV+mWj9vz1+qpbv8a372q9r6vln2dfrT0FfFyhN6wP7ilI6i75sORB3f70/Qktg7pzM+hV641VrRuqREsTOkB/Qu31Mvcz3br9ah3c16+v6RjnHod51br+9GrPMqi997lGF+TDk5sHZz5e7f3dv3wwOeZV1/PgQd1rzV+/vqrV5VVfvmozzwy1vdrMG9S7V3uuzfYBffy8f37t7mg954J5g09rdarreXx9+Krf97du9qv33Bb17unzT9R+jWUgG6ZP8Ad8GlfX+6huLXMGtb3aPP6ZzV6eT+0er1JfPztLvB7q9uzxst5y8xPVusfTt795mIba3cr4g39wArXPyll6TbBlGGq/z8arPddexwfdYRqqt9fO/jrw2wf3LBDSeFD7ouc8+k9cvcXnvrUzXm2tXPta4+MT08HgScmr9UFQe6/a+/jB+Pr1dXZ/Wb/9AFRrn69fX7N+rvHLXgdbXSw/M+vGw/Apn3uavFq107fXMl8PelD7+b2s6x6q6951vn590bX3rXvd6au6Jq7dpV1bj8Y6tfcw8wfVuhf+idr96Z2sZ8ZQu/vU7qNav7HoQ+1Zd+ZhnjVmuiIX+FDbe+a1/VV+PVTreb3ker9UF/PAfsP2G/Bqr69r3bWf85xupb6y2noZr4fa81yn9vyK1nftvQ21tX3Ng9p+7bXVupZcFyrjD/7mBJzVVKrrHGvrM5/XTL9CV/+ZVes9br33hvLZ+df8e2MVhDBFXu0L0Pzasx5U6+LyinWhWm9shhxDbb92v7r2+FM+WUUu1K1dwz1iWIXXQ92d17iuVds7ezI4vdG4Wmtp0IXRlfE31PZrsz4o4tr+p7l2pgfTwbUzGuRAAw2j6+47J/7g7PHM1Xq+5rNf29eRwejKuF73aq2vzSt4PZzdar1B6+ZX5dtva6FaHRrW8OvBXK17YJ33bq6d6UHtvarrXvRk+BOqtX9tni4eWFd7b5pfe669ru65WuelB7MGw3i1154eXaG1R229jA8Ps5eo7v3McObmH/x7J/Dp/HhQ+7y9L812Hj517dewNssG//I/olB3UK0XXqH2BWio0PXbXO2ZWbc2uxGo3315ve/NA2uAhtrrT48P9XtWe9+zP7p239oT8rqz2ntMRz7g1d3l155pOdT2aJBB3b55Mn+anjMfquv1kMP4+IlqWXr2rHtewa+H2v6v8bqGuXZmD+A9UbvDr1vr1+8z/+zOjGv3a7MeH9d+Lap1j7VZXlvXZv2BfHS1JG+wjA8Pta8nqlubofZetdl+1XVv06ntzTysD2YYPcyrvZZXsS7woLZfmxX4+ES17o1XoYXaetYMC09t/sH3J/A8q5lPrn3Wdqn9nqqu12V8DBVamH0MPugxrL8qIaq3jSxQrH0hc6W6ftMgame1fd6J2n619rbH5PQnVFNZfHaWcTzIjNXa3wfVzHhQO5/+8OTD/EE19tq7Wjxm7bn2Gcw6eYXWOY2Pa/tzn0rV2756/JNHV+sPzdrXnNen7j2m+/X6OvVrvO6nMl7Qq9Z91GYeVOu30Kv8S0xWrX1/2YtkS/x6cJ/nc2brDMx1X9cMFVrQJewFNI/GM9NQ+75o166us6t736/jq959a8UYaKCf1x1fRgMN9KBa52yu0IJ7XOL1YA3Ufg7VWlObX5X1mlTkyoja89ybPfjDNLhW7a5Zv/a1dOX8H/x7J1D99lrUfa7V2rC2V3t25l6DFb4ezPCS1370ieuDm6lsA2z2Ao6u1ptlZvloa8wnqvUDrTOQ2xNX66ZqM28yGiq09lni14P9ame/rNXhz1z7+mY+1F5Td+aa1boXXaide14V61vMvvaZEm90tfaWj4+rVXENgqdTrT7vCZ2BTB+Ph81warNu3c+Lp1P7ejSMjwfW0vLBOdfegzeofS1zbW3tzLOnGb7L+JXKQrXOp1rz7FMtf+ZzHQ1rwethNIaXtb5PzbAX1N67Yq/rVBczrYW6n2vtzpnToHu+9jRU6w+Yr9eXTt37mV/2uq77Mg/4A9loe9Jnj2fmV+t6ZutqX6/6+vn68wk4s7NhBl61Pi+r9XpV12fUdIYrSy5Ua81lfBBvH9zyCl2oe65+27Ba3bmJNfzhYXrD31Vr7zt53XPtQ5jsu728EXXqXmuG2p61g7q9ar2hv15fk+PXuF6Ak09dvZ3RrNEBPzQVuVD3c9Gte16Fx0Pda/WhWtc8dd3ebCGnK3StGX+Zvx6qt7xaiTOt1tlUq/N1fNXvnv3P520Gyyr0hrPretPF1bomPYtqnxkPanfktTMaKrRg79qzdczaM80DGmigT1Trnur9Wp86PHvUXmOurWuvlz/9ivXxvSeondPnes9xvOq6T95Av/a1q2Xzlvh5+OMJ1D6vZ8n5zdlPVu/duue6tbV1z7PeX2u/9H+98LU+uBWBAS5Ye+H4w/ITfsjMtV94+t9FvV/LetcDulpvOPqJ6Tx982S49h6V6COmJ6QxVF9fxAvjD9d+3jNjeFWvbzMwnC2eue77qb2XHOrOzLOGfkJW93oz1N6Ddu2659mjfl+nDzrWjX6yHManB7WvVa0P+q/HV+3r1u6de9Aw769ZyoOZT669z+mNrvesfp9r38+sefKn645X99rqt/erHtizQm+Y7M18DZ6/rO415ld0fYjTMP5oM5jrXm8e1H3fvOnTP/jzCVTrdXZm1ceyzGsopIGGU9deX5vPjH79DPb64P6/vtb99cL+4CZAYTAzrtYNzg3wQLciV77Ehwc9dn3/Jqne9pg11oEZTm2uvY6eDA/4ta9LDybHvHluNA9GD1fsC3XP1dv9K9W7V+/3UfesD3Wvmevyoe6+rGKv/5dsidcDf/Aar2+e51it+6y91xTko7G5It8+IPjMau1jHvDBjAczD/Nfb8RrX/fFg+lUxnWNujVTx/ravrm2ltet7V171gMdDKNrn0fd3bq96dbOrYNq3aO8tuYDD0OFFtwTMXz2+J9mXT7Uvq85g7r3ltujbu+c5cADulrPwTzgj/7h70/AOdV+PbTMuO4zrVgL9bu2BhRwdb0eM79e//7zP//z+p/AWb9x1y5W1l7wxjBYDGZcu1ebdV4bXxczD6rlWwe159rMG8waXKHrh9tQ2xtd98yDej/E2h3XkIPngYFfrd8Iq3WvX7++au9V25/uyb+q6z7Hr71ONt5Tzz1U69pfry9deMnre2ZcLb82r+H1UPf1amf2r62rdY3aPa/V1+urdm7v17i+q3UG1vNrr6lWPg/2mLxaa8wwHbrubHx8ZhXrggwu44OYfO7DXHsfGqr1vGn4enzV7nuuorqfa23Ndw2duj2+PUFuBjPQAzPUvl7tfap1btOr7ZsrtPK6tfuwF1agB+a6u2ZZ7X1pHoyu3X/Os7/uD74/gdpnO405N+cJtc9XbsZQt/9cowfTq7vL+/r6+v037rpLFle/vXm8UWWD2p3ZdLjuJ1WN/duH3AT2Gz1c97qnpw/Vuke5GUOFFmprOSzz9VDbf8nf7uvsyWs/nzno2nP18frnGvqEvQf8Cl37rOH1ULev/7LWd+1rr+H1UP22Vn/gNateza+rJ/t6fVWX9xrX92S4Wt7zQQZ8Z1K7V++sU9vTrVtPVrdnLz2Qw2hc+7nz614ne6I+53XvYR9wRtbTg2qdjVl2olp/MFRfvqZTe66ba2u9uvWs4UO1rkfD5LX9mWVQ26fhmZ9nWaksVG/XWebrYdYPv6yf729OwBlB9VujPnu1fetgFtLV22tSrVhGnK/l+o17AmHtN/RoLAe6WpvXzZPJBzyYGVfogry256ZqawUZHjzn8T9x3c/hmde+hv1APkzXzkdX6/ma9ep970q0ULdexuvBmhetPWrn1ZrHPzv0oO7edPFgeidXK67PvMLXgzUvevuu/dxk1duHUn2/n/586H29vswvevuDkFd7DxrOzsy8c6/aa2qz/Ilqnee5R/WsXfP0anfMUHtWrNae9BO6PAw0VOvMvn59TTZc/Uq+rr1re3Wf/dc3X+c+o89q7b14c4Z64OcL1+7Uvp4u1PbpH/yzE6h9Zs4V6j7TOf/nTnq84dp7eH34J6ZzeP85en1w115c+8KzySysrjd3J0oYAAAQAElEQVSaG+IPZqOT6+6f/qmrNdqHwANz7Zzm4xO86rov85mf+sxqP8faa2XVqtdmHgMPqutazzPQ0T9RneOb1ofTNMN4te9zrlV7nk61PiTmtfp6fdGT49prXtH6ELUXDfWe8aBaz7Naf3duHz6u1j4Va6G2Z9DBn1CtfWUVWqitq5Xbw/OoVj4PfFo22lz39c2D6WAYH9de4zzsxzsx/do9M9Sea/OslYE9hqvr+fBdC+jp0E/U3lunuuKZa+cT8Edj91Sta5vl4NoVa4FXe5ZBda2rVu//mw//Z7vWnGG1zs3sOdR+jcxQe5YNantyHq53jw8V8h9K/ncC1ge3RYZhesCDmat1k94g41cTLz79ujP+iVU+HmS1+7So+u16408HV+zVJeo+hNoZXxef4MF489xqr5NB7T3ltbPquqaOPfwQ0FA7p0FW26vU31DvXu3ZOsXa92CvQe2OWQdoqJ1V6z55cvA8cIXWh/ISrwfXq+2/xrfv2aN2Xq2962YLKrRQXX8QzHpcu0NDte5jtPtYG/x6MJ/3PT1x7b3oE9M/PZo/6+teW/seXKu6npuuNedanrn2Gpo3a/Wr9Yfs1+tLduJlrf2x7sl6ta/PN+MT1Rprs+ueveranw/VWkOD69a+f3NtvUo/D9+eQO1zVKjWOdc+O2fKH5idLfBq9+nxcG2fhiN/jX+9/8YtHLzS6weHrt830p1sNP4Otfeom5/dc78z45txRV6oPdfmK/glqnWYv8b1vOjah0tDhS641gx1Z+PX+3o+PNfU7k1WXffDG1Sz9Deu1prqymrvexkvUe9e7b5rvOK3526G2h0a6p7r3m/2mM4509W6R/kJ2cynHg//yZfV+96VZb9BF55B3c/jmU2/+nj/1bVkuk+uu1NbV9d+Z79a+9VmP8wMHfChax7mQbX2qz8/F13r4dTP+ZnJK7QghzX8PPyjE3BeMOW6z5M3WW1/5jMbD1frNZcP5n1hXr9xV/QfUa2NbApn2TwY3zwam88L84AP9KD2tc559PCswYNnNvNwtaT+Eq+H2j8MtbOXtb7rnmt3VvDhoVpnU11p3foyH6J+3/e8N/WZ671brWvKQbdCF/i1vdrMU8CfXg/ZoFrXqJZVN1u/zF8PMz+59ppftUX17tX7rFSta49+7muGSuVCvc8T1GffHgMfpLV7tfm79dZMNlz7NZINvn6FtTNjtZ6bzsz4RHWN0xsWjMZw3rvcjKFa16MH1ciV2YNR26/NvB/8+ycw5/lpZb2fbbVeg9rvkWotO/f4pdfntfD1+l76WiwAZTj1a4HxDdVa+2a+hln7ktdvfKfHr722Mn6ENbXzen9ycz+1cxtU1/3U7ttDBnXnM585D3iDmZ8sH4+u+3pmGdRnf+5fB2ZN7b4P19r62Z2sdn7O9qr7ecp4s0fdGR+mQ8PcC32CXy3LfuY1/Ho4Z9q+uFp/ZTD66/VVXX+F8hqv98no6s2rVn/y2dt8wjVkwDdXay/3XK33SG1PR1ePxrU7ZpDDZDS/Qmvv6tq3Wn5tNtR9vdrafu4JaL3h2h0eVGv/6Vbs60zW8HiwF9S918yqTz0e/sGfT6D2+Ws5Rxhdrdeq7nM/MxrqPR+vIhd6ff23//bf/Bdw1nx/aq9xP7j4q/d2UbNU9ieWnZi+9f/xH/9xRm96ekwa6MHM2F5Pf+ZhPXrYmtH8JyafDuadsMY8TIMub8CjT54OD+SDyc7Zh4Le/IDK9IAGGYZTnx37mCen9cH++BPO3uT2ou0lH8w+5tF6NOibYfagZbOGHg/DeGeHZz98Yvq6oyc3g2vzdAZm+8lP8KfDp/VAxhum5XBq1+MB31raOgx8oPVlwMN8epjmD/PBPEzD9GjXxrxnj//09Pg/+PMJnOfmjOfc6Fl5dk5vunIan/nMv7Je8/9l8n95s8zwCpZUJDAPm594Zn/qWauPv+ud/qmt+QT7wafsk/fc01qYrhzM+Mx430EX5OcaenwZmPk0Ps+f5wXXAfMT41s7GQ1mDKPxYNaadWA0npxPA98M9/zX+kNd9oSO5/DJtwecmT6cng4Pw5md56VzZs/uZE//nOnB9If5o89r8UGGYXKaPzPNg7l3Wg7yYfoTnrn1esPP3DwZHlgjA/rEeMNn9qO/PwFnO+mpT4//6Vz508M6QAOtA+YTv/3GfZZoiy2gB+P5AeXJ4dTmE9Z442I9LH8y7wn9T561IHsyD6yVgXnwJ3861ugBb2aaZ6YHZv7Mw+PJxxv9ZDkPaDi1GXjnvqMnkw948OyYQQ+DnhmbgR6PPj0a+PN+mBkP5PS5z3h8eqDzJ++ZnbO1s88w7+yMPywH8/B3ffmJcw0N8nO9mQ800DA9PP6pz85oOf3E6Y+2J+jywAw0H0YP837w5xNwVjAtZzp6/NM79eT6/HPmDWT0MA2/fXAzB8qzIe0H88xGf2J9OLOZsX1hchrOWW8wPn565lk7rAcyPP4wD2bGAz6Y8Sc8953O+GbaHhhoOLXeEzqgB7TOMP2EHugM65hPHq0z4IF5+jNjr7sMzEDrYjM9mFkG50wP9GkdoE/wdFwfT8anx5t5WHZCT2Yfvhl/ggz05TR+gq8DNEyH5rseHt9Mywdyelj+hIynhz9BNj35qWU84J/zqeU/+Ocn4CzBCuc4MPPP+dST44HcGvPJfOC9eP2bAXXWB/fLoNf/+/ursP6DlvFX+HqYefhlXWusMw90YGY88/B3Ht9+ejAay3hAw6nNg+mbpzMe/usV4Bf5vp7LdJf564EH06fhnFXNg5mxLh6cHd7kw3K+/y8FA+8J/gn57DEs5w+PNg/GG561Znqg/8nj6wzrjMafcHZmrd74o8+MB2fHDNMbHm+6fJhZDuPxR/PN+ITcLDs1D/ggg6dnBp1herpP1hnojcYzY+BZD+ZhWvYJZ6YPn3o/3ucTcH7gD2U80KaH5c+zlfPg1NbwgJa92MfV/+PF6/u137/WB5ZpirTyOfOAj2FyDGf21JNja2E6PBrzBzzgD5/Z6JN1Z6bBWuCbgfaf2V46E/dGtc6muszv+vXe0QML8aD2f4J8ztOpvUdt1qmtdU7I4PSeurruv+7rnr1zD7pacW3mLePDQ3XtP3G1ZL3zcx8zrPLrobr2Gn/4Fb9982HMasnabKiu/cyD2v7M2F6D2ufE/w66smG6Qhdq76MDguHaWd1rauv6nWedPWrnNL/umVet502DzpNrX/+Z1V7LB+t+8P0JzBmdTEPtM67WBrzXh+312phhhb8ezLXX6f6yF70yH9z/Yw2vh3+9sL5fweJ5MNd90ZmH9WhcrRuamQcVWr+9E7Xnr9ct1C/9CurWr3F9134CsyeGFf4bD7X3mSXVutdzPvetO+dDNfXFtefazNT76/W8sBno2p3q7bpy0MGDer9f/tmhgQ+1962Mb9CDMevem1+te6J1audm4MEnzavE1+trGB8DD6p1rdFnRoMMPulKtFBb1+bpY1DCQAMNo4er674mr8QXap/LZfwStXu1+Ze9yF61fXqZr4dTv8a3sztnvbqva568bv/0aNAFulrPrzbzZHXP9b6fToV+8IcTqPuM5kzVaf+fct3nypMName195DX1tXXf/3Xf12v26w5ef1TJRYxa29GDyYz07U3p8cbbR6MNzx+vda/vvkwPq5XQLwwWbWewMu6+MxGy+mK/K27zONBF1i118zMo6u1D82rPdO8E7wvfyJtsR5rn2f1Nq/h9VDbf8nrOr/v+bWyr7/5OtfR6tW19vRkMB79CZPXfh7T4VdrHF2ta9VmYYUuX5eBa2fmanVOXRmXr2+o7c08PJkZavf4ZqjtVW97yvROjIerFdVmQ7X2oHUGZjCfTEOFFur9TJf5ePDDP1Z1XXM8fF6rYl2o369RrX1m3VV+CV71Uq93st9Clvp5+O4Eap/veW7T5UHtDt88qNbrwIcKXd70hoWv98P1i/YlBEq1NzBXa6PK+Bvqs38Wa3dqs2vIq7U3/Sfow9mpvZZfXVHdWiao7ZkHfKj7UM2gg+s9q72P7OzU7dfWtXm6+nV7dWudJ+rOrX3mM9e+Rx2o1pnW9vX4g7r9Srx+46vbZ9bOavN49hmNZ6ZPjI9BNlz3nvxq3TOtA/X7/fB1BtWStbvy6tprhb8eqqXq7jJq+zTUzmn74bo980AOZlx7L5pXe67WPfFBNkxXaKFuzTh75rrzurVMF6p1vdr3XYnfML3TrNa6yaoz/tEfTuA8Kxqm5q866vfXQKe2T+ufTAMfar8OL+9f//Ef//Hn/wKOBfAqo/XDvcSvB361XmiWGegnavfkUD0ra653X3cFvx7q9/zZUa33Hg9q+7Om9lyt58GvrfXNT+YBv/bhj67Ihems4XgYf3iiat2DuW4988n0E/W+Rl6htW+1+LzuU1erPw+1n19tPvs65tprntqs8x2qdT/Vx4r1UK0erThc+554UKHf3qfM2hkN9T7z7As0VOu6ta9zZqeu1FeXqJaujEsv8Xqod2/2GX5Vfrv/2mtkcHbNJ3xQmHUGZjDjE5+8uq/3KT/X/8/p//9b5Zzg+cw+eTq1z/jMa3u1+eyNrpXd/wUcwaBWuMbab9o1vB5qZ+cFT107f1Xfvs/O6Pp978kspuve77u57n10rP2E2ntV64dJt1pVGtbw66F2Vu8sru1ZU/f1ZTz8BH8wWe19au8hr1ubYfo0mPFgZlx7Txp06t3jDyav1rmM/x1XV1T7Xqu11l5QXZ0RfLrujPdE7bw2T16ta9hjPLr2PYyuyN9Qt1+tvaq3Xt17ucaEdO2MHh/Xu197lunWvgbNg1ObB/zafV7demYdepiu3avenlftWbdSXX8wmAe1/RW+HvgvetvH/IPPJ+C8ap9hdZ1b7ffB5Hh2oKF2n5YNj657j/HwYP1Vyfmn9QS49uY01N6MPlGffTczqL3Xc673tXJ7Y6ArtA6G4ANdn9fLdAZmqL3XJ//pmevev/Za+8Dk9Ilq3evk1Ypr8xpeD7X3ru3rv+z1XV17LON4qI5py3PtdvYjH2pfa7v7sfY+ctju/febtfNq3Yu89j6VccHa19+/Lf2nB73Bd73J5z05PX71dh8yPtBAD8xgxkDD6Iq8UF3XuMxDVGuyB9SemZ9mfu0zm7xa16jNZ4eG6dInaq8589r76/ExnNo8qHuP8XCFrg/4Nfw8fHsC1XodFZz1wFyhdZZLHA/e27qsunvj8aHurLbmw/rgJsBCGI3h9GpvMF61br5SvVC9+dXKarP1sMwPD9VaL6r9xpx+7Vk2qEZeXK09rDtR7+snq7tfW9tMjuHUM/NO8KHerzMeHlQjL7bXNXwj6n1d7WtZC5bV3eFV13nIYXwMPDj1zDyofS3+oBp5XaO69BV+ELV7ogot1NauyRgePXPd91Ota9bt6UNtrzIuzB6G2jk9qN2t1r7jD1dLzj7DTHpQ7+v508FQod9Qt3+uo2EWPHV13XM1y6dVrgAAEABJREFUtcX1PjNnPa7fc50fvJ+AszqdmX04V+v8a7Ne7feYXHdgrlQW+ERtz/z65ej938fNVDoXj4drX0yn9kb0P4U9YPp173f68up6smb4riMbTGd4/OFq5PpTsPZcXdc71566duf0rs1eono93t96ME695+NjPaAH9Xtfp+5z0+XhE9V6PrwKXbPhuabuTm2tV7eeubr2sk8lujwDH9e+V3NtXbvPmw4+MRmGM/uka+/5T7LZb7j22tp87qEDp3fqaj3vTx1eddbf3nNvwWvQf9Fbp+4zk0O1rqnrZxUP5KNx7fX8Af8J2emZy9rT/dF/dwLVqpSz+2u9lgzneTIN/Gq9nhXrQt17TO/1ev/1Knz+X8B5Bdd3vW9mA+EwXfsC9BN6UK2bo3WGK+MCD+rdW+GvB/kvufar92vXnmvvoT+orjXVbHNx7bVjWDf65LrX1ta111a/XaO2N3tUS9ofDMN07b1GV2vPmXUr43pj1O7zl/l6qJ2/5NUZjau157mGhjOn/w7WDGrvO2uqJeXVuuYyXg+17/sll69zgj+ovbYa6zeundXe115Tomv742E+jMbVdT/nTA+ea/i119GfUDu3FnTqvqeKta69xK8HXTDW730+TIf+J9AH3drXpqH2/ItYP/ibE6j7tZnqd+crlwE9OGf69UH99n54eb7/X9Nff1VS+8VivlL0tmgZx0Pd/do3/fo1/mjccvbD1dqXhmnV9meWwcy4QgsyWMProXbGg5e1rlMt5g1kJ6r17zKu3ZXpVuT68CN4uLr2rK358opcqK61y3g9TKf6uMersr5rr9Vfxq+H6pf6Wuuri6eL4ev1heElV2/0c669D386lfENMmDiau1b7/crg9q5/onavs7pm6vTWpoPhmpdkx5MNlxNdHHdnl7tmZ4SXa39q2XzYA2PB37dPXG11p9az/xEtazabJju+fNU+3wn15Hj+n0tH/QHtXv8uvebfHzzqc0/+P4EqvV6OzOtumfeQPaE7PRmrnuPalUmW8PrYX1wv/i6eH0uVqujO5tg4FVoYbw1PB7OrO41apNV17X4n6BbXVH1tkY+YbVkbV7D66H2G1gXXtb6ru2v4fUwGR7U7phflXVtut59HujAqc0wHq739fJq7V8744E+0CeqNdY7L/N4qJ2z6ve9+eAa1ds91N2fXPcE/5xHf+dXU1msN1jG62Hmk1/29V3ve9R9n1fpl6iu5/TLuv6wrcZaHYNrnnzq2tc5OzTUe/ZpHW8wa+q+hzP7Lq/3ft2zNfao7dW+J56stm+uOzP/4PMJOLdB3een7Tdm/B3kdZ9zva+3b925fazBcH1wG2AW1PtGsj+h7n613uzVtaRav9kyqpXTg2rkv8Xu1wJcXftW7OsHUc44eTQfzrm61tbeS+dE7Y51UL/3quuezrWjq5FvXLdvbyGurv1mllVogU88mVe7JwMenNo8GB8Dv/Ye9Hj0E7V7z05tX182mBlDtZ5rbeaBPoYKfQvdeu/Uft0sqlvr8uDU1XUfsgot1K2X8XqYtcMva33X7j79mXG1rrUWvB7qvr/XuLLpmWl8orrGuvVl/hK1s9r8aa9f1R/6cAK1X5varDJniGufK7+2/s6vO9exBtf2q+vzU3Z9cCsxhunai0af2anlf0K13nC12dpqfTDW9s71cnOFFvxpU3uu1v8E1tfrq/Y+L3ntR9fu0oO//tr/oUF13Y+s9ky7dt178k7IT8gqtK4/WW1PwKt75gEfaKjd4QFv8Jz5tfu1ebzac23mQ+3nNXvVzs0DvdG4Wmc9+uvXV+21xtr7jsYnzrX0YDrVej34vOG69+VV4tWtFo9fe67f1+ishY+HursT1e1Zd0Kndl7vLIO676O2tkftvg5U6IKOYbje82d29mjQqX0dM/D+hOng2teszX9a95Pd/9jsd2c3fv1+nrI5QxrM9blb7/71wW0R1F2wGfAxjK73nr9zkz1hzaDe1+hO9tTnrPOf//mf64Ox9htzclx739pZbbautq7WD3rds7WfYB2/Quu6S7weqmuf6uW8f1crnz0mNVczrj1rz9XbmtrzlK09tRlqPxf6zOnxhiv2dd3aa5f5eqjWPbzkxbT1ULtPD+S119Vm3kCPrnttxVqYfJhZOx+v9izjDcxQOx8f176e/ITMXF3Pcbzx8aB2bzoY5CfX79eTV6rrWjNXaxbwoDJer42Bj6F2Xu/XqT1Xa89K/U3PPrUzhWp1Tl17L96soX/w/Qmcv0xOy9mBGT9RidZrvcTrobZXm+17rntV3vrmV+df/08CqvWCzqLxzKNPpge1185sDdT2a78xeNM5efzafRmv7nm84Yq8UHu2bky6tj9evd+LDshxtc7BfKJaY21ew+uh9lx735e11tc98+wNtfunN3611k6GB9Mx1967Ml7QMdT2azNPVvdcW9c769b2aKj3mQf2hFPX3a2u56NToeXVrZl1z7Wf3+wtH9TuzfzsmKt1DXp6de/Jh8mGn5659rrae9bNcmsr9AbZYILnXHtveb3r2ntaI4dqPa/aXVltTz6od09vMhpmfrIMnv7P/H4Czgjq/ay1xqfhOVfrw5gvH5ih7j2riS/2G/f/vfLPCL5t9PKu0mhsUwGNB895fGwN0Cd4wLN+YP47WPcJ1vEx2HNmfM6n1gUe1oWZxxuWgRzzT/BADs9s5smwPn+YZx48Z/50h7/rTI7hXEsDH2g49+Kf8+hhfZh5mPcd/tT5Lhvf/cy+p+bpjEfzPkFnchr0Ts/8hBymPzmPPv3xxj9nHvAG5oF9YObh8c41vIHeqc2DWSMfb7SMh4H+wfcnMGfk/Aba49MDno55mObj05t5MvMDf/3rFf7fxpzFL29ZGAzD9PQwnJl88PTN8Cm3z0BO/6n7zGa2bmAfMOMTpzdrJz8z+pnr8Z7ZOcv1gI+f4OsBLT+ZBrkMm2kww2g8OZZ9wrOny3vCWp4c6PFGj28GM9DTNdMDGQ8PZDQGGuizaz4xnZPpE9P/zpPL8Hkt3kA2evj0znXjYz4+18yM5YOzQ8vxCR7wrPvEPJDrgnkw/jnTfAynNv/g9xNwRnO29DRoPoyHZ8Y6PAw8M575ZNmJf/2P//E//pq/n379vcn1W7dFik+2MfAx0KD/CdOZzPyEjDf70DzgAX365ifkwP+OJzv31B3IwYyf4Fs7LKdhtJw+IT8hmx7f/MTpT/e7jlx/YJ4uDWb5yTSMrzfgg2w8mmcebQYzyGA8enB6ozFMZ96TZvvJvoNcD2iYLu+EDHjTMcPMk/FgZnxCBjxsPQ1m4A3m52vmszddzB9MF09Gz/nQ/BOnZx/zwDzd8Z7z+P8z/L/bGq+DM/W8nSOG0U+WDSYzzx70+JiP+d4/GP71f/wf/8f6OzPDlLD5idM/9Wz8XV/37JgH1tAYzp4ZeEDrjh7mneDD9E+mJ6PhXGse8HWHn75Zhk+cHv0d7D3rdEZjGfDxCTnIMExOj4+BBzr46fF5WD5MD+RPPT0ZTH4yH8ajZ93pjR7WGfBobD02j8ZmPpwz3wz05PgTdED/zM959PDZsxZ4z/w56/FOWMcH+oSeGZ+5GSY7mYbJZ93MMph58mHZD74/AecEGnOGp+bJMchOyM55tC5MTk+G/R03XpjSsDKs8PXANwP9stZv6HhmenB61gwmx88OD/if+jI+HuiCeXg6Mw+PPzw+htmDBvPgnGe9bPzxhmUDnafPkz993gn5YHzzud48mM7w07cO+NMZ/s6Xy4CGWT8e5gGtM0wP5PSZjccf8EAPw5mNloP57JhBBvTArDsYH8tOpoE/sI43PHpmfEJ+YrLTo8fH5rkePeCN/idsr/ltjf60hm9f/Cn/8X4/AWflzCQYaJBh+CfaWj2wxoyfMw/ePrinJICZnzyb6tDPnD+Q03h6ZjjnU09mDQ2j9U4tg/FlA57MTIMZeJhHYxgtGz083smffiCmj8/uU8/1+HD2R+vIBnweHg+PN755fDyQw+SnT/PlNJzaPDkGHtBAW0Nj4AE9MJ+d8bEMD86ezIxB55zHO5l+dnjWAn1Cl4+X/3oww0u+fX/ypmD9mY/mTwebJzMPTk+Hj+HM+Gag4dTPvlkHRuuPHpb/4PsT8LPvrMD5TZOG869RZDw8MFs7M+bhE0fHP16yPrPXw1mip2iTAR/Mw2dvtGw0Bh5YCzTQk9MOAoMcRk+PB2bZgAf8wcx4etj8CTJrJ6N55uHxMB/DqXWBj2XwSeuAHD9xrpnO6U1/vGFd+gRv+rQMj4fHw2Y5ffLp06AzmNmaE3wz1h1tBjPIzAMezR/wgD882gwzzxozyD5BdkLHbD0G3hNyHoZTz8wb8OwFNMgwjJbT+PR5f4I+TMfacx4ff8o+ebo/eD8BZ+qsYPTZ4J84s9GTn+vpybEO/s///E+f1z68v4jrrztmgSKNLRic8+R48ief/cmmjwdnNh4+fdp+QJ/QHZ8G+emZB3I459En65yQzZ40yDE8M/PktM7M9GAy81Ofs/zEp70+edbwB2b7mjHwzHjAP71TT2dYl8Yw3WHZiaf/3ZqzRw9mL7O15mGe+clymGz0cx7f+tE6J8bXARk+MR3ZqXXMMBmPHqbhnKc/vhlmxjDeyec+Oiem93femf/or+s/G/x6fT3P15nCK7o+X2l4dnm6fDAP05/wr//+3/e/4lURbDBF84BHD4+eGQ/OPcbDswbrDGTAxyCbmebNPMx7Yrr8s0cDH/RgNJYDDfKB+czMIMcnpodBNqx/arP8xOR/501uj1mD4fSmh8f/66+/1htPF/hyGsPoYZ3BeHpg/gTZrKEHuvRkM2OeDGiggQYaaGtoOPUzk/Mw6ALNBzPQIINTm3Vg/NEzTwePp3PO4483ufkJ3TM3Pzvy8WnQweObP0Hnk//jfX8CzmzgfGntJ/NO6ML0ZKP5Jyab3AzrN24CLJgCPd5oM5iBBnrWmb+DngzrD3jAxyDDT0xnWO/U5nPNZMPf5eeas0OD3B40mGG0zDz89M9MRz6QDXhnPj5vtM7op28GOX52Z5bB9IbH+9QbD59/rTVr7AEzY10ezIwHfB3gnfMnT/4nWAOzFzZbQ2M4tVkHnv7MshOnb71ZTg8+eZPh6WNd4H/Cs2PWwzBraT7Q45tH84EH9Pl6mvk/+PMJOCdnCppmGI0H45tpoAdm+2DeaAy8E9c/DiiEM6R5QM+m9GCyYb7eOfPMfBqbB7zBZGa5+Ynxz85o2Ynxhyczg70xf5gefzx8en+n7WHNieca89mbefjMzn34oDe+mR4PAx8PzDDd8WfGwMdAW4PNNMz8yZscywdm64ZpmXmYHsjhOU8Xgw4+e/R4WAfG59E8GptHm0/wJ39qM8gHM9vj1DPzBjyYGdvnZPrsjJ6efMADM9aFmfETctB/Zj/z7yfgnJyXhAYa+DPTvCcm55/abA0Pm2k8ePuNe8wp48GZ8cwY6BNzkTOjxx+25vTNMiVQwYgAABAASURBVB494A1Oj9YdfH19sRZOr6/973VYwd88WDeVU/Pcw/B3+synwxvMnpOZR0/HzAeaT+MTk413zjTIhmk495LB6enw8Pgn0yAfmGHW8WneE+PrgBlo0J8ZA38gH40/5TogH8w8PL71A9lofM765uHR5sHp0TDZMM/eQPOH6cF4T57c+tHTmXky/uDM5jdsma5/AkJO4x/8sxOY83KOYD7ZLjwM9EBvwJscn9A5Z3r9HfcEw7OJwgn+YLrP/Jzp6WFreTAay3gDM39m/J0nAznQcK7/r7/+6+uc5SdmnQ7IhukTfH0MMsyjgQb6idO3Ts4DMwY+8Ib5wBuWAQ+f4Onx6IF5fAy8TzjX0NOxZjDeMF8Xj2ce/WS9gezZlZ3eaL7+MD0Zffr0mZ1apj94znx9oE/wYNbgwfTko7H52eGDDMtHP1nO06Hh1J9m/fGni/nDk59M/+DPJ+D8ng3nCuOfHb4Zy4d5wMNAD6ZnXr9xj+FPYaYFPDM2j4+BPyw3Y96ABzPj6QzzwAy0NfDUcuDDdE79KeeB3pPPPWTAGz710zP7TUUHzv1HP3O9gfXT49HDo6czMz69mU9v9uDRJ4+edRj0gAYa9M1AAw1yzDv1eHigQ0+PBv54w7wTfLP+wDwYD/P0B7wT8gGf1qVhNB/MWAZm/AR/IBuNzfYAGvhwavPZoZ+e/kAGZ888OZ/mwWg+mAfm6Yz3w39/Aue5zfkN//XXX9cGpzdrhq/SL/H0z7W/Kl/r77gNQgtgtA8dsxzGPz3+ickwTDZrZ5bxZsYzy4CHYbLhyTDwB/o8DJ/8Mx89PfPAevrk0Xx/uJkHPPtgOPPxpzvzMN8aOL3RGOQw/dOj+TAdHj2QjYdhMizHIDPjmfEJmc7pnfNTn7O1s44PZj7Q443mf4IeH+ue4M98at7M1sHM2KwzMPMH5sF0ZDR/mAfmYTmN+dhMD07v1HIzzBpsBnpg1p8ZmwdmmB42T/7D35+As4Kz4eye3uSTTT48OeaBLvCeWL9xMxVhihhkIMM8MA/TshMy4J1MD851PN3xhnmDpzdrJn/ymc/a8b5je0wXT49/YnwdkPHAjMfDMP5k42E4/VPLwHr8T2A9nN2ZhyebfYfH/xPbA3RmnRl4w7LR/MF4WGf84fHk42HzZGYwgwx4g/FnlvOAN/No8+jh8WYNBvmJp2fdeBj08YnxTqZP2At42PrRJ4+e3Dzgwcx/Ytf4U/6T7f8FnE/n5IzhmfGcGx/oE+Nh0AedYRrWBzcTzrJZAfj4kycDOdB6YIZTz/z0+GA9hrPjN9czk8N4ugMePbl59OKv/R9W8vWGZWb8HSbH1sF0eaOx7PRGn6wD+kCDDvBOlvHw6fOekOuNbwYzf7R5MN7w07eOJweaBzSceubpmmFm/OzLgS+nBzMP8+npjp55WA8mp5+YDA/O9fS5ZjqnR/MxzBoMPDl9gg+T0ZPT/BM84GFd/IRchp8Z/+nN/Km/s5/HOQHnN3Be9GRm+vRoPshgPBrMWGe0+dTm9R9OMkGZeWI8OZhBxzzg0eNjHh5Mbh59dkbLTuiDfDA5H2bG5oE+zafh9bnNuv4bTTLGyl7CPBjvZX/xMO+pT+/M9Afjn0xbO51Ty/jf/ZWVTOfErMegAzSc2h+G4/HPfcxw5uYT0z87p9bV4WHzCZ7s9Gg+0IOzR8vxM+cNJpsu/5PHPzEdzLeexoPnPP70sQ6G0ViXN+dP8wZnh35ievjMvpvtD7o6YB6YZWY8M/2D70/AeYHG88zMMqBBD2g+jWemgT8wg854+Po7boNwYH4uMIMM6IF1vD/BB9CZW3uuO/Wzd66dnvV65/z05MDXA5o3eM7j47M/vfFm/tST6cmekI331OesY559sHkw8/T4PDOMHvZBMfqZW8uD0cOzBvMw0PpAw1PPjK0BvQH/1OfMN1sDn/Qn7+zK7cMbmPkzn8w/MV0MMmwNjc0w85Onwx/wzve09SDH8NRmkA3M9jLTQA/MoIPHNw9OT+cH//wEnOG0neNo/oA3Gc98YrLxdHjAm5kerL8qmQErn+CdsMnMejSPBvM/hXW61gHNA3pglmPgm0/wPkFfD8tPzQOejMZP8OH0zcCzHkbjwfjnPOt4p37O1spBBjSf/ndgHViD7QHm4ac26+LBzLMG82A6+PT9gTHe6VvzxPSwDFuD/w7TP3uf1j57f/3111py+jQI7EHDaD6YMZzafMJaGE/XPODzMJz+qWVPWAenb8050zygn/jOf/Z+5t9PYM7u+RqYYVaMHh5/1mOQ44F5usPrr0oEwFTGQPMHZpABPZl5MJ58vCefGQ06sxab4dTmE7JZi4E3ndHDn3Ie6GBraXxiMp58wAc+Blo+2gxmPg2n/jRPH09+ah7wZi9s5oP5Cf5gujqjJ+PBzMN6AzmcmQ9r3nROnp58NDY/ezPLwYx18RNy2cD87MjGG/3kyU+eznhmcA3gm4dH/2nWgVmv+4ScN0x/h0+d2VsGZqDh017f+Z+6/7t6ztBzn7OamUePb4bTO7PRw7p/h7ffuGehC/xp4eT6oDveaDPIB2Y5jDdaBubv8CnnzV7D362Xn9nMw2dG84EG2vXADPT4M2OQ4cnNNA+eMw+mMznmnxhvupM95/H1J6PH/451pzfM03/+v/i86eAB35pP0JGD3IyBB6c2A08XzMOn5p2wRo7Hp4E/Hg3myWbGAxnMPGzdUz97M+vSYA3mwcw8GujJZsYw/rMjAz4emMFsLZwz/wf/3gnM+c0qs3M10yfzgfeE7mS0HAM9WB/cioMJMO9ki8fjgxk+ZTwd0MEnxsO6IDfjE/Mb3OnpDcY307MXPZDxMfCH+eZhejAdDGfHrMejMYyHnz4P9CYz0yfT32HWzpqZp28G83SGeSfOHq0H9PTMNO/U442PBzIw48FzPV9nfGw+ocPHfAxPfc7P3Ho5yMxghvFovvmJp2/WB10zBnpgBjPWp5+QAX94tHkw3vD4+Omd15IDDwM9a0bPLP/B9yfgnObMsCYP6CfGH5aPxjD7yIDn848evP2Hk7MAK+MpDvNgZmzWpwczD+vAM/80Tw+DDoZTz8wD1xqP5gEN9IlPntweshO8gY4M8zCcenL+iekMn5k1wJMDDTTQg3OedcPTMU9vWMbHJ+T84cnMo/F0xjfDzDqjh3mDs/spP3u6M/+pO53hs/unPfQ+5fzZa3h6T5582NoT45/r6IF8+jTfPEzzgYcHMpj5ZD5Yg2X0yfRkeMD/wd+fgPOalrM1w3g0nPPo4ckx8O2FgeZjM6zfuAmYcAoYZMM6ZjzeME/2T6A764Zn3cx/YhnMmmEe2B/Gx8+ZB/pw6rNLgxyfXd4508A/u2aYjH7i7E8Pf+fL7CHH/gpjtPkE/9nn6YxP886ZB3x8ZqOH5QPerMEwGTbrAM0bzIwHk+FZc2Y82Sfo8fH0hvmDT7keX2eYHvB0zDQ+IRt/WM7HcPo08HWAHkw2M352eCesGfBpPJj1GPjPDu8Hv5/Ad+fEB+cJVg7zYWYZ8IafemY5XP/hpMFGUzg1D3iga8ZmGsxAAy2H0Xig84SMN2vMwIOv1zD8kuufxZ55mA/nHpOdns74tMwM5u9YBvJZYx7wQcbDg/HNssHM8sFk3/HZo/2/U1iftufMNH94fB6MPzy5+YTuCZlZf7QZZsYDvi7mYfjkyZ++GWQD84BnvxPjYZDp45mHx5t8ZswDWp8e5p3ggw5/NDbDZPTgzP1B/Mn/tG562B46GMbD42OzHOgTn7wz/9H3f3PSWTlPoMH5YB79J+gNvuvJX9l/vLB+2V4Pr+H6dqHBZX4QNjp75mftmT87Zph19LmG5smHR8uAf4IHvLNL80/w4PSsAz7IMG/AA/7w6HPmAQ9oe9ADHpjxieliPv7Uk/HlMDMGGR7oDHiT82igZQPeiadvlp9Mw+w1+Xhm2YDPAxom44EZy8AMo2UwHt+MgZYBDXzg4YEMzMOjzfr/b/buvE2y9CwOfoZkLSAWg1gExpIRILMZbBYBkkAy/uLGZpFYjPHFJrABC7GZVYCwVubN3/NU5LnzVFbP4Mv/vJdH6siIOyLu55zKns6pya6uPoOvA2etO72X5nYwnM+yxyu3w4Pz/KjH0wM7Z7zkn3v/L899Dj0HNNBAT/A8p0BDNYbZp3XKV50vf/nLX/v+97//K696f5MpYReZBZ/GoAO8Ml3o0GW6OPfNIC/TdmF6NJx9/Yl26plpDPbN5bM3fVm7fDDzq8/z9GVnzF1dmB5thw9m4D2CTvEo59nXocGMgZYVvEJGl3XMQAMNNNBn8J0BM+Ob+dVlHsiBhubYXJj1JsumR0N9GuwAPVFPny4669J4oj2e3ExP8Ds3x/VpefmsO+tDZ/wSnAVyO0DD1GZol34Tj5+B11577e5PU8+W57Tg07h46fltrzx6+dKXvvR1X/ziF9/ljPVWCQHKLdLAB1qGzTRU45egB3Zxe9Vl/tRmO1Cfhs46E80wH+uCuTBD8/rm6jIPzHiiHgZnYpi6O/xCDjLe1OYJnXNeT29mNG/mc+abYXbNRf1yd8xT65tBZgaaB3QhAz6G6vK5e57t1MP2Jppjvg49wTfL6IJHY5m3nMzAm5BDs3I7zTDwy7pFPTmcZ54uLjq327k5/+zJeCCfMw0yaM57E69+BjxfGmUaPIcwfbOMB/TE9HRP81uvn3V7u+Rye6ukJcXqcg9uNmeaX56aBzyoxuezp9duPV0a6Andgq8D1eXp0XZw0bn9cn09HkzdmacLPKD5dGE+Q8bDMPWce568evJZmws7PYsGs5yeOPvnjhnmznmWOQefwQd+mS54YJ7n0sA/o/1ye5iH7dCT+TD9ar4urueFnAd8qNYxA88MdD0a+MAvzNC5vfPMn5DPmeY5i57gQT264FXbN7+J138G+pxh7T53ZT7IoLrMA30eLvg8zMNw9+WADFBQxp3xhNxcbpc3tbmoj6E+7lzuuTK6vhk6ywo+jWFq80voWRjsgT4GWobNhfmM9uqb26f5ZhrMBZ+uX+YV9drl04UZOmPzRM/AEzpmDFOboefNjNd5an3+9MwgAxmeaD4zGtqj26tXnpmOWUZj4JmxGcyFuTh73eHToIuBb4apzQVfF3hmoHlgxjwwl6sf5WevXbvNyjx5Z/ObeP1nwPPledMs0yArN6tnpkEHeBj4QMPMzHD7jHsNb3nL7T0bc9FFhxUyembLuwQtyJe4Pkx9HdcPu2CQ0xh4Rf3Ok2Wdq3HRDPPO3GuV5cUjT+YcoCemd9bmwg6N5zV4wAcZVD9i3iN0z3kFj26f5s2Znl51P9O0MzvNy7KJ9qfXrgxmRjenJ6ZvD+STq/n6cPbOsy7oYqALM5jtFryJ+nj6tF1ohs0yGk/Ipm+eOf0q71W7M3NO5zLvTbz+MzCfr/lzQcvKPYk39Zz766t5eXacV/8txDRaxPAo5xfyMx6dp1MfgzOwjJ6MAvsrAAAQAElEQVRMFzrNq+fcXlkHzHrVGPiFvKiHp0fzgAYa5nlTy6DdMg90gYaZ84EHMzfLeOXqOfNgenbr8Tvz/IPDA365+vW+NE3POUDbp7EZaB6N51yPf8bsNePZgXq4fvVkurA3wTfbB/NL0JPNHg8eeboymLrz2eMD/xFcY0Jn9qv9nFXPjt3py3i4OOf13+Tnz4Dnqpgpb859juvjopn+1Gads/fib04qFpbBPwj4EZq9dtl/z5rdXpB+tMPXOWc8kD/K+KAjx1CNQQea8aY2gw4u2sHAL7db5kM79c3Q+cx24Ozb4WNoTsOc9YCPCx0ayx5h5npmvTLNxzygeTSYH0EGzezA9M7Zq3Jdu0DrTvCgHq0LNLz29Pf/tYP5QOuWeebJNOgUZv/Ca5dfLQNeYYbO2Az0RM/hNedN8M1Yb2r3xQM5vKRldptPLXsTr34G+ry15fmrbnb2zLLC3J3qZrheO+szbi+6DcoKFia/UT3PsFOc/Z5fv9x+ma+LedhMF2borEOXz9pczL16uL4zaOADD+j6mAd8oPk0dOaBmQ80nLVZdzJ97s5Z/gjnc7rTrhzMGKqxPg/MhRnMZbqwVz2ZD2fP7BwZ0MA3Q+dyMzOYi8726uH6+JzJz5gdGtpxBl2mm5d5Rb1yfdwzmpXrYx7oAw8Xc5695uX22unc/E1++Rnoc4WLts1nPZ/jap2pO0/PWXNevznJVIapFQs+mPUm+J0f6Uc7s2/njObdLZ99s12sU90ZFzOjQTb3eMAHGuj2OpdlE/xi+jTfORN8kAENU+vzJmZOT8zeS7p9+aPzp9cu1p/gze7M6Fdl3cUwu9V855zR/OzPWefRPn/26PZk1XyYc7UezFm3eD3/3Jtzd3nV5Zc8fuG+6PKr9Dx39u28idd/Bvr84T5/1XN2Uv1q3M7UeuaXsN4qeankwGb0PKQ+TzbnqeUwPX3gQ7PJj3S7dsFcprvzSMvapXXMNIZ61Z116AmeHtCyMq+oh0FvYnrdmTnvPPPsveUtb7ng5metJ6vfmfeSlsHMuz99OR/oQgfMMhrOWs7H5+w86+gCDbNjLnTAjM/gg32g4Y30dHSBto/nTEMzDHogK8wgB7rQoevjiZlV2wEz0HZo/Ag6oAM6+E28/jPgufLcgXa5Wk6DDOjpz5kPvHZxwS/eQnirBJ8LDuFhaKcso6E5fYas3XI7ZjCfeXrOAB0McuDhwiwHnhmbwQw8zAPzI+jwdehiejTI9KrNE/XxGfagvj3vVZr5ZjBjoF+VyUEH7AAP6GLOdPu0DgZ6ZjwzlsHUsnrVuB1ajuth4ANd6PEKPg94ZqjGhY4MeHh6nXng10Z7M6uW6UG1jJ6Q84s569XHZnhJy6D5ZOdOtMdrrx6uLwMe0G/i9Z8Bvz77HM7njQYZ0PM0nhkXZpjdcyaH9cJNgBIu5gE0zI4Z9CdX88FcmME5PBoeaZ6e/IxmcpDzoBq/HuzCuccrmvXs81y/3Nx+9eSXfB1nNMfm+pgHdDOa15k+e83q4+mZ5141X8+MzdW481mb9THQutAZQzNcTN8vDnvAL9MFD8xlGsyF86snv+S345xCt+BVt2uuxjrl6nOnc7k9e8DngRnq0dCMD2fPDLNXzZ/o/vTe1M+fAc8TNPF8mjHQMhoX9THwy+eu7Iz1wq0I57CeA8GMZ48356nbxXpFO53l9V577bUlefI1jAceDGvJehjsr+DpwQxGOZ6YGQ3Np+Z1/8wzoyfOZ8yMbu7M6unTj6ALMzM7h4fNdHGedYCP9Wig4SU9+3pQD8P0nAN83IwGPlTLH0HO18XAA7owQ2f9l/5FoNNuWZ8PPKBhZnOur1sth85lXvHIa+asot5LfO69NL90vZf8l673/6p/fl7n89DnEOvN7CX9Rnqf+9zn1vrdb05adCEJjc0wtYwH06/GE7PH70zDo5nnOoXeGTOj7ehgM9A8MBfmidmrbtcM7fOr8Zxp4ANtF8xnyHnyggf1sVlOgxnD9KeWzZ555vSEvH2+uUwXPL3CLDOXedC5mXlCZ6KZPt9M44JfDxd86Izt8ICuR/POM7+QF3pgbl6uJ+eVz76saGZuH/OBD9VYXs88defp0SAD2hlAw9RmeOTx38TzZ2C+leY59tz5xKC6G3xeZzzncy4Dvi6Y3/nOd5L7e5XMsFoJzFCNwXaZ1ilPn/cSuiM/75hBVuiDuRmuxwdPJp+W0QUPzBh0oB4GWVluhunRIAcaaKALu8DHfFzwgQ/1H/HM7YAelmEzXebBeeYBHxfd5dN8GpurzXQ9zJuopweysp+vagyzT/Mm6vWcmdHywqzXma6Hi+nrmoEudKc262CYGS3DMhroQgadcTv8qTvz4Dzz5j5dtIuhPjbDWZv/n8crngDPWV+kZ83PA/DKutV86Cwzl+lHaF+2vqqEAedF3iNYrH/W5olHZzY/Z/Wx83FhPvc7l3WK7k1uj6dXrs+D+pPpon3cPi0300U9Pg0yPL1Hcz297vAm+MArV9urxhMy4NmDs5YDH7dj/qege9g5dmncmeZ1pnln8NuRmSfL6vGBhwszdH7E8onZqc9zLaAfYWb2zp3pVc8dGh5lzpJheTU2F3LgY6jWMZerm5vfxKufgT53Ze3q+TzS9WdnevziJV++3uMmHsGii50xu7L26pvfiG6v7Cz/Bjvv8meneVkGZl3ozAMz0IUenP3zrAPdk5txPcyDR778EfSnP3erZ6eeHbowgxkXZjDPcx7NvNdDzyjrO98MnbEZaKALM5jt02DG03tJv6ong7lrBtcozDrAMxedZfXO2vwIc1duvx5d78znTA586BmY3/9aMcuL86zbDMunV41lOm/i1c+A56qNqXl9DvnAA74ZzBP1yjOj7WJYL9wM6EJ1efqWQIZlNDbTUI2b4UdZvW/4hm+4fOADH7h85Veuv+TB6u3rlHXsgwAXMl5hLnT4nTGvkAEfn8HX5dNl3pyn1pnQnTOtD7LCDHKgoTnmAy2rfsRymFlnXjE9ep7dDq8ad9Y3Aw9ooKEaT9gt+FOb7fIm07JCDnwMssl0ITtDxnMG0Lxq8yPN05vQNcu8qGIe5oO56Iyhvn417jy5Wn6G7NF528/6K/+a1+sZZuj8Jr/+M+C5hDY9f+aCz8P1cGfcvMyD88xbvzlJgINAEdfDwJ9oR1Y0N9P43KvfrPl3fdd3XX76p3/68p73vEd0e9Few9NDu0/j6jiPD3Qzuh4NMl7Bo/lgxkCDHAN/4pzNzqOsOQYdcKYZAw10MXsy4E20i+W4+Xl+5Ouc/Z6Bm+PONJgf7dZvx1zUw0UzZ/Em0zA79PTsAB/oR5AV9nUw0DIaaKChGrdLN6s2g1kP6KKZmQadyc1w0U57ZjDrnJkHfD264FVjM9Bv4uVnwHPkucTnFr+e3IynZ+ZDfczH9TvzivUZdwfcMl108Zx1lkP7L3E75fZ6jrdJ/vf//t+XL3/5y+sFuTm2AzTQ0F0MPPkEv/NZt1+/sz4NdDF7ss5yMy5kPOBhoAsdmg800CDHMH0zNJ8ZXR8DrzDDnKuxDJwPPKChGQ94k5vXl/EwVJd5s2ue2dTN6mGoj3sWv+DDOTPrnLNHM2+iu/jsm+v3fF71zHiFTrMyD3QwnDMz6IBOMefqcnd0eZ1p3pt4/Wegz1XZhucR8yZ4UE+P5tHls8efWC/cXRBYABqqdYBXnlqvflle1NMDfj2a96d/+qeXn/+FX7j88R//8Xrh/qZv+qb1tolMF59h9wwd/fpT88yFLvAxny7TfKD5NJgx76zN0zeDPn4EGcysZ/BkQJ/BL86ZM2T88lmbYebnWQbOK3SAD3RxnuvjR9n0nK8H0zfDzM2Xy+UZ6Uw4BxT5+Izp6wIPaOhOdflRp10sB9oO0DB9M8ihenb4IDtDT1bIeUVnDPwz1+O/idd/Bjxf0Cbt+TfTQE9v6pnRRTvmt771rf9w/eT2s/R64RYCwwWKzljOx+apeZ3LOiArZFCfntnv/d7vXX7nk5+8XG/u8u3f/u2Xn/zJn7y8973vXbOePai2X/Crm/OgPt2sLHukeYWO3TPkzabmAc8Ojc3VZ5YD33uj1Xags7yaP+f6GGQwe3zgg8xcpsEspydXy0EO9R9pvZmfZ1lh/wzZ2esZZbmemQYa+GYMU8uBN6HHL9PN63VuhmXTnx4t04Gzltc/Z2dfDnyoxsXZd36hI58zz4zfxOs/A54rz6EmfeZzZgZdmHrOzpEVMt7b3/72v/n0pz/9V/TtywENEy2fPYfxmpd5L6E7zTt3t7MXrHe+850X73X/h//wHy7f+I3fePln/+yfrc++564+2J/QMcvoMs+MeWUe8IAGutAFs+wM/sx9DGbQLesBr5DVo+vzoN7U7ZTb6VzuzjnnAx/o7nTmwdmfczW2h4s50z0Ln+d606eh5+nQPKB5NDYXj2aebjtnPudmHWwPA68wgxkDPcEDZ9Sf89TyOdO87pZ5IIezLwMZLvSgMzafe2a+/E28/jPQ56rs+bNlhurJ1boT5/7s0V5bMKzPuC0bJnrI9KaW28PTr57+1M3tVpff8Y53XL73e7/38qEPfWh9lv2Lv/iLl//xP/7HxV/O8K3f+q2Xr/qqr2r1GTuv16nu3DK/Wlbw6OY08OuVedC8XO/c40/Mvm5nGnRxffrsmc85D/RBDvUm83WAlk3wivqdMW/uTt0MQ/s06OL6GKbnv7ja458hs1M0N1eXeWCnHuYVM+PJJ3gwe3Q9Wt8MZqD5E7xmeGZm4OlNrs8r2nlpfuTPc7qPQR/rgPlNvP4z4LkCzclTy87wXJ+97jSbcz07d19VMoMulJUndGXAN+OiPgZ+O2Yagwy+7du+7fJjP/Zj60uV/tN//s+XX//1X7984QtfuLzvve+7fOxjH7t893d/9+X6Po/q6tidWMHpQT4t1y3455xXNHvUb6ZbXdavlgMP1+9cloF5YnrdrTfnenZpeCnn62HQBR6G6c+5vi79CDLoXjXW50/wZLwyfYYeT6e6zJ+YHVpWpu0VfBrLJvid5WY8vepzVn/262F9XOiBuXzW3ZHTMDt8mB4N7Z75nNkH/pt4/WdgPldTz03POcgxzJzmNTfTk599xi0sWjbTQDsUvzTL/ilwnrPAHv7mb/7my+c///nLz//8z19+8zd+Y71F8q/+1b+6fPSjH11vm3gbxZ4+2JmYmbxzmQdmoCecxcf1zdC5zNPDPBpo3tRm/vSmlgGvXTNdr9p8znhw7uiBDKr1gAd88JkuLmZG22k2Wda5WpcG+lX5S53uvIrn2XrOwsU55/Nmz1wfyyZ4oDd9mo9BDjTQhd7UZh18xvTPO+3y9aBeWTa1GWbXrMObmgf16Dfx8jPQ58nzOFvmor6ZLtNzn98Zw/T0i/VWSQdFulxt7gF0fR4NfKBBNmde8dprr60XZR0e1v2zP/uzyy/8wi9cfud3fme9t/3+979/vW3iD+T8l//yBo4zlwAAEABJREFUXy6/9mu/dvnSl760dvXtFmbnFPxqbNYBut4j3c45m7N9PQy0HMxnlkN9uj0e8IAuOuvSWEZjc7V54pzpQX3cPp8uTz29+mePP88z6wA9oVfIoTkt60yDGcvpglctA3OZhvbKPJj/sjpnzphozrOLH3my+lgPaBnQwDdjc7UZzEDLga6H4SVPX47b6YzrYWgPy/9vwLn/N875/9sZPu5i3juvz2+Zp3Oe6+P5z+p64WbOJcvAx0DrYKChWgd4r0I7uLv65j/8wz+8/O7v/u56Yfa2yE/8xE9c3vWud11++Zd/+fJLv/RLl89+9rPrvW9dOxP1nAmyMi0HGprxqvkTr8pmb+q5M8/l602P5oMMaD6Yi85lfrUd8yM0a7dcvztmmPPU9uSFrF61GcyzZ54+XciK7shoPo2h+swyfajGE3sn658tvhnOOzz5IzzK6jkHulffzAcapjYDb+7U4xfNzXLz1PXwS/7M2pmeMx/NPFlhhvNc7xGfPdcHfnE+zywr028Uc+d8HWdMb2oZzH3z7NDnvB0ZDTpmMAPNp8GMgT9nXiGrXi/cHQTQ2QGd6QmdZvRLsNPsUX96X/ziF9dn2l60//2///eXr/iKr1gv2P/tv/239RbKt3zLt1ze8573rBdvZ3YXF65Hy4vzXL8sL+qVnVeNzzMP6jvH/BLaK+vNHT7wyzToAQ1ymB4fpletK5uQFXwdMz1Rf2a8c8esAzToAc0HekLOB36ZbwYe0IUczDK6TEPni9/mvv7XHm+iu7iwU61LY6DPqI9BXqbBmfWq56zzCLpnn2cXZJhHA82j8ZyrsXxCF2RQrUMXMqiPJ2S6vDLPXJihM9YFemJ65x1zcwx2y/TsmEdmXP9Cr4cLe6vw9MAn659ZBnxd6Myr5oMZ6OadyzL6+m7DV17fTn4XfXvhnksCM3SJN/V51j175rM/P92XO1MH3vnOd168aH/4wx++eBH3VSVetP1JSr9x6atN3ve+960n2W7hDHqy8+ZcrSfDhQw6T+bPPv3I43dPXo07Y9AF2SOenn4x+3QhpzHQMLUZeEADDTT02jTIeEDzzprXDBd6MszD5qnNIOPTL0FetGOvkNHldibLgfeox2uGC373cNHcTGOgz3DG2TPzi7lLF+1h0MdybC7M0GyyzszMcLns719yuf5PH65y/ZDPeZlPD/UxsPXBDPTZryeXAc0v8zrTBa8am+3QGGioxsADGujCPMF3Nq5PgxkDrQc08M24mLMONHsj+vo6+M/f+ta3fr2d9cLtQGAU5/ns90LtlfVkMD3+nKv1ZOBL/n70gx+8+GPv3uv+1V/91Yvce93+MM57rp9t/+3f/u2lv7vaM+yedWf7cgy0rHrOfPOEHh/4ZqCLZmb6nPOhvk7Bh86T+XYKc3O6kNO46IwLGY2dgws+8IEGuRnMGGiggS7M3ePRUI1fgt1mdor65ur2yrLq2alu3lmXLszQHpbVo9/ylresr2jinTH7MjPQYB8XzSa3g0EX60A1H3gYZOVqOfChWg5mOGtz++e8s1yvczUfzCAv6mPe5Je0M2QT3T17Z98uD+uWaX7RGU/IzXOPhvrV5gm7MqjPo+vhR1478mpcrBfuDmVlmDPtAkDLaTBPlgH/jL7o1tcD8zd+0zddPv+5z63foPyN3/iN6y+Qy+U7v/M7129Q+uPvXsg/9alPXf3X1BdcFwxl+iXowMzNvQcaZk6fvfZlE35hd9axBzRU60zdmVfo8wtzs3qYj0GOgQYaZq8zr+AV9qDz6/Hs0sXccx2zrNoMZj7QhQz4mF9tfgT5hI4ZAw3VuKjfGU9v6pnxe280mHXAjB9h9prP/sz5c24fy8oYdIEGGnSBB8n1jaTr20hbH5996/KALjpPnjq5HsgYsDvG26/j+jjZ104286B7yT63XrJnudeW+mV+NU72ufV5MGe6kCX7GknWJ5JJVixb4ukh2f7TuCjJ2jl3V3h9SHJ9fP6j/SRrP8ldaf3JyTvnOiRZ5atcT24SciHZ2sGFgMYTyX6SZpZsL9nnJJt1/uLP/3x9KeB//+//fR3jT1D6Dcqv/uqvvnjbxG9S/t3f/d3t3pTsYaCTrDzZ1+GdkUT91jMk26Pbp5Pt88wY6KJzsrv1k30P5iTretXlZHd6Bh86l3nJ7tKQBN2Q3Od2QQEn931+ktt9dcZFkiWT3PWcB8Ik6Ib6N2MIGQxrnZvc33tyf+bs084AOjm6POCXk+NsXqHzCPLk/ky9ZJ+T3GfJ9nXsnpkH/CLZZ5z95pOT3U32deYOnWQ9h3T3knvPi9rMHmnePINO9jWTiG9Ins/J9pK9o5wc2nxGknXvZ9+c7CyJccE9LfH0kDzPkqwzkzy19r+Ukj0nm89n3cpPojlO3tjH0W6yr/F01B21g+EuvA7J3k32NWfH7/tdK/d/dVkLONlLyT6EZwFD9eSzNidZT2I/E032LHMO0EkuvleJF+23ve1t6/tyf/jDH7rQXrA//vGPr/e9zfrdoyEJeogk6x6SrNwurOH6kBwfa/1kd6/x7V9eydHjn2EXzn5ynDUz3SS3e+vcTpLKdQ/yiSRrtyVZsu+RZy7Tye5Xy86QAb+cHGfyk31OEuO6h3Zxct/nQbL7tMUzJ3sv2SwHXZg62WfVl0GyfboZnkiy7jnZ10lyi897c6bPsMjDSda55mTr+hiSwz/P9nhFksrFM69O9sewCk8PzSbToIJh6uS4VrMk6+PRK5J9vXZwcnjJ1vpJ0EMkO+t+S3OmIcm6D7rQT/a1kp0nYT/7tcJMjszsnGR75gmZOXmeNyvrgRmSfU80/4zpJ8/P139Vx9vIOutPTib7gGRfNLmfFV9CkvWkvpTX781MTvZuklXzWYGv2f6+7/u+iz9048XelwH6Gm57733f+y7e5052fy1dH2RXuv0wQ5J1b0lWxlvi+pAcXv3yNb794CVZ51TfwieR5EkdpDvRJNndZLNOM2yG6mT3kqx74Cdbt1cP18PJ7vGT/XPLN0Oyveok5LpOexiS3U02r+LTgxyMyT6DnkgOP9k62dxd/WR7yWYe6OTkJUcnyd192ynOu+YiSWtr35BkaZ0krDskWXmSm5/s58UOs5xkdXlJ0II8yS1b5nhIMqb9GSMjydpJNjuHD8m+hyTGhSS3/jKuD8n2rnK9yJWT7Sf7HGdDEpV1zpyZyc5okOPk3p9ess9PNndHhy7MXgMwJFn3kMR4BzvJ4Sf77OTwLCSHnzzPdGCeR0Ny9JOt+frJPpeuNzUPePBIJ/vMZLMOJPts2i7cvcctSPaSEJK9lDz3k6wnUs8ufoRmyT5rdmTA858B/+bf/Jv1x969iH/iE5+4/bF33y3wwx/60MVvYOpCErTuoWeUBcnz6yVZfXmRpPJZJkj2OfPs6uTY1eUnWeckYd1+cRjkOMnq0DyoTnaWhHWH5Pm9JI+95PF+knVt10yyzqdhDaeH6U+d7F315F7Pnhweefzk2DUXSdZ9drYP5iRoITk0I3k8P9o9e8l+Lp0Dyf1ZvO7QxUseH9rDnTHwIDmuxYfpJ0fObz452Z16epBsP9nMK5Lt2SmSe6/dcpK7n5v6OLl/DnmQPPZ7zXYm06CDk6A7NLszr0NydJPn+rxnhmR3aUj2fVdfj779SHb3ZpxEsneT3J6vJKvV85LdMRfJ7qzi9SHJbf86Xp69x21RcEZ9nOwL6ZghiXEhOfQyrg86cJXrhSx53vElfz/yIz+yvj/Jf376XiVewH1Via/rfve7373+EE7PcVby/Jwktw8yOe41iZV1fWcAAwNdJLtrliVZZyb3LNMBOtnXS8K67azh+jA79NW6dZIsXR+DDtBAAw00JHufhmZJjOvjXuL64Hm90vL0kn3fvGT3aUiOzHzu814Pdh51kvtr6ST3nt3k8Mygi6G6nGQ9l0lYN+hCsn1aiIvOyf64k9zOaqesW/CS3eUlQTck+7wa+tVnboZBXq42J1n3Vi2b4HdOUvmM9ZIjT7LOTTY3T/bHYAYH4STk2jGv4fpAJzurxtfo9s8e7TPr5OjxkuNaSW5nJxEvOCvZM73M6wMNV7l+0Mk+L8k6K9ksK1b5n/CQ7DOsJFsnMa5rEMkxJ/se+L1msnPeS0iOPZ31GbcDDEluFzPzgU72YrK5/pl1eUnIG5K9l2RdQ0eYBK2fRC/MfvPx537u5y6/+Zu/ud7f9lUl3jb5iq/8youvKvn93//91bXUM3Cyz0n2dXhw7vGAP5Ece9Nvd/LUyXHdZGv5RLLPnufSu3N8hYw52WfIX0KS9Rwmm+21SyfpeMcyBoYk65x6GGRlOonxhuT5x5Pk7ix7t4WrSHJ93D+aJYeXbC2D3dxvESQ7SzY3w8m+FztJbvcgA36R7DyJaHWTrRl6yTHzkuP8zsnunPvJ9vWgeZJ1LTMf6CTkgnmJp4ckayfJk7OfC4NukpWbC351su97ztV6STouTu5npl4x5yTPri1PDj/Z1082y52V7E4S1t05cmayM3Ny6GZ8GifH+cnRTbbWm0h2326RZN1HsplvByfbS8Jarz18WMbTg7lIju5TvM5vzkuyvOS4n+nrJmEtmJd4eljvcdMzmDo5lvWK5N5P9pxs1nMOJNtLNsuS5zfc71Xij737Tch//a//9eXHf/zH15+m7Hvdf//3f3/7gJ3T83FnnGT1+ElYD5HsLMnqt2SPToIW6q3h6aEeTrLOSPbHluSpdVn+5el/upAcuVk8ObnPZck+m24/2b3pPdLJ3rWXbK2XZN1fEtFCkpuns8zxwEtyc8xQI9nnd8Yz78ybSLKuy9OZeOTNnD53kn1eEvHd2brJvs/q/peIMg9DsvfpwmeJ1UluZ9tLsiK6SLYnSA495+Tw7cmKZGfJ5uUf/95f1+fZAzo5Pj5zIQczTsaZzCuSrDOTXKf9I3msnTGx28ejLHl8L1pynGRdk4b61eeZnwTdkOw52WznDOV6SdY1zfxkz8nz+02icsN5p0Fy9HRAlmRdiy5kyfZpkOHCnAQtrM+4lxoPs0yLyjQk+4NKsm5k5rkWOiemq3H6IU+ydpOs9I/+6I8uPqP2C+IHfuAH1tdv+4sUvNfts+1/+Id/WC/idmEtXR+mvo7PfjzKk33NlnWS7SWbm5WTrPvVrYeToPUHg5ol20v287QK4yHJOivJcB9LZyYv95onu5Nkne20ZOskxpu/hutDsv3zGZ2vlfVZBn492IFzr16yr5VsPveS7bdf1ps62T1+ktvHpJPsmZaXz9qcHD83SVjPPtbul1fp+pA87+vANX52zvSSvcs7wz7wy2d9N1+PSq4PzCckWc9Jcnx8zgKVZPvJ7vFmluycD80wJDun5WckO+frJCEXzEs8PSRHlhz6KV6UvOw7r1BOsj52mo+T7SWbeUWy71U3Se0bJ9uT10xyuwZPBtWT6SRo/TPxUi/Z96GY7P5Zd5e/XriTrBsRQBLZzVvD04OcTOwx0EEAABAASURBVHanMw/Mr10u5A08w5l5wAd/zP3t73jHxVeV+P7bMl+/7Q/jfPlLX7p4D9z3K/HCLiuSfS/mZGvnAQ+S7dPQDCe5faxm0IGpzZAE3aADDAzJ0Um25utM8KAenWTdT71k/6Qmm+vrVmNzsjt0veokrIV6GJKd0atwfahOdpbk7r6ulbsfyc7tJVsnm3ktV2NIdkduxknQuh4vuZ95CjjZ2ZyT7SWb9eRFsp+nzuXkeT/Znk6ytfOAN5Fk3TPv0T+ncyc5uvzk/p6SOObuF/wyrg/Jffdq3f1I9m6SdT/J5llyTahHF9NL9q6s/uQka0zu7ynJunb3cJLVfelBp3jUSbLOlCVB6/lJDm1/BdeHqa/jrVsfgyy5v3/eS0j29eRJbvdkdl4S8obkOFveINm9JA/P0E3S+o3XC7cpuQ+TfaHk3td1GCQ7o/mPIEv2WXIzTrZnTrJu2pcC/pvv//71mfZnPvOZ9ScovdedZP0dlB/+8Icv//Jf/kvrC0kWzzOW8fRQ3y8gmo2LZO/Xx2cku5NstquTPJ+TrI8j2R+bHnSHTo7sJV8P5EXnJOQNSdY19Zg4CXlDcszNk6w9pWTfk8xcJLuTpNb6B/82PIlHe7yJZJ/BS/b1ktzu4emouzm5z5OsWpJbz3nz7Y1kn60oS3Y32VyvrJfsLIlxnZ1kMUMXF0mWTHLXSbL89nGyvWTfV3I/61hKDj/ZembJ3teFZtjHn+zcPKE78ShL9vX0kq2TfR6vSHL7eOs5r3pysvfPeZJVq49hmU8P5mTvs8xn1E9yu6fk2JEnR2Z2RnJ0krDXvgyS7QnMRZK7Hj+J2ou/JpKdK7WfbC/J7bzmOtXJvs9kMz8JWri9cHcpyTpQmgQ9nPVhFa4Pye5e5d2PZPvJZmFyaLNz4F/8i39x+aEf+qHLZ/72by9+g9Jn2l50P/CBD1w+8pGPXL7+67/+8ld/9Ve3J8qO/ZeQ7A+6vSTrY0lyt9KcmWR16FehO8m+hi4PaKCTkLd7NiTbm7rd5D5LjllfD0Oyrz09vjk59sxF88n0I9jhnznZZ9dP9qybZD1/yeZ2ZBNJbqMOMB5xcnTbac8MSdZ1aUj2rFfUxzycHM8hL9lzEvEd5IVg6tebdXWKzpOr20ny7GN6KeMnu5/EeLfbs5Od+XW1SuMhydpJMtzjN0WT7Tsr2TrJ2rlbuA46cJV3P+olufnJ1rIk67zqlpJUrryDHp3sPNnMu+FJJEeW5O4clZ41dbJ7yf7nQpYcujN+FZJ9jmskWVWaSF7/PF3Qh7d4gJplHiTHoUmefbA60L0kxoXk0Mu4PiTbO/eTrBdm30Tq53/u5y6f/OQn17dv/Z7v+Z71GfjXfM3XrD/27nt22032Odcj14siD8xFsjtJ1n3PPNkfV/I86/7kuXv2k/uzmiepfMjOBGGSZ/c4s9mhYebJ3udPJFljsnkNp4d5zilaY5J1b4Zkf6x09+gk6NnPRZLbrn6S1esDr3pysnvJ5kdZd5OjUw9D95LdSQ4+58nOuvNG8yS3jzFJ159xzysrJLufbOZNtJvc5/VnNzk6yaF1kmPubvLca2anSHYv2Xz27STPs2R7yfHPjF19SHL3vCW7lxy+fpFkSbtLjAceDOt2Ni/ZZ9OFfrLPTDbzmp85ye3MZJ+XbNa1m4R8BlnNqXmdk73bWQbJ9p/0+u3o9cKd3AXy9QuQcAgk+wZpkCUv78knkqNrP8mzJ+F//a//tT7T/oM/+IP1m5C+quSDH/zg0r5boD9B6Tcoe26Syhv3bAZdru6MoX7y/OOTw+yYJ5L7veS4p+TIksPvfpL1HCRZVq+DYZnjgQesZJ/tMydesufkOIuviwtzknVdun4S4w3JMbcjpHGSZ2fwi+TIp/doP0kr68zZqW6hc5LV5Sf7Y5cl208283QKc1EvSeX6ZMGgk+xzO+Mi2TvJ5rNvTo79zhiSrPt3nfNcjz/BL5KsKNm8hutDktu57V7tux/J/X3ptVCdpNaNZcDAZ/Ah2ecnxxnJ1slmvUf7PFmRZH085uTQs5fs6+nUT2K87a7h+tD8Ku9+1E+Os5LjDDncLV0HXrJ3kt2/2utHszU8PdTDT9a6x2SfwU/2OXQ7OMn6Owro9cJNJLtMd6Gc7ENlkOyuPDm0DPiTq5PdTfZ5yZ7b94L9P//n/1x/6833X9/r9g2mvvyP/3jxVSW+X4kXqXdcf/My2fvOheR+5k0kuT05/CTohl4/yeoJeJDce7JCTie7k9zfR3MdSB7nScTr2sm9To6dJLeOs5Mj67wOenpIdp5kOclmXWAmWWfSRbL3zLNXzX+E5klWbC6SrOskm89+Z5zktk/wzlwv2fea7J32mpf5YE5yuxce8Atz8vjcJOL1iU2yO93DwiTrfPqMJDerfQYNdLI7nctJ1rlJLpfLfgujGfZeN4aek+x7NPMhyTpn6mT3ks0yO0AXyd5NIlpIttZh4GSf0xlDknXtat1qDPUeaRkkxzmdy/bADMm+F5qf7F1zsrMkotvPa3LMesUqXR+S3D4OWZKru38k+8w9XW69y/V/yZElWZl9uMa3eepm+Pa9ShQmhOZkH0oDH+gk6NlFksNfhfHQ3VrJ/gCm7x+8r/qqr7r4UkC/EemrTLxo//qv//pa+47v+I71R96TfR1msnWSdT/JPldWuAZ0Ltcr109ePktHH+gi2Ttm2UQS9u0fijVcH5Kse57dq/3MS8Je+4Q+nuABL8k6g34VkqNnF/TLdMFL0nExj0i2n+znng/Nknu/mbw6yevec7I7yebuzzN4E/5lL4fpn+dkn8lPMqt3Wn5njCF5/nEmL581VpdM8vA5SLJy1wYDTrL6yWZ+0dycBC0kxz0u4/qge6V1FoZ6ZR6YgU6ydjrzINnXoCEJWmgXQ5LbGXNWTo7MXCRZ8lGfJyxPney9esm+z2T7yebu4iTr/pLNdkGGIQl69usz2efrFqs4HvhjfChn58UX7m4qF7xk31xysHxmnXkvQQfk5WSf6atK/u2//beXH/7hH754S+Tnf/7nL5/87d9ef0GwvxnH34Azv8nUeX+eSUOyz9YFXpHsLNlPcLLn5o+4ZyRZP6E6SdD6iZMneZglufWWuD7ow1WuH1Mzkr1z1uZHXd6EXvL440sOPzmuY6dIHvvyZGfJ5nqun2Q9B3QhB3Oy82TfAz8JWtABQ3L45okk6zrTswfTS47rTJ/WLeacxHg7P7k/w84qPD0ku/803vZmjy6S3Dp2+LiY/9JJ7q+tkwTdITk858Fd4WlIcnftJ/tGSZZONq/h6SHZnrPhyb6jJOv8ZN93kmf5NJKdJ7vfzPnJzmh+OTn8ZOuZ08nhz7ln8KBzknXfvGTfSzPePwXnvWSfneR2TJLb9WrOvWTnyWbfz0nv9laJIQm6HeSAZHsCc7naDMn+IOkJPZhedZLbtZKsL/Xzwu1LAX/mZ35m/W3vb33rW9e3ePV13W76r//6r9cLpDN6bpk3kex7kie5RXNOdifZuQxaPutk9+TNyrxkn0fzIcnt4+QnQQszT3LrJVsn+7xkz+1bToJuO2t4ekiy/GTvP9m35y7J+gNDfGfiIsnqJam1ztJL7r1kd2/Fq0h2p/0ka/8a3VgGJ++WJ8eODrRf5hW8ZN9Lcuzy25lcHydZUXJwcpylo5Bk3d95lkH96mSfYS6SfYZ59s2QBN2Q7Fk3ybq+MHl8th4kR54cWtZ9DEnQ+jmXJ3tmJlsnWddONus1T+7Pb1ZOonpDcj/fgqvoDoardfuRZN1DDTl0xsnRmVmy/WTfaxL1G5I9zx1hsn26eKOd9nCyr+sM82Qakn2tZDNvdqv564WbcYYQpp8cF5dBsi+il2w9/epkZ0nWk69/xj//5//88r/+/M8vvsGU78vthdpn2v7aMm+jeJ/7D66/cUn3XGfQRZIlk+Nek8NLsq6/StcH+0muav9Ijr3t7Mcka0/fZ0LcZHd5wJtIjh1+8nLfPiS7ow/1ku0nYa97WWI8tDus9YsxyerPnIbZra6PgY+T+3vgQXNc1DfTE/UwyPBLkEPy+PrnzOyscnVyPA/18ESyrzF35WZI9hm8JOgGuSHJer79c5pszYfZMZ/RHIM8CVpnEkmWbo6L5mYa6GTvmJPjY5TxcBJyofNkWlhOdt+cbJ1s5rVbbQZzsnudcbK9JOvj44E+LpJU3vjcESTHx2kuku13xvaBTu7PT7Lup7kODdU4CVpIsnbW8PSQZKkkt8wZsILxkGRMl1v/xbdKktxKyWN9efC/JHdubybZvhlmKcm6VrLZH3n31SN+g/Ltb3/7xW9Q+qqSL33pS+sP4/iLg914svvzrEc6ySN7eY/upV6Su/uy0GxqXhLW6hNnzwzNcJJbP9n/ECXb002itpBszWfgwnyGjIeT+13+RLJznj4ukp2d/XN+nt9IP8nt4+/+3Hukk6xqstmQbJ1s5tlNjplXyMCc7E5yPP98eXJkvCTrfpPdracLZkiC1r8slxgP7SVvrJPsniOSQ5vBecn2k3uWJ1n3TOtOps9Ijo9NP8ldJck6T9Zg6nqPOMnN7k5ZkOxr18PJsaMDye5V4yLZfbvT6zy5uj1zsveT4xozbwfzk903F/xHSJ537Zy7j7zZSU5fVZJk/aQkWT0HJFkeI9mab56oV25mTtLxIes0oP/kT/7k8uk//MOLF+1/90M/dPGi/eUvf3m9aPsTlF/4whfWlwbq2ktePl8H9AozdMbJPmP6yf7Jm54uJPf9JLfnST+J2g1JLsDAOnRhfsnXkZdpXeABD3gFf2pzwa8u13vE9XSrXQ86z6zeZBr0JpzReeZTy88zzy7QE9Pr3tmr373zPPvVOlN398x6Z89cv2fwpjY/6vDPvfOsY/fs80Auo4HmFWYwy2HOfKhHgx6Gc8Yrztnca2d6Z919LMNF982yzmUedMZzpoE/4TyYHs171G+Gi5d6L/ndcw3QK8zgE1e99VaJ0AA00BOWOk/NMwNd9Aw+mPsWQ+d2zeA/Ld/1rnetryr5yY985OImfQbuuwXaf+9737u+qsQ5+uAMWXWZP1G/PLOpe5YePbOzls9e5+l1hwc6PBp3xvXK8uoz6wN/wk7Bb6deWXbW9c6sV492Jp7e1PLOZ5Z1t9o8tbl71eYJfZBj2VlPT9YZd4eWQbWsM12fB2aY+jw3w4WzaHxG9+VwntuX0VinMNenQYb5QEP1ZBrk9mBqsxzomfGAB4+0HT5MrQ88PMEDXvfMdD080YynO8Gb0JVPr3MzDGe/s11ahwYazr4M6mOzLj6j+fS9fWxeL9wEKBZzpqEXwBOyM+TOqk9DZzw7tC8F9JuTP/qjP3rpH8b5nd/5nYvfoPSlgL5E0B+L764dGqpdA3gT8olm7eJCpmvGZhoDzQca+MADHvDKdKFDy4CuV66PeYVZH+rRE+1gnTPz9Mu0zmS60Gter3zOZo8GXT1c8MFcpovp2S3x3ErsAAAQAElEQVRmzmsPm+U0hnp0IedDvcl80KtP8zrTYC5Xm8FsD+iiM4b6ZbvTp2H6dCHrLjbL6Al+Z1oHnz1+vTOfs+7zoXP3Ok+mQccOLvhQ/8x6cjzBa7e+ufCJ4fQ724P2sB7mA80rzBM6Mh4u+GCWAQ00NH/Jk+vJi/XCLahx5i7g2XvttdfWe3n15Odd80u+7LzrG0j5Gu4/v/4G5c/+7M/evqrEH3v3ou2Pvf/lX/7l7ashnAHOcZ0yzQcehuoyD/SBhmo9mB7tM34sa9cMPAzNys06z45sopluwdOZTL+EduXOwMDvPDXPrPN60G3n0Y6cj6Fd/Mg/d8ygX6ahc5lXOJue2dmTFbKCZ9c8eWoZTK975ZnR/MIumJthqEfDebYHspcwc3rCzjxzapnumXWKZno8M9BAA61DYzMN5/kljw/6+IyeiXUm2q3XWRfMMgy8wjwzs6xMgw7QEzxov9r8COe882Qa7HsXAq8XbgJ6A7SimQYzfoTZO+f25MXMz54X5r5o++qRt7397Rcv2v4Epf9E+MVf+qXLpz71qXWEc2EN4+HsucaIb+9H12tfD+pjc3MznGce8IG2hzvTcPab80EHaGhelk2cfTszn1qmj+ubq+tjkOFzbpYB/UbQc7rTGRfNMMxz5zz17EztzNkzz1wGPBnQ0zPzgW5G8wrzGTKeHaB5NDYDzTvrevyCp9/5JW6nrDe1uWdhs7zaXNSXTfDbwTOrPndemvndcZYZA7/zWctl0zfzCzPoAL/MBx7wgS6a1y83x488PtgHumi/XB/Xw/aAX/ZfCF4HeXcv3AxosQfwaAw00DD1ee5Z058eH5zxx3/8x+t7lfjqEn+Bwvd893dfvG3ihj/+8Y9f/uuv/up639u+fvfMNLxK24Fzhwf2CzPolmWd6Qm+GevThbl+uV47k2XQLm5OQ2c9eno08Iv2yvx2eDBnOQ8DPXMzv16ZB3IeLqZPT+h0rsbOgGZnnhkNOmW659AFr6hX5ne/2gyzU13WpfHs1qsvo/lgxkXn2ZlZ/cl2zDC7fHNZXs0veBP8dvlmqJaZga5vruZ3rjZD5/Lc4ZlBt8yH83y5XNTu3gFgtKsPPKgu6/HxRD38CN2X2fM6RYOMN8Ev5NXlehjsnrO7z7iVFFos8+A86wMfdCZkc9aBejTM2Y7v/OdFW+ZPUfpLE/7mb/5mfVWJvwHHlwXqybH9Ms8MvM40z1zdGT+CLr99XI8/tbnQq24HT18+Z1oHaGinnpkuzHqFufAPj17nsu5Lvo4M9CZkZtycnp55Qq9zexhkIC+7ZxkPg6xMF+1gqK/buSyjZTSYoR5dTG925bIyDbNjBh2QmaEzr6hXnn49u3wzjc10mde5GoPOZBr4YK/zZD7wYHY740JXx4yBB9Ojga8DNPALs6wzDXygZdhMAw30I+gXchrPHRrq07C66/vy7e8RI1/eVWAduI63/6qv761VmVn+COf83DU758XPuBV6cA/DwJ+5uTj757k97CygJ/wCNtv1pX++R4n3un/76Y+9y4ru60LnmfOhXpl37jcrz1z/Vf7Mp7bjnHo0D2iYGQ3T1wUe0EW757m9svxRtz5uV88MdGEu2sVQf3b5c6b1+PgMOdTXM+N6Zf+cyICnQwPNA5pXbaaLOdO6GNopy85ohpvRL8G5MPPO5Z7Tudwd+Vm/5NXvGee555RfrycH/TIN5oleS3aGrN1m9TqfWV8HaDk2A82jy7zOPOBhmBkfpt8cy0AOU5uBpwv+GTXXn0zr4MLcPq8aA2/iLdcXyPdeLxKLMzDD9Oh5CD1xzs2gg3sehunR7eHPfvazF5+B+9pu32yquQzMEz2vmbl69mgZhpc6sqIdXMhoZ2HzBK/QmVl1fT0aA33umPlQ/Yh5PQObz+ADv9xzeRPnvD0+PdE9GZjLNHQu1zNDZzzR7JHnHqY/9aO95i/t8UHPfrUZeOVm9fg8qMbN69c7z+3JH0FuB4PO5Go+6AItA5oHdDHnqbvTXnn6+jC99vBLvqywD7rAN2PgQfVkeqK96c2z+O2UeQXv3H/tcv3/a6/dPqNuF8/+3Ju+XrMyrzh3+afeP37uc597jX/97PstHziF/HVz86BzR6ZYpuHce+TZARkG2i7QQBdzru6euVq/89S8QrdZuZlZDvVoPlz/Jbeem5nJJ/Sa42b1yzIaaKD1q7GZf9adz6w7dx7lvDPsnD0zH+jCNWh8zsz1sd7EI2/m1c4peNVlHpgxOBvoibNnB9qRm/H0aD5Ut4Pr03LgTfCAN5kuuq8DnbG5vUfcDp759Rf3+meVf0Z7fHpy9fSnnvdDF+10n8+b4IFOcc7NMqwLNK/afIYMpj9n2hnN6Yn6WBfk5oJXjZtj2QQP9Ap59WS+bnlmT/5r15/Pz1zfLv6Ha5a3+Bpp5evw7MfTwjOfIQMapjZPOL/g657BL3S9l/O1X/u1F3jnO9/Z6I6docukcdEZw/TtQL3JfH2oT/PNNNDANxf1MHihx/KyHRqmfmm22x4u9MGsQ78EuZ58Mr/e1DpF/bI+NJ+aN3udy+3ODs8M1Rjq0RP1MThf/hLLJrrTfjMzdNYrpv9Inz170zMXPb+sN7PO5fZwPX1zwa/Gcpi+WQZ8eKR5us3pejR0xhPN6pnnOZ3r6fHwRPNm5XbkPMyjcWEGsw7QL0EX5BhoeEk7E84dMx/sAq/gFzy5mS541Vd+7W1ve9tffOYzn/m7q77cvqrEUiEAM3bA1DzgF+aCR+MJXtHzzDTQ/qKE93/Hd1x+5Ed+5OLLAH/8x3/88sNX/V3f9V3rj8K3V7ZTuBaNm2Mzn4azNoMe0BP1cPeb8x7pemc+78vrOQt4wO+M5yx/BD2QlemCB50f8cyndv3ZlwGvXN3ZDvBxcv8tAfhFsrNkf8uB+j0LQ32c7J2pZ4eGJOuzT72CT7/EScS3vfaSfX/JzvnJvbcWrw/NrnL9SI6dZYyHZGe1kj07A+rjZGf0S+hOsrtJbh9Lkttacq+7p1CdZO2ak63lBZ9OnmdJRAvJ1knWecu8PiT7+bvK9dUhk6d2nYkk4odIdta+UrK96uR+5hfJfeYcWXL45iK598/9zu2bwYyBTvY5Se6eo+tn3F+65l++4njhNlg8g58ELSSv1kluF0vutbMdkgStXnL8hF3/jbK+heu//9jHLl6w/WGcH/jBH7x86Cd+4vLTP/3Tl+/93u+96FjuWXSyz0j2ubJk6+bJ7pjlhTnZ3STrnngTyd5NMu2lnbPE9SHJ2ucVV3t5eHpmmF5y7Msmkp0l+15k3cXmJGih3hqeHs7enKdWNwN9xvST45rtJdvTg+T+ntvDcpzsjjnZ+3xIdjZ1sj19Pi6S+/2Z05Dsjh0zJLn9XCX7fL4OPNK8Iknl7cWHYRfoIjnOr6cDyT4n2SxPdl9eJDtPNtfHdorzzOfBI53k2fPQbnLch92JZGfJ3reTbE8vCVpnywzJ85xfJMdOsnUzZySHlxy6neTesyM78/ToR0j2WXbhUefs6UGyd5PNvNlNtp/k7vkZvVz7b79iv8d9FauIlYBOsvzOOIno9g9lcj+v8PRg72TdjTP/uq/7uvWC/fVf//WXT3/605ff+q3fuvz2Fb5E8Ouu3o/92I9dvvEbv/F2/e6We3Cy76vz5OT4B+Ul33kgx0nWc9G53Kyc7LOT3U+iunDuLPPpIbnvsZOsayb7TJ4zIIlx5eY1XB+qy8nuXaPVLSfHmTxItjd3k71fT28iyd25jzK7kDw/Xz8JuoP+NJLdSfYZyWadJLd7MBfnM/i8vnVlhiRonZEcWleQHF6S1eOfoV8ku5fkVkv2PeswMdBQnexecnCyz0nuuTv2Idl5dXI/n337hYyeXJ1kfdzyZGsZJEE3JPu+dWsmR4cPzR5xknW9ZvpJOq6sHhZgSI5e/cnJzpOsc5olx5yE/SKS+9x1z2VesnvJ8ZzUT7ZnL9k9Wg7JkT/5uf7v9p7x7a0SIVzD9QHhzj3IDDPrrEM/QvsyvcLcjOfrtr/5m7/58vu///vre3L7vtzwn/7Tf7r84ac+dXn3u9990ekOLq7/GXG7b57znA9mDPw515v+zGmZHpgx0LJkP8k0H2jQMZerZWDGcmymMfDMQNejecDDMH1aBmfdrgzME/rQbGqeuTBPOEfGozHQhRnMukBPzJzfTrlee+aCB3Oe2hnyibOnPz0a5k61bnU7mA+y8lmbz7A7YdesRxdmPtAgmzPvDLkef3L1zGnQLdNFvXJ9zHMmBt4ET16P5gEP1zMXvOpz51E2PXt2MB9oHo0LfvHIe1Wm39y5YJ5+52Zm0OEVvOvvR/4jhtsLtyKjMIPZcrUZ6mFz8agn48/u1HLwTaa8APsTlD7Lvr4Rf/EHcHz2bfanKf1GZXfLdp0/8ShrD78K59125/n1HrHeozN4su6Yi7M3Z9reucuTFWYd89TT48uBX5gLnUe+fGY6vKJzO/UxDxedy92Vnz8r5kE7Zbs0Bh0MfKiHO9OFLo2hevLcm1oHeC/t8kEPdPH0zNCMlnfGZn5153r86jPL2sfAmz2aD3TRnrlaZ2rZhEyn3tQ8OT77r/IedfWh59F6QPOBhrNuTza1HvAnHnlyfmEu5pkvee3gQtd5uN51fu366+LzPFgv3ELDNby9DWEGGTSji+ZYjid4utOr5hd6fF+7fb25i8+63/0N38Ba3xnwG66a53tzf/7zn7+7R2co4p6DzSCbaDY9enbp9rAc6Ake6OMJni7mY6huhnkTs1ctp+G80xmDTtE9/Cqc+3O251+ouJBXYzOcdedH9/VGMmd2V39i+lPr2CvLwPwI52zOtLMw2C/T0Lw8c97sVGO95uYJWWcd6IxnPudzr3P7eMLuhGzO9nkYaDmNi/qP5tmlQc9OUa8sh/Ncj2/XXPCqsVkHzDC1WQeDzFyY+TC96csKnWrcHm5Gy16Fc8d83ffC/cXurRduAeMarrcb6MvlcqPmuLiFLwhnNZq63jxHbv7TP/3Ty1/8xV9cvvM7v/PykY98ZP1G5Fe+610XX1Xi27rKfLtXfee8xDJwZpmGzhicwQcznL05n7X+3D3PMuB3ly54xdmbezIz6JuLzmUdaF6NoX77nWVFvUdsT09GgxkDLSvT0LmdsgzkhYyHoRoDD2g7NO6MeeVH+pyZnfF63Znr2+PRQAMtK3g0H6oxNKehc7vTe6RnnwY9cEZnDPwz6pe7h3XPPm9CDrzu0EU9rAcy82Ra9sivd875vKJnmKduD4Mcg97rof32zNWPWO5sOOfTo0F/9sbszfD1mr0eBBbOZT6vmRl4RedyfczrbpkPMlyY//qv//ryK7/yK+t7cX/rt3zLxWd573j72y8+4/b2ie9X8md/9mev+y8XZ7ke0K6BgT6DD/XtVWOzHGgejYEuzEW7b3Rur+xMZwDNL/PMZT6N+RPTq8aP+vy5W80Hsz3ceepmuDmtAzQ0K0+vsGaWxgAAEABJREFUvTPr8LpD885zfQw6WI8GM0xt1sET504zvj6uh81QPVnfXHRu3wxmoNs10zzozKOLc2YGOW6/2jzBn92Z0fLCXNipnjx9e7LyWZuL7pXr43o9B/Mm9PgYZLhemT+1GXTLNLSHm2GzvOBBZzl0xjM3ywvzGdfMCzccXw54Nc+99ZaEw5vRs1R/etWzS+sC3Y6ZrveFL3zh8hu/8RvrNyb9zTdf+tKXLt4++S/XF/Of+ZmfufjeJX2rpDsYnAM9E4PM2y+ygl8tpyfLgQ/0GXw7Z/B1yzSYJ3jA6xk0z0y/hOa6xexOr92Zn7V+vUf9R153ZBP1z6zDK1yPh4E/Z56ZT5dpPi46t4NB3ox+hOZlHXrCWSA7gw/1p65Xljm3M+6MgQe6eHqdeWAG3YlmZ9Y9w57eGXzdstyM4az1gD/R7vTeiO5Z5ct1qbpnnudr5eEndfwznNF9Wefp8Qs5dD7zOXMO6JWnnh6/OJ/zkr8+4265rEwD7SLF9GjQwTp00blcX5fGUP3VX/3Vl/e85z3ryf/7v//7S/+qMi/gPvv2PreOfs/EwHMWmKEeLvg6ZvrM9XRo0DEX5vo0v3OZX8iLR/kjr31nNJ9M68jLU9drD8uLObfbDM/c/CrYf9SfHq0HPYsGc5kGfXjJ13kJ3cHOmL3OMr6Zxp3L9WVglk3Uk9en+edPGHgwe490O84peND+I27enXbM1eWz17nc3mTny/H0eeYyDWZof+p6etVymB5dzB7PDHaAh6G6zIPO+NEuTwbnPu9Rzi/sgFmXxsArOst5ZRrMQD/CeuGeBQeC8mR69uRmoF9Cc/uzc571/sW3fdvlYx/72MJPffSn1h+6+dh1/uhHP7o8+tuune5icG65urNzq8s69cu85rg+DXJecfbkRbPOZbvVWK8eNvNpfEbz+nOm7QEN7dXD9eQFH2TlanOhzwcaaDld5pnL/OIlb+Ze8OyDvqzaDJ1l5mLO1WUde8DDQMuAhmqsA/yCD/yJmdfntUvz50yDDE/oAq/5meX16II3tTPMeGae73rl9sy0PpgnePJCRmOoxsCzA1PLgDehB/V05ly/PDNdkJWn1p2+bEKmw8NAgwxP+OSyc3Pcvck0tD/57JthdtYLN8MFsAJM3bkdGZiBhqk786Bn8KFzmecz689f3y753Oc+t35j0t8v6ftym9/5zndevGj7kkFdsAs00ECD6+J6k5uV9arLPLAHfOAVnSfrNp88O/z26vNokMHZkwFfToO5TMtwIYPOWAfoc2Yuznl3yvKCV9iv/4j1+GUauscHM252nvkTs0vrNzeDGQPdTnl69OzNDh/akQEP+EBDNb5cLuu/Li9P/7NHtld9nuvjYu6e++bm+lPPmV/wC/vV+DzzJuTO4dGFGZpNrfPS3D7Ww7rQeXpT65j1Ch7Np4tHM6/QszeZBj7MLh94smozXTQz0+f8POvdXrgNloAGC0VnPDtTy4q5pwM8OY2Lzn/06U9ffuY//sfLf7zit37zt9Z77L/3e7938f727/7u717Wn/W09NpWPQ/3DDFMj+YBXZgnnDEhM7+q3w4+o7tn39wzsRn0y9OvV9ZrTk/Ux2AH69DlR578nwJngR3sTBpoHg1mPFEPn9Eef55Dg1yGzdUY+DD1eW52Zj1wLpYDXa/Mry7rQTMMvDPsQH094OGJc0fG0y3MhRzMzbF5+nOmJ9o7ez2HPztTN5uePZAV5oKnD/SEDh+m/0jrQjM7Zswr18N8oAtzYQdk9ar59crNsByaTV1v8jk397+M9O6+O6AQXEgIL+lzz6z/COfsPHfHX8vjq0b8vZN+E5L/D//wDxee7HYviWi9sCf7Ty0u44WHJHef2ajdzroOyT6Dl+TqHD+S53OyvWTvaSfbe6Sdy4dk93jJ1vyJZPs6ICsnO+Ml9zo5Zn1I9j3Sc8ec7OxyySXJxf/qJ3uuh89IcttLtk6yaj3HkGyP5kOyPZoP1Rh4E7xk79WfXtKPp+lzTnK756bOqJ6cZI3NcbK9ZPMjz1KSdR1558m0LDl6Zv4ED6Z31kluVnJoe8kxt5Rk3ducdedcXZYnWSO9xPUhuX/Om02uvtbXj2Sfs4brQ5K7+9FPtpfk2rjccllxefqfOdn3kdz3kz2r9q0MffMjNMPJsavLw8ljv7nOGUluH8OjjJcEvdib57/FH2rRnuack/2E8EAv2V6S20X48sIMnfukdZ6sl+TiLwv+wAc+cPm+7/u+i+8GqPOt3/qt6y8M9jfAu9e+oMvALiT7nmiY/3ZqLwl5Q3LMSW4fi0IStOA8AhdmSLL26peTw0+iuv5F05xRjZOj0wxD82R/jMlmvjw55nplOST7fBqSOe//gqlvF8yQ7G69ZF8vyfrYk6itj+9yudx5AnuQ5C6r1w6GJGhBh0i2Z07uNU9ncrI7yb5XebI9GtqfOjk6cki2l2zWh+SYk0PbKZLtm+2UaTBDkvXc1Evu71sH5EBDdXK/z0/2GUmM6/xke4wky5vn0CAHOtk9c7J1EuNDJDtLss5XSvZ1kxjvkBye6wnLdLJ3aT4kh1c/2Z6cl+yZhmTPyXG95PC6N7tnPTvN8KPXm3aTfQ1zYecRkuPeznlyZOutEocplZPcnvB6Zb0zkn1jZ9/cPQy8M5Isy4v0hz/ykcuHPvSh9X62P+ruG059+MMfvrzvfe9bfzjHH8JRTvZOdc9Osu49ObgZTmJlwUyUk6xd3kSSNSabDd2hX0Kyn5d2k6zzk81zTyfZPi1Lgm6oj5OdJZuVkkObQbecHHn9JOuedB6hPVkSdEOzcnKft5jc+/rJ9pLNusl+vugiOfJ6c5+XZH0MyWYe6AENdGGGJGjhUZbse0qyrrGKTw/6T3L9SyvJGpPNM1/B6SHZvWRz42TPSe6umaSVh36vl+x7vpWH0AGWF5vq5PHZeq9C98uPusm+n+S4RnvJ4SW5fVxJWlnPbYfk8Ovhef3k9Tt2imT3k9yuL0uC1vWTrCzJ8pKDk6xsBU8PSZ7Upnl/27msnWQ/N5fr/3Qmrtb6kdyfxVwv3MnzQOiQJOsCc+Z3xpAEvSHYT+77PJ9R/93f/u36zoAf/8QnLr651K/92q9d/uqv/uriPe5PfPzjF2+j6M4LJfuD72f1zTHolmnojKFetRmSrI9/+klEC4/8ZOczW+XrA28iyTo/2R+D7Fp78YccFJLnO0lE68wlrg/6ye5ex5Ulu2cGHQzJkSV7L9meHiRZ59B2MNAwtbmof+Ykq8KHNVwf6GRn13H9SPY9reH6kNzPV2v9YsNFsjvJPivJuv/mj9i169PQ+RHPnE7yqHbzkiPXB+GZ6/GT/XHQfEi2l2yeXnvJkcnr0zBnGpKs54g+47yThLWgS5yZl+xekruzk31/dpJD25lI9t70pk4yx2c6eZy7rjJOcndvPBnQQANdmMGMJ5LcxuTQ7SZZ17yVnoS8eLIWrfe4BWt68JDsJzHZ3G7ZCp2EvIFnSPZesvP6Mhpo8F72L//yL19+8Rd/8YL/9M/+bP2hm1/6pV+6wB/8wR9c5mcJdopkn29Osp6EeXZ9DEnQ6iVZvIynhyRLOQOSPSdZ3SQr95Dsj7EaTyRZO86ZfudykhkvndyfneyOHVilp4c5J3svybNr68HT2h3xIcnNT/ZZjGT7OuZysv3pNeMVSW73kxznnvNk9+o7K9kezU/2vhl4kOxeEuOCPNl9hrlcbZ5Isu51enSy/eT+vJ6Dk91pn/cI8jOSLCs5zk+2J0i2n2ye5yZHr10MSW4fT7J1srk5LpxL42T3qvnJ9pIYb9DpUF2e/vToJLf7a68sL5LUvnFyeMnW7Zdv5SHOWbKfUxUZhmT7SdY9zqx5sjvm4tyrj2c2dbKvoZMELczO7T1uSXKUkq2Vk62TzbMrN5dpSO678uTwOifbS3LxfUm8l/093/M9lw/+6I9ePvjBD17+3b/7d5dv//ZvX+95+1tx/CGcZO/0DFy4NpiTrCfZnBxPqqxeuZ4Z5kyfoQPJ83P5YCcJefcZYJJ1X8nz3WRnlpKdJ/de/8siido6i0iOeV57ZnShA+bkuJb5jGSfrZ9kXbMa6ydBKyOSPcuT3PzOZd2Js+9f1nI+0Mm+X7reWZuheXLcw9k3n2EPpm8u+MlxZrJ1EtH6OW83yfr4k6ysD8n+OJKsXD/Znk4StJBsvx1msr0ka58nx1CNJ5rV65zsc5LN8iTi9fEkWyebBTq4SHK7l7Onm6T2OvM2XIUcrnKdkexukjXzm9PF9Ohk95P9/LRX1oHkvsfTwUnIhc54GaeH5P46517n5L53OuY2ts+ofutb32pcWG+VLPX00BIuRDR+CS/l9ZOsJz7Z7JyZmb0o/+j1xfqHf/iHLz/0Qz90+dHrizfQPFpH126yn4TkOFN2RpKbZa9DNYb6Z04e77fX3WTfT/0zJztPjvN0kmN21oQceBimnvP0k33m9HST7VcnWT8veknYC+Ylnh46J1n9J3tRsr12ljkekqzppXz6dHLfT7KumWSdkxycHNruKlwfaLjKtYsfIckrczvznCSsZ0jufTvQYpK76yRp9My3lxy5Ig8nr/bb04Xk+Gcu2bvJ9uSQbJ+2D8nhJVvzC13ojM3J0U225kM7ZV5yfy+8Qg+S5+e85M/d6mTv24Gzb+Ynufu54J+RPL5f+/Cof/bMj7r85PH5sgOX43uV1EyOxSS11weUHHODZHvJ5vMNJdtvH+skeXbm29/2totvKuV9bG+NtOv7l/gGVO94xzsu/+zaSe7v0Xm6QAMNNFTjZO/Xr4d5ScgF8+WSS5KL/yWbt3+5+4whuc+SY9aHZF/bWZDsTrL9ZM/NktyubR9kQCdHXo8P5iToBn6Sh2fKbsWTmNlZn2erSdANOsBI9sdaneR2Pzw9oCHZ/Xp4QqdIsmSyeQ1PD915Gtc1eZ2rk/vdZM9ymP1k3xtPBnSSdT4N/CIJayHZWpbss2jhmZPdlSX3Osntesk+J9ms7yxIYnwRyZHrg3KSdX4S4x3aYVZj4P3fRJK7+0iyjk+y/DU8eEiy3OSe3SOs8Okh2R1+svVT9IyS4zlOdjfJupckz/rTSF7Ok531HpI9d//ZZ9yCZJeSrBvgQQ+h3wiS3Gp2DTg5PlgzyC6X3f/Upz61/tCNL/3zpya93+27A1787/SHb+wmx3kqSS5JyAUdItmeOcmtYwYdmDrR417u+pen/yXHte29BPXEWSFv0O+QHFmyz002tzPZbsGnMSTHWedZD+onu5ts5k+0i2FmSdbz0rczkj3rJVlVeonrA51k7STHx8aHa2VlL+lk78ohOeZkn5cc3POSkHewz8BJ1nWTYzeJePlLXB+S7V3l7UeyvWSzIDnOcX6R7E7ncrL7dotkd83J87w+Pp+T7N3kfk9PP8mzjyvZ3SQqd5+U2Et2vsLrA+9Kd+fwkty8JCprTrKYkWydxHhDktVxDgjK1ebkeU8+odxHyLsAABAASURBVAfTo3mFGZL7jy0J+wb95L7TMLnv8pP7bvK840zdl/Cq/NkLd8t4oofzkuMmzM1wcmTmc/6Sxz/DSfaLmfM6T53YarI5yfqHYU+XO315+l+SpZLNzoRlXh+mTnJ3RnLMydbJwdf19cMZYCgnMa5fJDxIcjvfvAqnh+ToNEoOz15y/MMzZ7o7uHMS4w3JnpOs+0k2t9A9c3Jk/GRfO9l+crDczmQ62R1ZEvQMeswk657MwIPkuK55IsltTA7N7Bk42WfQhQ6YJ/sXVj1+wUv2NZJ71kmy7r9an4ZkX5+G5PnMnztzTmK8/TOV5O5aSVae5OYv4+nBuZDsnH6Kbn1ekto3TraXbG4PF8rV2Hy5XG5UL8nd9W6Fq9Dx3F/lrVOd7Ocr2fvJMdubvWR3pkdDkvXFEDS4XnL0ec5L7r3p00nQgv4STw/JkT1Zi/SSrI8tyfq5XMHTw90Lt/KT/4xkSe78R94szJyG5vQE/3T8xZ+WBF8mmOybt7O7WR8UDUnQgg6s4emhc/nJXpQ8302yzk/yYmcFTw/J0Uue36taknUmDb0XnOwsud/Vez0kuVWcZUj2OXQhS3J3D82wfzBxoU+Xz9pc6IC5XD1nHtRL9v0kYd8h2V6yuTvlu/LTMLPqMyf3z40cno64oyR3z1eSlSf7jGTPzJ6BgVcku9+5eTnJuk6ye8lmOdgrVych735Rt4OTrDNXaTzIjBiqcfJ4R/YSkvsdZ0L71Ulq3XFy7ye5u+9kz86BJGs/2c/RGp4e5JDszpN9Oy/Zvg40x2agiyS3Xd45r1c/CeuG5LjHdm7hVZy983yt3P38muHuhZtRJPc3UB+/kcN1kn1GNbYPyc6S3J4Y723/5m/+5uVP/uRP1s1+4hOfWF8W6I+9+8M4sr/8y7+0vnZ6XnI8OUlWPh+S7bU/M5oPdJK7s3nNyjwwQzUukufnyNqnk6Db9WSwzOtDcnxc13H9SPbO7FWXV/H08KpMVQ70Gcm+5hv12zufd571eIW5mB49/eS4n+TQetDu5PrJ7iebdZKsnwMa2p062T8XydFNovIMSW7nnc8yQ7I7SdZ+ss+XMXCS2zm8JGj92ljiDTw4Rw0n+xqdMcyM5hXJ453m+mBO9v3RE815Se4+Jl5zXPBhzklYN8gMGJJ9rzQ/ed6XJdtPNvNmv3O5WbL75okk62Oa/ZnTr8rkSdCLSO7zt8wvMZlbLgTTo6eX7CeKP6GT3F+oeZL1QZqToNs/iH4D0l+W4K8w8yVv/sab//pf/+v6zPuTn/zket/bXxpsyTWgGif7vGTflzy513p8DHSSdU/J7iZ7loMOToJWd4mnh2T7xmTr7vDOaJbs68mTvZds5hVJ1jXtQX062VmS2otnxkh2zjfjZHtmSI45ybomXxfoJGiBB4ZkfyydeRPnz+Znlhxn8pPcXTvJ+tuQksNP9vUuT/9LslSyufeRHL3kyJqvpQcPSe7uQT/ZZ9FWMCTb5yVBazfJBXSYdGEGM9YBM/CKR/PZs9s+Lcc8GpvpgkdjmNoMc8dctIuBrzuZz8PT55lharMurzDzgQa6MIPZzpnr8fXgrM2zd56bnVkP5pnmgt8duv7kl/xHnflr6O7ruGeZdijQ4CY6l/lnNNOHcz5nXdDzV5T5Gm7fq8T3LPmWb/mWy1d8xVesurdMfLbtNyx1wd4Krw80D67j7RfOnOvj+nTB6zmPPHl9vYIPsrLMDNWyamyWl3lmDHzMoy+X/aJwefpfM6PcDGbgAV3/zDLgAw32gK5vnpgZDbpAgz6u17lefXPRjgzMMHNzM9wMyzDQzcv814M9OO9Mr1k9M32Ga/EwVGOYHg3OwoV5dqvlMphaXu+s9XhFZ/xoh6+LoZ0yT94ZA79Mgx4u5GCeTMP0H+3Ki+b2pn6U83QKO/Uw8IDWowsemOcLKm9CPuezdm69qeu9xLe3Sv4pS48Oe70bbO460DPoZm97+9vX9yTx9do/9VM/tf7CYPq7v/u719872f86sNP9/1N2Tefg8xl8OPsvzT2jO+Wz331+OzwzrlfmFTp5et1+lOsl95/5JbkkEd3+q8aQbI8u5pk0NEt2P8k6L8mKdGAN14fksX+N1o8ka38N14e5ex3XD97EMsdDkjE9l8nxHMw02b6z6yf3ZyV7np12MT/Z5yS7ywcZhmRnSdbHm2yWQRK00L0kq7vMp4dmT+ND0ilaMCeP77OdMydZll1Ijn0zrML1gYarXPdcbS54YE722TQkx9wOv0ju83YmP9Ln/XZe5Se5+xiSPSdZa/OMqVc4Hh5ljzwrL/myieT+HrwL0fz2wp3snyhBD072Iu//BMmx3zPnOfXKf/xHf3Txd01+8YtfvPhs2zeW8qclf+qjH734W3C8iL/73e9eT/Q8h06Oa5mh55aT5x29R0j282EXkv+zXWcnezfZfD4v2ddKNsvtAV0kefaxz4y2U3ROjnN5Z+gnx9nJoXXlkARdLk+Pyf38ZN/uMcnSyWb5PM8MPKAhCVq7xMzME8n+2OrpJnufN2eaB8n9Hg+S+11ekewd50B9nOR2v2Zopzx/4cmT19/R634S4+06yZ6ZSZavm+z7TDbL+Riqk72T7N702zt7/CTo9slAktu1V3B9sHdGkmvy8p99aH+Vnh6SvWNM9n1W4/mcJrndR3LonovtYKAhedzVSaJyA8+Ak+N+eMDHSW73Yp5Idja97k3vrOdn9uuFO3l+UJccCJ3L06tO0ngxP8n6ABjJ1nwzJNujP/OZz1x+5Vd+5eK9bh1/8MZ72u9617su3//933/5yZ/8yYu/FSfZOzqQxPpCsp/Msy/kYUhyu6/py4CXhFy9zhgEyc6rk+PaPL3k6NTDSda59Ov1dCaSY7d+z0h21hlDsv32kz0nqbV+IeoyMFQnR4+XZN1/EuPS7SfbMxerdH1Idpbk4U6yn8Nr9XY/yfZedZZ+ss+snmy3c7X5rDvjJCp3SLLumzk7yb7HJKIFOSSPPZlisvPOOMntOjq88tRJ2Ou5IpJ9H3R7dJK783hyoF+FZJ+Z7DMe7fCS3B2T5HbNJHdfWteiPUhS645ljHKSdWZnWfLc4xdJlkxye57swwquD9Xlq7WuM3nqZJ/JO8MZE3IzLuY8dXP8ki9bL9yEUrJvhp6QP0Ky+8nm2bFvxlCNk91PNjdvlmzfXxjsve3X/vEfj7/9RumKJOuJTfZPhjOKJNfG/sHzb+Xk8JK9o5Ecvi5MPzm6M6NBd3KSdV/8ZGt5cpyTbM3XW/z0LbGTvcOHJGj9A7d6azo+a5meyAzJvkay92WQHLNeIYMk6/6TGJde4vpw7l6t9aN+snfMSdZuspkHa+HBQ5Kbm2ydZJ3RvWTPLdbHE8n+2NvDSdBC8lwnWddSSA7t3LNnhiRoQa9YxvUhye1Mmc+Yku2Zr5Xbz6s5CWvtmNdwfUi2z0uy8qt990NWI3n+8cuL2aP5GJKgheRe6xWrcH0wX2n9mDrZu8nmVbg+zM51XD+S3Uk260woJTujIdmznrnoXE52L9ncXrJnPahfTp4/h83aL59988yqk31NOST3M2+ie/W8jt00cS7wIMn6hySJcenZnVrhpTnZ++eOPvDhq7/may4/8AM/cPnar/3ada0f/MEfvLz//e+/fOELX7j89m//9voOgb7ixA4k+9zknp0Fs0PXK/P8YjJfLpd1zSSLZZen/yVZKtm8huuDDlzl+pHsn2xect9VSHZOF0nW9S7ZL8Z2ZZOTXJKw1y/0JZ4eku0b7SS5dZP768n1CnOSjutsHiS5nWNuKbk/k58cni7wz8yDZPflyf11eC91mjXH9SZXJ1FZqHfmFV4f+JAcO1f74XPA14VqnNzvzjy5z/TlyeEnuV1P/gh2+Ml+DmlIjlknCfsZksd+i3arJ9dPsu4xyYyf6SSrN4Mkc7zTPb9m8sa69qB7Z34pSx6fnzz2nZscz7H5jOTxbvLcT46zkue5s5N7f75Wra8qSe4Lls7wBMDZf2lO9pnJ5ke95Mic7W0Qf2nCV33VV10++9nPXrx14u2Sn/3Zn734uyh9XbevLJlnJccTwHcOTnL7B4dXyCAJWkgOzUhy2zXbTULekGR1ZkbfCk+Clxz3aC6Sw3+q3yg5zmcm911n8Cd4wMNAF0kq173fhiGSrMxukdxfW102OYlxIck6I7nfS/ZsN9kdC2ZItkfzIQm6oVk5ye1aSknQ7V9CyTEL5p4ZeBM84L3ESdZ15dAunQStPMlihs+Y2sPJfj5k4BcmH8xJ0PpYlnjw8Khb70H9di/Jce1kX+elvvOS+w7vUb+efKL+q1g/ub9OctzneVcfpp8c+zObOsnd8zD3q/WhM+6cxHg7w5Bsj4Zkz8lmHiR7dhbwJpKdT48+d/8/0u7Fy7K2rA79nl+8oPGGCYIgCV4iRpPoGAZUQPGMkcsZ+ZvNRUXQZAQ05GhMjNco0RBE4wUinO/s3/vW3OvZq3Z1tznQc8/5zDmfd61d3b27vqrq6vWhkiQPb+JcNidxzh34d8bTkBzdZOtks4q9JOvaSS5vXeHF2tdy+0cU/CPBP//zP3/57Gc/e/FlgO985zsvvtHU5el/9iHZZzzZ67xqnOw82cx7tMcHGYYk6PabJ9kzUy85Zl5yzDOnIdk5fYZ9Hk6OX7D9DZ3s3ebJ0Umynrd90ClXd8aQRLT2kq2XcX2QX2n9oJOd08t8ekgOP8k6S+SecbK9JMaFV50hA8Xk2DEXyeHrJseskxyzHPiQ7IyXbJ1k3XcSlRuSY9YX4OTwk+PnQNYOneyMBlmR7KzzmZPHebL983n2k31fyWbeGXMvue8le9aB866ZD9X4jOb1k32uOdn3T0Oy5+TonPf1gA90kWT93HWe+dTyzhiSsO+QHF6y7212kyPnwzwgyd39JFlxcpy1jOtDktVNcp32D+fBnu4fk/iAKlzWX8BRhFm7lm6jzAw38yR0atFgxoX5VfCJSC/Yv/ALv7A+LOKbTa2Pcb/99vp+3B/72Mcu/nmzntFzy3z3aKZx0Rnr4EeYfbkZd6dzmU+DXmGeGS3DRWdcNLNf8JrjOVfr0qADb6L1ivadNb3pV2M9aNeLtbmoP9ke6PAxTK9+WU7rTKZBLoM50/XK07NnLmanHp7+1DJn8AreS9A9Z/amd55n9ki3P8+uV7YnP89nr73pTy2HeY75Eezx36Sr9whzt+ede7PzKHtVfu6bXedVO3LQPeOR/8g775nftKcL6z3uuVTt5qsVH0HnkV/P/pt09Ox4b9tfbfdJSV+z/TVf8zWX4j3vec/l733/91+8163bHfoluDY0r+5uuTk+d3gTzcuPzmhfBp0nd788M5pfmB/hfHZne7Nff3r07HnR5ekCPfPOzczFI6+7MtDlQeeybELHLAczBv661/V+h+n+cwPbOR674wyQ1KMnXvJnZ+r2e24zPg/zaKDfBLPrDDPM3fMs0y1Xzx4PdCbqledTSgt/AAAQAElEQVTO7FXrwet6cr2i+/xqbNah188t8QQ+GPWA5lWbwQz0hO6cX9Jz96x7RnmewYPpvU63X37Un9m8H931wk2cYelcftTRO/tzfl2u2473pn3Jn7984+u2J2TuB+wADTT0HHqifvlNsnmuvl04a72i2Zx5BZ/uOWdt1pEDXQ8DT0afmQcv+TJwBm6Phvo0ND9ze2Xdqc1nyP2m7Fnn3KyDoRoDz261ueBXn1kGZ7/zzOgJHTOe4MH06LN3nnXm/T/SdkC3TL8EHefA7JhlwO9MT8ihnl417lyeXfkjtNvsNte4snPgKteHIWdnarnPDeCX4JyinZ7B53WmCxl0Lp+989we7rntlGdGT3/qc2Y+o9eY/itfuFt8tPi6zE7R7mRZZxre9a53XX7kR37kIdZfvOnClfWvdPfDTzAfZnCeZWdvzlPrTnijP8rr4/bPvZlN3f6Z2yk7r1r3PPNeQvcwPOrxnQmP8np6dFkfeMV5blcuKzqfc/4ZdniLjw8L3j5O2DPKemCHBzSv2vwmsHPu1XMWNK/fGcuBLs5zffyq7KX80XV162OY3qu0DOa92C9kj9D8vPeoOztyuxjOGW/m5jPstFPW4eN6nXnF9KaWdw8DrzAXvPMuT46L18165w6vWC/cLZwveJ679Ih7xszOnvlVZ/rugJ/+9Kcvj/D5z3/+2ddyz2vRzj6jPnZ9DHqdad4Er9ArdPi4mLPeeW7vzLpnb+7K5jy1zH5hPkM2PTPwHp3FL+Ttlpth7z1j0AV6gmcXaBmemJkceLgw2zFjoCempz+z89xuuTmecEZneoI/5+qeWa5ffsmXn8+csz0z1i14NB/oM86+nelV8+duZzx/vs2zd9Y9r/55rl92ng6G6VeX25tz9WQ9mF51r4GhfvmR99JZdma/un1ztS488vjFObcPzfF64SbAwkTLGHReBbsv5TNzFsyu+Y/+6I/W35z0z5ad4UV99p0HPLsTPJn3wKsx6GF5udosBxpe0jJ7M+cV/KJe2R6Yy/QEH85n8IrZr9anyzTYwRPnjowHs2+WTcycf+50Luu8Dj2zO3Oe+q97Tn8ddM/5PY9nxi/hnN/v7g+28+DRGfZlE/XweUev3synfpTXe8TOBJlzgIazPzM5nDs8PWjGexV0m8+d6cvnrDdnOfBx0fncPc/6vPbNU5ubv+Q31wUzLrp39pu/jrtXftS/e+FuoQu9gfovsR6c83lO9bnTWe57lPjEpK/hxhN/8LnPXX7rt35rfW23a+nbxWYwF3wwN+uMp2fWA/4ZL+X1y/Zh7psLPq1fmB9Bzvei0z1zfQy8N0X72Jlg14yBV5hnZoaZm4GHJ+o9OqPPqxkG+2fm9SwMvJdw3p9ztd2Xzpmdsz7PznkJzm9/ct97nd5LZ7zKd/6r8pn1WvVe2j33zNC9RywH2Uvnzqxd3pvCuaBvH2ge0FB95mbdM1eXeQUPzM4qzK9Du/bB3B0zPT1zMfNzx++Z9u5euC1BQ2x2AFTzC151WZcunzv1dQqeb+Hq49y+vSsu/vb1Y99//IUvXH71//l/Ll+4cneca6/zS1oP5MWjHR0+1qPLPHNhlhX1zbS8MPPPM5+Hz2i//uxNLdfF/GrzGc0wyDHQ9jHwOtP1+otnZjOni3a6O31ZIe+5OmYZnpDB9OhHHh8eZfVco1oXOsvMj9Cs3d47v97ce+TNvNp+dXfK9Sfry4tz9mjWnf5Zy4HvfFzMWadojtuRmSfOXmcMuvarzRMy86vyZu3qn/GoU093ajP0PPwo1zlj9mg4d87z7Ex97t29cJ+L59myGwca2pnem/g6Z7z73e++fOQjH7n425MTH/voRy++R/f73//+i79Veb5Wz+H3fso8eWeaN9/rkfGanVletKcDneXVZR6ce/X4U5uLeQavvfq8op5OdTPMn0y3V+a1d7lcjDe0g4tb+CT4T3J9lUC1M6Hz5Ee+c/iFPm+CN3PzhMyMu2cGHi7kdJmGc4/3CHrnXb362Ayzxwf+q9BOeZ7RvUde+zo0POrJz74uv5hz9Xmn3Uc8d+Zeddmurhk64zP0eO1hHua/Kdovd89ZNG5G8zrTPKBBBvREvXbN0M7Ujzr12l8v3F0qN3zE505nDHbOzHNhPpgLczPvaf/gD/7gxfff9g8p/OAP/dDF/MEPfnB5tK8usWuvTINzeBM8Wb1qPm8yXTzq8eTYLjaDGfoHAk/Om6jfrKxTrWOeqFeeWbUMOjuv4NMYdOZcjYv2Jss6OwPMQMtxYQZz2Xuo7dPN5HwMfKiWmYFXmEEOtKxMg3nCtfWhvt6cz74M6p/1eXYe8KF7mI/dB5YDXegUvHZpmNl5V/4qtI8LfWdiqJabJ5rxZs4H/v8JnAXnM+ZcrTev8dLM707757dlfaxrh57gwUt5u/JqfJ55zsEwtfkR+toiWy/cBMxlFwJ+MfN6+Nx75M1OtfNAH7wh/YWbP/iDP7h88pOfvPhHgr/yla9cPvPLv3zxicuv/dqvvejovgl6Hd1eBwNvYnb5OrwJPsiK5vwJvg7m07gzXTTD0M7U9brziGfHbqHbDANPTkM1lkF9HnQut2OmC10aF2bQLTpj0MXyydOnQQ707Ffzm9MFT8d8ZtkZeoU+tENDZ9y5zDvDebzy67rt2ZmYe9W68Lpe+3p0YX4E+flcPT5+HdpzBjzqt1PWqS7P3Xp6E/V1qx/l09Mt+I/2zr4O8CfqOY/feepmvDPaL8unNq8X7rMpKFxADjwzdOa9CrqPcn7PwHP2tye9cP/vL3/58qUrfuX6wv2Hf/RHd8fonzELzuysZ+5MT/Db4ZsnZOYyfUb3dKY2n7ud2+t85tfl5/55tg9n/6V5dmn3jovO3TfT8sn8enx4NPN05UDXwzzg4+JVWTvnnTlPPc/q7mQ58ObeS/Ps0t2hzzsy4MuBPoOvB3Rz89SyQgbNzyyb3eZ86Hx+R8lOMzy7ZqhX5sHrdtsvd8cMnbEZ6InzNWTtYeDpAT3Bg/bOmVmOYWrzIzgLZnfq847u2TvP64V7ml3CMLOXtB7M/DyfMzcO/HbLvGZLe7iiXnvmqa+V9YO/xPVBPuerdfsLGzLgFXOutg86k+l2yjrVcjPQQIMO0BOPvOYzm9q5ZqxLT6ab0dC5XV41hnq60LnZS3O7ZT2wV3R+1GmGYXamntk8VwfkhVmn82TZnGePnrn5pW59fTh3ee3g81yvfpkP5p5Z5tMyGjpPb2qdQrca60F9ml/UN0895/pzlwd6fKCnRwP/nPOa0RO6L2Xt6YD5UVcGctzO1LIJmRkDXdg/e7KX/HN3zlM7A9YL9/mwFsuPcp4DMNATdovp0/oyDDePuEJ2pcuf/8VfXP7iCh8uaY9f6IEMaJDjepg3wdPhlXmdq81g1sNmqMayemb6DD7w9WkMdH38CHr1aZizM4CPCx0aF511p9cZ60ym253M1603taw+DZ3Lr+vP3I4zoFpuBpr/CHI+Bhq6U5aBDPNxZww8oKFaH3hAF2a9ovPMeTA7Zh18ht70zOfueW5/dtvB/HbmTNc/c3cwyDHQQDsDqr1X35mnV8yZnj2zHq9Mg1lebQYe8As+mPEEr30+jUEGU5uhHgZ79c3J8Vd/ZbyJ2Z1+9Xrh7jDZYZYxn8aP0E5Zl8b6ZRqa1TfzfRz7M5/5zMV3CTR/6pOfuvzipz51+fM/+7PL7/7O71x++fohE5325/7Zsw98oIEuul9uXtZrRvOBrt8ZgwzD1OZH6Dm64BMQWFcGNNATPOBhe3DWzc/+uWtuF59nXs+oxqDbjK43mYbm+mAuy8GMoRoDD6q7b6ZlYJ7gwdkz24OZz5nfmbZTpif0YHrtnn2zDM/+SzNff3ZpPobmk6vlE/y5KzvPPD2gi/b4NMgwj8ZAT9/M54EZ8+gyXfB0zDTuTENnecGny/Ts8Sea68A566wH5jINZrvYPFEP68ho/KZ49sLdg84HOBjqt4eB39xcPbl/ss7u1J+7flLSt3X97d/+bfbls5/9Dxffm/tLX/rS5b/8l/9y8b25feJyhU8P8/wna30oZGod9wT16YJHY10MU5uhvTIPdIEuznN9LHvpDJmOHGiggYb26Ok/mnlF97A93OzMcuDrVeMz2sEyfbpMQ2cd8xln3wztTV1vshx6nXM2fb2ZV7cz83o69cv12sGyCZ1CTk/W7TyzajkNU5vn3jkzg97E3Jn+WduFs2+fD7S8ujOvOHu6UB+b28dnb+YynQleO7hoxzz1eW525tlrxus7WnQhn9oMPDzhfmF61S/58rsXbgcXwomz30PL8tl/ndY/wz9R9sUvfnH9owlz3zV8yMS3fdWxN/POevWnlpsn2sN8rAed65nBDNW6cz7rOc8durs6Bb+6OQ86y2mgCx2YczVuVu5+Z1xPv+AXzc3Nz6wDOkDPjrmYvu6r5pnRsz+17CW47ktZz2jHXHTHLId62AzVGPQLczs0yKZn5hfmgkdjeEnLoOfqAa9My6G6rANmoAtzwaPxAGuhZxvkGM6+7OzpgWyyHg/4Bf+spycz2wMz5lWbwVzI6+GJdnB9uugurndmL/rTm11nzuysby/cioUSjSfmwfX1oDM2607wzVhemM8+b0Lu+3P3ywHtyidPLSvsynA9zAO6mbmYXjsyeoLXLgY5v0zX5wEPT+jUL/Og8+xXy8+6/bJOoct/++3L+q8TvhlooC/X/5Wv8vYXa3jtYBkPaKh/1maYXbr9M8v0+dW4c7VZb87TkxU6cJ7b50997sp5OtgMdGGWF+ZCZ/o0D3TKfDPmTaZlEzpQTwfmXK3XjK5f79Esm7AH9eyYMdTH5madecCvhwsZLafhPPOay8zFea5ftgd6UL8so7F8or6MBjkuZNMzNyvPnJ5o59HeeuFuYEn5PPOgPl10x1yNZ9cMPNxuNZ8HtA+pyKDe3/t7f+/i+3P7dyl1QF7oTW2eaH961fZoXJgLu2ddT7+6rMuf4DXnm6EehnPWWQZ2zuDrAd2c5s2Zd8z7HyHg6QENtF6ZB9ObGR90is5YF2h5ubozhrNvtg/yM+Q8OQ1mzKOhGkM9enbNsrM3Z1qn6I6Zlhc8Gjejp8cHfnGe+XYKcztlGb/g887Ma2eyXufq2Z26uf70O9fTg85yc5nfmWfGUJ8HnfGcdc1QrUMXZtCBatxOWX7W02tmF5rRzeqZ+YX5nM1ZDo88/nrhJgpFMJfpwoVpPMGbkHW/zNM5M6/Q9cIN3svG8L3f+72XD//Yj13e8573rGrPWMP1Yc7OuFq3HzK4GU+iXvsY+FiNBrqY89Rye9M7a7le/cnVcj0zNtMTvIn2eOeemf8IzXDPoAs71bgdXPDbwy9h9ufO1Dpzv1l9XA/D7Ms7y6AznvnUsqI7GJZ//a8TbJ57NMjKZ20Gu3iiHgZZeZ7nP6vNzWaPhubtlGW0nMZm+nVo91GfBzrOoXFnuuCB+cw8qE8XjzzZ+VqdMdgDYs0/9QAAEABJREFUXagu6/Bhavmbwh7oOwcX5pnRvOI818fOkIP5Eda/OSl4VJqew/TK9IRuszKvHZ4ZvwR/5f1Hf/RHL/CP//E/vkz4PiZewO06p+fieuVzbpZBdbmec3i4XueyjAa6PZoH9JvArt5LO3yYHTtFM7PORL12ZDRM3Zk30X2sM3n2ptYzl2kw26/GwMcyoIvz3K58avPsyoAPMnOZd4YM6tMTfGe8/eC7weut7PoxJ7pdDK/zms9uvZdY1zVx0e70ecW517msR2Og51k0yIDWoXFn+lV41HvVGTI7eJ7LA36ZnmifR+vhwnz9aVsf/tMBnrzMm+jrT1lXjqF7NMjq0Tx4E60H9oGeuL3HPQ9TOJfNhVz/DD7ozawehnNm5n/ne997+wZTH/noRw/9kY/s97S9pRWf4DpFzyg/VdbHcHl6vKnNZ7RXltP2JvjAk9MTfPNkWrf8SMvsQXVZv+BV60K9aqyDZTB1s3q4mF1eZxrsAg3NzyzTq2+GOc+clk/o1qehOb8zBtlkHR7mYzPQQIMcQ30e8Aqz94LNNJ7g2cfQjEfzaGyeqCcHWXlm9WX1y/WwHp+GaizjlatlwC/LwIzhUV7/zLr1qs3QM/k0nj49PR0e8MHPh7ng0Vgfm4G+fqBwvT6Y5VC985cfdWdqz1yWT22WTzSvd57rP+L1wn1eOM/nRTehU5xzs2zyWZudA9W+D7cv9/vc5z53mfjv//2/r7+Mo/cIzgBZrzv1zB7luqAnB3qCV+iCeXam14yng3mT62OQg05hlplx0XnyI33uO0/v7esfgjOrhyf0Qbf+ea6PZeVqMziDh830BB+a4Ylm9exWl+uV69uFzridydXyol7ZOdW40Jdh3mT6DN32ZGY8PXNRvz1+dbOyjG5urj77MpADDXrAAx480rzCDpjbN1djkNcv8x/pdvEZ+sAvO+cl6BU6tD26OM/1J+sAzxn4EXRApkdjM5hxvc68l/CWb+SkCC05YKI+5uti86ug96r8nP3B7//+xddxL/zszy79s1cGL+S9Zs81g3Om1/mc8euV63We7EyoN3X3MB/odmleYQYznpg706dnZtcMsoJPl+U05k888to9Z/zuTt3e5JlXN59n1Gun2Zn1ChltZzIt4+M3gW7RvnMKGS3DRWesg2fW+RHz7OjT2EwXr5vttFueO1PL259+dTO9CXlRX5fXucyny+cOH9qpNj/q8tspz141LuxA+2fdubm9allRv1z/Tdh59to1V5flj/w39XrO5PUe9/kAF5ol+tyZnj7w/v/A12p7gfY3J/F879t73f7WpI5ruB+gC/cAZ19eD+vUoyfq4wl7Zl1cmGXAMwNdb3L1zOli5s4xl3VozMedaR7UexXrgT3QnTNvznIeVGPggT7QE7z2yjwdXJjBrFfwJprX06Mfsa6saOdNfN3ivG/uGRh0+bjojAuZvpnGRefm9SfrQDsY2qHlZrpcz0xDcx7Uq2+eaAfrNDMX029eT6daVs03Q7WMLszQWRfMfKCLZp1xPexDKzx7ZhqmNr8O9nXK1eZHZ/F1JvSA9yjnT9w+OTlNiw4pZPQj5oEdDFPP2Qf1zS/Bnm/r6qtJzviNp7856UVdz/0Ux3lb8WeHyyvLaKCBBhrOes5y4IGzgQc84GGggW7HTOMJHWhGyzHQIJ9oxqOhvalnzi90aaxTrpZBZwzT6w4GGQZdeKRnT26GqTvzeg6PPjMPdGVgnr8Gzfx2MPBkUI2b0XCe6/HtlmkZ0CADuj6eaKYHMsyfz4PXDANPD8+5Gp9zXR5MbT5DXjirmD2eGevSYC7T0LnMgzk7A+rLoF5ZDjI8UQ+DzN7U9fCrYMfuucMrdKDzuWuWAz3xyGv+7D1uFxA+WuKBvDjPfGec/Uee7oSvHPmxH/uxy4//+I9f8MJVmz/w3R+4fOu3fuvl67/+69cnFLo3r0ODa82cZy7TE7PPfzTzwBm4MNsBHi5kcPbPs75eYX4ddJ1Tpu3gwizHQJ8zswwDDVObu0vDnHWBB83xhM551ucDDbNjlgHfDGbMe4RHOQ9etSfTceaZZa/yZRP6zgA+LsxnyHj28JzrTZ+emB3aPtahccGfnrmoX7YztbnoDubpTfAmZGZs5xHLZfiM+vZkZRqal3k6wMP1HjEPdPHroFe0a3YdzKOBLs7zudtZf2ozrBduYuJ86JyntjPnqWUTLt7/NJn+1P6NSS/WXqjBP2P2kZ/4ifVC/uM/9uOXD3/4wxcv7nbO13I+v3hV/qrMfnMM82yzzuuei44u0NBzyjOTP8JLnelP7ezO5fO57Zxzvu7kc8cM556d+rJqfsEv5PzOZT7IJprj5metzyv0qsv1MPDt0Rh4c67HB7OcxkDz8Rn818FOO/QE34yBftU1Ze3pniE/e2Y+0C+h+TyfB3NHDvUxtCOjy3ShB+ayHnSeGX3G7NmD6emb+WfI/jpwzuz3vOmfPbOd2TFPvCpbn5xsuYdNph/BjoNBbgYzBj7UwyB7hC984QuX//Af/sPCZz/72fWe9dd93dddfuM3fuPm6TjDuT2D5hV8HtAwMzPwMOhC9eSpu9NuZ50z2pn+7M+clhXd4VfLpu7cjhl0eIV5gj/nan5Rr8yf2nWgHj079SfL9YCeGc2fTEP9szaDvOeV+bSsqIcn9GD25I/m9uQ06JnBjOuVeRN8qGdvzvUxX16NoR59RjO7MjNU4wm95rSsTM9s+rI5t1ffLMe8M/hyPjbTZR7wis46hYzGZ+jD9M36GGQY6P8TdLfsfOeUaWhOQ+f2cL2Z08Xde9wWBJaguswDs25hrk9PTF9/Zmf9h3/4h5dPfepT658t8y/g+H7cvqnUr/zKryxf5pOU5z3XgPquA+e5Hp79ajxhv10+PcFrp8zTMU/N64zlQM+MZ8ZF5zKfBvtmMBdm2QQPeHo0LviFjJZV487VOjRU4/ZoWefq+lhWzFxmhqnNMHdmThezY8fHhmV8MzbD1M0ecb3u2OOZsRk6l2XVcqjH71zvPM8OXejR9mhsBppHgxl4GPhzrp48tZ0JmTMKs3wyDfxCn+YXPLo+Bj6WFeb6k2kdDHowtZxXltHAf1Oc+87pbjWG+o+4+aPzms299cLdcv/z3wwWypbOM2/mnfFL0H8p86WJf/mXf3kBX9PtflzTt3X11ST8v/qrv1rr/CVODz1/5lOrmx/1ZPxCD8yyggf1aRmuZ4Z65XPeDi7OnVft2pEXnZ0BfB5dnro5LvTo9mge0CADHkxthnr65jIfzFj2EnRks0fXlxU8kE/Izbg5PT0z8IAGfag3dT29Qg5mOdDTMxf1zXRhLnqGWT5n+lWe3F6ZLuzRjzL+QzyZdgrnVIvNhVlmpss0nGddPsg6l/nFq/KZ6c99ujj3zOe++XWw58z25jz9anm7ZV5RD3eHLtZXlSgzsBIGml/MWV7I6UfMe1P45OMHP/jBy8IP/MDl668fJvFVJh/4wAcuH7zO/He+8513x/WeMAh7L/QEH6ZHd4+eOR/qYdArZs6TA110LtefPDMaXsqnT7uHonP363cu69FybJ7gd67G0H757NXHsp5T5tMz48HZ1zmjvbKdQre6eZlPzw7PDPQZ+sVL2fTnOfZk0zNDMxrMj3rNcNGuPs3HZhpo4APvTWGvXbtFPfn0zM2wuWgPN8Oggwuds3ee28UyOzTQvOo585rRhQ50Lj/qNntT7rnYefBo9yVfVwb0xHqP28HTpJXr0zwz0EDPjPcI7bX7qMN773vfe/nJn/zJy0/91E+t7wT4N7/pmy4+xu17l3z86sl0dHuWs81lemL63SnrTd35vKMD8kd4lM0zuqNXn65/5ma6IC/Thd5EfawvowseXaYLXTDLwYyBX/Dpsrx6+jTI2qF55glewad1q810YZZjqJ55tYzWAxqqsQ7mF2a+mS7mfNZz7i5v6s49DzenXwU9ebm6s7OBXz7rds+sB93DOnD2ZRPnvLPdggdmuzQG+ux3xnK9ovPk9njV+mbMA5oHZqAL8+zUfx3bsauHoRrLgf7romd17+6Tkz7+JziXXIwHcqBB1hk/gh5ft9r8CPKFa/g//+f/vPyP//E/LvPDI864Ruubw5RXP8e/4VYfQ/I8O5+jVyS7rwP1cbIzukiyPpGaZFlJ1mxIDm3ueWVecnSSrOeWbC+JyjrPTrJnprkwgxkn+xwakqwzkhiXXuLpIXnu9yyVZJ9XD4MMQ7I7PEjuZx1I9rV0JmTmZOfmgl8kR57sa+jJcbI9MyRZz1dmhiRo4e23n77133VKDv86PvuRZJ0lSIIWenZyeIJkz/Jka36RZJ33Us5vl4Yky5o62Z4gyTqTfgR7/MnV/CTo2RnJ9oVeK5I9J5v5kBxvf+cWyeHrTbTDo5OjawYZJMf1kq2bl/Ug2Xmyz5t59SOu54xXQQ90kn0tGpJ9TfoRuoeT57vdkYO3eb31HncHrFB0xsDHMLV5Hmou2jtz88k+8egTkDd88pPrE5Vmn6z8pV/6pYuOs5L9RJPN85wkt190yfHGswe6SdDqnT1zsnNacXKStXf225k+XciT57vNk+Ne653ZGbwkaL3IE2ef9wjtyZJ9RrKvmxycbK0H9pLdNyev1vqzl2S9zZL7c5OoLSTPdbI95yVbr/LTQ/1kZ8nmp3iRDpEcWT2cPL6nZsmxl+yuDJKdJZt5rgVTmyeaYZAl+4xqfpL1dquHz9CD+jTMOdnnJFm2PMnDs2Wr9PTQOcmT85x0kud5st9eyXN2SrJ3ks3nc5Lc7lEfdApzsju8ZOtkc3NZNe5MQ3LcXxLWG8E5SdY90tBFOtnn0vxkd+n/P1gf4072YT3cgcm+IA2yJOTtxWINTw9yMtkdGpI9N+e9BH+5xse5v+VbvuVSmAueTrLPdI5zJ3gwPZqXZL2BaV5y/xyTnSf3vq6dR0juu0lWLdlseLSf5O5eZi+J8Q7JvefMJLcz7spPQ5IntckOmHAxZxpkONlnJMfzTLZupz1zkrt74sknJ2Et1F/D0wMPnsZF5ollvvCgJ0qO65gnkudZkrt7bz9J5bNf+73WrTBEst9Oyd7XTbZO7jNrcgx0srs0L9kzXQ8n26dlMHWyr8UDOSTbr548e3QxO3SR7Hsw6+Jke8m+Tn1ZNU52jw88fEZy9JLcfq70Iclaoc9YwfUh2Z0kt/2rvX5ek5B/bST7+Z0X3cP0OuMk6/pJZuVFndz3bu9xOwy6SSdHOdk6ye2Cyf0NJ+n6jZPtJVl7t+CB+M7v/M7Lhz70ofUXbfCHPvzh2+wv3/j+3N/xHd+xNt0frOH6kOT6eFk/Afwk63rJZp5Csme6SPbz0JmQJ7ufxPgM7QuSfQ4NMjyR7HOaJXvWSbLuuVk9PL3OjzzZE9bb4iXtK3Zm5ixIUvsZJ1n31yBJ5Y2dATWS/TZJjq48yd1Z7eMk6CGSx5kzu5A87iTP/eTwnFEkud0fr2fTSdaY5K6T7KOd678AABAASURBVDnJyj0k+/nTE87pnOw+L9m62eQk63p6kGTF9BLXh2R7V3n3828u9IuzZ05yu04S1pqXeHqw/yTvMj4kWT4NuknQ8pNDy2GF46EeTnZ/xDeZ3GdJ1jVaSFK53ibJ/jnpuUlWP8mtlxz6Zj4QyeNezy4nWdeYs+PMk5Pd4yVB656J+Xv29sItSLIOT+5ZNpHsJ85Lgu6QbK83lWSdq5QEPYRPRH7zN3/z+nLA3/qt37p8wzvecfEetm845ePc3uP+uq//+rWb7HOSPDw7Oe6x97EWrw/J3pk+XSQ7T/YZ/GR71/XbG5JOtp/EuKBPJHufLpqZk2PHLIPqZO/Xm36yd2eW7L7eRJL1NkoO9qEtu8neSXbGs5sELSSHXsZ4SF7O1HoefcbMptYzAw3Jvg4veXzPenKc7A5dDyf7nGSzvJDTyf1u8rybbC+Xp/9f5+7jouclIReSXJINvWWOhyRjOqQucJKjk+TZecn2dKF7dHJkyX6u8uReJ3u2M6F7npMsK9ls0Ev2nBxn8Sd0Idmd5OBk78sh2bN98yPIIMl6u+gkW/MhCfsZZPAseIUx+8m+d3V+clzHXL/anOxOcr8rewl3L9wtORTMj7ievEj2xc3Nk+2ZJ3Rehd/93d+9/PzP//zly1/+8sXXcP/7f//v18e2k33e3O2506P5ydFPtuaDTmFOcvtJNhezw5tzko63F/Mk65wkK0s2G5KsrOdgkE3wkv2TmOydJKuSbN+ghwtzknWNephfTkIuJPusZHt6yfZopck08JNjhwf8R0iOM5Os+2s/yVpJsvxkd5Ms//yQbD/Z7Jxk6yTrjO4kWTLZbJh9M/BwsnvmZOtksxySY9ZbePrXcZJ97+0le16dp+9/LptI9nlJ7u5dxx4GujAn+2yajyEJukOSdXaSO79Dkmf5PPPc64yT4z7M9pKQNyR7TrKucwueRJKluouXcX2gk51fx/Ujye0cOazg+nDWc77Gtz0a5BM84OFX4XWdJGtdD5Ks6ydZfh9kNE52lhxv12Rr72zpwXrhtmBI9lLnsuxNcO6bobvJPr/zmfufAv6ijb/abv7KV796+eIXv7jeC3dWcn9GsmcZJHvu2Wcv2W8EfjvJ/U6y5+Se9ZPt0c4AeoIHPJzsHZr3OiS7n+x71e9usj1zkvULgYb2qs3QOdm7vCLZZ3TWTbLGZLMhyboWrQN0sv3kYD7oJCFvf7DxgJnsjC5kyfaTx9zOZPtmnOy9zryznnOy+3oTyfZnt3k9/6RZdbPkeDsn+4xke+dud3CyO9VJbm9zXpGk8pbPc2loaWpesveTfb1kz7Iz7Ca7JzMDPVEv2V0z6EyuTnK7d53kmJOw1q+Z9hk00EAnWeckYT1Dsu9HoA/J9pL7nWbJvW/3EZLdSzbr9Ay6SLLuUQZ8DHSycxqmb36E9cItUAY6CVpvuCWeHpobq88se4T2HmVnzxdn6cO+k6PReWWn+0z2T4i2HCfb64yTrDdkEpXb82yGBTh5vi+DZO/TZ3T37M852fvJZjtFsq+rn2TdLy1PjjnZOtmsA3rl5DiLD83Kyd5PwlrQS/ZMM5Pc7sVcfzINyb5utf6b4Nw325s8tSw57qtZEtFCklfed5LVmw/OgeR4Hs2TrPOSze0lu5ts1k+2To4uf8I+8DBUJyEXkn2WvBAkh5/sfpJ1j3LQL9PQGSdBC8nWyT432bzC68PcTXb3at9+JFnXTjbrJ4c2Kyf73DnXT55nScQP4YzkyDtjC8nOzMk+O9lecxmY3wTJ3k+ynu+jHeclL+d2dMrJvrd6fPCOLIbbC7dhItkXSjLt280l2082z1JyeC4OzZMjq1f+0z/904vvt/0nf/Iny/r0pz99+eVf/uWLv+7ua7r9wwo6Kzw9JPvJJrndo+vCrCY7n36SW+UlP9mdZPNt4SqS3F0z2bOzJpJ9j9eV9WNmjGTvJc978mLu0dNPjl1Zsufk4CRdWZzsbA1PD0nWc3IGJFkJvcTTQ7L9p3FRkrW7hqeHZHtJnpzjE8mM5PDNRa9X5s//ZDSDHJLcXZsnT47nWA8n26f1IAm6/YFuSLLO1QMe0JDsc3hJ0K2/huuD3pWe/eAXSdZecrCF5H7mFd3tnOyuWZaEvKFesn2zcL4w1OMnu0cXyb2XHHNy6HkODcmRPzpPZ/rJfV8OyfE2b59fnew82TyzqWefTu6vx3uEt99+++7XyPnMOVcn++xks3Ob0UWy80eZzu2FO7kvzoVkP3ELRbK9JOsXGj8JWk8m2TrJypPdX4UXHrxo/+t//a8vv/Wbv7kaPrYNXrh//dd//fJv/s2/WS/swiTo2bWWeX1Idp7k7vqeFyS5tu5/JPeeHiTP7z3ZnhychJPtm8+Q83Cyr5Vs5oMMaKgu85LcnpN5ZmZIdkeWhPUMyXGvyfNOd5MjS/ZOsj0dB5eT7Xtx5SVZ96oDPAxTP5qTYzeJyjMkuZ3vvImWk33Pc07S8Y6T7TsnyTqbLpSToPVrj0juZ177yc54yXEfyfb1kqzrJFFb5/JhGdeH6vLVWjuTaZidOSf7fB60l+z76iwreEW95DhHluz95jzojJOs+62fhH0HGTDLydGrJ4dkZ8lm3kSSS/8wSo7OPOesk6y3/zznddoZcO4lz88695J9X0nW26dntJek1h3fXrin2yUMsmQf0Bl7o+AJXeAl9zfOA/kj/Nmf/dnlN68v2n/8x3+8Yt9oClzHe9wy73HPM5J9X2vh9JDsTB+SPauZMdDJ/b3yIdl+snd1oVmy83plOSR7jy6S514znBx5cmiZ85N7jw99saSL5HFX3rNwwS+S+912kuM5J1snRzfZXs/B3aXPSO777ZbPfXOyr6eT5PaL3iwvkvuz6+Mk6G63+8nOFJKsTrKZp5eEXL/RzQYMdLLz6vrm6uTl+2uv3XKyz02e7yY7szuRHN0k6/n0vPaSLDn9JKub7P0kq9OHZPud5+706peTvWdOjjPN9pKs63YuN8O85DiHN9E82Z1myT6782Q7c35TPfemtp/cX08OMpzs+6N5kAS9iPXC/dJCspdnPk9K9gWn96ibZP0k6MlfQhKV9Rsh2XoZTw/2yCR359WTF8numJOtZy/Z956EvZDkdm6yc4EzgE52x1wkEd3uO9kzUwcnuZ3NAz4kO+MlYa1ucq+TLF9vla4PSa6P+8f0aZCUk/2ckqxzZJDsOdk5D7pXnewePwn7huSY5dCQTnaeHNdItpZD+/g884pk75n1CnNyXKfzzHnAm5zk9jZpJofOZV5y3EMS1tpPcmPmeYdXNMMTM6/PoyfTSdAzJMf9CecuDcnRSW5a/YYk6/kwkqAF+7CG8ZBk9ZMsN3nMdpOd0cpJ7nb5yfbkZyS5WUnWLiMJuiHZc7KfY7JZIbnPXJP/Jkj2Od1J9ll2k9zuR17IIAlaHdkanh7M8DSu15Xq8nrhTvYNMN++fmYwOQ7d3tUkrkh25uBk66u9fiT3czsYvEeoSE94jxq+6Zu/+fI93/M9l+/53u+9LL7q771q+L7v+77Ld3/3d198nXfPwMm+d+eZCzMk+55okCd7hy5kRbLz5GC9ZJ+VbK6X7DnZfefIINkZDUnWT1Y1BjvJkZmhGQ2P5iTs9ROcZJ2fbLaTZOXJZh4wy1PzYHrV9c3Jfr40yKB6Mg3yZN+HOcntfl+a7YAc6CTk2jWvYTzUw0lWb8S3Ocmy9Za4PiTbu8r1I8nqJ1mzB/0ky6+uX+afdXLsNEu2Z06C7n4u/b5Jsq61wqeHnm9Mgm57fj8xZsec7F5yz830k9yuZQY5TJ2Eta65xIOH3ofIbnL/ayY5zpC3R0NnXCQv77SDk6znMc9J9vWTzc3ax/8nSPJszXNPsu5BmATdkOx7YMz7ML8Otxfuo3i8SPewZF9wzsn2upfsOdl89s1J1pNwzkSy/e963/suH//pn778X1d8/OMfv/z0lSd473vfdznqDknWnGSdn2TN8yHZXq+bZHXbSbJkcrwxGcn26e6Wk901yyE5+knurqEHekAnIW/g3YYnkdx3kqxzk+P69gpr1UmM6zcXL9kz0zyZTnI7u/Mj9ouyfrLvo/Nk+oxet/6cp26e7HvqjGcvCWvdNyFLtkcXsjOa4XPWWQZzTvZz5if7WslmXrvJ9pKjL0sO3wzJ9qqdkxwev0jufd1mUydHL9k62fcy+8nOpjf1685sF8+uuUj2dZM8+7lKDi9JV9avW0OSu53pzesl+xpyfpGEtfCSJ0yOnvlVcE6SZ/dlR4ahGidhredlXsNrHpK94w/wVtcLdwec7FJ1D8fJfqPQ8jIN57lektuT4yVBC8lxpheD//erX734BxX8Dcn3v//9l2/7tm9bn2Dw/UrMfY/bcq+XHOfxH0E32b1ksx6/nGw/ec7J9nSTrbub7FlWr9oM5keQgaxMF8lxNu/cSfLi23b2kxhf7Do32R3FOdOQ7J+rJOscnm6R7LzzZN1k7yW5Rcmhmckx2+GVaUged8493SLJ3T0nabT8ZM/zDBpaTHbHzM8l5CXJwvKuepnXhyTXx/3jnG13f2VNkrXP04PkeFuaZRO85Ng7Z3Om9SF5vKMDSdDtfgxJbnNy3JfMmeXq85zc759ze8BPjvOTY08OOi8hyUvRzU9y91wazLNpaPY6TvJiZZ6T7OeW3PeTl+e5Py9yfRE/XruVoAX6Wlhj8vxweXLvK/NxYQYvzLwk642XHMzvV5X4ypL/+B//4/pTyXcD/MQnPnH5b7//+9dKrnh77V7FjZ0NPAzVuJg+DUnWOcl+o/Jg7piBV05iXLtLXB9elV3ju26yr5fsc2bunGTn/M7J0a0vgyTPzk+2J38EZ0AStN7e7SV5dl4znNzf3zrg6SG535396mTvm5/WFs05yfKS3U02L/P6oJscXnL0r/H6kWQ9D11Y5vWBhqu8Pe8kxhuSrN1ksz4ke75kV3mwp/1iTNdLnopXM9n3K/N7KzkyXpJLkvXOyrW+7i3JjZOd64IOTJ087yTPPXtnOKdIco7XfUwzybrfJDc7yc1LtnbmrfAkkp0Zk/0cq5OQ63p2k6wzaUGy++YkrIXOyfaSzSu8PsivtH5UJ3l2dnKcr/cISW7nJFsv4/qQZJ2ZHHy1b8+HnkiyxmRfNznmFZwejlftEbhJY5mGZB9Gy5JjTh5r3ZeQ3N+kryrx193hf37+82vNV5X8t//23y74Wl+eB9fHUF1O9r0k+3x+sj39JOuNSk8kmeNNJ4efZO0mueVEkpvf6+FmGJLdkyVhrT0i2TPdHHemk/2ceMnuJ9tL9qwnLydZ10jCXppI9vxSjw/J7iVZu7y5n2x/eu3UMycxLsw5OfwVPj0k20+yrstO9nOtxpAc/jy7WRLyds65I+R5McVmoJN99tTNyrLqZF/LPKEDj7z6ZZ0kt/s1gxySGNcLQZLVS7K8ZLMh2TrZzANnQLJ9mp/sOTmeczM5DcmR8yHZHj1eI3UiAAAQAElEQVShD488fnJ/zXPPrAf0RLKvmdyzbrLPnX062X6ymQfJnpPN3tEEZ2GoxnaKzmeW84AukqyfsznT7eEkrBuSY372wm1Bc/LUsiI5DmpnZknubk6mB9WP+M67DvpJruqyzuuML0//S3ZufMmXJfsneHZokEOSdR16+mbgQRLj+s1jNiSHZz5DD5KjZ9YrJ0eWbC0vkifvaiRZ95rkOt3/SLbn3EKDnkwDH2igk+PtZeYn20tePj/Zmf4ZPefsn+f2JlfPbrKvlRw8e3Sys+4lx5xkvQ31IMmqVWNY5tND5yRr98lelGwv2W8nZhK0kGw9zxAkWWclm3k6QEMSdPdrTp4c1zJDsrsWzLhIsq7FT1L7xny4GU8iyd3eow5v4mn17p6TLDs57nsZp4dk9072GpPnu667wusDDVe5rp3ss6bXrJy8/kzdvojTE8m+xvSmTnJ7+837qJ7dszfnt9zALCf74GRzyzjJrK4bSO69FtrHvPJZm5P7M3T97clf+7VfW3/hxse8/+LP//zia7h94yk7E0nWvdSzD52TVK6fwNtwFe0lu5Ns5kOy52TzdWWdkeyf4CS3ayfb00mCbnAW1Jj67MmAj5N9Fg38wgydk8fdJLf71E32nDxnOSRBC8mhl3F9OF832c8/2d1kz9fqunb7yc47l5Pt6xfJcQYvedyRQfL6vp5rQrLPq06y7lUnOc5Ktt9ec8zDkATdQQ41p052P9nXmln7uD5Osu4xiWhp/hpODy/5szY7yXFmcujZnzrZnbOXZN1XkluUZHmuB0luGXH2kqx+EvENesBIsjp0kaRy/V7t0J3OZ072zwE/ybNz7ScRP8uYSW5+cn+WXR2ggYbk2DNDcnizK4P1HneD5CgLk6DbzegVyc4UkuMmzY+Q5HZOkltlnpdsP8nFX7j5uZ/7uct//vVfX5+s/NVf/dXLz/zMz1x+7/d+77abHNd1TpJ1jSS3zvRv5pNIdi/ZrAtJ1jlqncu8ZF83iXEhOfQyrg/J4SVZZ/YcfK0s7xHzJpKsMcnaSfY9LPP6kOx5npvkmlxWn588n/mX6//KV7l+mAsGnex9GpJ9TTnUq+6M602mITnONetP8JLdoSHZc3s8MCdZz7lzWUZDErR+Y/OT+5mnkNw/x2T3ks16Se6ux4PuY3Py/KxHvv5EkosP4Vye/meHTIIWkq2TrHtJcvP1gVGeOtndesn9fc6dZGfJ3pElW9sHHtAT00uOneTQOhP2zTjJem70RPLYnx16nlPNT47nxJ9IorKQ7J4hufeTndmVQ7I7vGTn/M50sjv0hA7wkjx73uuFW9hSmVfwknRczPPeOl7G00NnPHPzU2VRss9Lsm4qyfLf8Y53XHz1yAc/+MGLf1jB13P/8A//8OXd73735Wu+5mtWdxXf4KHXxJDk2X6S20nJ1rqQZPVppUfMAzm8pGUTSW5jsn9Sk4OTrGsrOROSGG8vNmt4epA/ydteZ1myz6Yh2XOyWZePIcmzc6afxLjuJdlnJJtXMB6S7Sd7p1Gy53ldWZJ17STGpXVgGU8P55md7B0Z8MrJvg8eJFln04UudMbJsTez6jN3B8uS4zpJ2Ou6zcoreHpIdk8GT/aiJLf9ZVwf2ilfrduP5L6fHM/nVnoS3cfJ3kvylO5PvCZ71hGUaUiOvFmSdc/N+WAGOjk6vCLJkjpEcsy8QgZmDEnurpvs555EvH796id7TnLrK8jwRHKcIS/aSe7PqF9OsmT3yst8euCRye6e9e2FW3CG5WQv0nJ/8if7xs18SHaPN5HsbnKf29Gb7B9S+MEf/MHLx3/6py8/+ZM/ecPHPvaxpT/y0Y9e3vve96439tyloWfRRbKve86S7es1w8m+Xz4kR8/8EuxCsvv07Cb7XG+/c3aek31G95tPppOjl2T9guN3D5uTkHfgF4Ika5+GmZnPSPbzSbKiZM8Gu7hIdqfz6zh53ndmsq9BQ89Jjv70m2M+VGNIsp53syTs5S3x9JBs39guPZEcnfrJvufk4OS+9+i8eklu91Kv3Gt0Tp532yknx33w5q45OXIZ8Iskleu+kt2/mVfxqp1mSdb+tX77IYMaU0+Pn+x9ukjS2h3LGcnze02OHb3kmO1MJDvTm/5ZN8cgT/Yu/cjjJ0cn2Vq30CnWC3eyS8zk0HNOtu+QR36S9RORRLz0EteHJGu2WyTHG5F3rV3e+c53XvzzZO/9zu+8fP7zn7/89u/8zuW3f/u3L/h3fvd3L797nf/X//pfqs/QMwR0EvL2Ip8c10vudXLMdtfi04MZkqznkOQpuadk+7oz6Xzmduone59fj4Zk319ydJJD60CSdY90kWTJ5P6M5PCTna3i00OyveToPUXrbZocvvuFJLfrJ1n15P6cZT49JLtjTA7tLOBDktu5nctJyIdIdpZk7Sf7Xma510l21hkX7ZuTdFxcDxcrGA/J3kk2z141tpLs+0hyu2d+86mTGBeSvadXrOD6YL7S7UeS29lJlt9OklsmSPbcHCcR3ZDsazOSnSUH25H9dZFk3ct5P8ntqCSrk2R5yWZDkpXR4BygH6FZWQeSoIUktzP1kmNehfGQ7Cw53j52RuVOzizJLUtyu2bN9cLdAVsGGqpxwYfk/obk/CLZOR/43uNMtp+EtSD33vR3fMd3XPyzZT6+/Quf+MTlF37hFy6f+PmfX6D9M2bJsZcc2kHOSfb55iLZveb1zUU9fPbmnOyz9JKt5WZIst7QyWZZsnUSlYVk62QzM8napcEuToJWlhyaqVN0njx1knUGL9lvJ7vJ1nzg+bnCyd6hITm65vbL9ZLdSw7WgdlJdl5PDknQ+oNCBsn2ks0KfKBh6jknWc89CXudu8R4SHLrJLklzoQkK6eFSdDyiCQ3rTMhN+MkaN1Dcjx/ebLnVbg+8K506yY7r98MF8numJPc7slsD2g462Tv8kEH6CTkuheCh5Pt0zxI8uy6zct6kNx3k6is6yRbJ5tX8PRglzwzr0ju99pNDj/JutdmdpPj7ZBszdcBvz/mTBfyifrJvk6SWot1l7g+0JDsDn2119sCw90LtwIkeyG5ZwugA3SS9YTpvw7mPp3k8g3f8A3rkzC+osR73L5LIHzxi1+8YP7//t//e12mO2u4PiSP7yPJNT0+Npfc/wSs8PqQZD2PJNfpsvTl6X9JbrPrPtnLO88yXmFO9jWnx+9cnl6yr5mEfftJ000OrzNWLNPJ7tEgAxqmNk8kezfZfO6e52T3nJEczzfZmt+dJOttV2/6vIKfZI1JbjsMGQY6CbmQHNdkJEdmBjuPmAfJsdNucpyb7DzZbOcR5q48OfqyZM9J7p6fLujgZOedeWckuVlJ7s57tJdk9ZPcdZc5Huwmu0NDktVI7rlZst9WZlBOdpeGJOu6yebp0fYKM3TG5iRogZfkdiaTh5Ogh5lAL7nvTI9uD5+RZJ1dv/3OOAlaOOfJkSVb6xRraTysF25hst/QyWYeJPuQsbNuMHnuzw5tH78EOST7LC/Q/lFgn5z8h//wH158vPuHfuiHLsXf//t/f304xXnJvk8anAPJPos3IYPp0dObOsl6nvXKdop6OEntxcmez1my/VW6PiRZ17nK9UOfwEBP8KBeksrFSR6eJ0yC1h8Czkj2zOyMzUAX5v8T2E/2dZLNvFedJU+ObrL1SzvJ4zy595376Iyzb4aXus2Sfb4Z2p86yfr54BV6dBJyIdk6OX5d6wiTwzMXyd4xt0vDnKdOcskVjzrJPq/9JOve261vhjlPPTN+EtZCsjV/GdcHGq5y/ahOdneZTw9Jbvf0ZN1Rd/HEXenBkBxv4+4l99dKcttMjn5Ne9U4ybrXZHfPuc5LSI7dZO/P7nrhruFd/x6e7LI5yaokm9dwfUiOWe9qrRcFXCRZNy9P9pnNcHLkPgziwyTvete7Lh/5yEcuP/lTP7U+Kfkxn6i8ap+k9JUm9npeNS6SVK770b0ZV9E52b3kuC9Zsuepr2u3H3xDcr8//UfaDj/Ze5151XiiWbJ3ks06ssKc7PumQZY892TJPifJ+vnhQbL7ds1QncT4rL/M64NecnSSreuXr9W7nxc+r0j2Xmd5cu81mzx7ye4nx/NpXrabHL1kd/kTfl+Yk9w9d56zMCRHzk/CviE5ZrkgyTqzM04iuqFecvjJca9J1hld0AdzmU6CXoQuJM97SdY15IWDqrE52b1kM08GNCRBd78GGLNjhmR3aUiO562f7DnZPR60mxw+D5rTr0J7yb7GnO2ZgU6y3j7VfDDj5MjrleXQeTL9COuFO8nKknte5vXBoUluN3a11hs92U/InATdkDyfndNCcuR88KEQH8f+zGc+c/FJyL/8y7+8gL908+UvfenypSu+8pWvrGv3HHtJ1r3RRZJWFie5dZKtBcl+DkmMC0lW15AE3ZDklrlWkpUlxzl8ECQ7N0/IoF6SdW4S9oJsiesDDVe5fiS7l+S2N/NVenpIjntjJXtHv+CDOdl9mpcErbd7vWVcH8xJ1j1cx/Uj2fsGOYZk+0mM67wkd7srGA/2k73H7kwnQescItkzDbq+JDXJukYS9tJEcn+ufn0MydExQ/LcswvJcY3O2B5Osq6f7DN4IAcakt3jTTTD/GSfQ08v2X5ynCMvkli5Idlz8nhP0W6S2/0nYa+3f7L1Mq4PunCV68OfyT63Hh/Myd5NcjubDzpFss/oLIfOyd7vLEuyxuok6xrMZJ8nAx5OQq6eGZLtCTon9x5fDsnOpsc/I8m6TnJwdzDYSXL7/jXm9cJNgFIScv1kEDwMdLJzc39T0EVy5Mmhm09OcnfTzvMXbD71qU9d/tW/+leXf/Uv/+Xif/kzP3P5xV/8xctnP/vZ9dUm84zq872ZZcm+Bl2v2gxJWDfwDMn2k808mHk1P8l6uyVZz4snT/acbJ6e9+aSvTf7dBK0kBzaPqzg+jD1dXz4I9n7yebuJHu2VI9OcnsOl0su/V+y7zU5PHuggyE5esnW/HaSXJIY19tsiQcPydE573fea/uRlxw7yb72Tp8/JrndR3JoTWdhSB6f006ydzvjJFYXktyuI2MmQQvTS7ZfT4GG5HkmT7afbH7Jq+8s+iXIYebJcXb9JLfnxUuOt1MS1vr5dVayZ2aStZfEuDqE1wAMyc7owjnVyc6Tzfxk6yTr/PaTiBeSrWVJVm8F14ck18f9Q77Vfuw8OTme724dj+3VmXNyXGfmSdb9tJtkxZ3XcH14K8nXXPnhj2t258/lZrxilh95Mz/vd9bxV9t9Yykv4r/zO79z8U2nfI333/27f/fyLd/yLSo3zD2mGeii9zL9qfXmrM/DhRk669M8GgMPqmWdeVCPT/Mm+HM+6+6cWa/eS9rZhU7Rvcm07vVTu+s3lhnsbJ96PV7VlfXM80l8aIcGPR6GejS8KpMX9tql6/NgzvTsmHWmZwYZnwbzmZvLaKD1CjMf6EI+dfOXePbnXn1cehQf7QAAEABJREFUzJzm455NA7+YGc8M1fpmXMjAjGdurk83q8YwfX3gY5i6c73u8t8U3cE9x64ZT/CAV6ZfQs/D0B0a7HknD8Nb148nv6sBgwaLmAc0jy7m/JK2B93BZqAn6jkLZOX3vOc9lx/4gR+4fPu3f/v6E4mvD7NnBjkfaKAn6uG5Y9ab3BzLCh0e0IWcrm8GMy7M0PnMPUOnOHc6y2kMdNHZefWmlpuBLsztl3lFPcybTIOzcHO64IEZA23nDD7wMbQ/dXMZjeV00VlWyPhQrxo3L/NgznNPBnI+NkM13ww00M0x8LEMzJj3EuQTep3tw6OZD/pYhwYa+IUZ5IVZ3hnzJuSd5dBZVtSTQ30azDpl+ozZo4tz7zz3TP1qnanNZ+jXo9un+ZhX8ApeNT7PvLe++tWv3t6FnYcJJ7qs88if3ksdvnOgGoP993znd15+6vpJSPj4xz9+Kczv/zvvX3/l/a23/sZ670/fOYUZOvdMXMih82R75ubl+pNp+YRdkOGZTS0/z9Orxklmdf2BVcM1Ch5tp0zzgVemm9H8zrT/VDXPrBpP6IM+ntA7zzx4yZcV7ZjpXsNczTdjqJZX8wueDHjm8tQz5xftysEMdGHWx/Wwefpm/tnjgwxo0JszD+rJO9MTfHN56vP+7DTjwUuz80Cn6Dx3eJ3xebbLBxp0oFoGZnjrrbfW64GOX7tYjuVghunRPNAp+NXYDHplPtSjQY4fYWZ0d2kwn/fqj+ztdt66fvLPh0s639iSYSytNxCvGf0qzF29OTsD+MV73v3uy4c+9KEFf4OyGvuLOS/tOwfkGJxpnsyvxwczH8xQj56+WYbf1Nd9FeY51Xhi7vf6uGhuhy7ToIcneMDTBxpoGVTzz5DxcLudeTS/6IzP0Hnk8UGGgYZeo8xrXn6U6U3fXNiDmZtBp0wXvHPfXMh1yzTIedhc8IAP06/GOhiq9WmYvrngF+13fsT2pm/HjGHmdKEzoQs8rFfmmTEP6HrVncv8ibPvnKI9Heh8Zv161S9xe86DOdM86D6v4FdP1oXmtPz6h5QXbri85WPHzIY0dImWAT3Bg9ltfvbMcM554Bxfx/3rv/7rl//0n/7TPa7en3zxT9Zq9sfq1x8iyR7srvD6kGzvKu9+JNtvN8nde7B35dOQ5ObYT14938pPwg48jXeUHJ/cSA79qJ8c13XI7CS5PZ9knyMH3TPq42TvVs9ukjnedLL9ZLMg2TrJ7V56ZhKVG/i34QUxOzQkuZ39aK0dGV1O9h4PkogeQi5Idqczr6iX7A6/Hp089mV6yZHX408kWc+V1w7+6yI5fj3YdR4kMT5E8vrMGV1Osu7VXB9DEvbKk62X8fSg8yRfS7rQYnW5frKvkzzn2aWT3N1bsmdnJVsnMa4ekeyZBufgZL+tk6xusmcZJNunu1PdOTk6soFc9X7h/vqv//r1Ing11g/LZ6zg+pBk3cxV3u2Yk6BnSLbvzP6nDK2Ik+OJ+TruT37ykxfwZYHlT109/4SZHUj2mdXJMTuzPj4jOboy/SS351UPQxJ0y/VhmdcHOsktT+61HJJc29dP87399u1tl+znnuxMIbnXSdbZye46C3ThJS1Lgm5oF8MteBLTS47d+sn2kn0vT2vX53NZX6qkl+ws2V0dPi6SrOfUeeZ0kkbXs/fbK7n3WkhydxbfGVBdTp53ZUWy772zM5LDS9LoxjqGJOs+OtfDj6D31vU/82eW7DOSLFuHSLLOri43L/OLJJXrbWhIss5JYlx6iTd86HVwkrt9HsyjkqyRn2T1aWay52QzH2SQBD2792WOhyTr3OT4eZrntJqkcnGy53YxJNtfpfHQDLPLL2l5kdyf+chPcnsezpzQv875yle+8g1XXj/e8jXSSz09JFkqyTroaelOKyT7DZVsbk/2CPL+Qk2yKsneTbLO99fZfR9u+MIXvnApzOA98i99+ct3u85NsrxqzCifdXLfT4770C2S3TPPs5LDbzZzHvCSrOfWGSdBt1+UeoxycuTTS7LOSvb92gGdIglr9XjJnpnJ1vUxHye52+HNjE52h5755bLeCWDf0JyRPL9fPuglIReSrZODk60VZj+5Pzd5Pif3u84A55TpZPeSe9ZJtkfrYkhye5uZIdn30F7yvKNX6CXpuJgHa3h66Hzmp3jdRzVO7s9MjvtyRrJnXTMGGqY2A68wQ+cyb6I+5pfpgpfs++Ulh5YBH5IjS47nkOTubaBrLwlav9fqMWjoaxJvQjbnZJ/DSx5r2UtInu+4BtjBhRk6J+t55jp/LR98jBvfcA1vOsntjVH/zC3zk3S8vQfGZya5nWXuG0wOPJzk8rVf+7Xry/586d+3fuu3XsCXB/r67v/+uc+prrOS9YTWT8oynx6SPKmDksNzHWhaXa6P6yVZ15wenex7SGK863QXg0Kye/QjL3n5PDtgL9nnJFnXTDY3x8k+S99cJEe3nk6yfbo+ToLu3s7J9pLcrr9KDx5eOk81CXoRyX3uLEi2T1vGkGw/2c89ybo/HWgnOfxkd+WPkGTZdpd4ejCDEQP9CMk+Y2b6wEvu7yHJuu8k4oXk0Mt4ekjud50Jye7Tqsme6Xp0cvjJ1s2T3N0HP4m1G5I9J/d8KzyJZOfGZN9zcu8le3YdPUhyu4f6ybHPgyTqN/Buw1Uke6d+on99t+P6X8HJ1snma31dc3L3zpzsnfp2Juonuzcz+pybQQbJ3rt6/68Z1j9ddjXoheRWWvN8SHbGS7aeu1MnO08225l5dXLkSdaX+/3Ij/zI5Sc+8pHLRz/60Y2Pfezy/d///Ze/9bf+1uUd73iHoxackeyfjGVcH3hXunuROc/JsZPcXz85ZntFz00e53rJPlc3ye0nvlkS8g66NZK9b+ZDdZmX7HOSzc2SPSeb+UnWfdgzn5HsnK8D9BnJvjc5yJPtJTEuyJKsayZZnofk0Dq8Ys40JLtPt4eTfc36yZ6Ta//pHf/kqq/lZGftXq11X2bojKHe1PXKsiLJOi/ZXL9sp6iXpHL9Gk2e32MLdqvxnJN9TrL5Ua6fZN0j3U6yvc74jGR37BU6SdBCktvZSe48Q5KV087AkAQt1McTSdZu8vztk2Ttnh/sJ0eW3Otkn5XkdnbPsFvUw/WSGO+QHF6SdaZCsq9DQ3I/90zZIyRZdrJZP8nbf+Nv/I0vreD68NYV64K5XP+fxxewqFeuTkIuJIdexvUh2Z695DjbfI1vP5KdfeM3fuP6ipIf/4mfuPzwP/pHF99oauIf/IN/sF68u5jsPXOyr5Xc88x6XZzsntxcpif4ye7yO1fjZN9HslkHkr2XbOZNJNtPNjtLnuSSbNSrjx8h2f2ZJcf9JFlRsnmeu4KnhyS3az9ZN7KT7Nx/MZmFZToJWi9KfFjG00Ny3NOTta6nl2RpvhlDdZlXJKm8XJ7kuZfsayabL9f/JbusC1frkmThPM+MlifHWTxIgm7Quw1PItmdZDM7ObQZksNLnl9rnp3sbnJw87IzITk6nZOs5z1nGpKdJffs3DP06yUxLvCSPSfHc0m2N3MLydGR8co0JMeuudBLdpYc58hn1plXnew9c7J3k+3pJVlvp2o9MGNIgu4gh5pJ1jnmZOskxvX7ZonxkKzMC/df1X7rr/7qr/7QcP0UEFoHJlnMSLZONtfDE24syc0yd0j2G2F6zXiQ5PKud71rfSfAr7t+qORXfuVXLr/0S7+08Yu/uP7K+7/9t//2Mj9Jebn+L8ntXq/j+pHs663h+tDzk1yn/SPZuhk32V6ymVckWdfRhyQrSjYbfPI1yV2PX9irxubkuNck7IfQheTomAtL1bhzss/nJcducmhdSLana55MJ8dZckhye75m0C0n97ksiXhhzjQzOfIk6/zpJ8d9dEcOZkiOPX6yd5IYF/SWuD7QxXVc1zTTQAMN1fiMZF8jyTpn9qvt0Mm+r+ok5PoNrFMkh78K40Gn45Ne+7zOdMHza9VMn8GfkHeeOsl6frwkq5Lk5vGZyX6OnXk0JDHe7ncNTw/yJ3k7s3OzJCubfrN6mAfVGJKguzOSfb8rGA/2Idk7tDjZ/WTz9OWQ7IyGZM/t8uhk+51P/PTflJfLW9fyHwsnrt56QyZZTyjJjG9ZTf2XtAzkyT4nOW4uybqGjhfub/qmb7r85m/+5u2Fui/eXrT/3b/7d5c//MP154zj1n3YW8PTQ+ckT87+GNZtuIrkuP51XOeUk72XHOwXuXMhybpf/TPkRZJbnBxa3iA5/HpnTrKul2yeeZI1JvfPhzmvc56T3U82y8EOJPtcXrJ1spkH3iZYH5IjT7ZO9vly3Yl6ye4ke0cnObQZkqy3Aw3JMSf7jOk7H3jFeU6youSemecuD5Ks+0hiXFoXljEekt1pluz7TLaves7mnOxeslmWZF3TLvAmJztPwl5dnWTPzGTrJCvnQRK0YGeJBw+yZD8Xsf/6wnygk32WOcm6ThLRnZYv8/SQHF1Rsmf9gg9mDMnu0RNJ1nV5yXHvc5dOovIMyfaTrHN0W0oee81xEnRD95PDTw59K74g/OWb26u4Tg+sNhe8YnrJviBPnux56mY8Ojk6POgvAC8Kf/GXf7m+G6Cveil8d0CZLiRZb0S6SFJ5x67JwJAcveTQOpBkna1rLpL9kz59Otn9JK0uTo45OfQKx4MzIDk6ZmiNBjOGZPeTfV8ySLZfndzn/MI5dLJ3OvOmTrLeJklESxNJblof+DgJefvDcQ3Xh2T7V3n7oW/AUJ3sbr1kz/IiuX9+7TafnBz7Sda9J1kVe8nWy3jhQU+UZO3TRbNykkY3Tu69dhWS++fCg+TY0U/2nGzm6eHk3qsvo5PH15BB8nyfX/SczuVk73U+sz04+52TYz857rE7yfM82d6509nZUye7zz9Dr0iOHq/dqXlmoCHZe9OrLidZv246l+0XSZYcGQMuPjn5eUGxmteHJOvgq7wxXSTHG5WXBC04a4nrQ3Wy+52v0e3cev7VGy/OH/jABy7//J//84V/duV/9s/+2QX+yT/5J+tfgLdrB6ZO9j3UlxVJ1vWSLKudZN/XMq8P9XGStXO11wsPjy7MZ8h4uOicHOc1Kyc7a5efHF795LjfZOe6kAQttG84a3Oyz0n2TpLbcz3vJGEt2IVk7y9zPCTbb6dRss9Idl6/3D6GZPflZpjaDNNL9g4/2ddJtqeXbI/WganNydGXeUdh+jTIgIYkt7dfsnUSlZuvB0zn4iR3OW9CH5L7e0/uZ+/0JFmr+rCG60Oyu0nWtZJc3ePH7B7u/i/V5Oiee0nWeXyYu3Ryn+tAEvGCeYnrQ7Lvsx5Odpe+Vm4/zJDsnSTrXhT4QCdBC/VwsvcEZnzG2U+OnXbPnc5lvSTr3uqVZXCek6OfbK2X6/+unCsub10/U/mbV6z3unuAnAalMi3DQEM1npAV/P7i4jkT+GbswyC+dev1ftbHuv/R9ROUPkn5wz/8wxca/pizgTwAABAASURBVPbf/tvrRbQ78wwanFWuNoPZLtDAnzMP+LgZ5gE9ce6ZQRdDNQaeM7AZ6DN0gK9DQ2cemCfqtSujgQYadIEGmbnojM/Q4dmjsRmqy+fcfO75dcI/oz1nFTrTr8Yz62yPnjj3ZHqFuR2aj4HfmeYV5qIe1i/MoFeP5nWmeWYapjbLMcysuqwHnfULPl0+dzrLaQx0YQbnAN3MTPOqzWCuT0N9GprzYXoyXrlap6inU4/mTzTD8kfM6w7dXrWMV/B5eHpmaEYXvNm96vWifc3f9k2m/vQq1p8IGK6Fu5k30QPLMjuYN5meeCnn/8Vf/MXFx7L9rcn/+NnPXn71V3/18mu/9muLaX8V3r892fPswHnmwfSrsXsFGma3M0+nMMuguszTm3M1Xw7Vzc4eX6eQgxmDDp7ggR6WlXnmydU6NNCzR/OA1sHnmdeszNMzg7lMg3zyWT+ae0ZZp+CBudxrmGFm9CPoQTNnFDx6Mg38wj7wJ2bON+sBzaMxTN0cwzk31y/zzpA5t5Dzziznw8yq6+sVzTAP68HUneth4APdfRr4QM+Mnj7N05vaDDzQwcDvjM31cb2y/Aw9XpmGzpOr5dDZ+cCDqc/z+nJABXBAYVbuTBfNzOd8ZlPr+s/Dszdn3zfFe9u+cuS//tf/eoHf+I3fuDHtb086q3vls8d3b/wyzccvQXd2zO1WNy83N4MZgx3glevzLk8PsoJFY6jGdnmTaZg+rY9lNJgxD8yFWWYuTz09fsGfu/XL8uqyfnW53mS7hZ4MaJgZLcPNMA/Xr+6MoT62A/QZfOB3zwzTo89ohz91z+EXzTHUx+a5M7WsHXyGrg6eGQ/4QINOmW6GC37Bo+0U5qIe5pWrzzN/oudjmP3Ze5W2Jy/TEz0Tzw7Ng0d9ng7ufznShT3QwfXPLNOpb67G64WbaICB10UzjaEZDeaJdnlyoKdvBh6G97///Zd/+k//6frWrh/68IcvP/qjP3rDP/7Qh5b2lSe69pyLzXSZB/X4E7I50+1iOZ5+tazQKXg6GPhl/ktoRx/MfsJnnw8yoJubaVyYC12+mS7XM9PNzHCeX/L4xXnHuTI+jc0TfHMz80R9zNed4Jtl1eZqvhnzsBnMUI1fB/2eQcPcMQOvPPv8ormZ1gMzVJd1+JOb1X+U6fBBD3i4kPEwnH0zf4I30YznrILPA5qP50yDDOjZMfOhPg94eEIHpkfXO/PMaGe207ksO/8elRX2Cl2+GQPPjIGGZtgMtA7Qxe2Fu8aZLVvCM+uMi+ZmO2YM06NBPtlfwPHtW+F9733v5Xu+53su3/Vd33VZ8/ved/ne7/3ey7d927etD+N0zxmP0LzXnp1mGJrp0tObs/yc8UCvrFPNN0+W8SbLgQ/VOgUfHs36E+feOWvOp7FzcWcaOve/mMztzpx+BH3oDjbrlnmd62F+Med28Rnt8ad2jplf8Ggsw+aXINcDHTPQhXmC336ZB3oYZMX0ZcCT09C5XG8y3R09M65nnvqcdW7HbAd4QIMMaJBBveqyjsxMl3nmonPz+p3L9bEdoCd4wCvTE/O82Zl++488WX08z6ALPTBPPmvzGbcXbstFSy5KT6aBD3aeM+eyXmAvT/+bPRqeokXmP/iDP7h84hOfWPjP//k/r09C+qfLeP/1+iGT64HXH/vj8/oW3QsN5jINr8ofde3A3NMDngyqy9OjC3u0Ho3NNO48dT2d6kc5TwfrFWa+GZuhc70zy/Xq0xP1cbtyczFnWk+GJ3hy4ON6ZZ4MaD4NnbEZ6NfhfIb+3J1aBjyodkZRX/YIctCXY6BBhuGRrlfWe1PY6bXKPDBjoOGsz9fRqTc1r7MzzGU+DfyCD2f/rzPrOqNn4vPMm7BjxkAX3T2zXJePO+NCVo07l+3RuNAD82RaF+jmdHF74a5xLs25B2Gw07zMk5kLHphlNJgn+26AvqrE35r8/d///fXC7ePdvM76YPdVZ+k8gr2zP8+RmYEGO1CNoZ2Z0SCH6nZ5hWz6NE8+mQY50DpnyOrpgJlfmMEsL3hTm0GvXG2GOdvlAV20U26OQQ9DddkOmEHHDOdZBjIM7dBgBh2oR/OBZy7zzBPNMOjAWZuhuzToQn3Mh+mbZVCNdXBxnuvbk8H0qifrAg9D92gwg06ZP2e6aNYZd+/Msvab1atvhpmbYXboQgZme5P5PAwvaTugU6ZfgnP0gIZqDHO3M9YtzHqd6WK9cDfALSt0nh7NB3rCDsgwyDvjopmcLnxnQN9Mytdy+ziS7wzob1N+x7vf7QtL13cdbBfbdyY2w6OZPzvV+Nzn6fOhM68aF/z26pnBLIc584uZTY9f8O2b6fL06Gbygg8yXB/zyrQceEBDtQ74ueFDMxrk5WodujC/Cq/qyey6RtF5sp68npnGhbkdnrmob6bPaB+DXlnXjAvZ1M0xyAuzLga+Gcxn5j2Cnt1mc+YX/HZ8SIyWYZg5fc46T9aDes6Bzs0wH6rbOXvyZmfWndA1A60PU8teBV3QwUBP8Ar+/L3hejx5tZnm0WfmAR90gVesF+7+RCmBULGoV+bThRns8fCbQBd08d/9wAcu/+Jf/Iv1l218fNuXB/6dv/N3Lv/8//6/L9/3fd93+fM///NLv6qkOxjsY6CBftV9yfTK+sDDEzrmZrjgQztT65ihOc/bHEMzuh2eGdebTDfXgenRvNk5azPoFfagMzbrlWn336zMp7EuVPMfQWf6+p2rdeCRz5MBbYfGQPPLNL8wy4DmY+CZwXwGvx0M7VSX+fr47NWXgRlooLszmS50dGFq+aOZB4/6PGhOOwfowtwOLuS0nC7MMDMznDudcfO5x5+QAQ8DDd2n+WZspvFLkMPMu1tPDp2bl1/y547Ouc87ddbft+G/5W8q+k04C/OAqWeHlpVpB07I5lw9fRpkPjn57d/+7ev7cf/e7/3e+n4lPu79TX/zb17+15/+6cWHTHzopNcq2+0ZZz07Z93ZbrV94OFCXo+uXw/zYWZ88/TNwIN2eAWv0Cmamx/petg+Ls4zf3pTy94E7qN7GOzxgX4JzbujV92MB/Xpifr69IQeH+iis+705lz/kSer76zq6T/SeiCD8249DOcuD+rbN2MeBpp/hoyHdcAMvIJP88+Q8eTQmQdmPg3neWby81zvkS87Qw/4vdaceTLgAz1984SOHPOxmYapzWfMPt2chrlvluOzz5PB1Ob1wv3Vr36VvvvE33wxtwRKeIIH86LmR2in++2YZZ+7fnLy537u5y4/+7M/e/k3V3zmM59Z/4xZvU9/+tPrvW573aHBjAvnVTc7e/xCRnenPP1HOU9Hf2pzfVzwwYzBHlTj5nyoV20GPaBh6revfz7PeeZ86HkY6mH9QgadsVkPaB5MbZYDfUb9snzu0zIMcqBh6vMss4uLzmU7IMd8XPALWcGrbrcso3FhLqZ31j2z/uRm+HINnHel9bkgzAe6Gc3rPJkvL84zv30azO2V+TTIO9PA503wzTOrh8++GWT24Dw348uBB/QjtKtTfWaZXX61mead9Zyb8+DRXA9De3SvQfOLuw+V1MQWwELBry7z9IDmY+ABr8w34zP85Rsfz/62d77z8p73vOfy/R/84OV973vf+tdwfBngd3/3d1/eec3s9Yyea57QKfi0LjZP+EOqvo4M8woe7eNXuOBP1C875wz95lhepguebsGn+XSZBjPo7Pnt229qPg/odnBnunlZBjKgCzPoYpBhbyf+BB/qTV3P/kQ706P52B7uTENnOY0LOY0LHeBjoIEGXTMGGmiYWn/Ocl7xaObB3Ku2Rxfm2eWbgZZjM7w018d63TEXPFo+wT/P7cnoCd0503rQDANPTk+cPfNEu/aLeu2Z/Z5vjmV8MOOJerPXvFlZB+Q8oOvRvIlmPBpo3cI9V68XbgVFoIV+4+HONOhANZ541Jd3hwZzuzTPi/WHP/zhy4//2I9dPvqRj1w+9rGPrX8Jh/djV+8jV8/XdbdvB5zzCLJ2MfB0q800VMtpoGXYDObJ9Myrcbs68NLMn9At+HSZhvPMc03cDBfN5NWTq+VgtkuX6enTcPbNc8esB2dfBvxX5TqPYG/65p5T3dwM51kfzr4uv2iOZUDD1OYznDG99vnVzXn09KeWd8YT9mZuBp3JOlC/GY8u5PNFo35Z3h1sbjZZ9gj6oIuB1i3TYJ45r5DRuJ3y9KrP3ZdmfZAXZmebMfDO4BfN7FRPnv5ZO2N2by/cinAuKE9PB+qVp2enaG7WwUDLcPGOd7xjvUf9la98Zf2DCd/8zd98+Zvf+I3rHw3W9V63zuXpf7wnefeeZT3sbAxn/ar9V2U9y3l6mAc0j4bqM8uKZmb7eII30YxXPZkP9WiY15GZgQYadDtXYxkfznM9Pl3MnXp4+oe+3D5cd3nN/7qDz9c8zzqFbMJlzBj0zNAZF3JaXpiLmdfDfKDt4Ymz125ZDnZ4U/PMhRzqT55+tbxwBi2rfon1JuzA7NMwe4+0DjRzDpjL1ecev2gXQ7sY2pus1/msX5ofnTW7PW9yd/Sg2Vnr8aAdXjVeL9x975oBLVmEzjOj4VVZc50JvnOBhql9YtLHtb/8pS+t78ntY9s+San3CHO3Oa/guT7mVZtfwkud+s7pbj1z/fLMaJg9upA92uOBHtarNhf1Z1ZPp1oOnWVghmbV58w8O3rAn0y3hws+dMadH7FzdcrtmGkMOkADDTqT6ZlXt9e5PPs6wINzRzY9s94ZOs2wWYfGhbnZI082oWOe3DP4dDP6/2Pv3kJ1T/M6sa9v2Xa3kWGY64FhIDBzMUMNzFzMxYxXSpSIIijiiR7EA4hGUYyKEBCDIEhykYh1FeiAiBIFURNvIqN4bG3P0bZFbc/n7q4+VndVdVf+n+fZ3/f9rf9+V9UuopiEXezv+h6f533XW7vevWrVrio45/pzLrO7xd3qYO50hbzojqeBtqVxwQOPi+mdhdnpZbh5WabjaVxPF7qZV2Ndd3w11skwD9UYmtHAF3zRbL5PrzfuN7zhDavr0AMK6qfuYV13GGS2EzJdMTt65rYyv+3Pf+LVPzSF/ne6bfVgC9XtmjW/5W2hHQ3OQHN6onlZRzsLfCGHcz57Hci6xfzMZ1Ztcwt6ZzHQQM99PS70tD3wcCvTT9gV9mdtKwdaT5f9vJKDDOvLMh6mnj2tmzhnPPQeunu6ebP6yXaFnLani2ZyaE7reBrXV8snmneH2+uAn2xTr4N6DDZQjUEGzgANOh7zNFTLi2YY7M4dr4P2ePrqsjM2IANaDjTMvHrm1bp5rloOPNBAOzshA5kN0ECDviwvZHTZjgdZwU8841sPyoZTy3rRQ3k33fETPTf76rI93S0Pvq8GuoUjxAc99rfUzhb67miYHT9hC7IyXThbjc9e5tyEzO6VV15Z38bRyTDQQEO1M/QZNnArb+YsdFfN09CtrBq3m0yDHuYZGvSFTfW5m7473Lwx2VL4AAAQAElEQVSap4v63tu8rNfxdJkumpXldMH3DszrME/jQn6GDXRz1nzhbLV9dbn97GQgK9vTUI1BBjRM7Q5ZMbuZyW0x6HjMAw1T83bNMA86f01j0AFd8LYgw834Cfkt39xZfVkOMgyv1entwDn+DLke+vnRoOuehrOXgRxP9I6Zra+453hqB+ox9DA9e7kMT9jw7crN2vPvf//77/yr7e973/vWm91v/dZv3cELL7xw57/D/Wd/+qd3H/zgB03XG/e8q/fMzLC+vQz4djzM7Nzpm9nxEzJ9Mbtmk2dPt6PBfXjmMpADra/G9TTUd8vTuomZdVPWgb0MF83rcbNuy7oJOcjOZ2Q60MHM5PU6mJkO5Hiiu9nRzeeWluurefoh2BbnjVzWO6aX1dtUT57axhmoxt3MfGqbottyd+deDna44AtnZs6foZeVaTh7d8qBhrnhdWfMzezsQXZr82qdM3qgobos67145tVYZ0tDvQxkWE5j/pH++KFfOXC33rj7K4SRgQJ4oIv25ebn3Tnvvruzl/s+9k/+5E/evetd71pv3G9/+9vvfH/bv0H5zne+c/3+bm/s7nYeaGcxyKaXwcxoO6D1UC0vmvM07o4HGQZdPeblE3K+bENDddkO2slBhuUwtU4GNNCFrQxuZXLQYXvgQQYyLKNxUd++ebk5BjmeaOaumdO3MvtCD7YwtY2seKiTd1vNw62zNtCu/NC+Pe45DDOjC537cKGTYZDzQMvOWgZ6oIuHvDvADkN1z8gKHZw7mQ2G9rg5rSt4HZY9xDo7fEbPyGk7zAOPgQYa7EBWyM+6GQZnsF25+uy7ldNzJ3uE/cbdf3PyUbjeMOcBuugGw6tcvr4itulZ23oadM1oX03/4R/+4frqWu8r7+eff37990ne/e533+l8VW4L82y1czRU4+7lhayQ2ZXlPNDNeXpmvFxWNPOLoow/o2eaT+8Mr6vmQTbRrDy781le73vK2Bmgge6GB9nk9uV255280E3I690DsoLX12NZeWqZLVRjm2ZTywo58D2DQT6ZnuiZM9vIJmQgw727vlnzelzYAm83IdPJaOChWgf1Z7ZtX7aZ6AZP2PRMc9lZywod7VwxM7qwK2bmnLxM6ydP3c5+YuZzT4Mttium18tlQMtoqMa6mfEws7mTH70fb6JhfcXtt98ZgvAh6KH91OfsVjc3+uOZrF8oMHiT81ywHnpG1k5mX55aBs3cAbKC14OsLD/7ZvJqe5gZLbPBPI35qWUg09Fln+f0c0MXNjSGqXn3FfU2Mr7g4VZno8MTzZxpTkM7XHQzWcc7g+uxrNxORhe8zfS0TAd0M1zooL2cB/oMu3blbs7d7Ke25yeald1FF7ayQj4zWtaep2WFDOpxN/IJHcgwzC0NcrADGnQgAxnQBQ/1mJ/oHTI90EAX/IRzvB5Ds7KOLs4buc3Mz5o/b5yTQ3X5STL3Qc/QzmE4dA6+vnHPr7gdKo7h+nGMF/eDXoZl5bPmQQ/O8MDjCf3Mp9bZyqAaT9idYQ+3ds2cqcb8+QwvL+zOsGlmRzcry6vLdnLc7OybY7Atui03L8thnuP1+IzmGPR4nqdBDjY8rqeBBxqqMTiHoT3dXEYXukKm5zFPY56G6WkZ0EU9LnTVmAfa/RPzF115N92X5UV39dhOXpbxcNYPeWd1QDuLeZi+uezcNWuO7YG+hXM37+j+vGmO7fWYp/Et7M21sQV50Zany3Y8yKaXgRxo6KYsK+ZOZlPwD6HnynbOYRh6faEtW2L+hBMWLnIIZLjZZB00owsZ7Syevlo+YTs7vv3Uzea2WXc6aI51QBf1562+mQ3IYOZ0YUNju4KXn9Ee+xaGHT3ZmXpaf0b7mdvKi9nJ6mlboIHW01CPi9nb8KDHQBc88PgWes/cTO1MN3jCji/b0hhoPdDNaBlfpuVQreOxDOiCP/f1NtV2E83nhj7DGRl2BuplhRzqbepxPW3DYzhrG5BjG8zTBS/nacxX88ADDbQdjXm6LOOxDHiYuu9j3emLZnhm1e6ZnZyXV/PAvxacsy3mXqaX0Rhk0zd7xK8c/Qs0rDfu87j+GD72vWqH9DrMvxbswM45DDToyvLp5eesHoMNOAe0/IyZ02CDnavmi5nZyHFzzMtp/70VzMuBB1oOPNByGvcnH1/Iz9o5aI7tZlaPi/ZY5txEcyy3KXhoRxfdtCvL6cK+GX2GrpkzPAZ5fTUP9biQQ707QAbV7WU01lVjkOlozNMTzfRy3IwHHm51+kJ/hs7ZMl3Yzpxuhrtr/pDvtjts2xyDDPQgKzfHzXX1MqjHxcydKfQ6oGfOg655uZl+fmHU/sx2sodY584zutfT7XmQlXXVuLDRlWndwX68SMN64/ZmUfgXXo7F+t6zjMfNyrLZuUwG3ciqy874XvVLL710V65+8cUXX/noRz/6wuH9uNc7d4T3Mn7Cfd2d8+lfSx/P464bd049O/ns+fbNy7OjZ87fQu8q28xz1WX9xOvNz69dvXsK91e3l51h06y63PwWnzdnf+vMqz0P+4fumK+r3WvhtR6n5/t45eZlj6s7oz1++eWXLz8H+Z6hC+er8dnLinN39t2dubvy7D2n+tnTs+tmsk1xzh/yt/bnrc3888SDXZ9TubnuFo73osufg1tbj+MXAu9tfa/r+x/vzReDTXH2zSe757w7noP/b+N6z14fPIEjvMMOO0Tjh9Devk/e77d2jwf0f7I5n/3kT/7k9TtEbAr3AI+PF/Cl49zH6zHogAa64OEhP/Op5xl5PZ44d/U2NBzPe/2iIgPZLeig3dTNyre6Zhhsy/SEHJrRE3IeF/Xl5tjniIHuBk/oeQy2eGY0zLx+ZmfNw9ze8rLCtpDR5ep6DDPni5nf0s0wOIeBBhpuaVlhA/WYnzhn/Bndy2k80aysm3r65hjaVfNQX25WP5me6BZPdCOrxn5+YdBNzIwubKbmoRl2r6yQVWPvfZ/0SZ90+SL3eN/y1nfn77r7pm0zYVBfXZbTztK4OB47xy8k/+Q//If/8Mk2643bCLwBn9GD55z3BMG/Mu9J+5XMPTKfELYr/G/IvKGf8cY3vnH9zxMOzpvf/OZPOno/7tx7ZKuj4SjumpVndt7omtHwpje96XInDzbzPtkZNjK7YmY60GFoj5tPbi4rZuaO1wNnn2Tfnce0xzIMMn7yQ7mNDvraykAGNNBQ7THqZTC9/ha60TlTrm5fllfjCR3IcMFDPX7Iz9xzqS8723xm8kJPY7CDah0/mZ49DXLbgm9OT9jU25x9u5nT0D3dnax6cjd4buplUzsrw4X+rGV2E93I9HyZlmM/X6t5m+LNb37zep+QgxxPeJ/zRtr3SWyHQec9EfgnRc/Ze/883l9z4J/8s3/2z/4L3XrjVs6LV/HMM3cOgL5MQ9+UaTgudWx9T9zWi4EnZLYy2h3AA328KJ948DN6kMORrTdyDO0w3w0tm15WyAs7OU+XZSDDzXmQTchAhqFnZFO3k+l4zBd8IbOBZjS0k/Mgm56esJmelvUcLnTA988bDc4ADXZQrZteLsPy6vLMbOTQHE/Y8DY0hpnROqjuppm8aFePZd16DZrJ6Ynumt3yPdeu7Ey78uz09eXusAzbFbJq3cTsbNrR7ZrhmdOyuZMVzXnalsZQjUFWdM/rJmR6GQa60FeXZXPHt8O6ZrSsaM7rCr6dzBufnxvAA+09VVemz7CTYaDtaeCx7MAnHvgE2XrjJiY6bFaPoflxyZLlZY4Pc3PY9bcSNvJCDs0xfwvOyG2qeZDhiZlVl52ncc9MrZPj5mWZDprRZ8zd7OQwz05tW28HPC5saHyG3P6c87pyNzPTQTu6kJ1x7vjeV807x5+5XdmGxsXZy90DdMHD3PNgU6bPG9nsaZDbQn1Zpp+QtW/+av7Vup4v39p6vPaTbWFmdPflWxs7OdC2RbOyHtpjXg800O1woStk3ux4GoOzuNABrytktHzinNmBvDjv9c2mnnt5Ibc/swya0xPy3oEf6uR6e6+Rf4tctt64j2L9a5QCg4KH+mPHLsiIMj0xtzOfem7cA+3bNePpyd2euRv5PMO/Gmz1GNzDQzU+w9YGgx43w4Vcz2Og5biebkafYdce83Nz9jZgo6OBBxkuZic797cyZ847Hrqn7erxhM5mZrxcRgMNNNA2dCGjy1PLCvmtszIbDHY8VJf18olzx4NtuXse6nF31TwNdPd4ej3I8Bn2t9Bdu/rJOh67H3gMU0/fHBf6wn3y6ZvJ6Yc6/Rm2ssnV7podLWvPF830snoMMz/7ds7Rs5fxQJ8hh55r7//LS6837kP4j5ccdLe+OiYcwD1cjUHfjpZN6HgdXcgm5N3gdnK6GU+XdTTQE7Ju5TzIQHaGXlami5lVu+eiX9m/7snAOVx01xwXs2tW9u0nd/B2QIO84EEvo4GWFfU6GU8Xsuqyjdyv9jIaF9N322wyXdg5z2OenpDpZLi+LIP2dLvJs5967pvjCRtwH+iw7Bb0clzwPdPXUKZvzk80x93R0B3dDhd6HUytl2HQYajGD8HZdj0zMx0P1Rhm1rMz9/OcL7rnaWdgal6PoRqDbdG+OQ/6cjsM7aox2MPs62c2dc/NjG7uPN2Mhub0Gc88+jcnjzP7zWcOjvDyRt5LZN3ICjnoyjTwdnii2Zl7BoMeaOcx0NBOBjxM3V1znaxczc8Nr5MBj6FaP3W7ZvgMG+jZ9rJb2g70E7bNaR0udMBj6Kaso3VQLQcZBhpoO1zwOpgZ3b84dWArL9NyaEbL+QkZyF6NdcV52xx7nOKWl4HN+Z56HfAYnAEaaKDtaOBxM9ysrL+FbudOBrf2zc59z5fPvXMyoIv6npNPrQc56M5efoZN4efOPCe3x3L6tWAHdhiq3UMDrcN8NU+DvB7zRfsz689b2XlX386ZR5nfCvgJH/vYx96g61fcl3dtQ8WE7NHh9Q8fdTzQYIMfgi3YFbx9mdZNL+OB1uOC10GzqZuVb3Xu0OuABnnRvKyvtuEnZCCbOxkPOh7X081ucXc6GgPtbDF9tR3w/mLodnJ7LC87w0MzuvmtTA/dYDuQF7yuHsuAbjd5ds1tm5dnpwcdVGNo1jO4mR5kuKjvrl7frFoHPAYbkBXNfYWuAx3WAS2jccEXMjuoxtAN1oO8mPm566Z5+Zy7Y6I7mS0P9Blzo7OTFTJaTgOPz5CDbdGNHOqxTTMMzSc3LzsHc0NP2IId1mGQgQxkuDi6f3R8q+Qf8c8cxpv2K/0L2RiSXL7aNpQV09PFcVflOjv9pThE7zn3D+W3dsc1lx96aOAeGgMNNkBDdTc86KB5WVbMjHYOZi+H5jTwYMsDDzKYWl/IaZsyLS/TRTMM8wwPtmU98DA13y090d3sZyaHeYa2keP6/lzkJ+xA1n19M3mzqfUgwwU/99M37xbLoDssL3jgy2d99u6TFbyzE+2wHj8pek/3vDtAxgPdjJYV9eXu9LJ6vFR0pAAAEABJREFU+hbaT3YWZHieayan203dDNtNpid6rjsd3bweQ/OyrRxooAu+kPUcDTr8Wnl3t7ZH5neVvPHgu2ce/T7EY//KerMVwhGgy1fYHrCZgsdAA134asH+nJ+z6Wnncc/heqyXAQ3yehr6Fz8N3VXzPVOW6YvpabszmvdMe3nRjtfjZjzIMND6yXKQ4dnThX7Cltdjvmg2eXZTO2sHcr4s48vNZdC8PDNbOZYXskJXredxoavGPNgBLYd6GcjKOpAV7epxMzz39TLaFvjJNDTvdnK77nQgL6a3O/uZ0RO2vLsmN5eBfma0TEdPyCZ0PO4ZHmS4+Znb2QGPoVu6kFXPLV3YAG87uXmz9rwO6DPsdBM2/GTatlzNd1utA/6M433Nt0z2/0jheJP1VffauASYMu2iY0c+9mauK9bg+MAfdO8XAx50vXsyDXNjOz1d2M6+eZ9nu+bYGQy3+uZ2554v9N1iaIf5W9A5C/RDcFZnRwNf8KCX0UBDc1pe8KCH5lM3s6N1NOaBL+pnLztD74ycxjzQsjPkha4aOwfNcSG3ARmGh/J2s5dBz5+76W3AHqq74av1UI9BNiFzTlam5UDfwuycm96+2fEmwK6/nm1At8LjQzWGI3rwR8/OHV3o52F+wk7frLo5X21TX82DDVRjkNnC9HJohgtb4HF3U8v4ie4x6Oym5kEG1bb11WV58dj3uFs8xB6gF5XPW5tm1XMrm75aPs/Vl3XdYpBNdDu5urv6eX7q9liOHzqrs2lflheyaswDDT1f1oEOw9Q8NDuz7nyXrDsa5oaePS2zK/hi9jR0V43t8bmbvr1t0X7y7HoGw9zRtzK5O2Y3tf4MvTPNp9a9Vj43cyuHZnS/4KDlZdrjnn1zDO0xyAreHTxdyIDX0RhooCdk4MyEDGzleHoa2ukLeTXmgZ77ZnLQQfNqrJcXPNTb0M0m63iYm6l10G3Zpr8otpf589uNfEJfb3P27fxr+PR64z4PHZIZFLycp4GG6vZl+dS2IGuHm8lBhkF3xkN5d87T5cv+0d9X8KDHQDtzhlwvx0BPdINhdvYyLC/TcMvbz463wzOXgQymtoWZ0TKYmj+f5ye6KTuvr6eLdmU5XfC34K7itbbO22KwL1fPXgey9vyEji/TcysH+UQ3uJh99a2zunM+76BtwG76c3bueLAreKif7H6QYag+n+FBX6Zh+t4hp3VAQ3NcyItmZXm1e2gsB76YOQ1z8yS6d9k6z9OT6TO66Rk9DTosK2Y2u6m7xeuN+xCP3tL27+N2yZHd/FuoXoTtoNoZkGGgoRt65vS5k4Ecg3M8LuSFrNqvdrw9yBev7w5xd+tzuxt/6IvGfLX7oL7cTTu+6KbcHDdz7gxdM7pwbua0rjmup6EbOciABhporxs+n5GBvFsa5EC342kZTN1ORhd2wJfp804GcqCLW17mPrDDE3rQYTjrs7fpHdU2zehCRtthHpbO/g0Ayf6JaQO3umRvdXPDJ7tLrvfIi2TnyWbnk62TrL8Wkn2Hzrlycu2TrfVJ0IPoeYNkb2XJ1vIz9LJkPxd6Itln7SDZPtl7mX052T2fZH2e+uS2ttOfkeQSJfuxBN1PTrIeJ4nJQpKV+esrySVb4tGH3pHs+5OsM0nWQg/LHB/6xr3+q33JHh35+jGHZ53sB1jD48O5P6KbP+yKDpJ9lzzZzyG5z7NzjsfFLZ9kffI2SdBjSHJvk+znYpgErd79ILjFMtBDdbLvkEGSdR8N3Z25XXJ9Ps1wErSQXDdJ1v3uS7J6H5Kr5sEGF/5Wjj7nsmSfTzbLJnqmnOwdn2xtn2Q9vyTsPdgKcJLLLtlaVyQ7swV5srNqDHqggS745Pa55OHXteeT+xt578Q8VGNIrufOfRKTx2CX5PK6nAd6WbI3dNGOT66PzesgCXuBDLzhCGmc3N/JIMl6bt3J6IlmGHQYkqDH/rlY8nie7GwdOD4kV5/c1sds3d3HvMXJ/dfGGbBNrl2yH6N5sr0tyPFEsjftztxtsh+nvTzZZ2l4xn8Bizijh5J9oN6OhurJdGEDfLKfTDXWQbIf41aml0Ny3SVXrZu7vgHJb6Hb5P4d3Sb38+Tqk6yfnOdtkkaLk/359rFWOD7Ik+uZZOvkei7ZOsl6zCTjhsdlsvea5Kp5j1fwkGTdS+twwSfXO/h2SSoXJ9snm1d4fJhnDnv5IYdLMIQckutje+NoluzH4GEcfdW/KLs7n5l5su+WJbm8NnzPJWEvXZKLtkmy+n6QTV2PIdn76mT7npmc3O6cnTsekr2nz32S9bzblbubngZdmQYepk7CLiS39SqPD8m1P+zlR5L1/AS9vzoJuTC75Jqv8vigT655ksu9SY7F9Ueyf84l9/Pr4r5K9s5jQLLPWyW7S7K+KJ4ZbY8h2Vsaklyeo10S8cJj3+OWGgENSdZfDPREsi/qNsl6oCRztrQNMMnuk80y0CdZd/DJ/cfVFw/1SVQ3n+8qxock67Hc2ThJ5WN3dJfs58WDA2Uakqy7adADDcm+Iwm7kOyMsU2y7qBlt6Ar9DQubvlk35ukswsn1+cgTO778302t7Lk8bttYe6T+/frJ+a2uQySrNcnyapkSxwfkqzukOtHkvVfubx79Idtkkduf2uwRkdPTrLuS6JaSPZzT3bW/SoffZAlu0/y2B1myb7Hlp+c7DPyYvZ00T7Z99Xrq5PdJWl0j5Nr7lyy99X3xsMkefBz6yzZm+lvaVmytx4XkogXkqzHYnSQhL3316xcmOzPgX4ItqBP9l10kVwzuyTrOdA2SdBNvNomybrn5sEjdBYOuT63ah4u3yqZRTVOYndBsn275NVfnGT39uAiXCS5fALNysnuks3Ogh4nO/cVtgyS6+MlWydXdg5siySihWRr3d3lO//3/wJPsp5zcuW1XzfsbZLlktzb2iVZ3dTJfo6rePQh2TvWFuhk50nWm1KS9Rh3xx9Jjo93F393/JHknp/3VB+zy0+QJOw6k2y9gkcfnIFkP2f6UbUo2TmTXHU9dibZHV0k+/H4uaOLZJ+bfuqeTe7fZZM8fjbJ+lz1xfkOebLPtsOQRL2QXLUgyeXuZGtndJDsjIbZVeMk6oVk6yTr7iQrtyOS+76ZHpL7vazotpxcP+fkvrYBZ3HBQ3Ld65Ks56urr+aBhyTs+jm5xPGheTnZmyTr3mOy9knIpZcYH5LbzynZZ0zdD8nOqpN91ia5dvXd8TRO9o6WQbKz6rLNRJL1eSWbdZ/4iZ+ILr+PexkfkqALXMokO+eTrAvlPJ5IsmyStUty8URy37sD2iW7l4G8qE/2i1ivT/Y5GnTJ3tVj0GGoxiBLjnPjnTs5/CuvrM+nG7up+UKe7OdDy88sg+Y08GfIb6G75PpYydbdd4NfLUty+fzm1pkk6ILk6s9bPrn2PZTs15BP7uuZJVnP45zx8ND9ugk7vkxDEnR5DKab5H4nh26S3fO3YJvsDW1z5uTaJ1vbJVnPKdmvjXOgO3MS8QXJfX8pHgnnk+uGf1Stx6STaz99knubJOqVJVnsPljFow/T06BKgh58Y13l6UPP4mS/PiY8VCdZzyfZm2Rze9sk7D3IGyRZdzRLsqpkc/MVnj60S3LvDrMkaMEOljk+VGNI9paGY3Lvx72vuG8NutYBX6Yn5MXMk+uTkNtgoIGGZL/QzTC0S/LYC6JPYnJB8rDvPrm/cTjJup8G27u7u5UlES0tB0E52c9ddkY3zevP3B4nWY9FQ7J9z8hu4Vaf7LP2+iTkY/frIHn4c3HQBif7Hh5kQCe7S653ydvjItlb3gZoSPb5JJfnq4f2GJrRE0ku1ia575VyoCG5bnjQA5083sv1QAMNdJHss82TXD638+bsewaDHif7Dlrm70STkA++SSZ57HEdSPZrThe9F08kWZPkPgvtcHH25/xWL0vuP59k+2Q/Zu9Jdu7MzKrLyd7Vl5Od93xZX53c3+jOsE32LtncjY5Odl7fLLn/ObX3z3ou3+P2DyeT6wUdYXBZOdkX1uteDeddkns/SZKs48l+/GVOH5K9Ebuv4B+CTbtkn2+WZD2HJGuSbGaS6/OwT7K2uoeQ7E2yz/ac/fEF+oN/wejPSPYdzd0FD3l5EnR5nGT7FR4fnIdDrs1Z89A+2eebySdmnuytPrnqeluYPrm/000ku08263pHWfYQbJL7Z5P7r6uzdlCNk/u72Vcn+26+cBaSa5fk3s+dJCYXOJs8/nhySHLvvINynARd0HwyXSS53JVcH1PvkjJdNEuyomTzMseH5Oq7PeL1I9ldksvjdlM2TIIehC3MQXI9k1y1XXL93JxJttdNT0PycJ/su5PN9r2HPiPZdzW3hXrMJ/u+JJfXJol6wWaJ8SHZdyfX3b2vuG3nwWQPk816SHLzQeev8ElML28WydUrPA4kWXc5K0+2T8I+hp6ZRbNkn0murDtvZZBcdzbJ9u1w4Vc7G5BhoCHZZ5P9Ivt8kqzPzS7ZOgm7XpclHn1I9rlk92L3uoe+hWSfsQObMp1kPX6yWQZJ0GNdsu9b5fHBXXDI9Xyrk6yzPOiL+iQrSq53JtdslY8+OAOP7IOU5PK4HTkHSVaU7MeTCZLt6Ykk6y5Zcl+fzya7T67sHCTX+51L9oYukmvmTHMa+HJy3TZvh5Og9eeDSLaniyTrc0s2z3ts+OT6vGXJ9sk+c86ckRUP+WTfY2eThFyYPrnuVvnoQ3LdJ7l8Hupkn0k2uw9mR08k+w5Ztxhkye55SCJer29y1bpVHB/oJJfnluznk+Ror/+MK8na2PevY9oIQzWGJGgh2fqx3dGuN+5emuTyQEd388f5kumrHZz6lk8iXi9Qt8l+ARSyZG/4ItkbvaxcXY9BDsm+a2bVZ7ZvluzHmxldJLm8Zkkar8/r+FN48RXzXlmSm+fb4SJJ5b0zSZa/lI+ExwIWJ9ddEvGCjkiuWZJ1ZxLVRSePvx7JdbPGx4feecibP5KsO5VJ0KPXbMl7Otm9pvcmO0v282neTZLL/bIiyZL2sMzxYerDrh+yZO8FPNDJNU+21hXJzpLNcudwkstzS65aDzY4ebyTQxJ0eZ2SrDudTa6vCb+Gx4ckx8e7x3Z34w97GNHlMZqXu0my7uTP3dknMbvcuczxIXn159x7MCS5POZx/PJDV0MDj5OQ987Jhcnu6FtIrn1yfa62847qmVfrkqzHp+WQ7PuSzbpCfwvrjVtxHiYRP4bkmjszB9PTyXVrJ8MTzSbTyf4kkqxP9HwmyYqSrL5fESfXc2twfHDfQetHsvfMzGmQJ0ELsiTrMVbw6EOyM32hSnZOyzHQUI3P0Ce5F8vuBY9Mc5zcP2PSPNldsrkdLpL9ms0zSdbnLOsO80BDEnQPs1ck1/t1he4WkqzH1s1tdbLvS2Jy2TI2SVZGy4okSyablzl9cCbZPQ2nybJyWOb0Icljj99tsp+7I83oQpakdnGyfbJ5hceHJOtxkhzu+ALpAdYAABAASURBVDLB9+aWuruX3x1/uPegx94wZdCefgjJfpxkc3dPejZ59c89ud7bO3Gy82rsscs0JHtHQ7J9dzjZmf61YN8NnWS9rrIkaCF5XHe/BseHegxHtH4k+2xyfW1W8ejDra3q3hu34IxbB5sluXwizvUrdzq5PpG51/FJyHU+yWK5sHzWfJFkySTrbLJZmFwfO9l57yx3h2XJdcfLk6B1vyy53ssrk6w+2V0S8WNIdp5sdr44j5O9kSdXbS+DZD+eDGQTye6bzU2y70zub2yT3c09XdhAsnd0YUMn1+5WlmS9Zu2ceQjJ3s7euSQrSrLuSrK8jijTxa0s2ee6Sba3TXLv7m7a8UnQekNMrnpu1mB8SPbrntzfmySPZ3JwJ5x1PQabgi9kSdbn1Kzcjk/285NN6Hj8EJLrWZvzPtl9sp+HHu7urr/wJNeudyTXLIl4IblqQXL1vXfmMpBNpkFenL1cViT7c6nXQ7Kfw6082V1yPesM2OOJZO/bXX474Kv9w0kXJPsg7TAk+0GbYdDhoj7J+skyPZ1kTWlY5viQXO8/7PqLAhfJ7p2B5lM3Kyf7sZLr2XPHJ7tPNssguZ6fnva4MHV9ss/xyfXOJOs1caZIrr1988lJltUnWXckWVmyeZnxwZbFkOzHmXr28uNFF13uT7K0MNnnabAvkmuXRH1ctX8bZZJ1h+0qHn3ggcXJviPZe/kt2MrLdLLP0jA7utABj4FOQl6ep2wFD3zQgxrD1Mn1PjnYJDvnk6zHS/Zz18snJxEtNGfoIsnlHl1y38tscRJ0QXJ9bJtke4Nkb5Os+9vrgJ9I9k6XBC0k+84k6x5hErSQ7N5dguS+lyc7m31yvcMG9DjJeqyp2+Fk98nmmdHzHA3N6WSfSyK+wBexyc7sFGU62R0NumRnyfVzbJ7s7PK7ShyaMHwIdsn1ct4WJzuvbs5DPQbZRHL/fHL1dsl9745kfzK0DVQnufwJk8Hs6UIH9UmWTDbPTpE8/rjyieTxs7fuceac88n1fJL1uZy3SUQXOAeX4JFI9i7Juue8SXae5NGJu7W7O/44b4/o8iPZ+2S/Hsn2Bs4BDXSR7L08uZ7hwS7ZOQ3yZGd0s36LTFYkuTz/ZGv75Pq4tknQBcnt3tnL6BDJ3iX7fJL1eEmO9u6enmeTfe7u+GPmh12/uOEiybrnvEuyJklWn1xZYQ/Jqz+WjX0StO4ikiytT7ZONs+Mti+SLHnOhcnjnR3c6pP93PVJ1vOxAxkGOtnbegzJ/XMye6CTay8D+USyNzrQJUHrOcmKFR4f+IPu/flM9pl27ZOd8xN2ye6S6+c3N+tbJW94wxsuD5RcD8xhsnOZizEkO5eBrJxkfYJJxAtJVsZ0V11flgMPSdh1PrlqYXLfy5zBSS5nkq3lE8n1BUoyq6XdVQiSrDtpeRLyiZDkcnYecA80S667met5qMbJdc8/KZLcmybHa3Ekvf+Q6/nWY5AXyb5Dnmw9uyTrjplNnaR2/Vx0T9GCry4nx3M9vrc7u+rkeufcV+NuyzJI9tlks+y8qcdFcu/5XD6Xnk9yeR2ckU8kmfayFSa5+J4t6yEJWtDBMseH5NolV31U60eyM2eSrRU8fgjJ3iZZz6/7JOtIPTM1X8iTrPOy5Kr52ScRXbY6QbJzWpbsPxd8kexNstmuHa7Hyd4kuTyWzashuT7mvKNnZHRy/84k4vXzZYnX+LDeuLtxafL4Bck1S3L5JOyL5Jq7LwlaT8QmyeVcktXd+pBk7ZxpnzyetcPJfrGSsOsxiXlHfbNkb5PbZ7vHRZL13Op7Vz2WJSEXktw7I7Qp+CLZ22Szja5MF8l+3rN7SDvTrpxEvCBLrl7YLNk5Ly+S3Pu89ElaX7pkZ3plcv95yyG57pLcO59cfe8oJ7tLIlpIHn+MZGdJLnd7XHAo2T0NzWmoLycRLyRZdyb370h2vkbHh+Txvvcd9eXnbRL2HpJ9tvvk6puVHaST6z08JNdz3ZX1dLLP3fIysCt44JN9lpYBXST78aenk33OHmRwSyd7q4dke9sk68+FnJ+chF3QFYJkP69kb5LNultIcnmc9u6rLj+UySfsk6B1r26ZBz7ce+O2Of+tZ7Ivc1GyPzk7SLIehAYb/BD0RZLHZsm+3ybJE99tP9GLk+t9+mTfSdtgSPZOlgRdoK+hk72l5TjZGZ/s83IeA10kuXxuSRovTvZdziRbJ7ns5Wt440Oy96rkqnsGJ1E/MZwpkvtnm7ssuXbyZnQhAx4nuXxePCRB95DsLMlj+96FoQeTLHnOeFjl8SG5vk6HfeyHLbRIrvvk+hjdlJP7u+Z3d/tMsvvmydXLkr2j744/cLI3yeYjvkuyQEN3NCS79z1Xfva0rJg+2edkYOOOZOd8Ia+2TVJ7eW5yIU52T8vOSPbnp0/2Nsm6SwbO4IKfaF6eXbLvSrL+Wz93pz/OZ+qTXJbJfd0NNsJQnWQ9f34iybK2kOzPXcgX/HxvXm/cs0z2Rcm+oN1kl0wkezuz7mXJtU/2/XIbXCS598md++7KeuCToMv55HFvC4ZlGm75JI/dd94lcfyy08MKjw9TH3Z9VTWzsz57Z6B5sh/vIT+39ESyz86s95R1U/OFPMkdTwP9ENo/dKb9PD+3ct4OeHwLOtuyzVnzxdzS9rh9eWZT653BcuCxjMbF1b+yovruhVPrp9eD7NzxOmhPgw5oHdBQfWZ7mBsampdl0DvoM2zbl21oHfDQDIOumL1MX9TbFO1wM7uHdHcYbMG+HkNzXbV8QldP20EzGuptoBnd7lH28YM/Jr+8cTMTx2DayxuTi3Rwb3AY3UHrB10I6MnOywqdDGiYeno59CytL+QyLCvThcyGpwse+PZ8dVkPOmhOF3qoxzzc2rfHE92Wde4AGqoxyAoe6nHval6vkwH9EPTQfurzXd2Uz9uz7/nm9eXeg22Afgj6np0s75mpZXaFDppXYxs58GfoYea8fcHPXi7Dclw0xzrcjqexHPiCh7Nv5pyOB7rgob5b3leCs6NBB3PLT8zdk+RzU907MDT3uIVMx9PFQ1n7sh2NC773lWXFOeMLd9C2NC6al+X0sfvwSy+99GH+mY985CN3L7/88vqPffsTAMdAt1BdFroEywpeztNnyIvZNXO2OV3IaDwhA9mZe2fZhj5zz7VrL5fhmd3SdhM9c2ZnJ/TQzB08LtpNtuHLdPeYL2yAnx3dHPPnjVw2eWpdz9G6elrGF3zRvn5uZtdcBt1PlsPMqnuet+FpoAseeDsaaJDzmIfq5nw1BpktDTwGOdDyCdmEXXsa9LLq+rIc+GJ6unCPTX1ZVsiqcc9gHchh6ulteaBh6npZMe/SQzMaeOiZyXpeD3zB6/gy3Vz2EGxswebVuFs7sAUaZi8HeZmGY/eRj33sYy/Q6437eBff/5HXIznKy1fXh738aO4y4C/lIyEnb3WvluuchannPbrpaRnMM/REd5NpsLucf/Q7E+R+8dIBD2fdc7pibvQT3cyMdgb0PNBAtys34wvban0ho/EZ8sJ52qZMy8szl9Xb0EDr8PS0HNrRwAP9aph32PWMfGqd/xrvrdwO2uG1Pz7IQQZHtH5UYz3QyrKMB1qOgW6O+ZnL6nX1mC9smuH6M+ucwUBDNT7DHWAHeiyrLsvpdmXZRPOyc6+mdcW8h3YW6zFPFzzogNbRmAf+DL1ssm0x87nT8+Xq7nnQAz1hJ8dyPCEDm0d8yFde+cf/+B9/nH/meJPK8cb9CUf64Bu2zhim7gPJQSfDPFTLQVbwwNtNzcPs6pvhnqHby0AGdDseeHkhAzmesJFDtX7q6e34wo6W08Dfwuyqnet2all9t7Lqsg2NgQZbHvjyzGW8Hp+h12EdjSea2RTtb/nu52ZqZ+pxfc+94p37KOQyOOz65wv4Fmzh3Dlb6GxAxsP0dLPqs29e1rsPaKCBtgO6qC/Lu8fQjJ67qbuRTcwz1bhwrvtzxuvBBs+Ml8sKvpB1g89oL6cnZOAuPHHOjve+9XPC+XZl5+QY5AUPs7/l7c8bO9DhiZnRzkK17Yc/vL5TcvfMiy++eOSvvGSggCNA65Na4vggg7k74vVDBsuMD3NPt6rG0LzsLqjHZz/PVduAfTMa5AWvL/gzbGc2PQ3Od8ODDJqXb2W6mTsvK87ethltx9NQX76V2euBBhqqnSvk1bgezz2tL/QTchvZmds15+eOPsMGznm9u6AeT9+zM5va/iHYOQ8Pbbwp2LWnoR47DzS0lxUy0Be6W5l8bmiZbVlWT9+CfubzLA367nio1/G4Wb2saFbuVl+tq24uA/7Mson2zc53yW2ALnio7zkZ8EU3ZT197ptjnc2E/JG/kMwW+znVYv3DycP4p5XrjXqWR74y7DAuXFRdnhs9j/XVPN2Mlk1Pn2Fje85lxblzRlamge8Z3OzMds1uaWehG8yDPZZNyEGmh2o58HDW3crpW9AVevdAM1rOl2UgAxr0Rb1exk/I+XPH63BhJ4NmtHxCppfRmIdqrJPh+qll0Iy2L3jQN8O8fKIZBjt9NeblNOaL6WnQ2cL01WU74G9tZWBTtuXLdDt6Qt5dWf+Q1hXOAl+ursfQ+zDIbm118jJtW08X7XCh6xbzOhromfEg0wMPM5u5rpg57UxhQ+N2ZZmOp2Fq/oy+cR/n9m9TcuAw6x9WVp8P1XuTty2an1kvw+6s5oEHGujuys111RjOGd9ztA3QE82wfdEN3w7LJ1fLYfqenRktBxqcg6l5OO+6aW7TrFpHYx3wE7L2crpMw/y9ue3Kt847o2939u30tB54LLsFffPuZNU6WkYDDzRUYzssBz+HcXNcP5kGPbgDHtK27Wk4e1nhnkJmi0HO4zP0IO8Gg6zoButw0c051+twUY9B3nP1uJmexyDny80wNJ8sB+eABhsMzWXFzNvPrLt29WXbohmWOQM0yKenZcXc6Hisp8s0+Hmpp2Fqvm/c9IKBS0BQlhdymB3/anC2ezsazpoH+zLdrWxCBzJc8MX57Nl3V3aHDW7G07jgbYCWV/MgK9Ngg+VnzLw7WXHeT28PMuxPfnXPy6F5+aFMDt1hd8kwTwMN1WWZ7fQyXk4/BD3o7XE93YyWT3/OdDbyh2AzO/tmmD9DDs7pJtPQnu5m6pk1dwZ43M3UOjnQxdzQ0A5PP7UOZHC+l29Ow9k3cw/wuEy/sr9OvPwdvaywc2f91O2wHhd80TPtys3L9rr6M+tBXvBFM+ye5tVyWT0N9fpbsHk1rDdul8Ac8jAzWuaB6EIG9U/K8x7nwVncDvPNaeBh6rOf3dR2cM48FtzK7QsbqD/vm+N23eNm+lvQF+2dAx4XPPDO0FBdlp0xO7qwcx8u6jE0LztbjW3OGS9vjws58OXu+altYOZ6GZbTk6tnTt/aywvnbPiyjL+F2fUXzu7ald1XbcNjkBf8hB3IMHRbrQO+4AsZfWbZGe5u1r0M5Lh5PS701dhs1ReNAAAKxUlEQVQ2j/+7YKr1Rj73dJKbv3HCAT1Ogm7ioU1znOx/SZCel/AgSx5/jCTruSX7fHfJ1TtfJDFZn+cSjz4kO2eTrH+jM7necXf84Y6D1o9nPvrRj7740ksvvfP4p5W//1d/9Vcf+4u/+Iu74i//8i/f9973vvcd8Nd//dfvPvzdn//5n9/hbvi/+Zu/uXv++efXuT/6oz+6+4M/+IO7P/7jP76TH+fugAYaqvHf/u3fXjbvfve7P3483p+8//3vf8f73ve+d5SP+98BR7dyXdHNLe9M84d4nqdhbqefem6qz/2t59vtLX7o+boXeoaeW173gQ98YL1mPMjKdDGz6nlfd/O+ZvZw+N8//ny94M8n+HN5fL7PH93vHljP49isP1/nu907u+mdbTe5ee86+yP/g+M5vOznExzPzc9Lz2c9h+4x9G4a6nH9mXXzudbbAV988IMfXI879zaF3dT1c1/90F3OFL2r3Hyy+9pj3WvxPNP9zOjm7uJBBrScLtOgw3Kobo5n3l52hm17XNi1m1m1Duy8zvTR/c573vOe9/s5dPCdn0/Hz631njZZvjbvfs+dHX38NXDXfz/meG+9e/HFF+9eeOGFu+M99oKT//ix/93jvfgdB/7g2L144O5DH/rQOndkzx/3/M6x+eODX/LO/cxxwbuTfMXB/+k3f/M3/9ef//mf/82f/dmf/b8Oftu73vWurz8O/adj/JZf+IVf+OGf+qmfeuWnf/qn747+7ud+7ufufuZnfmbpX/u1X7s7tndvf/vb737wB3/w7nu/93vvfvRHf3R52S/90i/dve1tb7uH4/67Qu+OX//1X//IO9/5zv/9+AXkq47HfcvE8ckvP7najgZ6QgYzo88ZX+hh+lu6WdkZqMfHn4C34InzZnb2+mJ21f580GW6cI7Gt3oZ6O3ossemQQ7dzYyGl19++YuOnzf/9XHu045d8dmH/pIXX3xxfd7ugGPzFnzsF+t5rCvTcphZc+dBX/C2B3s+/9Xx+J92/CQvPtvu6Nbj9h57+YQNNJva3llZNf/hD3/48nnK9T1fX7Zvd2bnQN798Tms5yw/Pqe3YD0+3yUDPdC34G79RHcyukwDP9GsrDs/H5keHtL9/LAdVDtDY9CBDMtg6untQA8+byyDs55n6ePn9lv+5E/+5Bt+53d+57eP98VXfuM3fuPuV37lV9Z7mvcr+NVf/dW73/7t3777/d///bt3/eG7FvO/93u/t97oj18I7o5fANYbui92/+zP/uwOfLGL//RP//QODv+h4zl9ucf92Mc+9kUHf8bBn3bwpx1/1/Zpx1fan33wWw7+zuMLpOfXG/fxQC8eb6C/+uM//uM/9xd/8Rf//XHJl8Mx+Kpf/MVf/MHv+Z7v+aXv/u7vfvuR/c7xFc3HPZnjV6U7vxoAfbwI6x9mHi+Or3DWk/arjh5s4PiV7A58MoVfpY436vXV+vHJ/PnxifyPxwvxf37/93//2///gB/6oR96XZ/H693/Xb5Gr/exv+/7vu8Xf/iHf/gnf+zHfuwnDl44fuH+6R/4gR/4pfPz6t3l2TfDcO5kIMdAF/UHv+1HfuRH/nOfC/Z87I5u/Xkoy87QQfOpZTxMXS+Dh7wcbG5BB+1o4G9xMz3wQAN9C7ozupPTZRr4iWZl3dQ8yOAhfe74omcwNC/LgMdFPZ7QT3/W7TH4OfyOd7zjfzveB//n46vqj3qf6nuf97LjF6p+NXx3vMmub31g74HHL7Lr/fB4o1358aa7/u304xeDu+PNeKE72wMfOH5h+IXjF4K3//Iv//Lbji9g//Ohf+LIfgIfv2D89MFv/4mf+InfPfr9Fbd370d45Q+PP44v9X/pwC8eb9S/djzhDzzqfM/lef/dbvC/z3njG994hwv+TW96013B6+zhEz7hE+7O8DsXjq/21yfnEzo+sQ8cvzK98/gV66N93Kf89BV4+go8fQX+IV6B4836/ccXpe843pA/4n3K+5f3tQnvd/4vYkDrvO9B3/fKzoP3vYnjc3v/gZcPPPGPZ24s/fPeYtbv7YPiwhOgMdDnJyrT3YIXpA9y/ArlDXv/q0ENn/I/wCvw9CGfvgJPXwGvwPHe9ZHjfeuFA+sLT3x+f+PBm/Wxv+xs+XI1X3j/O+ALZO+5HvKJcOuN++bB4031+ePBXvHgcOj1BD1h+nhwX5Uv0BMu5OeOP+PovWl783bkKZ6+Ak9fgaevwD/oK3C8R710vC95817vbX3vO7J7/pwf59bvNrGjy/QNvO/1fpJP/MZ9/O3C+48Hf+XAesJlT+Ks+0noJjy56W/oDx2b1/W3DMf+6Y+nr8DTV+DpK/D38goc73v+cyDrK+6+X3m/qy7LoL7sSdEYaKDh0K8cWP/AkX9SPPEb9/E96A8cD7DetF3eJzmZnrC/Bednzj/CBw/++IG/jx9P73z6Cjx9BZ6+Aq/rFTjez9Ybt0PzPevI11fUM6/Gt+D8rfzIfI/7oCf/8cRv3Mc/Rf3g8e2S9abaJ4CPbD0a5s9Y5fFBftC9H87M4Nh4435d3+uZ55/qp6/A01fg6Svwd/kKHN8KfvG474XjvenmG/XRrS9m299iG3m5mvceePwi4Hvc7BPjid+4j0/A93ku38bw4IVHq8Z8wQN/ZhnI4fgkfI9b9BRPX4Gnr8DTV+Af/BV48cUXXz7emz7SJ3Loe2/gx5vuquQ0LhRnLVt49EH/8Y9/3LeIHyVPRk/8xv2BD3zgo8eDrN9D2KuPN9olMRxP4N7vX1zlow/H2aXKyxwfnIND+m2Br/sTcO4pnr4CT1+Bp6/A38crcPzzOm/cl98wMd+/qr1/FZ4DjduX5YWexsf7pu80kE+MJ37jPm584fjV53858NYXXnjhrce3Tt76kY985K0f/ehHF3/oQx966/ve9763vve9733r888//1ZeZ//yyy+/9fge+VvLxzf83wr88aTfenwCC4f+qeNxnn6r5HgRnv54+go8fQX+4V+Bv/3bv33/8V71f3iP8n7l/cx7GXh/8z7ofe8973nPeu/r+56+W+eOOy7vf/XufJS/7fV+pq/njfvlN73pTd/6T//pP/1v/t2/+3f/3ad/+qf/T5//+Z//3Jd+6ZcufNEXfdFz/Od+7uc+94Vf+IXPveUtb3nuK7/yK5/76q/+6ue+5mu+5rmv/dqvfe7rvu7rnvv6r//6577pm77puW/5lm957pu/+Zuf+8Zv/MbnvuEbvmH1h/+r7/qu73oWvuM7vuPC3/md3/lvXgvOTPS87Kx50MHU9bJCBvVn1oG8XM0D/3rxbd/2bc/Ct37rtz57vHbPfvmXf/mzx2v77PEaP/sZn/EZz37qp37qwqd8yqc8ewv//t//+2fh3/7bf/vsLfzrf/2vn301/Kt/9a/+zRnd/8t/+S+fPaNdefay6f/foP8untP/0zuc/xf/4l/8mzO8Pjo8IQNZeWoZNKMn+vPAzws/fz77sz/72eOv1We/6qu+6tnjr8UFP9/Az70ngZ/Xdt/xHd/xLF3cytr9f4W//du//b/8iq/4ircdr9FzX/ZlX7be046/Dp+DL/iCL3jucz7nc547/lp87ngtFz7zMz/zuc/7vM97TvfFX/zFzxVf8iVfst4T+c/6rM967j/+x//4P/zzf/7P/9s3v/nNX3O88fuC9XW9d//fAAAA///jfIovAAAABklEQVQDAOJM8/VB0iKUAAAAAElFTkSuQmCC",FGe="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFoAAAAyCAYAAADcD8w1AAAQAElEQVR4AezbWajlVXYG8F2lluVYzmNpnetYpVY5RiQOFBF8EoJBKyAoJvRD++B7hEiZ0BCQhIaYQDBN4kMIiOBTIjiEKisO1xmc53vLea7BqdQasn67+U7+59S1feq3bvx67b2Gb6299v4P55xbi9vv/t/iiy+++E/WrVt363XXXXdfyRcK711zzTUfXnnllZtvvPHGuVtuuWX+ggsumDv66KPnjjjiiLkjjzzyZxE/MatXr8Yxd9ttt81fcsklnSP2SJzGgXlAZ7xmzZq5m2++ef6qq66aO+mkkzoPfcBviOgj2U488cS5Wtv8HXfcMX/ttdfOH3fccZ2HLSj/d4866qiPqvZPjj322I/L553jjz/+seXLl//rGWec8Ytaz8oLL7xwv+m2LtToRdXUfW644YaDCssPOeSQW4v4V4VrDjrooNX77LPP8qVLlx5/6KGHnrxr167RV199taISjs4+++zRypUrR6effvoETjvttBEM9VXQ6MwzzxydddZZoypytHXr1tEnn3yy4rDDDus6djGnnHLKKDj11FNHQE/OzMx0G99Vq1aN1LBly5YVS5Ys6frUwhcHKdZ4iJmZ3/Koh37RokUr5ubmVvz4448r1BwesVA8J5XfcTMzM8fUhh5bmzNTuf/48MMP/0X15dYDDjjgT2t8/Nq1a5e21sb9HQ9K2arBS+qEnliBl9dO/eUJJ5zw63PPPfePinBxLaC988477ZlnnmnPP/98e+utt9pHH33UXn/99VaFtffee699/vnn7Ysvvuj47LPPxrKa2D799NM+//jjj7s0B3Oxr776anv77bc7Jx549913O+8HH3zQ3n///TY/P9/lhx9+2PXsIH7z5s29ppdffrlLenF81UlmTtIBPYkfjzhre+2115ra1Jg1keoiwZgdvvzyy/b111+f8MMPP9zw/fff/1UdyGuvvvrq86qnR1RvF40bffvtt+9bDV6z//77//Uxxxzzm8I/1O792UUXXbSsZFuxYkWrxrdly5a1Aw88sNUl1OqUt/Ivntb222+/Vqe81SXW6rJqxdWlOb04MXVqW+14960rpNUJaHXVtCqs7dmzp9lQc34HH3zwOM9wjgcn8AX2ujoaTjXRya0WUE8dnlbrGnOqP0hNeIzVUae7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",UGe={class:"printer global-relative-offset"},jGe=["src"],HGe=["src"],zGe=["onClick","onDblclick"],WGe=Je({__name:"multi-color-machine-lite",props:{filamentName:{type:String,default:"PLA"},curFeedWithdrawSlotId:{type:String,default:""},curAmsStatus:{type:String,default:jg.Idle},curSelectSlotColor:{type:String,default:"#409eff"},isFeedWithdrawSloting:{type:Boolean,default:!1},curFeedWithdrawStatus:{type:String,default:Iee.Idle},canvas:{type:Object,default:()=>({})},trays:{type:Array,default:()=>[]},editBtnDisabled:{type:Boolean,default:!1},curActiveTrayInfo:{type:Object,default:()=>({})},curLoadedTrayInfo:{type:Object,default:()=>({})}},emits:["select-slot-id","double-click-slot"],setup(e,{emit:t}){const n=t,r=di(),i=e,o=V(()=>i.curFeedWithdrawSlotId!=="-1"&&i.isFeedWithdrawSloting),s=se(!1),a=se(!1);ln(()=>{}),Ye(()=>i.isFeedWithdrawSloting,L=>{L?(a.value=!1,s.value=!0):a.value=!0},{deep:!0});const c=se("-1"),l=se("#d8d8d8"),u=se("#d8d8d8"),d=V(()=>{var L;return r.isPrinting?((L=i.curLoadedTrayInfo)==null?void 0:L.filament_color)||l.value:i.isFeedWithdrawSloting&&i.curFeedWithdrawSlotId!=="-1"&&i.curActiveTrayInfo.filament_color||l.value}),f=V(()=>{var R;const L=[l.value,l.value,l.value,l.value];if(r.isPrinting){const F=Number(r.LoadedSlotId);!Number.isNaN(F)&&F>=0&&F<=3&&(L[F]=((R=i.curLoadedTrayInfo)==null?void 0:R.filament_color)??l.value)}if(i.isFeedWithdrawSloting){const F=Number(i.curFeedWithdrawSlotId);!Number.isNaN(F)&&F>=0&&F<=3&&(L[F]=d.value??l.value)}return L}),h=V(()=>{if(r.isPrinting){const L=Number(r.LoadedSlotId);if(!Number.isNaN(L)&&L>=0&&L<=3)return L}if(i.isFeedWithdrawSloting){const L=Number(i.curFeedWithdrawSlotId);if(!Number.isNaN(L)&&L>=0&&L<=3)return L}return-1}),p=V(()=>{const W=[1,1,1,1];if(r.isPrinting){const J=Number(r.LoadedSlotId);!Number.isNaN(J)&&J>=0&&J<=3&&(W[J]=2)}if(i.isFeedWithdrawSloting){const J=Number(i.curFeedWithdrawSlotId);!Number.isNaN(J)&&J>=0&&J<=3&&(W[J]=3)}return W}),g=L=>{const R=Number(L)-1,F=i.trays.find(W=>Number(W.id)===R);return(F==null?void 0:F.status)===Oo.Empty?l.value:(F==null?void 0:F.filament_color)||l.value},m=L=>{c.value=L.id,u.value=L.filament_color,n("select-slot-id",c.value,u.value)},y=L=>{i.editBtnDisabled||(c.value=L.id,u.value=L.filament_color,n("double-click-slot",c.value,u.value))},v=L=>{var R;return(R=Pi(L))==null?void 0:R.type},E=L=>!L.filament_type&&L.status===Oo.Empty?"'/'":!L.filament_type&&L.status!==Oo.Empty?"'?'":`'${L.filament_type||v(L.filament_name)}'`,b=L=>!(L==wi.NoFilament||L==wi.NoRecognition),S=L=>L.filament_name||"-",w=()=>{const L=i.curFeedWithdrawSlotId;return{0:{top:"37%",left:"14%"},1:{top:"60%",left:"14%"},2:{top:"60%",left:"95%"},3:{top:"37%",left:"95%"}}[L]||{}},C=()=>{const L=r.lastLoadedSlotId;return{0:{top:"37%",left:"14%"},1:{top:"60%",left:"14%"},2:{top:"60%",left:"95%"},3:{top:"37%",left:"95%"}}[L]||{top:"37%",left:"14%"}},_=V(()=>r.isFilamentInterruption),I=[{id:"1",component:fle},{id:"2",component:mle},{id:"3",component:yle},{id:"4",component:Sle}],O=[{id:"1",component:Ile},{id:"2",component:_le},{id:"3",component:xle},{id:"4",component:Nle}];return(L,R)=>{const F=Dp;return ne(),Te("div",UGe,[G("img",{src:P(BGe),class:"printer-machine",alt:""},null,8,jGe),(ne(),Te(Ft,null,Rr(I,W=>be(Br(W.component),{key:W.id,class:je(`printer-curve${W.id.trim()}`),style:Ut({"--curve-color":g(W.id)})},null,8,["class","style"])),64)),be(P(lle),{class:je(["printer-machine-header-line",{active:o.value,highlighted:h.value===0}]),style:Ut({"--curve-color":f.value[0],zIndex:p.value[0]})},null,8,["class","style"]),be(P(Iue),{class:je(["printer-machine-header-line-left2",{active:o.value,highlighted:h.value===1}]),style:Ut({"--curve-color":f.value[1],zIndex:p.value[1]})},null,8,["class","style"]),be(P(_ue),{class:je(["printer-machine-header-line-left3",{active:o.value,highlighted:h.value===2}]),style:Ut({"--curve-color":f.value[2],zIndex:p.value[2]})},null,8,["class","style"]),be(P(xue),{class:je(["printer-machine-header-line-left4",{active:o.value,highlighted:h.value===3}]),style:Ut({"--curve-color":f.value[3],zIndex:p.value[3]})},null,8,["class","style"]),be(P(sle),{class:"printer-machine-header",style:Ut({"--curve-color":d.value})},null,8,["style"]),G("img",{src:P(FGe),class:"printer-machine-top",alt:""},null,8,HGe),vn(be(P(Z3),{class:je(["printer-loading",{active:o.value}]),style:Ut(w())},null,8,["class","style"]),[[_r,o.value]]),vn(be(P(Z3),{class:je(["printer-loading interrupt-loading",{active:_.value}]),style:Ut(C())},null,8,["class","style"]),[[_r,_.value]]),(ne(),Te(Ft,null,Rr(O,W=>be(Br(W.component),{key:W.id,class:je([`slot-num${W.id.trim()}`,{active:(Number(c.value)+1).toString()===W.id}])},null,8,["class"])),64)),(ne(!0),Te(Ft,null,Rr(e.trays,(W,J)=>(ne(),Ze(F,{key:`${W.id}-${J}`,placement:"bottom",effect:"dark",trigger:"hover","show-arrow":!1,offset:2,disabled:!b(W.filament_name),"popper-style":{padding:"8px",background:W.filament_color||"#333334",color:P(Gc)(W.filament_color),textAlign:"center",width:"auto",minWidth:"100px",maxHeight:"34px",border:"1px solid black"}},{reference:Re(()=>[G("div",{class:"hollow-circle",style:Ut({"--filamentType":E(W),"--curFilamentColor":W.filament_color,"--text-color":P(Gc)(W.filament_color),top:W.top,left:W.left}),onClick:Y=>m(W),onDblclick:Y=>y(W)},null,44,zGe)]),default:Re(()=>[yt(" "+Ue(S(W)),1)]),_:2},1032,["disabled","popper-style"]))),128))])}}}),VGe=rr(WGe,[["__scopeId","data-v-8da9606c"]]),GGe={key:0,class:"standard-container"},JGe={class:"standard-container__inner"},ZGe={class:"standard-tray-nav"},YGe={class:"standard-main-section"},XGe={class:"standard-left-panel"},QGe={class:"standard-vertical-group"},KGe={class:"standard-humidity-container"},qGe={class:"standard-humidity-display"},$Ge={class:"standard-instruction-text font-size14"},eJe={class:"standard-action-buttons"},tJe={class:"standard-left-action-buttons"},nJe={href:"https://www.elegoo.com.cn/",target:"_blank",rel:"noopener noreferrer"},rJe={class:"standard-right-action-buttons"},iJe={key:1,class:"lite-container"},oJe={class:"lite-wrapper"},sJe={key:0,class:"lite-btn-container global-relative-offset"},aJe={class:"lite-btn-group"},cJe={class:"lite-main-buttons"},lJe={class:"standard-instruction-text-lite font-size14"},uJe={key:1,class:"lite-mobile-btn-container global-relative-offset",style:{"--offset-top":"-2%","--offset-left":"-16%"}},dJe={href:"https://www.elegoo.com.cn/",target:"_blank",rel:"noopener noreferrer"},fJe=Je({__name:"mutil-color",props:{version:{type:String,default:ic.Standard}},setup(e){const{isMobile:t}=gs(),n={AmsBoxs:[],VtTray:{}},{filterSettingSwitchs:r,filamentFrom:i,curSelectSlotColor:o,showSettingDialog:s,showEditDialog:a,curSelectSlotId:c,curVersion:l,curAmsStatus:u,curTrayNavIndex:d,curFeedWithdrawSlotId:f,isSelectSlot:h,isFeedWithdrawSloting:p,canvas:g,liteTrays:m,feedBtnDisabled:y,unfeedBtnDisabled:v,editBtnDisabled:E,historyEditFilamentColor:b,curFeedWithdrawStatus:S,curActiveTrayInfo:w,curLoadedTrayInfo:C,onSwitchChange:_,onSettingClick:I,onEditClick:O,onSlotClick:L,onSlotDoubleClick:R,onTrayNavClick:F,onFeedClick:W,onUnfeedClick:J,onUpdateFilament:Y}=nVe();return(M,B)=>{const q=ku;return ne(),Ze(q,null,{title:Re(()=>[yt(Ue(M.$t("filament")),1)]),default:Re(()=>[P(l)===P(ic).Standard?(ne(),Te("div",GGe,[G("div",JGe,[G("div",ZGe,[(ne(!0),Te(Ft,null,Rr(n.AmsBoxs,(z,A)=>(ne(),Ze(MGe,{key:A,tray:z.TrayList,selected:P(d)===A,onClick:T=>P(F)(A)},null,8,["tray","selected","onClick"]))),128))]),G("div",YGe,[G("div",XGe,[be(gGe,{amsSlot:n.VtTray,"display-header-mode":"name","slot-type":P(i).Rfid,slotEnable:!0},{"header-name":Re(()=>[yt(Ue(M.$t("multiColor.filamentRack")),1)]),name:Re(()=>[...B[2]||(B[2]=[yt("PLA",-1)])]),_:1},8,["amsSlot","slot-type"])]),G("div",QGe,[G("div",KGe,[G("div",qGe,[be(P(Pn),null,{default:Re(()=>[(ne(),Ze(Br(P(nV))))]),_:1}),B[3]||(B[3]=G("span",{style:{color:"#66D3FE","padding-left":"2px"}},"45",-1))])])])]),G("div",$Ge,[G("span",null,Ue(M.$t("multiColor.feedNote")),1)]),G("div",eJe,[G("div",tJe,[be(P(pr),{type:"info",class:"standard-action-btn",onClick:P(I)},{default:Re(()=>[be(P(W6))]),_:1},8,["onClick"]),G("a",nJe,[be(P(pr),{type:"info",class:"standard-action-btn"},{default:Re(()=>[yt(Ue(M.$t("buttons.guide")),1)]),_:1})])]),G("div",rJe,[be(P(pr),{type:"primary",disabled:!P(h)||P(p),onClick:P(J)},{default:Re(()=>[yt(Ue(M.$t("buttons.feed")),1)]),_:1},8,["disabled","onClick"]),be(P(pr),{type:"primary",disabled:!P(h)||P(p),onClick:P(W)},{default:Re(()=>[yt(Ue(M.$t("buttons.unfeed")),1)]),_:1},8,["disabled","onClick"])])])])])):P(l)===P(ic).Lite?(ne(),Te("div",iJe,[G("div",oJe,[be(VGe,{onSelectSlotId:P(L),onDoubleClickSlot:P(R),curFeedWithdrawSlotId:P(f),trays:P(m),curAmsStatus:P(u),curSelectSlotColor:P(o),canvas:P(g),isFeedWithdrawSloting:P(p),curFeedWithdrawStatus:P(S),editBtnDisabled:P(E),curActiveTrayInfo:P(w),curLoadedTrayInfo:P(C)},null,8,["onSelectSlotId","onDoubleClickSlot","curFeedWithdrawSlotId","trays","curAmsStatus","curSelectSlotColor","canvas","isFeedWithdrawSloting","curFeedWithdrawStatus","editBtnDisabled","curActiveTrayInfo","curLoadedTrayInfo"]),P(t)?Ke("",!0):(ne(),Te("div",sJe,[G("div",aJe,[be(P(pr),{class:"standard-action-btn",onClick:P(I)},{default:Re(()=>[be(P(W6))]),_:1},8,["onClick"])]),G("div",cJe,[be(P(pr),{type:"primary",disabled:P(y),onClick:P(W)},{default:Re(()=>[yt(Ue(M.$t("buttons.feed")),1)]),_:1},8,["disabled","onClick"]),be(P(pr),{type:"primary",disabled:P(v),onClick:P(J)},{default:Re(()=>[yt(Ue(M.$t("buttons.unfeed")),1)]),_:1},8,["disabled","onClick"]),be(P(pr),{onClick:P(O),class:"lite-edit-btn",disabled:P(E)},{default:Re(()=>[yt(Ue(M.$t("buttons.edit")),1)]),_:1},8,["onClick","disabled"])]),G("div",lJe,[G("span",null,Ue(M.$t("multiColor.feedNote")),1)])])),P(t)?(ne(),Te("div",uJe,[be(P(pr),{type:"primary",disabled:P(y),onClick:P(W)},{default:Re(()=>[yt(Ue(M.$t("buttons.feed")),1)]),_:1},8,["disabled","onClick"]),be(P(pr),{type:"primary",disabled:P(v),onClick:P(J)},{default:Re(()=>[yt(Ue(M.$t("buttons.unfeed")),1)]),_:1},8,["disabled","onClick"]),be(P(pr),{onClick:P(O),class:"lite-edit-btn",disabled:P(E)},{default:Re(()=>[yt(Ue(M.$t("buttons.edit")),1)]),_:1},8,["onClick","disabled"]),G("a",dJe,[be(P(pr),{class:"standard-action-btn"},{default:Re(()=>[yt(Ue(M.$t("buttons.guide")),1)]),_:1})]),be(P(pr),{class:"standard-action-btn",onClick:P(I)},{default:Re(()=>[be(P(W6))]),_:1},8,["onClick"])])):Ke("",!0)])])):Ke("",!0),be(xGe,{modelValue:P(s),"onUpdate:modelValue":B[0]||(B[0]=z=>En(s)?s.value=z:null),onUpdateSwitch:P(_),settingSwitchs:P(r),showHumidity:P(l)===P(ic).Standard,showReturnBtn:!1,curVersion:P(l)},null,8,["modelValue","onUpdateSwitch","settingSwitchs","showHumidity","curVersion"]),P(l)===P(ic).Lite?(ne(),Ze(Pee,{key:2,modelValue:P(a),"onUpdate:modelValue":B[1]||(B[1]=z=>En(a)?a.value=z:null),enbleEditFilament:P(c)!="-1",curSelectSlotColor:P(o),curSelectSlotId:P(c),liteTrays:P(m),historyEditFilamentColor:P(b),onUpdateFilament:P(Y)},null,8,["modelValue","enbleEditFilament","curSelectSlotColor","curSelectSlotId","liteTrays","historyEditFilamentColor","onUpdateFilament"])):Ke("",!0)]),_:1})}}}),PH=rr(fJe,[["__scopeId","data-v-67f3b399"]]),hJe={class:"flex-1 flex items-center justify-between mr-5"},pJe={key:0,class:"flex flex-col justify-between items-end"},mJe={class:"status-container"},gJe={class:"model-image"},vJe={class:"image-slot"},yJe=["src"],EJe={class:"flex-1 ml-[18px] flex flex-col"},bJe={key:0,class:"flex flex-col justify-between flex-1"},SJe={class:"filename-container"},AJe={class:"detail-title"},CJe={class:"detail-filename"},wJe={class:"detail-title"},TJe={class:"detail-text"},IJe={class:"detail-title"},PJe={class:"detail-text"},OJe={class:"flex items-center"},_Je={class:"ml-2"},RJe={key:1,class:"flex flex-col flex-1 justify-around"},kJe={class:"detail-title"},xJe={class:"detail-text"},DJe={class:"detail-title"},LJe={class:"detail-text"},NJe=Je({__name:"device-status",setup(e){El();const n=di(),r=C=>typeof C=="number"&&!isNaN(C)?Math.max(0,Math.min(100,C)):0,{printerInfo:i,status:o,deviceInfo:s,pauseDisableButton:a,resumeDisableBtn:c,stopDisableBtn:l,currentThumbnail:u,displayFileName:d,curProgress:f,curPrintLayer:h,totalPrintLayer:p,subStatus:g,isMQTTConnected:m,lastSubStatus:y,isFilamentInterruption:v,showPowerOffResumeDialog:E,powerOffResumeTitle:b,powerOffResumeMsg:S,powerOffResumeBtnTxt:w}=See();return ln(()=>{}),(C,_)=>{const I=pr,O=Dw,L=KG;return ne(),Te(Ft,null,[be(ku,null,{title:Re(()=>[G("div",hJe,[be(bee,{status:P(o),subStatus:P(g),isMQTTConnected:P(m),lastSubStatus:P(y)},null,8,["status","subStatus","isMQTTConnected","lastSubStatus"]),P(n).isPrinting?(ne(),Te("div",pJe,[G("span",null,[!P(n).isPaused&&!P(v)?(ne(),Ze(I,{key:0,class:"print-control-button",disabled:P(a),onClick:P(n).pausePrint},{default:Re(()=>[G("span",null,[be(P(KC))])]),_:1},8,["disabled","onClick"])):Ke("",!0),P(n).isPaused||P(v)?(ne(),Ze(I,{key:1,class:"print-control-button",disabled:P(c),onClick:_[0]||(_[0]=R=>P(n).resumePrint(1e4*6))},{default:Re(()=>[G("span",null,[be(P(QC))])]),_:1},8,["disabled"])):Ke("",!0),be(I,{class:"print-control-button",disabled:P(l),onClick:P(n).stopPrint},{default:Re(()=>[G("span",null,[be(P($W))])]),_:1},8,["disabled","onClick"])])])):Ke("",!0)])]),default:Re(()=>{var R;return[G("div",mJe,[G("div",gJe,[be(O,{src:P(u)},{error:Re(()=>[G("div",vJe,[G("img",{src:P(EJ),alt:"error"},null,8,yJe)])]),_:1},8,["src"])]),G("div",EJe,[P(n).isPrinting?(ne(),Te("div",bJe,[G("span",SJe,[G("span",AJe,Ue(C.$t("file"))+": ",1),G("span",CJe,Ue(P(d)),1)]),G("span",null,[G("span",wJe,Ue(C.$t("printStatus.layerProgress"))+": ",1),G("span",TJe,Ue(P(h))+"/"+Ue(P(p)),1)]),G("span",null,[G("span",IJe,Ue(C.$t("printStatus.remainingPrintTime"))+": ",1),G("span",PJe,Ue(P(eZ)(P(n).remainingPrintTime)),1)]),G("div",OJe,[be(L,{class:"flex-1 self-center",percentage:r((R=P(i))==null?void 0:R.Progress),"show-text":!1,"stroke-width":3},null,8,["percentage"]),G("span",_Je,Ue(P(f))+"% ",1)])])):Ke("",!0),P(n).isPrinting?Ke("",!0):(ne(),Te("div",RJe,[G("span",null,[G("span",kJe,Ue(C.$t("deviceName"))+": ",1),G("span",xJe,Ue(P(s).name),1)]),G("span",null,[G("span",DJe,Ue(C.$t("deviceIp"))+": ",1),G("span",LJe,Ue(P(s).ip),1)])]))])])]}),_:1}),be(al,{modelValue:P(E),"onUpdate:modelValue":_[1]||(_[1]=R=>En(E)?E.value=R:null),"confirm-title":P(b),"confirm-message":P(S),"confirm-btn-txt":P(w),onConfirm:_[2]||(_[2]=R=>P(n).resumePrint(1e4*6*2)),onCancel:P(n).stopPrint},null,8,["modelValue","confirm-title","confirm-message","confirm-btn-txt","onCancel"])],64)}}}),MJe=rr(NJe,[["__scopeId","data-v-ad7b57fc"]]),BJe={class:"control-container"},FJe={class:"flex items-center gap-2 justify-between mb-[10px]"},UJe={class:"flex items-center"},jJe={class:"fan-container"},HJe=Je({__name:"device-control",setup(e){const{deviceControlModel:t,onchassisFanSpeedChange:n,onAuxiliaryFanSpeedChange:r,onModelFanSpeedChange:i,onLightChange:o,controlDisabled:s,move:a,moveToHome:c,setPrintSpeedPct:l,changeSpeedDisabled:u,chassisFanDisabled:d,lightDisabled:f,fanDisabled:h,auxiliaryFanDisabled:p,xyzDisabled:g,uiPrinterMode:m,chassisFanCmdStatus:y,auxiliaryFanCmdStatus:v,modelFanCmdStatus:E,lightCmdStatus:b,showLightOffDialog:S,onLightOffConfirm:w,onLightOffCancel:C}=Aee();return(_,I)=>{const O=Ug,L=Fg;return ne(),Te(Ft,null,[be(ku,null,{title:Re(()=>[yt(Ue(_.$t("control.control")),1)]),default:Re(()=>[G("div",BJe,[G("div",FJe,[be(wee,{step:P(t).moveStep,"onUpdate:step":I[0]||(I[0]=R=>P(t).moveStep=R),"x-pos":P(t).xPos,"y-pos":P(t).yPos,"z-pos":P(t).zPos,disabled:P(s)},null,8,["step","x-pos","y-pos","z-pos","disabled"])]),be(Cee,{class:"self-center w-full",xyzDisabled:P(g),onHomeAll:I[1]||(I[1]=R=>P(c)("XYZ")),onHomeX:I[2]||(I[2]=R=>P(c)("X")),onHomeY:I[3]||(I[3]=R=>P(c)("Y")),onHomeZ:I[4]||(I[4]=R=>P(c)("Z")),onXUp:I[5]||(I[5]=R=>P(a)("X",1)),onXDown:I[6]||(I[6]=R=>P(a)("X",-1)),onYUp:I[7]||(I[7]=R=>P(a)("Y",1)),onYDown:I[8]||(I[8]=R=>P(a)("Y",-1)),onZUp:I[9]||(I[9]=R=>P(a)("Z",1)),onZDown:I[10]||(I[10]=R=>P(a)("Z",-1))},null,8,["xyzDisabled"]),G("div",UJe,[G("span",null,Ue(_.$t("control.printSpeed")),1),be(L,{modelValue:P(m),"onUpdate:modelValue":I[11]||(I[11]=R=>En(m)?m.value=R:null),placeholder:"",style:{width:"140px"},"show-arrow":!1,offset:4,class:"ml-[10px] no-border-select",disabled:P(u),onChange:P(l)},{default:Re(()=>[(ne(!0),Te(Ft,null,Rr(P(t).printModeOptions,R=>(ne(),Ze(O,{key:R.value,label:_.$t(R.label),value:R.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","disabled","onChange"])]),G("div",jJe,[be(wd,{class:"flex-1",title:_.$t("control.model"),value:P(t).modelFanSpeed,"onUpdate:value":I[12]||(I[12]=R=>P(t).modelFanSpeed=R),onChange:P(i),disabled:P(h),defaultOpenValue:100,cmdStatus:P(E),"component-type":P(na).ModelFan},{icon:Re(()=>[be(P(Mh))]),_:1},8,["title","value","onChange","disabled","cmdStatus","component-type"]),be(wd,{class:"flex-1",title:_.$t("control.sideFan"),value:P(t).auxiliaryFanSpeed,"onUpdate:value":I[13]||(I[13]=R=>P(t).auxiliaryFanSpeed=R),onChange:P(r),disabled:P(p),defaultOpenValue:100,cmdStatus:P(v),"component-type":P(na).AuxiliaryFan},{icon:Re(()=>[be(P(Mh))]),_:1},8,["title","value","onChange","disabled","cmdStatus","component-type"]),be(wd,{class:"flex-1",title:_.$t("control.Case"),"show-input":!0,value:P(t).chassisFanSpeed,"onUpdate:value":I[14]||(I[14]=R=>P(t).chassisFanSpeed=R),onChange:P(n),disabled:P(d),defaultOpenValue:100,cmdStatus:P(y),"component-type":P(na).ExhaustGrille},{icon:Re(()=>[be(P(Mh))]),_:1},8,["title","value","onChange","disabled","cmdStatus","component-type"]),be(wd,{class:"flex-1",title:_.$t("control.Lighting"),"show-input":!1,value:P(t).lightValue,"onUpdate:value":I[15]||(I[15]=R=>P(t).lightValue=R),onChange:P(o),disabled:P(f),defaultOpenValue:1,cmdStatus:P(b),"component-type":P(na).ChassisLight},{icon:Re(()=>[be(P(tV))]),_:1},8,["title","value","onChange","disabled","cmdStatus","component-type"])])])]),_:1}),be(al,{modelValue:P(S),"onUpdate:modelValue":I[16]||(I[16]=R=>En(S)?S.value=R:null),"confirm-title":_.$t("errorNotice"),"confirm-message":_.$t("aiDetection.lightOffConfirm"),"confirm-btn-txt":_.$t("close"),onConfirm:P(w),onCancel:P(C)},null,8,["modelValue","confirm-title","confirm-message","confirm-btn-txt","onConfirm","onCancel"])],64)}}}),zJe=rr(HJe,[["__scopeId","data-v-5c7e7505"]]),WJe={key:0,class:"pc-layout"},VJe={class:"left"},GJe={class:"right"},JJe={key:1,class:"mobile-layout"},ZJe="6.2.5",YJe=Je({__name:"main-view",setup(e){var f;const{isMobile:t}=gs(),n=di(),r=V(()=>t.value?"":"content"),i=V(()=>t.value?"main-view-mobile ":"main-view"),o=V(()=>jn()),s=se(!0),a=se(null);Ye(()=>t.value,(h,p)=>{Pe.log("isMobile 变化",{newValue:h,oldValue:p,isInitialMount:s.value,previousIsMobile:a.value}),!s.value&&a.value!==null&&h!==a.value&&(Pe.log("移动端/桌面端切换,刷新页面",{from:a.value?"移动端":"桌面端",to:h?"移动端":"桌面端"}),location.reload()),a.value=h}),ln(()=>{setTimeout(()=>{s.value=!1,a.value=t.value,Pe.log("初始化完成,当前 isMobile:",t.value)},100)});const c=navigator,l=c.userAgent,u=((f=c.userAgentData)==null?void 0:f.brands)??[],d=u.length?u.map(h=>`${h.brand} ${h.version}`).join(", "):l;return Pe.log("浏览器信息:",d),(h,p)=>(ne(),Te("div",{class:je(i.value)},[be(Kue),G("div",{class:"version-info"},"v"+Ue(ZJe)),G("div",{class:je(r.value)},[P(t)===!1?(ne(),Te("div",WJe,[G("div",VJe,[be(P(sHe)),be(P(XHe)),be(P(bH))]),G("div",GJe,[be(P(wH)),be(P(SH)),vn(be(P(PH),null,null,512),[[_r,P(n).canvasConnected]]),vn(be(P(IH),null,null,512),[[_r,!P(n).canvasConnected]]),o.value?Ke("",!0):(ne(),Ze(P(TH),{key:0}))])])):Ke("",!0),P(t)?(ne(),Te("div",JJe,[be(P(MJe)),be(P(zJe)),vn(be(P(PH),null,null,512),[[_r,P(n).canvasConnected]]),vn(be(P(IH),null,null,512),[[_r,!P(n).canvasConnected]]),be(P(bH)),be(P(SH)),be(P(wH)),o.value?Ke("",!0):(ne(),Ze(P(TH),{key:0}))])):Ke("",!0)],2)],2))}}),XJe=rr(YJe,[["__scopeId","data-v-9a145184"]]),QJe=typeof window<"u"&&window.location.protocol==="file:",KJe=QJe?Nie("./"):pW("./"),qJe=ooe({history:KJe,routes:[{path:"/",redirect:"/index"},{path:"/index",name:"index",component:XJe}]});Array.prototype.at||(Array.prototype.at=function(e){const t=this.length,n=e>=0?e:t+e;if(!(n<0||n>=t))return this[n]});Pe.log("=== 环境变量配置 ===");Pe.log("当前模式 (MODE):","mqtt");Pe.log("是否开发环境 (DEV):",!1);Pe.log("是否生产环境 (PROD):",!0);Pe.log("协议类型 (VITE_PROTOCOL_TYPE):",Ws.protocolType);Pe.log("使用RTC拉流 (VITE_USE_RTC):",Ws.useRTC);Pe.log("原始值 VITE_USE_RTC:","false");Pe.log("原始值 VITE_PROTOCOL_TYPE:","MQTT");Pe.log("==================");const $Je=new URLSearchParams(window.location.search),OH=$Je.get("print_ip"),S6=tW(coe),eZe=Bae(),tZe=Aae(eZe);tZe(!0);S6.use($re());S6.use(qJe);S6.use(ou);S6.mount("#app");if(OH){const e=Eee();e.curPrintHost=OH}});export default nZe();
\ No newline at end of file diff --git a/resources/profiles/Anycubic.json b/resources/profiles/Anycubic.json index 789f72f3a1b..527247a7e81 100644 --- a/resources/profiles/Anycubic.json +++ b/resources/profiles/Anycubic.json @@ -472,6 +472,10 @@ "name": "Anycubic Generic PA-CF", "sub_path": "filament/Anycubic Generic PA-CF.json" }, + { + "name": "Fiberon PA6-CF20 @Anycubic Kobra S1", + "sub_path": "filament/Polymaker/Fiberon PA6-CF20 @Anycubic Kobra S1.json" + }, { "name": "Anycubic Generic PC", "sub_path": "filament/Anycubic Generic PC.json" @@ -588,6 +592,18 @@ "name": "Anycubic PLA+ @Anycubic Kobra X 0.4 nozzle", "sub_path": "filament/Anycubic PLA+ @Anycubic Kobra X 0.4 nozzle.json" }, + { + "name": "Panchroma PLA @Anycubic Kobra S1", + "sub_path": "filament/Polymaker/Panchroma PLA @Anycubic Kobra S1.json" + }, + { + "name": "Polymaker PLA Pro @Anycubic Kobra S1", + "sub_path": "filament/Polymaker/Polymaker PLA Pro @Anycubic Kobra S1.json" + }, + { + "name": "Polymaker PLA Pro Metallic @Anycubic Kobra S1", + "sub_path": "filament/Polymaker/Polymaker PLA Pro Metallic @Anycubic Kobra S1.json" + }, { "name": "Anycubic Generic PVA", "sub_path": "filament/Anycubic Generic PVA.json" diff --git a/resources/profiles/Anycubic/filament/Polymaker/Fiberon PA6-CF20 @Anycubic Kobra S1.json b/resources/profiles/Anycubic/filament/Polymaker/Fiberon PA6-CF20 @Anycubic Kobra S1.json new file mode 100644 index 00000000000..96fbc6f25bc --- /dev/null +++ b/resources/profiles/Anycubic/filament/Polymaker/Fiberon PA6-CF20 @Anycubic Kobra S1.json @@ -0,0 +1,81 @@ +{ + "type": "filament", + "name": "Fiberon PA6-CF20 @Anycubic Kobra S1", + "inherits": "fdm_filament_pa", + "from": "system", + "setting_id": "GFSL57_AC", + "filament_id": "GFL57", + "instantiation": "true", + "compatible_printers": [ + "Anycubic Kobra S1 0.4 nozzle" + ], + "filament_vendor": [ + "Polymaker" + ], + "filament_type": [ + "PA6-CF" + ], + "eng_plate_temp": [ + "40" + ], + "hot_plate_temp": [ + "40" + ], + "textured_plate_temp": [ + "40" + ], + "eng_plate_temp_initial_layer": [ + "40" + ], + "hot_plate_temp_initial_layer": [ + "40" + ], + "textured_plate_temp_initial_layer": [ + "40" + ], + "overhang_fan_speed": [ + "100" + ], + "filament_flow_ratio": [ + "1.03" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "fan_cooling_layer_time": [ + "30" + ], + "filament_cost": [ + "79.98" + ], + "filament_density": [ + "1.17" + ], + "filament_max_volumetric_speed": [ + "7.5" + ], + "filament_retraction_length": [ + "1.0" + ], + "filament_z_hop": [ + "0.0" + ], + "nozzle_temperature_initial_layer": [ + "300" + ], + "fan_max_speed": [ + "30" + ], + "slow_down_layer_time": [ + "6" + ], + "nozzle_temperature": [ + "300" + ], + "temperature_vitrification": [ + "74.2" + ], + "nozzle_temperature_range_low": [ + "280" + ] +} diff --git a/resources/profiles/Anycubic/filament/Polymaker/Panchroma PLA @Anycubic Kobra S1.json b/resources/profiles/Anycubic/filament/Polymaker/Panchroma PLA @Anycubic Kobra S1.json new file mode 100644 index 00000000000..b9a92672601 --- /dev/null +++ b/resources/profiles/Anycubic/filament/Polymaker/Panchroma PLA @Anycubic Kobra S1.json @@ -0,0 +1,70 @@ +{ + "type": "filament", + "name": "Panchroma PLA @Anycubic Kobra S1", + "inherits": "fdm_filament_pla", + "from": "system", + "setting_id": "GFSPM001_AC", + "filament_id": "GFPM001", + "instantiation": "true", + "compatible_printers": [ + "Anycubic Kobra S1 0.4 nozzle" + ], + "filament_vendor": [ + "Polymaker" + ], + "filament_type": [ + "PLA" + ], + "cool_plate_temp": [ + "50" + ], + "eng_plate_temp": [ + "50" + ], + "hot_plate_temp": [ + "50" + ], + "textured_plate_temp": [ + "50" + ], + "cool_plate_temp_initial_layer": [ + "50" + ], + "eng_plate_temp_initial_layer": [ + "50" + ], + "hot_plate_temp_initial_layer": [ + "50" + ], + "textured_plate_temp_initial_layer": [ + "50" + ], + "filament_flow_ratio": [ + "0.88" + ], + "filament_cost": [ + "0" + ], + "filament_density": [ + "1.32" + ], + "filament_max_volumetric_speed": [ + "20" + ], + "slow_down_min_speed": [ + "5" + ], + "slow_down_layer_time": [ + "10" + ], + "temperature_vitrification": [ + "62.5" + ], + "additional_cooling_fan_speed": [ + "0" + ], + + "enable_pressure_advance": [ + "1" + ] +} diff --git a/resources/profiles/Anycubic/filament/Polymaker/Polymaker PLA Pro @Anycubic Kobra S1.json b/resources/profiles/Anycubic/filament/Polymaker/Polymaker PLA Pro @Anycubic Kobra S1.json new file mode 100644 index 00000000000..54e1323cac7 --- /dev/null +++ b/resources/profiles/Anycubic/filament/Polymaker/Polymaker PLA Pro @Anycubic Kobra S1.json @@ -0,0 +1,66 @@ +{ + "type": "filament", + "name": "Polymaker PLA Pro @Anycubic Kobra S1", + "inherits": "fdm_filament_pla", + "from": "system", + "setting_id": "GFSL79_AC", + "filament_id": "GFL79", + "instantiation": "true", + "compatible_printers": [ + "Anycubic Kobra S1 0.4 nozzle" + ], + "filament_vendor": [ + "Polymaker" + ], + "filament_type": [ + "PLA" + ], + "cool_plate_temp": [ + "50" + ], + "eng_plate_temp": [ + "50" + ], + "hot_plate_temp": [ + "50" + ], + "textured_plate_temp": [ + "50" + ], + "cool_plate_temp_initial_layer": [ + "50" + ], + "eng_plate_temp_initial_layer": [ + "50" + ], + "hot_plate_temp_initial_layer": [ + "50" + ], + "textured_plate_temp_initial_layer": [ + "50" + ], + "filament_flow_ratio": [ + "0.85" + ], + "filament_cost": [ + "0" + ], + "filament_density": [ + "1.23" + ], + "filament_max_volumetric_speed": [ + "16" + ], + "slow_down_min_speed": [ + "5" + ], + "slow_down_layer_time": [ + "10" + ], + "temperature_vitrification": [ + "55" + ], + "additional_cooling_fan_speed": [ + "0" + ] +} diff --git a/resources/profiles/Anycubic/filament/Polymaker/Polymaker PLA Pro Metallic @Anycubic Kobra S1.json b/resources/profiles/Anycubic/filament/Polymaker/Polymaker PLA Pro Metallic @Anycubic Kobra S1.json new file mode 100644 index 00000000000..abdc6a6e1d5 --- /dev/null +++ b/resources/profiles/Anycubic/filament/Polymaker/Polymaker PLA Pro Metallic @Anycubic Kobra S1.json @@ -0,0 +1,66 @@ +{ + "type": "filament", + "name": "Polymaker PLA Pro Metallic @Anycubic Kobra S1", + "inherits": "fdm_filament_pla", + "from": "system", + "setting_id": "GFSL80_AC", + "filament_id": "GFL80", + "instantiation": "true", + "compatible_printers": [ + "Anycubic Kobra S1 0.4 nozzle" + ], + "filament_vendor": [ + "Polymaker" + ], + "filament_type": [ + "PLA" + ], + "cool_plate_temp": [ + "50" + ], + "eng_plate_temp": [ + "50" + ], + "hot_plate_temp": [ + "50" + ], + "textured_plate_temp": [ + "50" + ], + "cool_plate_temp_initial_layer": [ + "50" + ], + "eng_plate_temp_initial_layer": [ + "50" + ], + "hot_plate_temp_initial_layer": [ + "50" + ], + "textured_plate_temp_initial_layer": [ + "50" + ], + "filament_flow_ratio": [ + "0.85" + ], + "filament_cost": [ + "0" + ], + "filament_density": [ + "1.23" + ], + "filament_max_volumetric_speed": [ + "16" + ], + "slow_down_min_speed": [ + "5" + ], + "slow_down_layer_time": [ + "10" + ], + "temperature_vitrification": [ + "55" + ], + "additional_cooling_fan_speed": [ + "0" + ] +} diff --git a/resources/profiles/Anycubic/machine/Anycubic Kobra 3 Max 0.4 nozzle.json b/resources/profiles/Anycubic/machine/Anycubic Kobra 3 Max 0.4 nozzle.json index 56daf84d1ba..8a776dfcfb9 100644 --- a/resources/profiles/Anycubic/machine/Anycubic Kobra 3 Max 0.4 nozzle.json +++ b/resources/profiles/Anycubic/machine/Anycubic Kobra 3 Max 0.4 nozzle.json @@ -33,10 +33,10 @@ "disable_m73": "0", "gcode_flavor": "klipper", "printable_area": [ - "3x0", - "423x0", - "423x420", - "3x420" + "0x0", + "426x0", + "426x420", + "0x420" ], "printable_height": "501", "thumbnails": "230x110/PNG", @@ -48,7 +48,24 @@ "bbl_use_printhost": "0", "bed_custom_model": "", "bed_custom_texture": "", - "bed_exclude_area": [], + "bed_exclude_area": [ + "0x0", + "3x0", + "3x420", + "0x420", + "0x0", + "423x0", + "423x0", + "423x0", + "423x0", + "426x0", + "426x420", + "423x420", + "423x0", + "0x0", + "0x0", + "0x0" + ], "bed_mesh_max": "0,0", "bed_mesh_min": "0,0", "bed_mesh_probe_distance": "0,0", diff --git a/resources/profiles/Anycubic/machine/Anycubic Kobra 3 Max 0.6 nozzle.json b/resources/profiles/Anycubic/machine/Anycubic Kobra 3 Max 0.6 nozzle.json index 91335726456..8346ccf3e79 100644 --- a/resources/profiles/Anycubic/machine/Anycubic Kobra 3 Max 0.6 nozzle.json +++ b/resources/profiles/Anycubic/machine/Anycubic Kobra 3 Max 0.6 nozzle.json @@ -23,10 +23,10 @@ "disable_m73": "0", "gcode_flavor": "klipper", "printable_area": [ - "3x0", - "423x0", - "423x420", - "3x420" + "0x0", + "426x0", + "426x420", + "0x420" ], "printable_height": "501", "thumbnails": "230x110/PNG", @@ -38,7 +38,24 @@ "bbl_use_printhost": "0", "bed_custom_model": "", "bed_custom_texture": "", - "bed_exclude_area": [], + "bed_exclude_area": [ + "0x0", + "3x0", + "3x420", + "0x420", + "0x0", + "423x0", + "423x0", + "423x0", + "423x0", + "426x0", + "426x420", + "423x420", + "423x0", + "0x0", + "0x0", + "0x0" + ], "bed_mesh_max": "0,0", "bed_mesh_min": "0,0", "bed_mesh_probe_distance": "0,0", diff --git a/resources/profiles/Anycubic/machine/Anycubic Kobra 3 Max 0.8 nozzle.json b/resources/profiles/Anycubic/machine/Anycubic Kobra 3 Max 0.8 nozzle.json index f0b0fc9cde9..97aef7dcac7 100644 --- a/resources/profiles/Anycubic/machine/Anycubic Kobra 3 Max 0.8 nozzle.json +++ b/resources/profiles/Anycubic/machine/Anycubic Kobra 3 Max 0.8 nozzle.json @@ -23,10 +23,10 @@ "disable_m73": "0", "gcode_flavor": "klipper", "printable_area": [ - "3x0", - "423x0", - "423x420", - "3x420" + "0x0", + "426x0", + "426x420", + "0x420" ], "printable_height": "501", "thumbnails": "230x110/PNG", @@ -38,7 +38,24 @@ "bbl_use_printhost": "0", "bed_custom_model": "", "bed_custom_texture": "", - "bed_exclude_area": [], + "bed_exclude_area": [ + "0x0", + "3x0", + "3x420", + "0x420", + "0x0", + "423x0", + "423x0", + "423x0", + "423x0", + "426x0", + "426x420", + "423x420", + "423x0", + "0x0", + "0x0", + "0x0" + ], "bed_mesh_max": "0,0", "bed_mesh_min": "0,0", "bed_mesh_probe_distance": "0,0", diff --git a/resources/profiles/Anycubic/process/0.08mm HighDetail @Anycubic Kobra 3 0.4 nozzle.json b/resources/profiles/Anycubic/process/0.08mm HighDetail @Anycubic Kobra 3 0.4 nozzle.json index c97b4397288..e134a64791c 100644 --- a/resources/profiles/Anycubic/process/0.08mm HighDetail @Anycubic Kobra 3 0.4 nozzle.json +++ b/resources/profiles/Anycubic/process/0.08mm HighDetail @Anycubic Kobra 3 0.4 nozzle.json @@ -186,10 +186,10 @@ "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "10000", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "crosshatch", "sparse_infill_speed": "450", @@ -256,7 +256,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_infill_order": "inner wall/outer wall/infill", "wall_loops": "2", diff --git a/resources/profiles/Anycubic/process/0.08mm Standard @Anycubic Kobra 3 Max 0.4 nozzle.json b/resources/profiles/Anycubic/process/0.08mm Standard @Anycubic Kobra 3 Max 0.4 nozzle.json index d04547062a3..074fd98f18b 100644 --- a/resources/profiles/Anycubic/process/0.08mm Standard @Anycubic Kobra 3 Max 0.4 nozzle.json +++ b/resources/profiles/Anycubic/process/0.08mm Standard @Anycubic Kobra 3 Max 0.4 nozzle.json @@ -201,10 +201,10 @@ "smooth_coefficient": "40", "smooth_speed_discontinuity_area": "1", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "5000", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "gyroid", "sparse_infill_speed": "150", @@ -271,7 +271,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_infill_order": "inner wall/outer wall/infill", "wall_loops": "2", diff --git a/resources/profiles/Anycubic/process/0.08mm Standard @Anycubic Kobra X 0.4 nozzle.json b/resources/profiles/Anycubic/process/0.08mm Standard @Anycubic Kobra X 0.4 nozzle.json index edc7af417fe..2fcb7a8b221 100644 --- a/resources/profiles/Anycubic/process/0.08mm Standard @Anycubic Kobra X 0.4 nozzle.json +++ b/resources/profiles/Anycubic/process/0.08mm Standard @Anycubic Kobra X 0.4 nozzle.json @@ -212,10 +212,10 @@ "smooth_coefficient": "40", "smooth_speed_discontinuity_area": "1", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "5000", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "grid", "sparse_infill_speed": "100", @@ -285,7 +285,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_loops": "2", "wall_sequence": "inner wall/outer wall", diff --git a/resources/profiles/Anycubic/process/0.10mm Detail @Anycubic Kobra 3 0.2 nozzle.json b/resources/profiles/Anycubic/process/0.10mm Detail @Anycubic Kobra 3 0.2 nozzle.json index 63d2d1f0968..f133804659a 100644 --- a/resources/profiles/Anycubic/process/0.10mm Detail @Anycubic Kobra 3 0.2 nozzle.json +++ b/resources/profiles/Anycubic/process/0.10mm Detail @Anycubic Kobra 3 0.2 nozzle.json @@ -186,10 +186,10 @@ "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.22", "sparse_infill_pattern": "crosshatch", "sparse_infill_speed": "150", @@ -256,7 +256,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_infill_order": "inner wall/outer wall/infill", "wall_loops": "4", diff --git a/resources/profiles/Anycubic/process/0.12mm Detail @Anycubic Kobra 2 Neo 0.4 nozzle.json b/resources/profiles/Anycubic/process/0.12mm Detail @Anycubic Kobra 2 Neo 0.4 nozzle.json index bbc320fc434..245347e3fdf 100644 --- a/resources/profiles/Anycubic/process/0.12mm Detail @Anycubic Kobra 2 Neo 0.4 nozzle.json +++ b/resources/profiles/Anycubic/process/0.12mm Detail @Anycubic Kobra 2 Neo 0.4 nozzle.json @@ -186,10 +186,10 @@ "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "crosshatch", "sparse_infill_speed": "150", @@ -256,7 +256,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_infill_order": "inner wall/outer wall/infill", "wall_loops": "2", diff --git a/resources/profiles/Anycubic/process/0.12mm Detail @Anycubic Kobra 3 0.4 nozzle.json b/resources/profiles/Anycubic/process/0.12mm Detail @Anycubic Kobra 3 0.4 nozzle.json index 6ed0df76761..15a0bf12b1a 100644 --- a/resources/profiles/Anycubic/process/0.12mm Detail @Anycubic Kobra 3 0.4 nozzle.json +++ b/resources/profiles/Anycubic/process/0.12mm Detail @Anycubic Kobra 3 0.4 nozzle.json @@ -186,10 +186,10 @@ "small_perimeter_speed": "30%", "small_perimeter_threshold": "0", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "10000", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "crosshatch", "sparse_infill_speed": "430", @@ -256,7 +256,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_infill_order": "inner wall/outer wall/infill", "wall_loops": "2", diff --git a/resources/profiles/Anycubic/process/0.12mm Detail @Anycubic Kobra Neo 0.4 nozzle.json b/resources/profiles/Anycubic/process/0.12mm Detail @Anycubic Kobra Neo 0.4 nozzle.json index 0dd6faaac59..bf2a8d58e87 100644 --- a/resources/profiles/Anycubic/process/0.12mm Detail @Anycubic Kobra Neo 0.4 nozzle.json +++ b/resources/profiles/Anycubic/process/0.12mm Detail @Anycubic Kobra Neo 0.4 nozzle.json @@ -186,10 +186,10 @@ "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "crosshatch", "sparse_infill_speed": "150", @@ -256,7 +256,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_infill_order": "inner wall/outer wall/infill", "wall_loops": "2", diff --git a/resources/profiles/Anycubic/process/0.12mm High Quality @Anycubic Kobra X 0.4 nozzle.json b/resources/profiles/Anycubic/process/0.12mm High Quality @Anycubic Kobra X 0.4 nozzle.json index 2aa2090e5ee..df07c7fbf8f 100644 --- a/resources/profiles/Anycubic/process/0.12mm High Quality @Anycubic Kobra X 0.4 nozzle.json +++ b/resources/profiles/Anycubic/process/0.12mm High Quality @Anycubic Kobra X 0.4 nozzle.json @@ -212,10 +212,10 @@ "smooth_coefficient": "80", "smooth_speed_discontinuity_area": "1", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "5000", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "3dhoneycomb", "sparse_infill_speed": "180", @@ -285,7 +285,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_loops": "2", "wall_sequence": "inner wall/outer wall", diff --git a/resources/profiles/Anycubic/process/0.12mm Standard @Anycubic Kobra 3 Max 0.4 nozzle.json b/resources/profiles/Anycubic/process/0.12mm Standard @Anycubic Kobra 3 Max 0.4 nozzle.json index 4f323d15ca4..cb3f57a1599 100644 --- a/resources/profiles/Anycubic/process/0.12mm Standard @Anycubic Kobra 3 Max 0.4 nozzle.json +++ b/resources/profiles/Anycubic/process/0.12mm Standard @Anycubic Kobra 3 Max 0.4 nozzle.json @@ -201,10 +201,10 @@ "smooth_coefficient": "40", "smooth_speed_discontinuity_area": "1", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "5000", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "gyroid", "sparse_infill_speed": "150", @@ -271,7 +271,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_infill_order": "inner wall/outer wall/infill", "wall_loops": "2", diff --git a/resources/profiles/Anycubic/process/0.12mm Standard @Anycubic Kobra X 0.4 nozzle.json b/resources/profiles/Anycubic/process/0.12mm Standard @Anycubic Kobra X 0.4 nozzle.json index e6574c017dd..4ec997a0dbe 100644 --- a/resources/profiles/Anycubic/process/0.12mm Standard @Anycubic Kobra X 0.4 nozzle.json +++ b/resources/profiles/Anycubic/process/0.12mm Standard @Anycubic Kobra X 0.4 nozzle.json @@ -212,10 +212,10 @@ "smooth_coefficient": "40", "smooth_speed_discontinuity_area": "1", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "5000", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "grid", "sparse_infill_speed": "180", @@ -285,7 +285,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_loops": "2", "wall_sequence": "inner wall/outer wall", diff --git a/resources/profiles/Anycubic/process/0.16mm High Quality @Anycubic Kobra X 0.4 nozzle.json b/resources/profiles/Anycubic/process/0.16mm High Quality @Anycubic Kobra X 0.4 nozzle.json index 217080328f2..8f759480757 100644 --- a/resources/profiles/Anycubic/process/0.16mm High Quality @Anycubic Kobra X 0.4 nozzle.json +++ b/resources/profiles/Anycubic/process/0.16mm High Quality @Anycubic Kobra X 0.4 nozzle.json @@ -212,10 +212,10 @@ "smooth_coefficient": "40", "smooth_speed_discontinuity_area": "1", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "5000", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "gyroid", "sparse_infill_speed": "200", @@ -285,7 +285,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_loops": "2", "wall_sequence": "inner wall/outer wall", diff --git a/resources/profiles/Anycubic/process/0.16mm Optimal @Anycubic Kobra 2 Pro 0.4 nozzle.json b/resources/profiles/Anycubic/process/0.16mm Optimal @Anycubic Kobra 2 Pro 0.4 nozzle.json index 67593bc00c9..12c6d8bd272 100644 --- a/resources/profiles/Anycubic/process/0.16mm Optimal @Anycubic Kobra 2 Pro 0.4 nozzle.json +++ b/resources/profiles/Anycubic/process/0.16mm Optimal @Anycubic Kobra 2 Pro 0.4 nozzle.json @@ -186,10 +186,10 @@ "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "crosshatch", "sparse_infill_speed": "300", @@ -256,7 +256,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_infill_order": "inner wall/outer wall/infill", "wall_loops": "2", diff --git a/resources/profiles/Anycubic/process/0.16mm Optimal @Anycubic Kobra 3 0.4 nozzle.json b/resources/profiles/Anycubic/process/0.16mm Optimal @Anycubic Kobra 3 0.4 nozzle.json index 9246577c305..c23132bcfbe 100644 --- a/resources/profiles/Anycubic/process/0.16mm Optimal @Anycubic Kobra 3 0.4 nozzle.json +++ b/resources/profiles/Anycubic/process/0.16mm Optimal @Anycubic Kobra 3 0.4 nozzle.json @@ -186,10 +186,10 @@ "small_perimeter_speed": "30%", "small_perimeter_threshold": "0", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "5000", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "crosshatch", "sparse_infill_speed": "300", @@ -256,7 +256,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_infill_order": "inner wall/outer wall/infill", "wall_loops": "2", diff --git a/resources/profiles/Anycubic/process/0.16mm Standard @Anycubic Kobra 2 Neo 0.4 nozzle.json b/resources/profiles/Anycubic/process/0.16mm Standard @Anycubic Kobra 2 Neo 0.4 nozzle.json index 7576c1e7e9b..a5668614a53 100644 --- a/resources/profiles/Anycubic/process/0.16mm Standard @Anycubic Kobra 2 Neo 0.4 nozzle.json +++ b/resources/profiles/Anycubic/process/0.16mm Standard @Anycubic Kobra 2 Neo 0.4 nozzle.json @@ -186,10 +186,10 @@ "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "crosshatch", "sparse_infill_speed": "150", @@ -256,7 +256,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_infill_order": "inner wall/outer wall/infill", "wall_loops": "2", diff --git a/resources/profiles/Anycubic/process/0.16mm Standard @Anycubic Kobra 3 Max 0.4 nozzle.json b/resources/profiles/Anycubic/process/0.16mm Standard @Anycubic Kobra 3 Max 0.4 nozzle.json index 1554deddd4d..283b342d498 100644 --- a/resources/profiles/Anycubic/process/0.16mm Standard @Anycubic Kobra 3 Max 0.4 nozzle.json +++ b/resources/profiles/Anycubic/process/0.16mm Standard @Anycubic Kobra 3 Max 0.4 nozzle.json @@ -201,10 +201,10 @@ "smooth_coefficient": "40", "smooth_speed_discontinuity_area": "1", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "5000", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "gyroid", "sparse_infill_speed": "300", @@ -271,7 +271,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_infill_order": "inner wall/outer wall/infill", "wall_loops": "2", diff --git a/resources/profiles/Anycubic/process/0.16mm Standard @Anycubic Kobra Neo 0.4 nozzle.json b/resources/profiles/Anycubic/process/0.16mm Standard @Anycubic Kobra Neo 0.4 nozzle.json index c377f60ba14..a2725e692fc 100644 --- a/resources/profiles/Anycubic/process/0.16mm Standard @Anycubic Kobra Neo 0.4 nozzle.json +++ b/resources/profiles/Anycubic/process/0.16mm Standard @Anycubic Kobra Neo 0.4 nozzle.json @@ -186,10 +186,10 @@ "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "crosshatch", "sparse_infill_speed": "150", @@ -256,7 +256,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_infill_order": "inner wall/outer wall/infill", "wall_loops": "2", diff --git a/resources/profiles/Anycubic/process/0.16mm Standard @Anycubic Kobra X 0.4 nozzle.json b/resources/profiles/Anycubic/process/0.16mm Standard @Anycubic Kobra X 0.4 nozzle.json index 708ae96dec0..a1b96bf53c9 100644 --- a/resources/profiles/Anycubic/process/0.16mm Standard @Anycubic Kobra X 0.4 nozzle.json +++ b/resources/profiles/Anycubic/process/0.16mm Standard @Anycubic Kobra X 0.4 nozzle.json @@ -212,10 +212,10 @@ "smooth_coefficient": "40", "smooth_speed_discontinuity_area": "1", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "5000", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "grid", "sparse_infill_speed": "350", @@ -285,7 +285,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_loops": "2", "wall_sequence": "inner wall/outer wall", diff --git a/resources/profiles/Anycubic/process/0.18mm Standard @Anycubic Kobra 3 Max 0.6 nozzle.json b/resources/profiles/Anycubic/process/0.18mm Standard @Anycubic Kobra 3 Max 0.6 nozzle.json index 6c2996b46d7..eb4fcbf0f3e 100644 --- a/resources/profiles/Anycubic/process/0.18mm Standard @Anycubic Kobra 3 Max 0.6 nozzle.json +++ b/resources/profiles/Anycubic/process/0.18mm Standard @Anycubic Kobra 3 Max 0.6 nozzle.json @@ -212,10 +212,10 @@ "smooth_coefficient": "80", "smooth_speed_discontinuity_area": "1", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "5000", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.62", "sparse_infill_pattern": "gyroid", "sparse_infill_speed": "100", @@ -285,7 +285,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_loops": "2", "wall_sequence": "inner wall/outer wall", diff --git a/resources/profiles/Anycubic/process/0.20mm High Quality @Anycubic Kobra X 0.4 nozzle.json b/resources/profiles/Anycubic/process/0.20mm High Quality @Anycubic Kobra X 0.4 nozzle.json index d3e98b754ac..9ec3d02de1f 100644 --- a/resources/profiles/Anycubic/process/0.20mm High Quality @Anycubic Kobra X 0.4 nozzle.json +++ b/resources/profiles/Anycubic/process/0.20mm High Quality @Anycubic Kobra X 0.4 nozzle.json @@ -212,10 +212,10 @@ "smooth_coefficient": "40", "smooth_speed_discontinuity_area": "1", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "5000", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "gyroid", "sparse_infill_speed": "200", @@ -285,7 +285,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_loops": "2", "wall_sequence": "inner wall/outer wall", diff --git a/resources/profiles/Anycubic/process/0.20mm Standard @Anycubic Kobra 2 Max 0.4 nozzle.json b/resources/profiles/Anycubic/process/0.20mm Standard @Anycubic Kobra 2 Max 0.4 nozzle.json index 7cffcc6a112..1952723c26b 100644 --- a/resources/profiles/Anycubic/process/0.20mm Standard @Anycubic Kobra 2 Max 0.4 nozzle.json +++ b/resources/profiles/Anycubic/process/0.20mm Standard @Anycubic Kobra 2 Max 0.4 nozzle.json @@ -186,10 +186,10 @@ "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "crosshatch", "sparse_infill_speed": "200", @@ -256,7 +256,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_infill_order": "inner wall/outer wall/infill", "wall_loops": "2", diff --git a/resources/profiles/Anycubic/process/0.20mm Standard @Anycubic Kobra 2 Neo 0.4 nozzle.json b/resources/profiles/Anycubic/process/0.20mm Standard @Anycubic Kobra 2 Neo 0.4 nozzle.json index 18b613502e4..87dba6f0530 100644 --- a/resources/profiles/Anycubic/process/0.20mm Standard @Anycubic Kobra 2 Neo 0.4 nozzle.json +++ b/resources/profiles/Anycubic/process/0.20mm Standard @Anycubic Kobra 2 Neo 0.4 nozzle.json @@ -186,10 +186,10 @@ "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "crosshatch", "sparse_infill_speed": "150", @@ -256,7 +256,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_infill_order": "inner wall/outer wall/infill", "wall_loops": "2", diff --git a/resources/profiles/Anycubic/process/0.20mm Standard @Anycubic Kobra 2 Plus 0.4 nozzle.json b/resources/profiles/Anycubic/process/0.20mm Standard @Anycubic Kobra 2 Plus 0.4 nozzle.json index c4bdafdbbe0..af476d81f4a 100644 --- a/resources/profiles/Anycubic/process/0.20mm Standard @Anycubic Kobra 2 Plus 0.4 nozzle.json +++ b/resources/profiles/Anycubic/process/0.20mm Standard @Anycubic Kobra 2 Plus 0.4 nozzle.json @@ -186,10 +186,10 @@ "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "crosshatch", "sparse_infill_speed": "200", @@ -256,7 +256,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_infill_order": "inner wall/outer wall/infill", "wall_loops": "2", diff --git a/resources/profiles/Anycubic/process/0.20mm Standard @Anycubic Kobra 2 Pro 0.4 nozzle.json b/resources/profiles/Anycubic/process/0.20mm Standard @Anycubic Kobra 2 Pro 0.4 nozzle.json index 470a72ef017..1a682552263 100644 --- a/resources/profiles/Anycubic/process/0.20mm Standard @Anycubic Kobra 2 Pro 0.4 nozzle.json +++ b/resources/profiles/Anycubic/process/0.20mm Standard @Anycubic Kobra 2 Pro 0.4 nozzle.json @@ -186,10 +186,10 @@ "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "crosshatch", "sparse_infill_speed": "200", @@ -256,7 +256,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_infill_order": "inner wall/outer wall/infill", "wall_loops": "2", diff --git a/resources/profiles/Anycubic/process/0.20mm Standard @Anycubic Kobra 3 0.4 nozzle.json b/resources/profiles/Anycubic/process/0.20mm Standard @Anycubic Kobra 3 0.4 nozzle.json index 550d9ad6992..d0c88dea585 100644 --- a/resources/profiles/Anycubic/process/0.20mm Standard @Anycubic Kobra 3 0.4 nozzle.json +++ b/resources/profiles/Anycubic/process/0.20mm Standard @Anycubic Kobra 3 0.4 nozzle.json @@ -186,10 +186,10 @@ "small_perimeter_speed": "30%", "small_perimeter_threshold": "0", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "5000", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "crosshatch", "sparse_infill_speed": "300", @@ -256,7 +256,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_infill_order": "inner wall/outer wall/infill", "wall_loops": "2", diff --git a/resources/profiles/Anycubic/process/0.20mm Standard @Anycubic Kobra 3 Max 0.4 nozzle.json b/resources/profiles/Anycubic/process/0.20mm Standard @Anycubic Kobra 3 Max 0.4 nozzle.json index 69b81190bcb..5eaf61f4327 100644 --- a/resources/profiles/Anycubic/process/0.20mm Standard @Anycubic Kobra 3 Max 0.4 nozzle.json +++ b/resources/profiles/Anycubic/process/0.20mm Standard @Anycubic Kobra 3 Max 0.4 nozzle.json @@ -201,10 +201,10 @@ "smooth_coefficient": "40", "smooth_speed_discontinuity_area": "1", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "5000", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "gyroid", "sparse_infill_speed": "300", @@ -271,7 +271,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_infill_order": "inner wall/outer wall/infill", "wall_loops": "2", diff --git a/resources/profiles/Anycubic/process/0.20mm Standard @Anycubic Kobra 3 Max 0.8 nozzle.json b/resources/profiles/Anycubic/process/0.20mm Standard @Anycubic Kobra 3 Max 0.8 nozzle.json index d063d221a10..bbda2c24221 100644 --- a/resources/profiles/Anycubic/process/0.20mm Standard @Anycubic Kobra 3 Max 0.8 nozzle.json +++ b/resources/profiles/Anycubic/process/0.20mm Standard @Anycubic Kobra 3 Max 0.8 nozzle.json @@ -212,10 +212,10 @@ "smooth_coefficient": "40", "smooth_speed_discontinuity_area": "1", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "5000", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.82", "sparse_infill_pattern": "gyroid", "sparse_infill_speed": "100", @@ -285,7 +285,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_loops": "2", "wall_sequence": "inner wall/outer wall", diff --git a/resources/profiles/Anycubic/process/0.20mm Standard @Anycubic Kobra Neo 0.4 nozzle.json b/resources/profiles/Anycubic/process/0.20mm Standard @Anycubic Kobra Neo 0.4 nozzle.json index 7214088457b..30d5c15c5e7 100644 --- a/resources/profiles/Anycubic/process/0.20mm Standard @Anycubic Kobra Neo 0.4 nozzle.json +++ b/resources/profiles/Anycubic/process/0.20mm Standard @Anycubic Kobra Neo 0.4 nozzle.json @@ -186,10 +186,10 @@ "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "crosshatch", "sparse_infill_speed": "150", @@ -256,7 +256,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_infill_order": "inner wall/outer wall/infill", "wall_loops": "2", diff --git a/resources/profiles/Anycubic/process/0.20mm Standard @Anycubic Kobra S1 0.4 nozzle.json b/resources/profiles/Anycubic/process/0.20mm Standard @Anycubic Kobra S1 0.4 nozzle.json index 22ad731b0dd..6549cf28e9e 100644 --- a/resources/profiles/Anycubic/process/0.20mm Standard @Anycubic Kobra S1 0.4 nozzle.json +++ b/resources/profiles/Anycubic/process/0.20mm Standard @Anycubic Kobra S1 0.4 nozzle.json @@ -186,10 +186,10 @@ "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "crosshatch", "sparse_infill_speed": "270", @@ -256,7 +256,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_loops": "2", "wall_sequence": "outer wall/inner wall", diff --git a/resources/profiles/Anycubic/process/0.20mm Standard @Anycubic Kobra X 0.4 nozzle.json b/resources/profiles/Anycubic/process/0.20mm Standard @Anycubic Kobra X 0.4 nozzle.json index bcb53b99ffd..db1ff50f64a 100644 --- a/resources/profiles/Anycubic/process/0.20mm Standard @Anycubic Kobra X 0.4 nozzle.json +++ b/resources/profiles/Anycubic/process/0.20mm Standard @Anycubic Kobra X 0.4 nozzle.json @@ -212,10 +212,10 @@ "smooth_coefficient": "40", "smooth_speed_discontinuity_area": "1", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "5000", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "grid", "sparse_infill_speed": "300", @@ -285,7 +285,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_loops": "2", "wall_sequence": "inner wall/outer wall", diff --git a/resources/profiles/Anycubic/process/0.24mm Draft @Anycubic Kobra 3 0.4 nozzle.json b/resources/profiles/Anycubic/process/0.24mm Draft @Anycubic Kobra 3 0.4 nozzle.json index 3b3e49c1d9b..971bd32318e 100644 --- a/resources/profiles/Anycubic/process/0.24mm Draft @Anycubic Kobra 3 0.4 nozzle.json +++ b/resources/profiles/Anycubic/process/0.24mm Draft @Anycubic Kobra 3 0.4 nozzle.json @@ -186,10 +186,10 @@ "small_perimeter_speed": "30%", "small_perimeter_threshold": "0", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "5000", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "crosshatch", "sparse_infill_speed": "200", @@ -256,7 +256,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_infill_order": "inner wall/outer wall/infill", "wall_loops": "2", diff --git a/resources/profiles/Anycubic/process/0.24mm Standard @Anycubic Kobra 3 Max 0.4 nozzle.json b/resources/profiles/Anycubic/process/0.24mm Standard @Anycubic Kobra 3 Max 0.4 nozzle.json index 830feea0d85..a2619bcd502 100644 --- a/resources/profiles/Anycubic/process/0.24mm Standard @Anycubic Kobra 3 Max 0.4 nozzle.json +++ b/resources/profiles/Anycubic/process/0.24mm Standard @Anycubic Kobra 3 Max 0.4 nozzle.json @@ -201,10 +201,10 @@ "smooth_coefficient": "40", "smooth_speed_discontinuity_area": "1", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "5000", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "gyroid", "sparse_infill_speed": "150", @@ -271,7 +271,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_infill_order": "inner wall/outer wall/infill", "wall_loops": "2", diff --git a/resources/profiles/Anycubic/process/0.24mm Standard @Anycubic Kobra 3 Max 0.6 nozzle.json b/resources/profiles/Anycubic/process/0.24mm Standard @Anycubic Kobra 3 Max 0.6 nozzle.json index 7ff1f6f784b..50c9dc9b2f4 100644 --- a/resources/profiles/Anycubic/process/0.24mm Standard @Anycubic Kobra 3 Max 0.6 nozzle.json +++ b/resources/profiles/Anycubic/process/0.24mm Standard @Anycubic Kobra 3 Max 0.6 nozzle.json @@ -212,10 +212,10 @@ "smooth_coefficient": "80", "smooth_speed_discontinuity_area": "1", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "5000", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.62", "sparse_infill_pattern": "gyroid", "sparse_infill_speed": "100", @@ -285,7 +285,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_loops": "2", "wall_sequence": "inner wall/outer wall", diff --git a/resources/profiles/Anycubic/process/0.24mm Standard @Anycubic Kobra 3 Max 0.8 nozzle.json b/resources/profiles/Anycubic/process/0.24mm Standard @Anycubic Kobra 3 Max 0.8 nozzle.json index f0c3dd070ae..ae710a38197 100644 --- a/resources/profiles/Anycubic/process/0.24mm Standard @Anycubic Kobra 3 Max 0.8 nozzle.json +++ b/resources/profiles/Anycubic/process/0.24mm Standard @Anycubic Kobra 3 Max 0.8 nozzle.json @@ -212,10 +212,10 @@ "smooth_coefficient": "40", "smooth_speed_discontinuity_area": "1", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "5000", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.82", "sparse_infill_pattern": "gyroid", "sparse_infill_speed": "100", @@ -285,7 +285,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_loops": "2", "wall_sequence": "inner wall/outer wall", diff --git a/resources/profiles/Anycubic/process/0.24mm Standard @Anycubic Kobra X 0.4 nozzle.json b/resources/profiles/Anycubic/process/0.24mm Standard @Anycubic Kobra X 0.4 nozzle.json index c6fd128b256..d10b3941c25 100644 --- a/resources/profiles/Anycubic/process/0.24mm Standard @Anycubic Kobra X 0.4 nozzle.json +++ b/resources/profiles/Anycubic/process/0.24mm Standard @Anycubic Kobra X 0.4 nozzle.json @@ -212,10 +212,10 @@ "smooth_coefficient": "40", "smooth_speed_discontinuity_area": "1", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "5000", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "grid", "sparse_infill_speed": "230", @@ -285,7 +285,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_loops": "2", "wall_sequence": "inner wall/outer wall", diff --git a/resources/profiles/Anycubic/process/0.28mm Draft @Anycubic Kobra 2 Pro 0.4 nozzle.json b/resources/profiles/Anycubic/process/0.28mm Draft @Anycubic Kobra 2 Pro 0.4 nozzle.json index cf6ce5f69be..2e0a0c68820 100644 --- a/resources/profiles/Anycubic/process/0.28mm Draft @Anycubic Kobra 2 Pro 0.4 nozzle.json +++ b/resources/profiles/Anycubic/process/0.28mm Draft @Anycubic Kobra 2 Pro 0.4 nozzle.json @@ -186,10 +186,10 @@ "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "crosshatch", "sparse_infill_speed": "120", @@ -256,7 +256,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_infill_order": "inner wall/outer wall/infill", "wall_loops": "2", diff --git a/resources/profiles/Anycubic/process/0.28mm Standard @Anycubic Kobra 2 Neo 0.4 nozzle.json b/resources/profiles/Anycubic/process/0.28mm Standard @Anycubic Kobra 2 Neo 0.4 nozzle.json index 73ea8f8696e..c97ba652f2e 100644 --- a/resources/profiles/Anycubic/process/0.28mm Standard @Anycubic Kobra 2 Neo 0.4 nozzle.json +++ b/resources/profiles/Anycubic/process/0.28mm Standard @Anycubic Kobra 2 Neo 0.4 nozzle.json @@ -186,10 +186,10 @@ "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "crosshatch", "sparse_infill_speed": "120", @@ -256,7 +256,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_infill_order": "inner wall/outer wall/infill", "wall_loops": "2", diff --git a/resources/profiles/Anycubic/process/0.28mm Standard @Anycubic Kobra 3 Max 0.4 nozzle.json b/resources/profiles/Anycubic/process/0.28mm Standard @Anycubic Kobra 3 Max 0.4 nozzle.json index f06f2da1234..e12f093307c 100644 --- a/resources/profiles/Anycubic/process/0.28mm Standard @Anycubic Kobra 3 Max 0.4 nozzle.json +++ b/resources/profiles/Anycubic/process/0.28mm Standard @Anycubic Kobra 3 Max 0.4 nozzle.json @@ -201,10 +201,10 @@ "smooth_coefficient": "40", "smooth_speed_discontinuity_area": "1", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "5000", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "gyroid", "sparse_infill_speed": "150", @@ -271,7 +271,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_infill_order": "inner wall/outer wall/infill", "wall_loops": "2", diff --git a/resources/profiles/Anycubic/process/0.28mm Standard @Anycubic Kobra Neo 0.4 nozzle.json b/resources/profiles/Anycubic/process/0.28mm Standard @Anycubic Kobra Neo 0.4 nozzle.json index 7b8d07e9385..d55474718aa 100644 --- a/resources/profiles/Anycubic/process/0.28mm Standard @Anycubic Kobra Neo 0.4 nozzle.json +++ b/resources/profiles/Anycubic/process/0.28mm Standard @Anycubic Kobra Neo 0.4 nozzle.json @@ -186,10 +186,10 @@ "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "crosshatch", "sparse_infill_speed": "120", @@ -256,7 +256,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_infill_order": "inner wall/outer wall/infill", "wall_loops": "2", diff --git a/resources/profiles/Anycubic/process/0.28mm Standard @Anycubic Kobra X 0.4 nozzle.json b/resources/profiles/Anycubic/process/0.28mm Standard @Anycubic Kobra X 0.4 nozzle.json index d28e2811c3b..8c7d078634b 100644 --- a/resources/profiles/Anycubic/process/0.28mm Standard @Anycubic Kobra X 0.4 nozzle.json +++ b/resources/profiles/Anycubic/process/0.28mm Standard @Anycubic Kobra X 0.4 nozzle.json @@ -212,10 +212,10 @@ "smooth_coefficient": "40", "smooth_speed_discontinuity_area": "1", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "5000", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "grid", "sparse_infill_speed": "200", @@ -285,7 +285,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_loops": "2", "wall_sequence": "inner wall/outer wall", diff --git a/resources/profiles/Anycubic/process/0.28mm SuperDraft @Anycubic Kobra 3 0.4 nozzle.json b/resources/profiles/Anycubic/process/0.28mm SuperDraft @Anycubic Kobra 3 0.4 nozzle.json index 723f2c83f84..7ad0b299572 100644 --- a/resources/profiles/Anycubic/process/0.28mm SuperDraft @Anycubic Kobra 3 0.4 nozzle.json +++ b/resources/profiles/Anycubic/process/0.28mm SuperDraft @Anycubic Kobra 3 0.4 nozzle.json @@ -186,10 +186,10 @@ "small_perimeter_speed": "30%", "small_perimeter_threshold": "0", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "5000", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "crosshatch", "sparse_infill_speed": "200", @@ -256,7 +256,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_infill_order": "inner wall/outer wall/infill", "wall_loops": "2", diff --git a/resources/profiles/Anycubic/process/0.30mm Standard @Anycubic Kobra 3 0.6 nozzle.json b/resources/profiles/Anycubic/process/0.30mm Standard @Anycubic Kobra 3 0.6 nozzle.json index 8a7b072cfce..1449960c945 100644 --- a/resources/profiles/Anycubic/process/0.30mm Standard @Anycubic Kobra 3 0.6 nozzle.json +++ b/resources/profiles/Anycubic/process/0.30mm Standard @Anycubic Kobra 3 0.6 nozzle.json @@ -186,10 +186,10 @@ "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "10000", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.62", "sparse_infill_pattern": "crosshatch", "sparse_infill_speed": "100", @@ -256,7 +256,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_infill_order": "inner wall/outer wall/infill", "wall_loops": "2", diff --git a/resources/profiles/Anycubic/process/0.30mm Standard @Anycubic Kobra 3 Max 0.6 nozzle.json b/resources/profiles/Anycubic/process/0.30mm Standard @Anycubic Kobra 3 Max 0.6 nozzle.json index 487055616a9..723e5f30a10 100644 --- a/resources/profiles/Anycubic/process/0.30mm Standard @Anycubic Kobra 3 Max 0.6 nozzle.json +++ b/resources/profiles/Anycubic/process/0.30mm Standard @Anycubic Kobra 3 Max 0.6 nozzle.json @@ -212,10 +212,10 @@ "smooth_coefficient": "80", "smooth_speed_discontinuity_area": "1", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "5000", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.62", "sparse_infill_pattern": "gyroid", "sparse_infill_speed": "100", @@ -285,7 +285,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_loops": "2", "wall_sequence": "inner wall/outer wall", diff --git a/resources/profiles/Anycubic/process/0.32mm Standard @Anycubic Kobra 3 Max 0.8 nozzle.json b/resources/profiles/Anycubic/process/0.32mm Standard @Anycubic Kobra 3 Max 0.8 nozzle.json index d17364e6151..d938dcf6e96 100644 --- a/resources/profiles/Anycubic/process/0.32mm Standard @Anycubic Kobra 3 Max 0.8 nozzle.json +++ b/resources/profiles/Anycubic/process/0.32mm Standard @Anycubic Kobra 3 Max 0.8 nozzle.json @@ -212,10 +212,10 @@ "smooth_coefficient": "40", "smooth_speed_discontinuity_area": "1", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "5000", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.82", "sparse_infill_pattern": "gyroid", "sparse_infill_speed": "100", @@ -285,7 +285,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_loops": "2", "wall_sequence": "inner wall/outer wall", diff --git a/resources/profiles/Anycubic/process/0.36mm Standard @Anycubic Kobra 3 Max 0.6 nozzle.json b/resources/profiles/Anycubic/process/0.36mm Standard @Anycubic Kobra 3 Max 0.6 nozzle.json index d695267163a..ee64ec6c4e2 100644 --- a/resources/profiles/Anycubic/process/0.36mm Standard @Anycubic Kobra 3 Max 0.6 nozzle.json +++ b/resources/profiles/Anycubic/process/0.36mm Standard @Anycubic Kobra 3 Max 0.6 nozzle.json @@ -212,10 +212,10 @@ "smooth_coefficient": "80", "smooth_speed_discontinuity_area": "1", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "5000", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.62", "sparse_infill_pattern": "gyroid", "sparse_infill_speed": "100", @@ -285,7 +285,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_loops": "2", "wall_sequence": "inner wall/outer wall", diff --git a/resources/profiles/Anycubic/process/0.40mm Standard @Anycubic Kobra 3 0.8 nozzle.json b/resources/profiles/Anycubic/process/0.40mm Standard @Anycubic Kobra 3 0.8 nozzle.json index 413a8a58cdb..d8a97a358e8 100644 --- a/resources/profiles/Anycubic/process/0.40mm Standard @Anycubic Kobra 3 0.8 nozzle.json +++ b/resources/profiles/Anycubic/process/0.40mm Standard @Anycubic Kobra 3 0.8 nozzle.json @@ -186,10 +186,10 @@ "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "5000", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.82", "sparse_infill_pattern": "crosshatch", "sparse_infill_speed": "100", @@ -256,7 +256,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_infill_order": "inner wall/outer wall/infill", "wall_loops": "2", diff --git a/resources/profiles/Anycubic/process/0.40mm Standard @Anycubic Kobra 3 Max 0.8 nozzle.json b/resources/profiles/Anycubic/process/0.40mm Standard @Anycubic Kobra 3 Max 0.8 nozzle.json index 13bb50eb8cc..716512b2d9b 100644 --- a/resources/profiles/Anycubic/process/0.40mm Standard @Anycubic Kobra 3 Max 0.8 nozzle.json +++ b/resources/profiles/Anycubic/process/0.40mm Standard @Anycubic Kobra 3 Max 0.8 nozzle.json @@ -212,10 +212,10 @@ "smooth_coefficient": "40", "smooth_speed_discontinuity_area": "1", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "5000", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.82", "sparse_infill_pattern": "gyroid", "sparse_infill_speed": "100", @@ -285,7 +285,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_loops": "2", "wall_sequence": "inner wall/outer wall", diff --git a/resources/profiles/Anycubic/process/0.42mm Standard @Anycubic Kobra 3 Max 0.6 nozzle.json b/resources/profiles/Anycubic/process/0.42mm Standard @Anycubic Kobra 3 Max 0.6 nozzle.json index 959de1ec009..96480e7a255 100644 --- a/resources/profiles/Anycubic/process/0.42mm Standard @Anycubic Kobra 3 Max 0.6 nozzle.json +++ b/resources/profiles/Anycubic/process/0.42mm Standard @Anycubic Kobra 3 Max 0.6 nozzle.json @@ -212,10 +212,10 @@ "smooth_coefficient": "80", "smooth_speed_discontinuity_area": "1", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "5000", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.62", "sparse_infill_pattern": "gyroid", "sparse_infill_speed": "100", @@ -285,7 +285,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_loops": "2", "wall_sequence": "inner wall/outer wall", diff --git a/resources/profiles/Anycubic/process/0.48mm Standard @Anycubic Kobra 3 Max 0.8 nozzle.json b/resources/profiles/Anycubic/process/0.48mm Standard @Anycubic Kobra 3 Max 0.8 nozzle.json index 3ecfc72bd82..72faf5285f6 100644 --- a/resources/profiles/Anycubic/process/0.48mm Standard @Anycubic Kobra 3 Max 0.8 nozzle.json +++ b/resources/profiles/Anycubic/process/0.48mm Standard @Anycubic Kobra 3 Max 0.8 nozzle.json @@ -212,10 +212,10 @@ "smooth_coefficient": "40", "smooth_speed_discontinuity_area": "1", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "5000", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.82", "sparse_infill_pattern": "gyroid", "sparse_infill_speed": "100", @@ -285,7 +285,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_loops": "2", "wall_sequence": "inner wall/outer wall", diff --git a/resources/profiles/Artillery/process/0.08mm Extra Fine @Artillery M1 Pro 0.4 nozzle.json b/resources/profiles/Artillery/process/0.08mm Extra Fine @Artillery M1 Pro 0.4 nozzle.json index 34f24cc3e02..93b8613da9d 100644 --- a/resources/profiles/Artillery/process/0.08mm Extra Fine @Artillery M1 Pro 0.4 nozzle.json +++ b/resources/profiles/Artillery/process/0.08mm Extra Fine @Artillery M1 Pro 0.4 nozzle.json @@ -190,10 +190,10 @@ ], "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "grid", "sparse_infill_speed": "450", @@ -251,7 +251,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_loops": "2", "wall_sequence": "inner wall/outer wall", "wall_transition_angle": "10", diff --git a/resources/profiles/Artillery/process/0.08mm High Quality @Artillery M1 Pro 0.2 nozzle.json b/resources/profiles/Artillery/process/0.08mm High Quality @Artillery M1 Pro 0.2 nozzle.json index aeb145fbaab..5123de081ad 100644 --- a/resources/profiles/Artillery/process/0.08mm High Quality @Artillery M1 Pro 0.2 nozzle.json +++ b/resources/profiles/Artillery/process/0.08mm High Quality @Artillery M1 Pro 0.2 nozzle.json @@ -195,10 +195,10 @@ "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.22", "sparse_infill_pattern": "gyroid", "sparse_infill_speed": "100", @@ -265,7 +265,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_loops": "4", "wall_sequence": "inner wall/outer wall", diff --git a/resources/profiles/Artillery/process/0.08mm High Quality @Artillery M1 Pro 0.4 nozzle.json b/resources/profiles/Artillery/process/0.08mm High Quality @Artillery M1 Pro 0.4 nozzle.json index e2d58ef8f05..0d896ca2beb 100644 --- a/resources/profiles/Artillery/process/0.08mm High Quality @Artillery M1 Pro 0.4 nozzle.json +++ b/resources/profiles/Artillery/process/0.08mm High Quality @Artillery M1 Pro 0.4 nozzle.json @@ -186,10 +186,10 @@ ], "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "gyroid", "spiral_mode": "0", @@ -250,7 +250,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "arachne", "wall_loops": "2", "wall_sequence": "inner wall/outer wall", diff --git a/resources/profiles/Artillery/process/0.12mm Fine @Artillery M1 Pro 0.4 nozzle.json b/resources/profiles/Artillery/process/0.12mm Fine @Artillery M1 Pro 0.4 nozzle.json index f22b2166683..245473f07ce 100644 --- a/resources/profiles/Artillery/process/0.12mm Fine @Artillery M1 Pro 0.4 nozzle.json +++ b/resources/profiles/Artillery/process/0.12mm Fine @Artillery M1 Pro 0.4 nozzle.json @@ -188,10 +188,10 @@ ], "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "grid", "spiral_mode": "0", @@ -250,7 +250,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "arachne", "wall_loops": "2", "wall_sequence": "inner wall/outer wall", diff --git a/resources/profiles/Artillery/process/0.12mm High Quality @Artillery M1 Pro 0.4 nozzle.json b/resources/profiles/Artillery/process/0.12mm High Quality @Artillery M1 Pro 0.4 nozzle.json index 1acf0b71484..bdf9bdf87d8 100644 --- a/resources/profiles/Artillery/process/0.12mm High Quality @Artillery M1 Pro 0.4 nozzle.json +++ b/resources/profiles/Artillery/process/0.12mm High Quality @Artillery M1 Pro 0.4 nozzle.json @@ -187,10 +187,10 @@ ], "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "gyroid", "spiral_mode": "0", @@ -250,7 +250,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "arachne", "wall_loops": "2", "wall_sequence": "inner wall/outer wall", diff --git a/resources/profiles/Artillery/process/0.16mm High Quality @Artillery M1 Pro 0.4 nozzle.json b/resources/profiles/Artillery/process/0.16mm High Quality @Artillery M1 Pro 0.4 nozzle.json index dbd94daa3ec..4fe81c286d6 100644 --- a/resources/profiles/Artillery/process/0.16mm High Quality @Artillery M1 Pro 0.4 nozzle.json +++ b/resources/profiles/Artillery/process/0.16mm High Quality @Artillery M1 Pro 0.4 nozzle.json @@ -188,10 +188,10 @@ ], "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "grid", "spiral_mode": "0", @@ -250,7 +250,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "arachne", "wall_loops": "2", "wall_sequence": "inner wall/outer wall", diff --git a/resources/profiles/Artillery/process/0.16mm Optimal @Artillery M1 Pro 0.4 nozzle.json b/resources/profiles/Artillery/process/0.16mm Optimal @Artillery M1 Pro 0.4 nozzle.json index 1158be81a00..03c9cadaccf 100644 --- a/resources/profiles/Artillery/process/0.16mm Optimal @Artillery M1 Pro 0.4 nozzle.json +++ b/resources/profiles/Artillery/process/0.16mm Optimal @Artillery M1 Pro 0.4 nozzle.json @@ -191,10 +191,10 @@ ], "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "grid", "spiral_mode": "0", @@ -250,7 +250,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "arachne", "wall_loops": "2", "wall_sequence": "inner wall/outer wall", diff --git a/resources/profiles/Artillery/process/0.20mm Standard @Artillery M1 Pro 0.4 nozzle.json b/resources/profiles/Artillery/process/0.20mm Standard @Artillery M1 Pro 0.4 nozzle.json index e1cd9210ef3..dadf30880e3 100644 --- a/resources/profiles/Artillery/process/0.20mm Standard @Artillery M1 Pro 0.4 nozzle.json +++ b/resources/profiles/Artillery/process/0.20mm Standard @Artillery M1 Pro 0.4 nozzle.json @@ -192,10 +192,10 @@ ], "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "grid", "sparse_infill_speed": "270", @@ -251,7 +251,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_loops": "2", "wall_sequence": "inner wall/outer wall", "wall_transition_angle": "10", diff --git a/resources/profiles/Artillery/process/0.20mm Standard @Artillery X3Plus 0.4 nozzle.json b/resources/profiles/Artillery/process/0.20mm Standard @Artillery X3Plus 0.4 nozzle.json index d3e75d58831..3acd94ae929 100644 --- a/resources/profiles/Artillery/process/0.20mm Standard @Artillery X3Plus 0.4 nozzle.json +++ b/resources/profiles/Artillery/process/0.20mm Standard @Artillery X3Plus 0.4 nozzle.json @@ -181,10 +181,10 @@ ], "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "crosshatch", "sparse_infill_speed": "150", @@ -250,7 +250,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "arachne", "wall_loops": "3", "wall_sequence": "inner wall/outer wall", diff --git a/resources/profiles/Artillery/process/0.20mm Standard @Artillery X3Pro 0.4 nozzle.json b/resources/profiles/Artillery/process/0.20mm Standard @Artillery X3Pro 0.4 nozzle.json index 176634f5533..83760ac0f50 100644 --- a/resources/profiles/Artillery/process/0.20mm Standard @Artillery X3Pro 0.4 nozzle.json +++ b/resources/profiles/Artillery/process/0.20mm Standard @Artillery X3Pro 0.4 nozzle.json @@ -181,10 +181,10 @@ ], "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "crosshatch", "sparse_infill_speed": "150", @@ -250,7 +250,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "arachne", "wall_loops": "3", "wall_sequence": "outer wall/inner wall", diff --git a/resources/profiles/Artillery/process/0.20mm Standard @Artillery X4Plus 0.4 nozzle.json b/resources/profiles/Artillery/process/0.20mm Standard @Artillery X4Plus 0.4 nozzle.json index 0cf77f1a886..8268b4c6841 100644 --- a/resources/profiles/Artillery/process/0.20mm Standard @Artillery X4Plus 0.4 nozzle.json +++ b/resources/profiles/Artillery/process/0.20mm Standard @Artillery X4Plus 0.4 nozzle.json @@ -181,10 +181,10 @@ ], "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "crosshatch", "sparse_infill_speed": "200", @@ -250,7 +250,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "arachne", "wall_loops": "2", "wall_sequence": "inner wall/outer wall", diff --git a/resources/profiles/Artillery/process/0.20mm Standard @Artillery X4Pro 0.4 nozzle.json b/resources/profiles/Artillery/process/0.20mm Standard @Artillery X4Pro 0.4 nozzle.json index e3f2a268977..2b46ef8cc0e 100644 --- a/resources/profiles/Artillery/process/0.20mm Standard @Artillery X4Pro 0.4 nozzle.json +++ b/resources/profiles/Artillery/process/0.20mm Standard @Artillery X4Pro 0.4 nozzle.json @@ -181,10 +181,10 @@ ], "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "crosshatch", "sparse_infill_speed": "200", @@ -250,7 +250,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "arachne", "wall_loops": "2", "wall_sequence": "inner wall/outer wall", diff --git a/resources/profiles/Artillery/process/0.20mm Strength @Artillery M1 Pro 0.4 nozzle.json b/resources/profiles/Artillery/process/0.20mm Strength @Artillery M1 Pro 0.4 nozzle.json index c5e99700268..d49c0d1cc42 100644 --- a/resources/profiles/Artillery/process/0.20mm Strength @Artillery M1 Pro 0.4 nozzle.json +++ b/resources/profiles/Artillery/process/0.20mm Strength @Artillery M1 Pro 0.4 nozzle.json @@ -189,10 +189,10 @@ ], "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "25%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "grid", "sparse_infill_speed": "270", @@ -251,7 +251,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "arachne", "wall_sequence": "inner wall/outer wall", "wall_transition_angle": "10", diff --git a/resources/profiles/Artillery/process/0.24mm Draft @Artillery M1 Pro 0.4 nozzle.json b/resources/profiles/Artillery/process/0.24mm Draft @Artillery M1 Pro 0.4 nozzle.json index f85a831c92c..15f13e26b3c 100644 --- a/resources/profiles/Artillery/process/0.24mm Draft @Artillery M1 Pro 0.4 nozzle.json +++ b/resources/profiles/Artillery/process/0.24mm Draft @Artillery M1 Pro 0.4 nozzle.json @@ -186,10 +186,10 @@ ], "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "grid", "sparse_infill_speed": "230", @@ -250,7 +250,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "arachne", "wall_loops": "2", "wall_sequence": "inner wall/outer wall", diff --git a/resources/profiles/Artillery/process/0.24mm Draft @Artillery M1 Pro 0.6 nozzle.json b/resources/profiles/Artillery/process/0.24mm Draft @Artillery M1 Pro 0.6 nozzle.json index f328383dc32..16d057d8816 100644 --- a/resources/profiles/Artillery/process/0.24mm Draft @Artillery M1 Pro 0.6 nozzle.json +++ b/resources/profiles/Artillery/process/0.24mm Draft @Artillery M1 Pro 0.6 nozzle.json @@ -195,10 +195,10 @@ "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.62", "sparse_infill_pattern": "grid", "sparse_infill_speed": "100", @@ -265,7 +265,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_loops": "2", "wall_sequence": "inner wall/outer wall", diff --git a/resources/profiles/Artillery/process/0.24mm Draft @Artillery M1 Pro 0.8 nozzle.json b/resources/profiles/Artillery/process/0.24mm Draft @Artillery M1 Pro 0.8 nozzle.json index 01c1f25f8e7..ce4ad735400 100644 --- a/resources/profiles/Artillery/process/0.24mm Draft @Artillery M1 Pro 0.8 nozzle.json +++ b/resources/profiles/Artillery/process/0.24mm Draft @Artillery M1 Pro 0.8 nozzle.json @@ -195,10 +195,10 @@ "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.82", "sparse_infill_pattern": "grid", "sparse_infill_speed": "100", @@ -265,7 +265,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "arachne", "wall_loops": "2", "wall_sequence": "inner wall/outer wall", diff --git a/resources/profiles/Artillery/process/0.28mm Extra Draft @Artillery M1 Pro 0.4 nozzle.json b/resources/profiles/Artillery/process/0.28mm Extra Draft @Artillery M1 Pro 0.4 nozzle.json index f9ced6355a4..dcb8998cf6b 100644 --- a/resources/profiles/Artillery/process/0.28mm Extra Draft @Artillery M1 Pro 0.4 nozzle.json +++ b/resources/profiles/Artillery/process/0.28mm Extra Draft @Artillery M1 Pro 0.4 nozzle.json @@ -188,10 +188,10 @@ ], "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "grid", "sparse_infill_speed": "200", @@ -250,7 +250,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "arachne", "wall_loops": "2", "wall_sequence": "inner wall/outer wall", diff --git a/resources/profiles/BBL.json b/resources/profiles/BBL.json index d110bda4b26..f24d6d8caf5 100644 --- a/resources/profiles/BBL.json +++ b/resources/profiles/BBL.json @@ -243,6 +243,10 @@ "name": "0.08mm Extra Fine @BBL H2DP 0.2 nozzle", "sub_path": "process/0.08mm Extra Fine @BBL H2DP 0.2 nozzle.json" }, + { + "name": "0.08mm High Quality @BBL X2D 0.2 nozzle", + "sub_path": "process/0.08mm High Quality @BBL X2D 0.2 nozzle.json" + }, { "name": "0.08mm Extra Fine @BBL H2D", "sub_path": "process/0.08mm Extra Fine @BBL H2D.json" @@ -251,6 +255,10 @@ "name": "0.08mm Extra Fine @BBL H2DP", "sub_path": "process/0.08mm Extra Fine @BBL H2DP.json" }, + { + "name": "0.08mm High Quality @BBL X2D", + "sub_path": "process/0.08mm High Quality @BBL X2D.json" + }, { "name": "0.10mm Standard @BBL H2D 0.2 nozzle", "sub_path": "process/0.10mm Standard @BBL H2D 0.2 nozzle.json" @@ -259,6 +267,10 @@ "name": "0.10mm Standard @BBL H2DP 0.2 nozzle", "sub_path": "process/0.10mm Standard @BBL H2DP 0.2 nozzle.json" }, + { + "name": "0.10mm Standard @BBL X2D 0.2 nozzle", + "sub_path": "process/0.10mm Standard @BBL X2D 0.2 nozzle.json" + }, { "name": "0.12mm Balanced Quality @BBL H2D 0.2 nozzle", "sub_path": "process/0.12mm Balanced Quality @BBL H2D 0.2 nozzle.json" @@ -267,6 +279,10 @@ "name": "0.12mm Balanced Quality @BBL H2DP 0.2 nozzle", "sub_path": "process/0.12mm Balanced Quality @BBL H2DP 0.2 nozzle.json" }, + { + "name": "0.12mm Balanced Quality @BBL X2D 0.2 nozzle", + "sub_path": "process/0.12mm Balanced Quality @BBL X2D 0.2 nozzle.json" + }, { "name": "0.12mm Fine @BBL H2D", "sub_path": "process/0.12mm Fine @BBL H2D.json" @@ -275,6 +291,10 @@ "name": "0.12mm Fine @BBL H2DP", "sub_path": "process/0.12mm Fine @BBL H2DP.json" }, + { + "name": "0.12mm High Quality @BBL X2D", + "sub_path": "process/0.12mm High Quality @BBL X2D.json" + }, { "name": "0.16mm Balanced Quality @BBL H2D", "sub_path": "process/0.16mm Balanced Quality @BBL H2D.json" @@ -283,6 +303,10 @@ "name": "0.16mm Balanced Quality @BBL H2DP", "sub_path": "process/0.16mm Balanced Quality @BBL H2DP.json" }, + { + "name": "0.16mm High Quality @BBL X2D", + "sub_path": "process/0.16mm High Quality @BBL X2D.json" + }, { "name": "0.16mm Standard @BBL H2D", "sub_path": "process/0.16mm Standard @BBL H2D.json" @@ -291,6 +315,10 @@ "name": "0.16mm Standard @BBL H2DP", "sub_path": "process/0.16mm Standard @BBL H2DP.json" }, + { + "name": "0.16mm Standard @BBL X2D", + "sub_path": "process/0.16mm Standard @BBL X2D.json" + }, { "name": "0.18mm Balanced Quality @BBL H2D 0.6 nozzle", "sub_path": "process/0.18mm Balanced Quality @BBL H2D 0.6 nozzle.json" @@ -299,6 +327,10 @@ "name": "0.18mm Balanced Quality @BBL H2DP 0.6 nozzle", "sub_path": "process/0.18mm Balanced Quality @BBL H2DP 0.6 nozzle.json" }, + { + "name": "0.18mm Balanced Quality @BBL X2D 0.6 nozzle", + "sub_path": "process/0.18mm Balanced Quality @BBL X2D 0.6 nozzle.json" + }, { "name": "0.20mm Balanced Strength @BBL H2D", "sub_path": "process/0.20mm Balanced Strength @BBL H2D.json" @@ -307,6 +339,10 @@ "name": "0.20mm Balanced Strength @BBL H2DP", "sub_path": "process/0.20mm Balanced Strength @BBL H2DP.json" }, + { + "name": "0.20mm High Quality @BBL X2D", + "sub_path": "process/0.20mm High Quality @BBL X2D.json" + }, { "name": "0.20mm Standard @BBL H2D", "sub_path": "process/0.20mm Standard @BBL H2D.json" @@ -315,6 +351,10 @@ "name": "0.20mm Standard @BBL H2DP", "sub_path": "process/0.20mm Standard @BBL H2DP.json" }, + { + "name": "0.20mm Standard @BBL X2D", + "sub_path": "process/0.20mm Standard @BBL X2D.json" + }, { "name": "0.24mm Standard @BBL H2D", "sub_path": "process/0.24mm Standard @BBL H2D.json" @@ -323,6 +363,14 @@ "name": "0.24mm Standard @BBL H2DP", "sub_path": "process/0.24mm Standard @BBL H2DP.json" }, + { + "name": "0.24mm Standard @BBL X2D", + "sub_path": "process/0.24mm Standard @BBL X2D.json" + }, + { + "name": "0.24mm Balanced Quality @BBL X2D 0.6 nozzle", + "sub_path": "process/0.24mm Balanced Quality @BBL X2D 0.6 nozzle.json" + }, { "name": "0.24mm Balanced Strength @BBL H2D 0.6 nozzle", "sub_path": "process/0.24mm Balanced Strength @BBL H2D 0.6 nozzle.json" @@ -339,6 +387,10 @@ "name": "0.24mm Balanced Quality @BBL H2DP 0.8 nozzle", "sub_path": "process/0.24mm Balanced Quality @BBL H2DP 0.8 nozzle.json" }, + { + "name": "0.24mm Balanced Quality @BBL X2D 0.8 nozzle", + "sub_path": "process/0.24mm Balanced Quality @BBL X2D 0.8 nozzle.json" + }, { "name": "0.30mm Standard @BBL H2D 0.6 nozzle", "sub_path": "process/0.30mm Standard @BBL H2D 0.6 nozzle.json" @@ -347,6 +399,14 @@ "name": "0.30mm Standard @BBL H2DP 0.6 nozzle", "sub_path": "process/0.30mm Standard @BBL H2DP 0.6 nozzle.json" }, + { + "name": "0.30mm Standard @BBL X2D 0.6 nozzle", + "sub_path": "process/0.30mm Standard @BBL X2D 0.6 nozzle.json" + }, + { + "name": "0.32mm Balanced Quality @BBL X2D 0.8 nozzle", + "sub_path": "process/0.32mm Balanced Quality @BBL X2D 0.8 nozzle.json" + }, { "name": "0.32mm Balanced Strength @BBL H2D 0.8 nozzle", "sub_path": "process/0.32mm Balanced Strength @BBL H2D 0.8 nozzle.json" @@ -363,6 +423,10 @@ "name": "0.40mm Standard @BBL H2DP 0.8 nozzle", "sub_path": "process/0.40mm Standard @BBL H2DP 0.8 nozzle.json" }, + { + "name": "0.40mm Standard @BBL X2D 0.8 nozzle", + "sub_path": "process/0.40mm Standard @BBL X2D 0.8 nozzle.json" + }, { "name": "0.06mm Fine @BBL A1 0.2 nozzle", "sub_path": "process/0.06mm Fine @BBL A1 0.2 nozzle.json" @@ -962,70 +1026,6 @@ { "name": "0.56mm Standard @BBL X1C 0.8 nozzle", "sub_path": "process/0.56mm Standard @BBL X1C 0.8 nozzle.json" - }, - { - "name": "0.08mm High Quality @BBL X2D 0.2 nozzle", - "sub_path": "process/0.08mm High Quality @BBL X2D 0.2 nozzle.json" - }, - { - "name": "0.08mm High Quality @BBL X2D", - "sub_path": "process/0.08mm High Quality @BBL X2D.json" - }, - { - "name": "0.10mm Standard @BBL X2D 0.2 nozzle", - "sub_path": "process/0.10mm Standard @BBL X2D 0.2 nozzle.json" - }, - { - "name": "0.12mm Balanced Quality @BBL X2D 0.2 nozzle", - "sub_path": "process/0.12mm Balanced Quality @BBL X2D 0.2 nozzle.json" - }, - { - "name": "0.12mm High Quality @BBL X2D", - "sub_path": "process/0.12mm High Quality @BBL X2D.json" - }, - { - "name": "0.16mm High Quality @BBL X2D", - "sub_path": "process/0.16mm High Quality @BBL X2D.json" - }, - { - "name": "0.16mm Standard @BBL X2D", - "sub_path": "process/0.16mm Standard @BBL X2D.json" - }, - { - "name": "0.18mm Balanced Quality @BBL X2D 0.6 nozzle", - "sub_path": "process/0.18mm Balanced Quality @BBL X2D 0.6 nozzle.json" - }, - { - "name": "0.20mm High Quality @BBL X2D", - "sub_path": "process/0.20mm High Quality @BBL X2D.json" - }, - { - "name": "0.20mm Standard @BBL X2D", - "sub_path": "process/0.20mm Standard @BBL X2D.json" - }, - { - "name": "0.24mm Standard @BBL X2D", - "sub_path": "process/0.24mm Standard @BBL X2D.json" - }, - { - "name": "0.24mm Balanced Quality @BBL X2D 0.6 nozzle", - "sub_path": "process/0.24mm Balanced Quality @BBL X2D 0.6 nozzle.json" - }, - { - "name": "0.24mm Balanced Quality @BBL X2D 0.8 nozzle", - "sub_path": "process/0.24mm Balanced Quality @BBL X2D 0.8 nozzle.json" - }, - { - "name": "0.30mm Standard @BBL X2D 0.6 nozzle", - "sub_path": "process/0.30mm Standard @BBL X2D 0.6 nozzle.json" - }, - { - "name": "0.32mm Balanced Quality @BBL X2D 0.8 nozzle", - "sub_path": "process/0.32mm Balanced Quality @BBL X2D 0.8 nozzle.json" - }, - { - "name": "0.40mm Standard @BBL X2D 0.8 nozzle", - "sub_path": "process/0.40mm Standard @BBL X2D 0.8 nozzle.json" } ], "filament_list": [ @@ -1197,6 +1197,10 @@ "name": "FusRock ABS-GF @BBL X1C", "sub_path": "filament/FusRock/FusRock ABS-GF @BBL X1C.json" }, + { + "name": "BETA ABS @base", + "sub_path": "filament/BETA/BETA ABS @base.json" + }, { "name": "Bambu ABS @base", "sub_path": "filament/Bambu ABS @base.json" @@ -1217,6 +1221,10 @@ "name": "PolyLite ABS @base", "sub_path": "filament/Polymaker/PolyLite ABS @base.json" }, + { + "name": "BETA ASA @base", + "sub_path": "filament/BETA/BETA ASA @base.json" + }, { "name": "Bambu ASA @base", "sub_path": "filament/Bambu ASA @base.json" @@ -1245,10 +1253,18 @@ "name": "Generic EVA @base", "sub_path": "filament/Generic EVA @base.json" }, + { + "name": "BETA HIPS @base", + "sub_path": "filament/BETA/BETA HIPS @base.json" + }, { "name": "Generic HIPS @base", "sub_path": "filament/Generic HIPS @base.json" }, + { + "name": "BETA PAHT-CF @base", + "sub_path": "filament/BETA/BETA PAHT-CF @base.json" + }, { "name": "Bambu PA-CF @base", "sub_path": "filament/Bambu PA-CF @base.json" @@ -1277,18 +1293,34 @@ "name": "Fiberon PA12-CF @base", "sub_path": "filament/Polymaker/Fiberon PA12-CF @base.json" }, + { + "name": "Fiberon PA12-CF10 @base", + "sub_path": "filament/Polymaker/Fiberon PA12-CF10 @base.json" + }, { "name": "Fiberon PA6-CF @base", "sub_path": "filament/Polymaker/Fiberon PA6-CF @base.json" }, + { + "name": "Fiberon PA6-CF20 @base", + "sub_path": "filament/Polymaker/Fiberon PA6-CF20 @base.json" + }, { "name": "Fiberon PA6-GF @base", "sub_path": "filament/Polymaker/Fiberon PA6-GF @base.json" }, + { + "name": "Fiberon PA6-GF25 @base", + "sub_path": "filament/Polymaker/Fiberon PA6-GF25 @base.json" + }, { "name": "Fiberon PA612-CF @base", "sub_path": "filament/Polymaker/Fiberon PA612-CF @base.json" }, + { + "name": "Fiberon PA612-CF15 @base", + "sub_path": "filament/Polymaker/Fiberon PA612-CF15 @base.json" + }, { "name": "Generic PA @base", "sub_path": "filament/Generic PA @base.json" @@ -1321,6 +1353,62 @@ "name": "Generic PE-CF @base", "sub_path": "filament/Generic PE-CF @base.json" }, + { + "name": "BETA PETG @base", + "sub_path": "filament/BETA/BETA PETG @base.json" + }, + { + "name": "BETA PETG Fluorescence @base", + "sub_path": "filament/BETA/BETA PETG Fluorescence @base.json" + }, + { + "name": "BETA PETG Glitter @base", + "sub_path": "filament/BETA/BETA PETG Glitter @base.json" + }, + { + "name": "BETA PETG Glow @base", + "sub_path": "filament/BETA/BETA PETG Glow @base.json" + }, + { + "name": "BETA PETG Gradient @base", + "sub_path": "filament/BETA/BETA PETG Gradient @base.json" + }, + { + "name": "BETA PETG HF @base", + "sub_path": "filament/BETA/BETA PETG HF @base.json" + }, + { + "name": "BETA PETG Heat Color Change @base", + "sub_path": "filament/BETA/BETA PETG Heat Color Change @base.json" + }, + { + "name": "BETA PETG Marble @base", + "sub_path": "filament/BETA/BETA PETG Marble @base.json" + }, + { + "name": "BETA PETG Matte @base", + "sub_path": "filament/BETA/BETA PETG Matte @base.json" + }, + { + "name": "BETA PETG Metallic @base", + "sub_path": "filament/BETA/BETA PETG Metallic @base.json" + }, + { + "name": "BETA PETG Transparent @base", + "sub_path": "filament/BETA/BETA PETG Transparent @base.json" + }, + { + "name": "BETA PETG UV Color Change @base", + "sub_path": "filament/BETA/BETA PETG UV Color Change @base.json" + }, + { + "name": "BETA PETG-CF @base", + "sub_path": "filament/BETA/BETA PETG-CF @base.json" + }, + { + "name": "BETA PETG-GF @base", + "sub_path": "filament/BETA/BETA PETG-GF @base.json" + }, { "name": "Bambu PET-CF @base", "sub_path": "filament/Bambu PET-CF @base.json" @@ -1345,6 +1433,10 @@ "name": "Fiberon PET-CF @base", "sub_path": "filament/Polymaker/Fiberon PET-CF @base.json" }, + { + "name": "Fiberon PET-CF17 @base", + "sub_path": "filament/Polymaker/Fiberon PET-CF17 @base.json" + }, { "name": "Fiberon PETG-ESD @base", "sub_path": "filament/Polymaker/Fiberon PETG-ESD @base.json" @@ -1353,6 +1445,10 @@ "name": "Fiberon PETG-rCF @base", "sub_path": "filament/Polymaker/Fiberon PETG-rCF @base.json" }, + { + "name": "Fiberon PETG-rCF08 @base", + "sub_path": "filament/Polymaker/Fiberon PETG-rCF08 @base.json" + }, { "name": "Generic PETG @base", "sub_path": "filament/Generic PETG @base.json" @@ -1377,6 +1473,90 @@ "name": "Generic PHA @base", "sub_path": "filament/Generic PHA @base.json" }, + { + "name": "BETA PLA Basic @base", + "sub_path": "filament/BETA/BETA PLA Basic @base.json" + }, + { + "name": "BETA PLA Chameleon @base", + "sub_path": "filament/BETA/BETA PLA Chameleon @base.json" + }, + { + "name": "BETA PLA Fluorescence @base", + "sub_path": "filament/BETA/BETA PLA Fluorescence @base.json" + }, + { + "name": "BETA PLA Glitter @base", + "sub_path": "filament/BETA/BETA PLA Glitter @base.json" + }, + { + "name": "BETA PLA Glow @base", + "sub_path": "filament/BETA/BETA PLA Glow @base.json" + }, + { + "name": "BETA PLA Gradient @base", + "sub_path": "filament/BETA/BETA PLA Gradient @base.json" + }, + { + "name": "BETA PLA Heat Color Change @base", + "sub_path": "filament/BETA/BETA PLA Heat Color Change @base.json" + }, + { + "name": "BETA PLA High Speed @base", + "sub_path": "filament/BETA/BETA PLA High Speed @base.json" + }, + { + "name": "BETA PLA High Temp @base", + "sub_path": "filament/BETA/BETA PLA High Temp @base.json" + }, + { + "name": "BETA PLA Marble @base", + "sub_path": "filament/BETA/BETA PLA Marble @base.json" + }, + { + "name": "BETA PLA Matte @base", + "sub_path": "filament/BETA/BETA PLA Matte @base.json" + }, + { + "name": "BETA PLA Metal @base", + "sub_path": "filament/BETA/BETA PLA Metal @base.json" + }, + { + "name": "BETA PLA Metallic @base", + "sub_path": "filament/BETA/BETA PLA Metallic @base.json" + }, + { + "name": "BETA PLA PRO @base", + "sub_path": "filament/BETA/BETA PLA PRO @base.json" + }, + { + "name": "BETA PLA Silk @base", + "sub_path": "filament/BETA/BETA PLA Silk @base.json" + }, + { + "name": "BETA PLA Silk+ @base", + "sub_path": "filament/BETA/BETA PLA Silk+ @base.json" + }, + { + "name": "BETA PLA Transparent @base", + "sub_path": "filament/BETA/BETA PLA Transparent @base.json" + }, + { + "name": "BETA PLA UV Color Change @base", + "sub_path": "filament/BETA/BETA PLA UV Color Change @base.json" + }, + { + "name": "BETA PLA Wood @base", + "sub_path": "filament/BETA/BETA PLA Wood @base.json" + }, + { + "name": "BETA PLA Youth @base", + "sub_path": "filament/BETA/BETA PLA Youth @base.json" + }, + { + "name": "BETA PLA-CF @base", + "sub_path": "filament/BETA/BETA PLA-CF @base.json" + }, { "name": "Bambu PLA Aero @base", "sub_path": "filament/Bambu PLA Aero @base.json" @@ -1553,18 +1733,54 @@ "name": "Panchroma PLA UV Shift @base", "sub_path": "filament/Polymaker/Panchroma PLA UV Shift @base.json" }, + { + "name": "PolyLite CosPLA @base", + "sub_path": "filament/Polymaker/PolyLite CosPLA @base.json" + }, { "name": "PolyLite PLA @base", "sub_path": "filament/Polymaker/PolyLite PLA @base.json" }, + { + "name": "PolyLite PLA Galaxy @base", + "sub_path": "filament/Polymaker/PolyLite PLA Galaxy @base.json" + }, + { + "name": "PolyLite PLA Glow @base", + "sub_path": "filament/Polymaker/PolyLite PLA Glow @base.json" + }, + { + "name": "PolyLite PLA Luminous @base", + "sub_path": "filament/Polymaker/PolyLite PLA Luminous @base.json" + }, + { + "name": "PolyLite PLA Neon @base", + "sub_path": "filament/Polymaker/PolyLite PLA Neon @base.json" + }, { "name": "PolyLite PLA Pro @base", "sub_path": "filament/Polymaker/PolyLite PLA Pro @base.json" }, + { + "name": "PolyLite PLA Starlight @base", + "sub_path": "filament/Polymaker/PolyLite PLA Starlight @base.json" + }, + { + "name": "PolyLite PLA Translucent @base", + "sub_path": "filament/Polymaker/PolyLite PLA Translucent @base.json" + }, { "name": "PolyTerra PLA @base", "sub_path": "filament/Polymaker/PolyTerra PLA @base.json" }, + { + "name": "PolyTerra PLA Marble @base", + "sub_path": "filament/Polymaker/PolyTerra PLA Marble @base.json" + }, + { + "name": "PolyTerra PLA+ @base", + "sub_path": "filament/Polymaker/PolyTerra PLA+ @base.json" + }, { "name": "Polymaker HT-PLA @base", "sub_path": "filament/Polymaker/Polymaker HT-PLA @base.json" @@ -1649,6 +1865,26 @@ "name": "Generic SBS @base", "sub_path": "filament/Generic SBS @base.json" }, + { + "name": "BETA PEBA 90A @base", + "sub_path": "filament/BETA/BETA PEBA 90A @base.json" + }, + { + "name": "BETA TPU 90A @base", + "sub_path": "filament/BETA/BETA TPU 90A @base.json" + }, + { + "name": "BETA TPU 95A @base", + "sub_path": "filament/BETA/BETA TPU 95A @base.json" + }, + { + "name": "BETA TPU 98A @base", + "sub_path": "filament/BETA/BETA TPU 98A @base.json" + }, + { + "name": "BETA TPU Matte @base", + "sub_path": "filament/BETA/BETA TPU Matte @base.json" + }, { "name": "Bambu TPU 85A @base", "sub_path": "filament/Bambu TPU 85A @base.json" @@ -1677,6 +1913,22 @@ "name": "Generic TPU for AMS @base", "sub_path": "filament/Generic TPU for AMS @base.json" }, + { + "name": "BETA ABS @BBL A1", + "sub_path": "filament/BETA/BETA ABS @BBL A1.json" + }, + { + "name": "BETA ABS @BBL H2D", + "sub_path": "filament/BETA/BETA ABS @BBL H2D.json" + }, + { + "name": "BETA ABS @BBL P1P", + "sub_path": "filament/BETA/BETA ABS @BBL P1P.json" + }, + { + "name": "BETA ABS @BBL X1C", + "sub_path": "filament/BETA/BETA ABS @BBL X1C.json" + }, { "name": "Bambu ABS @BBL A1", "sub_path": "filament/Bambu ABS @BBL A1.json" @@ -1781,6 +2033,22 @@ "name": "Bambu ABS @BBL X1E 0.8 nozzle", "sub_path": "filament/Bambu ABS @BBL X1E 0.8 nozzle.json" }, + { + "name": "Bambu ABS @BBL X2D", + "sub_path": "filament/Bambu ABS @BBL X2D.json" + }, + { + "name": "Bambu ABS @BBL X2D 0.2 nozzle", + "sub_path": "filament/Bambu ABS @BBL X2D 0.2 nozzle.json" + }, + { + "name": "Bambu ABS @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu ABS @BBL X2D 0.4 nozzle.json" + }, + { + "name": "Bambu ABS @BBL X2D 0.8 nozzle", + "sub_path": "filament/Bambu ABS @BBL X2D 0.8 nozzle.json" + }, { "name": "Bambu ABS-GF @BBL A1", "sub_path": "filament/Bambu ABS-GF @BBL A1.json" @@ -1809,6 +2077,14 @@ "name": "Bambu ABS-GF @BBL X1C", "sub_path": "filament/Bambu ABS-GF @BBL X1C.json" }, + { + "name": "Bambu ABS-GF @BBL X2D", + "sub_path": "filament/Bambu ABS-GF @BBL X2D.json" + }, + { + "name": "Bambu ABS-GF @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu ABS-GF @BBL X2D 0.4 nozzle.json" + }, { "name": "Bambu Support for ABS @BBL A1", "sub_path": "filament/Bambu Support for ABS @BBL A1.json" @@ -1833,6 +2109,14 @@ "name": "Bambu Support for ABS @BBL X1C", "sub_path": "filament/Bambu Support for ABS @BBL X1C.json" }, + { + "name": "Bambu Support for ABS @BBL X2D", + "sub_path": "filament/Bambu Support for ABS @BBL X2D.json" + }, + { + "name": "Bambu Support for ABS @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu Support for ABS @BBL X2D 0.4 nozzle.json" + }, { "name": "Generic ABS", "sub_path": "filament/Generic ABS.json" @@ -1881,6 +2165,18 @@ "name": "Generic ABS @BBL P2S 0.2 nozzle", "sub_path": "filament/Generic ABS @BBL P2S 0.2 nozzle.json" }, + { + "name": "Generic ABS @BBL X2D", + "sub_path": "filament/Generic ABS @BBL X2D.json" + }, + { + "name": "Generic ABS @BBL X2D 0.2 nozzle", + "sub_path": "filament/Generic ABS @BBL X2D 0.2 nozzle.json" + }, + { + "name": "Generic ABS @BBL X2D 0.4 nozzle", + "sub_path": "filament/Generic ABS @BBL X2D 0.4 nozzle.json" + }, { "name": "PolyLite ABS @BBL A1", "sub_path": "filament/Polymaker/PolyLite ABS @BBL A1.json" @@ -1921,6 +2217,18 @@ "name": "PolyLite ABS @BBL X1E 0.2 nozzle", "sub_path": "filament/Polymaker/PolyLite ABS @BBL X1E 0.2 nozzle.json" }, + { + "name": "BETA ASA @BBL A1 0.4 nozzle", + "sub_path": "filament/BETA/BETA ASA @BBL A1 0.4 nozzle.json" + }, + { + "name": "BETA ASA @BBL H2D 0.4 nozzle", + "sub_path": "filament/BETA/BETA ASA @BBL H2D 0.4 nozzle.json" + }, + { + "name": "BETA ASA @BBL X1C 0.4 nozzle", + "sub_path": "filament/BETA/BETA ASA @BBL X1C 0.4 nozzle.json" + }, { "name": "Bambu ASA @BBL A1 0.2 nozzle", "sub_path": "filament/Bambu ASA @BBL A1 0.2 nozzle.json" @@ -2029,6 +2337,18 @@ "name": "Bambu ASA @BBL X1E 0.4 nozzle", "sub_path": "filament/Bambu ASA @BBL X1E 0.4 nozzle.json" }, + { + "name": "Bambu ASA @BBL X2D", + "sub_path": "filament/Bambu ASA @BBL X2D.json" + }, + { + "name": "Bambu ASA @BBL X2D 0.2 nozzle", + "sub_path": "filament/Bambu ASA @BBL X2D 0.2 nozzle.json" + }, + { + "name": "Bambu ASA @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu ASA @BBL X2D 0.4 nozzle.json" + }, { "name": "Bambu ASA-Aero @BBL A1", "sub_path": "filament/Bambu ASA-Aero @BBL A1.json" @@ -2057,6 +2377,14 @@ "name": "Bambu ASA-Aero @BBL X1C", "sub_path": "filament/Bambu ASA-Aero @BBL X1C.json" }, + { + "name": "Bambu ASA-Aero @BBL X2D", + "sub_path": "filament/Bambu ASA-Aero @BBL X2D.json" + }, + { + "name": "Bambu ASA-Aero @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu ASA-Aero @BBL X2D 0.4 nozzle.json" + }, { "name": "Bambu ASA-CF @BBL A1", "sub_path": "filament/Bambu ASA-CF @BBL A1.json" @@ -2109,6 +2437,14 @@ "name": "Bambu ASA-CF @BBL X1C 0.6 nozzle", "sub_path": "filament/Bambu ASA-CF @BBL X1C 0.6 nozzle.json" }, + { + "name": "Bambu ASA-CF @BBL X2D", + "sub_path": "filament/Bambu ASA-CF @BBL X2D.json" + }, + { + "name": "Bambu ASA-CF @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu ASA-CF @BBL X2D 0.4 nozzle.json" + }, { "name": "Generic ASA", "sub_path": "filament/Generic ASA.json" @@ -2157,6 +2493,18 @@ "name": "Generic ASA @BBL P2S 0.2 nozzle", "sub_path": "filament/Generic ASA @BBL P2S 0.2 nozzle.json" }, + { + "name": "Generic ASA @BBL X2D", + "sub_path": "filament/Generic ASA @BBL X2D.json" + }, + { + "name": "Generic ASA @BBL X2D 0.2 nozzle", + "sub_path": "filament/Generic ASA @BBL X2D 0.2 nozzle.json" + }, + { + "name": "Generic ASA @BBL X2D 0.4 nozzle", + "sub_path": "filament/Generic ASA @BBL X2D 0.4 nozzle.json" + }, { "name": "PolyLite ASA @BBL A1", "sub_path": "filament/Polymaker/PolyLite ASA @BBL A1.json" @@ -2221,6 +2569,14 @@ "name": "Generic BVOH @BBL X1C", "sub_path": "filament/Generic BVOH @BBL X1C.json" }, + { + "name": "Generic BVOH @BBL X2D", + "sub_path": "filament/Generic BVOH @BBL X2D.json" + }, + { + "name": "Generic BVOH @BBL X2D 0.4 nozzle", + "sub_path": "filament/Generic BVOH @BBL X2D 0.4 nozzle.json" + }, { "name": "Generic EVA @BBL A1", "sub_path": "filament/Generic EVA @BBL A1.json" @@ -2249,6 +2605,22 @@ "name": "Generic EVA @BBL X1C", "sub_path": "filament/Generic EVA @BBL X1C.json" }, + { + "name": "Generic EVA @BBL X2D", + "sub_path": "filament/Generic EVA @BBL X2D.json" + }, + { + "name": "Generic EVA @BBL X2D 0.4 nozzle", + "sub_path": "filament/Generic EVA @BBL X2D 0.4 nozzle.json" + }, + { + "name": "BETA HIPS @BBL H2D", + "sub_path": "filament/BETA/BETA HIPS @BBL H2D.json" + }, + { + "name": "BETA HIPS @BBL X1C", + "sub_path": "filament/BETA/BETA HIPS @BBL X1C.json" + }, { "name": "Generic HIPS @BBL A1", "sub_path": "filament/Generic HIPS @BBL A1.json" @@ -2305,6 +2677,30 @@ "name": "Generic HIPS @BBL X1C 0.2 nozzle", "sub_path": "filament/Generic HIPS @BBL X1C 0.2 nozzle.json" }, + { + "name": "Generic HIPS @BBL X2D", + "sub_path": "filament/Generic HIPS @BBL X2D.json" + }, + { + "name": "Generic HIPS @BBL X2D 0.2 nozzle", + "sub_path": "filament/Generic HIPS @BBL X2D 0.2 nozzle.json" + }, + { + "name": "Generic HIPS @BBL X2D 0.4 nozzle", + "sub_path": "filament/Generic HIPS @BBL X2D 0.4 nozzle.json" + }, + { + "name": "BETA PAHT-CF @BBL H2D", + "sub_path": "filament/BETA/BETA PAHT-CF @BBL H2D.json" + }, + { + "name": "BETA PAHT-CF @BBL P1P", + "sub_path": "filament/BETA/BETA PAHT-CF @BBL P1P.json" + }, + { + "name": "BETA PAHT-CF @BBL X1C", + "sub_path": "filament/BETA/BETA PAHT-CF @BBL X1C.json" + }, { "name": "Bambu PA-CF @BBL A1", "sub_path": "filament/Bambu PA-CF @BBL A1.json" @@ -2337,6 +2733,14 @@ "name": "Bambu PA-CF @BBL X1E", "sub_path": "filament/Bambu PA-CF @BBL X1E.json" }, + { + "name": "Bambu PA-CF @BBL X2D", + "sub_path": "filament/Bambu PA-CF @BBL X2D.json" + }, + { + "name": "Bambu PA-CF @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu PA-CF @BBL X2D 0.4 nozzle.json" + }, { "name": "Bambu PA6-CF @BBL A1", "sub_path": "filament/Bambu PA6-CF @BBL A1.json" @@ -2365,6 +2769,14 @@ "name": "Bambu PA6-CF @BBL X1E", "sub_path": "filament/Bambu PA6-CF @BBL X1E.json" }, + { + "name": "Bambu PA6-CF @BBL X2D", + "sub_path": "filament/Bambu PA6-CF @BBL X2D.json" + }, + { + "name": "Bambu PA6-CF @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu PA6-CF @BBL X2D 0.4 nozzle.json" + }, { "name": "Bambu PA6-GF @BBL A1", "sub_path": "filament/Bambu PA6-GF @BBL A1.json" @@ -2393,6 +2805,14 @@ "name": "Bambu PA6-GF @BBL X1C", "sub_path": "filament/Bambu PA6-GF @BBL X1C.json" }, + { + "name": "Bambu PA6-GF @BBL X2D", + "sub_path": "filament/Bambu PA6-GF @BBL X2D.json" + }, + { + "name": "Bambu PA6-GF @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu PA6-GF @BBL X2D 0.4 nozzle.json" + }, { "name": "Bambu PAHT-CF @BBL A1", "sub_path": "filament/Bambu PAHT-CF @BBL A1.json" @@ -2421,6 +2841,14 @@ "name": "Bambu PAHT-CF @BBL X1C", "sub_path": "filament/Bambu PAHT-CF @BBL X1C.json" }, + { + "name": "Bambu PAHT-CF @BBL X2D", + "sub_path": "filament/Bambu PAHT-CF @BBL X2D.json" + }, + { + "name": "Bambu PAHT-CF @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu PAHT-CF @BBL X2D 0.4 nozzle.json" + }, { "name": "Bambu Support For PA/PET @BBL A1", "sub_path": "filament/Bambu Support For PA PET @BBL A1.json" @@ -2449,6 +2877,14 @@ "name": "Bambu Support For PA/PET @BBL X1C", "sub_path": "filament/Bambu Support For PA PET @BBL X1C.json" }, + { + "name": "Bambu Support For PA/PET @BBL X2D", + "sub_path": "filament/Bambu Support For PA PET @BBL X2D.json" + }, + { + "name": "Bambu Support For PA/PET @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu Support For PA PET @BBL X2D 0.4 nozzle.json" + }, { "name": "Bambu Support G @BBL A1", "sub_path": "filament/Bambu Support G @BBL A1.json" @@ -2481,6 +2917,14 @@ "name": "Bambu Support G @BBL X1E", "sub_path": "filament/Bambu Support G @BBL X1E.json" }, + { + "name": "Bambu Support G @BBL X2D", + "sub_path": "filament/Bambu Support G @BBL X2D.json" + }, + { + "name": "Bambu Support G @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu Support G @BBL X2D 0.4 nozzle.json" + }, { "name": "Fiberon PA12-CF @BBL H2D", "sub_path": "filament/Polymaker/Fiberon PA12-CF @BBL H2D.json" @@ -2489,6 +2933,10 @@ "name": "Fiberon PA12-CF @BBL X1C", "sub_path": "filament/Polymaker/Fiberon PA12-CF @BBL X1C.json" }, + { + "name": "Fiberon PA12-CF10 @BBL X1", + "sub_path": "filament/Polymaker/Fiberon PA12-CF10 @BBL X1.json" + }, { "name": "Fiberon PA6-CF @BBL H2D", "sub_path": "filament/Polymaker/Fiberon PA6-CF @BBL H2D.json" @@ -2497,6 +2945,10 @@ "name": "Fiberon PA6-CF @BBL X1C", "sub_path": "filament/Polymaker/Fiberon PA6-CF @BBL X1C.json" }, + { + "name": "Fiberon PA6-CF20 @BBL X1", + "sub_path": "filament/Polymaker/Fiberon PA6-CF20 @BBL X1.json" + }, { "name": "Fiberon PA6-GF @BBL H2D", "sub_path": "filament/Polymaker/Fiberon PA6-GF @BBL H2D.json" @@ -2505,6 +2957,10 @@ "name": "Fiberon PA6-GF @BBL X1C", "sub_path": "filament/Polymaker/Fiberon PA6-GF @BBL X1C.json" }, + { + "name": "Fiberon PA6-GF25 @BBL X1", + "sub_path": "filament/Polymaker/Fiberon PA6-GF25 @BBL X1.json" + }, { "name": "Fiberon PA612-CF @BBL H2D", "sub_path": "filament/Polymaker/Fiberon PA612-CF @BBL H2D.json" @@ -2513,6 +2969,10 @@ "name": "Fiberon PA612-CF @BBL X1C", "sub_path": "filament/Polymaker/Fiberon PA612-CF @BBL X1C.json" }, + { + "name": "Fiberon PA612-CF15 @BBL X1", + "sub_path": "filament/Polymaker/Fiberon PA612-CF15 @BBL X1.json" + }, { "name": "Generic PA", "sub_path": "filament/Generic PA.json" @@ -2537,6 +2997,14 @@ "name": "Generic PA @BBL P2S", "sub_path": "filament/Generic PA @BBL P2S.json" }, + { + "name": "Generic PA @BBL X2D", + "sub_path": "filament/Generic PA @BBL X2D.json" + }, + { + "name": "Generic PA @BBL X2D 0.4 nozzle", + "sub_path": "filament/Generic PA @BBL X2D 0.4 nozzle.json" + }, { "name": "Generic PA-CF", "sub_path": "filament/Generic PA-CF.json" @@ -2553,6 +3021,14 @@ "name": "Generic PA-CF @BBL P2S", "sub_path": "filament/Generic PA-CF @BBL P2S.json" }, + { + "name": "Generic PA-CF @BBL X2D", + "sub_path": "filament/Generic PA-CF @BBL X2D.json" + }, + { + "name": "Generic PA-CF @BBL X2D 0.4 nozzle", + "sub_path": "filament/Generic PA-CF @BBL X2D 0.4 nozzle.json" + }, { "name": "Bambu PC @BBL A1", "sub_path": "filament/Bambu PC @BBL A1.json" @@ -2661,6 +3137,18 @@ "name": "Bambu PC @BBL X1E 0.8 nozzle", "sub_path": "filament/Bambu PC @BBL X1E 0.8 nozzle.json" }, + { + "name": "Bambu PC @BBL X2D", + "sub_path": "filament/Bambu PC @BBL X2D.json" + }, + { + "name": "Bambu PC @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu PC @BBL X2D 0.4 nozzle.json" + }, + { + "name": "Bambu PC @BBL X2D 0.8 nozzle", + "sub_path": "filament/Bambu PC @BBL X2D 0.8 nozzle.json" + }, { "name": "Bambu PC FR @BBL A1", "sub_path": "filament/Bambu PC FR @BBL A1.json" @@ -2777,6 +3265,18 @@ "name": "Bambu PC FR @BBL X1E 0.8 nozzle", "sub_path": "filament/Bambu PC FR @BBL X1E 0.8 nozzle.json" }, + { + "name": "Bambu PC FR @BBL X2D", + "sub_path": "filament/Bambu PC FR @BBL X2D.json" + }, + { + "name": "Bambu PC FR @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu PC FR @BBL X2D 0.4 nozzle.json" + }, + { + "name": "Bambu PC FR @BBL X2D 0.8 nozzle", + "sub_path": "filament/Bambu PC FR @BBL X2D 0.8 nozzle.json" + }, { "name": "Generic PC", "sub_path": "filament/Generic PC.json" @@ -2817,6 +3317,18 @@ "name": "Generic PC @BBL P1P 0.2 nozzle", "sub_path": "filament/P1P/Generic PC @BBL P1P 0.2 nozzle.json" }, + { + "name": "Generic PC @BBL X2D", + "sub_path": "filament/Generic PC @BBL X2D.json" + }, + { + "name": "Generic PC @BBL X2D 0.2 nozzle", + "sub_path": "filament/Generic PC @BBL X2D 0.2 nozzle.json" + }, + { + "name": "Generic PC @BBL X2D 0.4 nozzle", + "sub_path": "filament/Generic PC @BBL X2D 0.4 nozzle.json" + }, { "name": "Generic PCTG @BBL A1", "sub_path": "filament/Generic PCTG @BBL A1.json" @@ -2845,6 +3357,14 @@ "name": "Generic PCTG @BBL X1C", "sub_path": "filament/Generic PCTG @BBL X1C.json" }, + { + "name": "Generic PCTG @BBL X2D", + "sub_path": "filament/Generic PCTG @BBL X2D.json" + }, + { + "name": "Generic PCTG @BBL X2D 0.4 nozzle", + "sub_path": "filament/Generic PCTG @BBL X2D 0.4 nozzle.json" + }, { "name": "Generic PE @BBL A1", "sub_path": "filament/Generic PE @BBL A1.json" @@ -2873,6 +3393,14 @@ "name": "Generic PE @BBL X1C", "sub_path": "filament/Generic PE @BBL X1C.json" }, + { + "name": "Generic PE @BBL X2D", + "sub_path": "filament/Generic PE @BBL X2D.json" + }, + { + "name": "Generic PE @BBL X2D 0.4 nozzle", + "sub_path": "filament/Generic PE @BBL X2D 0.4 nozzle.json" + }, { "name": "Generic PE-CF @BBL A1", "sub_path": "filament/Generic PE-CF @BBL A1.json" @@ -2901,6 +3429,246 @@ "name": "Generic PE-CF @BBL X1C", "sub_path": "filament/Generic PE-CF @BBL X1C.json" }, + { + "name": "Generic PE-CF @BBL X2D", + "sub_path": "filament/Generic PE-CF @BBL X2D.json" + }, + { + "name": "Generic PE-CF @BBL X2D 0.4 nozzle", + "sub_path": "filament/Generic PE-CF @BBL X2D 0.4 nozzle.json" + }, + { + "name": "BETA PETG @BBL A1", + "sub_path": "filament/BETA/BETA PETG @BBL A1.json" + }, + { + "name": "BETA PETG @BBL A1M 0.4 nozzle", + "sub_path": "filament/BETA/BETA PETG @BBL A1M 0.4 nozzle.json" + }, + { + "name": "BETA PETG @BBL H2D 0.4 nozzle", + "sub_path": "filament/BETA/BETA PETG @BBL H2D 0.4 nozzle.json" + }, + { + "name": "BETA PETG @BBL X1C", + "sub_path": "filament/BETA/BETA PETG @BBL X1C.json" + }, + { + "name": "BETA PETG Fluorescence @BBL A1", + "sub_path": "filament/BETA/BETA PETG Fluorescence @BBL A1.json" + }, + { + "name": "BETA PETG Fluorescence @BBL A1M 0.4 nozzle", + "sub_path": "filament/BETA/BETA PETG Fluorescence @BBL A1M 0.4 nozzle.json" + }, + { + "name": "BETA PETG Fluorescence @BBL H2D 0.4 nozzle", + "sub_path": "filament/BETA/BETA PETG Fluorescence @BBL H2D 0.4 nozzle.json" + }, + { + "name": "BETA PETG Fluorescence @BBL X1C", + "sub_path": "filament/BETA/BETA PETG Fluorescence @BBL X1C.json" + }, + { + "name": "BETA PETG Glitter @BBL A1", + "sub_path": "filament/BETA/BETA PETG Glitter @BBL A1.json" + }, + { + "name": "BETA PETG Glitter @BBL A1M 0.4 nozzle", + "sub_path": "filament/BETA/BETA PETG Glitter @BBL A1M 0.4 nozzle.json" + }, + { + "name": "BETA PETG Glitter @BBL H2D 0.4 nozzle", + "sub_path": "filament/BETA/BETA PETG Glitter @BBL H2D 0.4 nozzle.json" + }, + { + "name": "BETA PETG Glitter @BBL X1C", + "sub_path": "filament/BETA/BETA PETG Glitter @BBL X1C.json" + }, + { + "name": "BETA PETG Glow @BBL A1", + "sub_path": "filament/BETA/BETA PETG Glow @BBL A1.json" + }, + { + "name": "BETA PETG Glow @BBL A1M 0.4 nozzle", + "sub_path": "filament/BETA/BETA PETG Glow @BBL A1M 0.4 nozzle.json" + }, + { + "name": "BETA PETG Glow @BBL H2D 0.4 nozzle", + "sub_path": "filament/BETA/BETA PETG Glow @BBL H2D 0.4 nozzle.json" + }, + { + "name": "BETA PETG Glow @BBL X1C", + "sub_path": "filament/BETA/BETA PETG Glow @BBL X1C.json" + }, + { + "name": "BETA PETG Gradient @BBL A1", + "sub_path": "filament/BETA/BETA PETG Gradient @BBL A1.json" + }, + { + "name": "BETA PETG Gradient @BBL A1M 0.4 nozzle", + "sub_path": "filament/BETA/BETA PETG Gradient @BBL A1M 0.4 nozzle.json" + }, + { + "name": "BETA PETG Gradient @BBL H2D 0.4 nozzle", + "sub_path": "filament/BETA/BETA PETG Gradient @BBL H2D 0.4 nozzle.json" + }, + { + "name": "BETA PETG Gradient @BBL X1C", + "sub_path": "filament/BETA/BETA PETG Gradient @BBL X1C.json" + }, + { + "name": "BETA PETG HF @BBL A1", + "sub_path": "filament/BETA/BETA PETG HF @BBL A1.json" + }, + { + "name": "BETA PETG HF @BBL A1M", + "sub_path": "filament/BETA/BETA PETG HF @BBL A1M.json" + }, + { + "name": "BETA PETG HF @BBL H2D 0.4 nozzle", + "sub_path": "filament/BETA/BETA PETG HF @BBL H2D 0.4 nozzle.json" + }, + { + "name": "BETA PETG HF @BBL X1C", + "sub_path": "filament/BETA/BETA PETG HF @BBL X1C.json" + }, + { + "name": "BETA PETG Heat Color Change @BBL A1", + "sub_path": "filament/BETA/BETA PETG Heat Color Change @BBL A1.json" + }, + { + "name": "BETA PETG Heat Color Change @BBL A1M 0.4 nozzle", + "sub_path": "filament/BETA/BETA PETG Heat Color Change @BBL A1M 0.4 nozzle.json" + }, + { + "name": "BETA PETG Heat Color Change @BBL H2D 0.4 nozzle", + "sub_path": "filament/BETA/BETA PETG Heat Color Change @BBL H2D 0.4 nozzle.json" + }, + { + "name": "BETA PETG Heat Color Change @BBL X1C", + "sub_path": "filament/BETA/BETA PETG Heat Color Change @BBL X1C.json" + }, + { + "name": "BETA PETG Marble @BBL A1", + "sub_path": "filament/BETA/BETA PETG Marble @BBL A1.json" + }, + { + "name": "BETA PETG Marble @BBL A1M 0.4 nozzle", + "sub_path": "filament/BETA/BETA PETG Marble @BBL A1M 0.4 nozzle.json" + }, + { + "name": "BETA PETG Marble @BBL H2D 0.4 nozzle", + "sub_path": "filament/BETA/BETA PETG Marble @BBL H2D 0.4 nozzle.json" + }, + { + "name": "BETA PETG Marble @BBL X1C", + "sub_path": "filament/BETA/BETA PETG Marble @BBL X1C.json" + }, + { + "name": "BETA PETG Matte @BBL A1", + "sub_path": "filament/BETA/BETA PETG Matte @BBL A1.json" + }, + { + "name": "BETA PETG Matte @BBL A1M 0.4 nozzle", + "sub_path": "filament/BETA/BETA PETG Matte @BBL A1M 0.4 nozzle.json" + }, + { + "name": "BETA PETG Matte @BBL H2D 0.4 nozzle", + "sub_path": "filament/BETA/BETA PETG Matte @BBL H2D 0.4 nozzle.json" + }, + { + "name": "BETA PETG Matte @BBL X1C", + "sub_path": "filament/BETA/BETA PETG Matte @BBL X1C.json" + }, + { + "name": "BETA PETG Metallic @BBL A1", + "sub_path": "filament/BETA/BETA PETG Metallic @BBL A1.json" + }, + { + "name": "BETA PETG Metallic @BBL A1M 0.4 nozzle", + "sub_path": "filament/BETA/BETA PETG Metallic @BBL A1M 0.4 nozzle.json" + }, + { + "name": "BETA PETG Metallic @BBL H2D 0.4 nozzle", + "sub_path": "filament/BETA/BETA PETG Metallic @BBL H2D 0.4 nozzle.json" + }, + { + "name": "BETA PETG Metallic @BBL X1C", + "sub_path": "filament/BETA/BETA PETG Metallic @BBL X1C.json" + }, + { + "name": "BETA PETG Transparent @BBL A1", + "sub_path": "filament/BETA/BETA PETG Transparent @BBL A1.json" + }, + { + "name": "BETA PETG Transparent @BBL A1M", + "sub_path": "filament/BETA/BETA PETG Transparent @BBL A1M.json" + }, + { + "name": "BETA PETG Transparent @BBL H2D 0.4 nozzle", + "sub_path": "filament/BETA/BETA PETG Transparent @BBL H2D 0.4 nozzle.json" + }, + { + "name": "BETA PETG Transparent @BBL X1C", + "sub_path": "filament/BETA/BETA PETG Transparent @BBL X1C.json" + }, + { + "name": "BETA PETG UV Color Change @BBL A1", + "sub_path": "filament/BETA/BETA PETG UV Color Change @BBL A1.json" + }, + { + "name": "BETA PETG UV Color Change @BBL A1M 0.4 nozzle", + "sub_path": "filament/BETA/BETA PETG UV Color Change @BBL A1M 0.4 nozzle.json" + }, + { + "name": "BETA PETG UV Color Change @BBL H2D 0.4 nozzle", + "sub_path": "filament/BETA/BETA PETG UV Color Change @BBL H2D 0.4 nozzle.json" + }, + { + "name": "BETA PETG UV Color Change @BBL X1C", + "sub_path": "filament/BETA/BETA PETG UV Color Change @BBL X1C.json" + }, + { + "name": "BETA PETG-CF @BBL A1 0.4 nozzle", + "sub_path": "filament/BETA/BETA PETG-CF @BBL A1 0.4 nozzle.json" + }, + { + "name": "BETA PETG-CF @BBL A1M 0.4 nozzle", + "sub_path": "filament/BETA/BETA PETG-CF @BBL A1M 0.4 nozzle.json" + }, + { + "name": "BETA PETG-CF @BBL H2D 0.4 nozzle", + "sub_path": "filament/BETA/BETA PETG-CF @BBL H2D 0.4 nozzle.json" + }, + { + "name": "BETA PETG-CF @BBL P1P 0.4 nozzle", + "sub_path": "filament/BETA/BETA PETG-CF @BBL P1P 0.4 nozzle.json" + }, + { + "name": "BETA PETG-CF @BBL X1C 0.4 nozzle", + "sub_path": "filament/BETA/BETA PETG-CF @BBL X1C 0.4 nozzle.json" + }, + { + "name": "BETA PETG-GF @BBL A1 0.4 nozzle", + "sub_path": "filament/BETA/BETA PETG-GF @BBL A1 0.4 nozzle.json" + }, + { + "name": "BETA PETG-GF @BBL A1M 0.4 nozzle", + "sub_path": "filament/BETA/BETA PETG-GF @BBL A1M 0.4 nozzle.json" + }, + { + "name": "BETA PETG-GF @BBL H2D 0.4 nozzle", + "sub_path": "filament/BETA/BETA PETG-GF @BBL H2D 0.4 nozzle.json" + }, + { + "name": "BETA PETG-GF @BBL P1P 0.4 nozzle", + "sub_path": "filament/BETA/BETA PETG-GF @BBL P1P 0.4 nozzle.json" + }, + { + "name": "BETA PETG-GF @BBL X1C 0.4 nozzle", + "sub_path": "filament/BETA/BETA PETG-GF @BBL X1C 0.4 nozzle.json" + }, { "name": "Bambu PET-CF @BBL A1", "sub_path": "filament/Bambu PET-CF @BBL A1.json" @@ -2933,6 +3701,14 @@ "name": "Bambu PET-CF @BBL X1E", "sub_path": "filament/Bambu PET-CF @BBL X1E.json" }, + { + "name": "Bambu PET-CF @BBL X2D", + "sub_path": "filament/Bambu PET-CF @BBL X2D.json" + }, + { + "name": "Bambu PET-CF @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu PET-CF @BBL X2D 0.4 nozzle.json" + }, { "name": "Bambu PETG Basic @BBL A1", "sub_path": "filament/Bambu PETG Basic @BBL A1.json" @@ -3013,6 +3789,18 @@ "name": "Bambu PETG Basic @BBL X1C 0.8 nozzle", "sub_path": "filament/Bambu PETG Basic @BBL X1C 0.8 nozzle.json" }, + { + "name": "Bambu PETG Basic @BBL X2D", + "sub_path": "filament/Bambu PETG Basic @BBL X2D.json" + }, + { + "name": "Bambu PETG Basic @BBL X2D 0.2 nozzle", + "sub_path": "filament/Bambu PETG Basic @BBL X2D 0.2 nozzle.json" + }, + { + "name": "Bambu PETG Basic @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu PETG Basic @BBL X2D 0.4 nozzle.json" + }, { "name": "Bambu PETG HF @BBL A1", "sub_path": "filament/Bambu PETG HF @BBL A1.json" @@ -3109,6 +3897,18 @@ "name": "Bambu PETG HF @BBL X1C 0.8 nozzle", "sub_path": "filament/Bambu PETG HF @BBL X1C 0.8 nozzle.json" }, + { + "name": "Bambu PETG HF @BBL X2D", + "sub_path": "filament/Bambu PETG HF @BBL X2D.json" + }, + { + "name": "Bambu PETG HF @BBL X2D 0.2 nozzle", + "sub_path": "filament/Bambu PETG HF @BBL X2D 0.2 nozzle.json" + }, + { + "name": "Bambu PETG HF @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu PETG HF @BBL X2D 0.4 nozzle.json" + }, { "name": "Bambu PETG Translucent @BBL A1", "sub_path": "filament/Bambu PETG Translucent @BBL A1.json" @@ -3189,6 +3989,22 @@ "name": "Bambu PETG Translucent @BBL X1C 0.8 nozzle", "sub_path": "filament/Bambu PETG Translucent @BBL X1C 0.8 nozzle.json" }, + { + "name": "Bambu PETG Translucent @BBL X2D", + "sub_path": "filament/Bambu PETG Translucent @BBL X2D.json" + }, + { + "name": "Bambu PETG Translucent @BBL X2D 0.2 nozzle", + "sub_path": "filament/Bambu PETG Translucent @BBL X2D 0.2 nozzle.json" + }, + { + "name": "Bambu PETG Translucent @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu PETG Translucent @BBL X2D 0.4 nozzle.json" + }, + { + "name": "Bambu PETG Translucent @BBL X2D 0.8 nozzle", + "sub_path": "filament/Bambu PETG Translucent @BBL X2D 0.8 nozzle.json" + }, { "name": "Bambu PETG-CF @BBL A1 0.4 nozzle", "sub_path": "filament/Bambu PETG-CF @BBL A1 0.4 nozzle.json" @@ -3245,6 +4061,18 @@ "name": "Bambu PETG-CF @BBL X1C 0.4 nozzle", "sub_path": "filament/Bambu PETG-CF @BBL X1C 0.4 nozzle.json" }, + { + "name": "Bambu PETG-CF @BBL X2D", + "sub_path": "filament/Bambu PETG-CF @BBL X2D.json" + }, + { + "name": "Bambu PETG-CF @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu PETG-CF @BBL X2D 0.4 nozzle.json" + }, + { + "name": "Bambu PETG-CF @BBL X2D 0.8 nozzle", + "sub_path": "filament/Bambu PETG-CF @BBL X2D 0.8 nozzle.json" + }, { "name": "Fiberon PET-CF @BBL H2D", "sub_path": "filament/Polymaker/Fiberon PET-CF @BBL H2D.json" @@ -3253,10 +4081,18 @@ "name": "Fiberon PET-CF @BBL X1C", "sub_path": "filament/Polymaker/Fiberon PET-CF @BBL X1C.json" }, + { + "name": "Fiberon PET-CF17 @BBL X1", + "sub_path": "filament/Polymaker/Fiberon PET-CF17 @BBL X1.json" + }, { "name": "Fiberon PETG-ESD @BBL H2D", "sub_path": "filament/Polymaker/Fiberon PETG-ESD @BBL H2D.json" }, + { + "name": "Fiberon PETG-ESD @BBL X1", + "sub_path": "filament/Polymaker/Fiberon PETG-ESD @BBL X1.json" + }, { "name": "Fiberon PETG-ESD @BBL X1C", "sub_path": "filament/Polymaker/Fiberon PETG-ESD @BBL X1C.json" @@ -3269,6 +4105,10 @@ "name": "Fiberon PETG-rCF @BBL X1C", "sub_path": "filament/Polymaker/Fiberon PETG-rCF @BBL X1C.json" }, + { + "name": "Fiberon PETG-rCF08 @BBL X1", + "sub_path": "filament/Polymaker/Fiberon PETG-rCF08 @BBL X1.json" + }, { "name": "Generic PETG", "sub_path": "filament/Generic PETG.json" @@ -3333,6 +4173,18 @@ "name": "Generic PETG @BBL P2S 0.2 nozzle", "sub_path": "filament/Generic PETG @BBL P2S 0.2 nozzle.json" }, + { + "name": "Generic PETG @BBL X2D", + "sub_path": "filament/Generic PETG @BBL X2D.json" + }, + { + "name": "Generic PETG @BBL X2D 0.2 nozzle", + "sub_path": "filament/Generic PETG @BBL X2D 0.2 nozzle.json" + }, + { + "name": "Generic PETG @BBL X2D 0.4 nozzle", + "sub_path": "filament/Generic PETG @BBL X2D 0.4 nozzle.json" + }, { "name": "Generic PETG HF @BBL A1", "sub_path": "filament/Generic PETG HF @BBL A1.json" @@ -3401,6 +4253,18 @@ "name": "Generic PETG HF @BBL X1C 0.2 nozzle", "sub_path": "filament/Generic PETG HF @BBL X1C 0.2 nozzle.json" }, + { + "name": "Generic PETG HF @BBL X2D", + "sub_path": "filament/Generic PETG HF @BBL X2D.json" + }, + { + "name": "Generic PETG HF @BBL X2D 0.2 nozzle", + "sub_path": "filament/Generic PETG HF @BBL X2D 0.2 nozzle.json" + }, + { + "name": "Generic PETG HF @BBL X2D 0.4 nozzle", + "sub_path": "filament/Generic PETG HF @BBL X2D 0.4 nozzle.json" + }, { "name": "Generic PETG-CF @BBL A1", "sub_path": "filament/Generic PETG-CF @BBL A1.json" @@ -3433,6 +4297,14 @@ "name": "Generic PETG-CF @BBL X1C", "sub_path": "filament/Generic PETG-CF @BBL X1C.json" }, + { + "name": "Generic PETG-CF @BBL X2D", + "sub_path": "filament/Generic PETG-CF @BBL X2D.json" + }, + { + "name": "Generic PETG-CF @BBL X2D 0.4 nozzle", + "sub_path": "filament/Generic PETG-CF @BBL X2D 0.4 nozzle.json" + }, { "name": "PolyLite PETG @BBL A1", "sub_path": "filament/Polymaker/PolyLite PETG @BBL A1.json" @@ -3541,6 +4413,434 @@ "name": "Generic PHA @BBL X1C", "sub_path": "filament/Generic PHA @BBL X1C.json" }, + { + "name": "Generic PHA @BBL X2D", + "sub_path": "filament/Generic PHA @BBL X2D.json" + }, + { + "name": "Generic PHA @BBL X2D 0.4 nozzle", + "sub_path": "filament/Generic PHA @BBL X2D 0.4 nozzle.json" + }, + { + "name": "BETA PLA Basic @BBL A1", + "sub_path": "filament/BETA/BETA PLA Basic @BBL A1.json" + }, + { + "name": "BETA PLA Basic @BBL A1M", + "sub_path": "filament/BETA/BETA PLA Basic @BBL A1M.json" + }, + { + "name": "BETA PLA Basic @BBL H2D", + "sub_path": "filament/BETA/BETA PLA Basic @BBL H2D.json" + }, + { + "name": "BETA PLA Basic @BBL P1P", + "sub_path": "filament/BETA/BETA PLA Basic @BBL P1P.json" + }, + { + "name": "BETA PLA Basic @BBL X1C", + "sub_path": "filament/BETA/BETA PLA Basic @BBL X1C.json" + }, + { + "name": "BETA PLA Chameleon @BBL A1", + "sub_path": "filament/BETA/BETA PLA Chameleon @BBL A1.json" + }, + { + "name": "BETA PLA Chameleon @BBL A1M", + "sub_path": "filament/BETA/BETA PLA Chameleon @BBL A1M.json" + }, + { + "name": "BETA PLA Chameleon @BBL H2D", + "sub_path": "filament/BETA/BETA PLA Chameleon @BBL H2D.json" + }, + { + "name": "BETA PLA Chameleon @BBL P1P", + "sub_path": "filament/BETA/BETA PLA Chameleon @BBL P1P.json" + }, + { + "name": "BETA PLA Chameleon @BBL X1C", + "sub_path": "filament/BETA/BETA PLA Chameleon @BBL X1C.json" + }, + { + "name": "BETA PLA Fluorescence @BBL A1", + "sub_path": "filament/BETA/BETA PLA Fluorescence @BBL A1.json" + }, + { + "name": "BETA PLA Fluorescence @BBL A1M", + "sub_path": "filament/BETA/BETA PLA Fluorescence @BBL A1M.json" + }, + { + "name": "BETA PLA Fluorescence @BBL H2D", + "sub_path": "filament/BETA/BETA PLA Fluorescence @BBL H2D.json" + }, + { + "name": "BETA PLA Fluorescence @BBL P1P", + "sub_path": "filament/BETA/BETA PLA Fluorescence @BBL P1P.json" + }, + { + "name": "BETA PLA Fluorescence @BBL X1C", + "sub_path": "filament/BETA/BETA PLA Fluorescence @BBL X1C.json" + }, + { + "name": "BETA PLA Glitter @BBL A1", + "sub_path": "filament/BETA/BETA PLA Glitter @BBL A1.json" + }, + { + "name": "BETA PLA Glitter @BBL A1M", + "sub_path": "filament/BETA/BETA PLA Glitter @BBL A1M.json" + }, + { + "name": "BETA PLA Glitter @BBL H2D", + "sub_path": "filament/BETA/BETA PLA Glitter @BBL H2D.json" + }, + { + "name": "BETA PLA Glitter @BBL P1P", + "sub_path": "filament/BETA/BETA PLA Glitter @BBL P1P.json" + }, + { + "name": "BETA PLA Glitter @BBL X1C", + "sub_path": "filament/BETA/BETA PLA Glitter @BBL X1C.json" + }, + { + "name": "BETA PLA Glow @BBL A1", + "sub_path": "filament/BETA/BETA PLA Glow @BBL A1.json" + }, + { + "name": "BETA PLA Glow @BBL A1M", + "sub_path": "filament/BETA/BETA PLA Glow @BBL A1M.json" + }, + { + "name": "BETA PLA Glow @BBL H2D", + "sub_path": "filament/BETA/BETA PLA Glow @BBL H2D.json" + }, + { + "name": "BETA PLA Glow @BBL P1P", + "sub_path": "filament/BETA/BETA PLA Glow @BBL P1P.json" + }, + { + "name": "BETA PLA Glow @BBL X1C", + "sub_path": "filament/BETA/BETA PLA Glow @BBL X1C.json" + }, + { + "name": "BETA PLA Gradient @BBL A1", + "sub_path": "filament/BETA/BETA PLA Gradient @BBL A1.json" + }, + { + "name": "BETA PLA Gradient @BBL A1M", + "sub_path": "filament/BETA/BETA PLA Gradient @BBL A1M.json" + }, + { + "name": "BETA PLA Gradient @BBL H2D", + "sub_path": "filament/BETA/BETA PLA Gradient @BBL H2D.json" + }, + { + "name": "BETA PLA Gradient @BBL P1P", + "sub_path": "filament/BETA/BETA PLA Gradient @BBL P1P.json" + }, + { + "name": "BETA PLA Gradient @BBL X1C", + "sub_path": "filament/BETA/BETA PLA Gradient @BBL X1C.json" + }, + { + "name": "BETA PLA Heat Color Change @BBL A1", + "sub_path": "filament/BETA/BETA PLA Heat Color Change @BBL A1.json" + }, + { + "name": "BETA PLA Heat Color Change @BBL A1M", + "sub_path": "filament/BETA/BETA PLA Heat Color Change @BBL A1M.json" + }, + { + "name": "BETA PLA Heat Color Change @BBL H2D", + "sub_path": "filament/BETA/BETA PLA Heat Color Change @BBL H2D.json" + }, + { + "name": "BETA PLA Heat Color Change @BBL P1P", + "sub_path": "filament/BETA/BETA PLA Heat Color Change @BBL P1P.json" + }, + { + "name": "BETA PLA Heat Color Change @BBL X1C", + "sub_path": "filament/BETA/BETA PLA Heat Color Change @BBL X1C.json" + }, + { + "name": "BETA PLA High Speed @BBL A1", + "sub_path": "filament/BETA/BETA PLA High Speed @BBL A1.json" + }, + { + "name": "BETA PLA High Speed @BBL A1M", + "sub_path": "filament/BETA/BETA PLA High Speed @BBL A1M.json" + }, + { + "name": "BETA PLA High Speed @BBL H2D", + "sub_path": "filament/BETA/BETA PLA High Speed @BBL H2D.json" + }, + { + "name": "BETA PLA High Speed @BBL P1P", + "sub_path": "filament/BETA/BETA PLA High Speed @BBL P1P.json" + }, + { + "name": "BETA PLA High Speed @BBL X1C", + "sub_path": "filament/BETA/BETA PLA High Speed @BBL X1C.json" + }, + { + "name": "BETA PLA High Temp @BBL A1", + "sub_path": "filament/BETA/BETA PLA High Temp @BBL A1.json" + }, + { + "name": "BETA PLA High Temp @BBL A1M", + "sub_path": "filament/BETA/BETA PLA High Temp @BBL A1M.json" + }, + { + "name": "BETA PLA High Temp @BBL H2D", + "sub_path": "filament/BETA/BETA PLA High Temp @BBL H2D.json" + }, + { + "name": "BETA PLA High Temp @BBL P1P", + "sub_path": "filament/BETA/BETA PLA High Temp @BBL P1P.json" + }, + { + "name": "BETA PLA High Temp @BBL X1C", + "sub_path": "filament/BETA/BETA PLA High Temp @BBL X1C.json" + }, + { + "name": "BETA PLA Marble @BBL A1", + "sub_path": "filament/BETA/BETA PLA Marble @BBL A1.json" + }, + { + "name": "BETA PLA Marble @BBL A1M", + "sub_path": "filament/BETA/BETA PLA Marble @BBL A1M.json" + }, + { + "name": "BETA PLA Marble @BBL H2D", + "sub_path": "filament/BETA/BETA PLA Marble @BBL H2D.json" + }, + { + "name": "BETA PLA Marble @BBL P1P", + "sub_path": "filament/BETA/BETA PLA Marble @BBL P1P.json" + }, + { + "name": "BETA PLA Marble @BBL X1C", + "sub_path": "filament/BETA/BETA PLA Marble @BBL X1C.json" + }, + { + "name": "BETA PLA Matte @BBL A1", + "sub_path": "filament/BETA/BETA PLA Matte @BBL A1.json" + }, + { + "name": "BETA PLA Matte @BBL A1M", + "sub_path": "filament/BETA/BETA PLA Matte @BBL A1M.json" + }, + { + "name": "BETA PLA Matte @BBL H2D", + "sub_path": "filament/BETA/BETA PLA Matte @BBL H2D.json" + }, + { + "name": "BETA PLA Matte @BBL P1P", + "sub_path": "filament/BETA/BETA PLA Matte @BBL P1P.json" + }, + { + "name": "BETA PLA Matte @BBL X1C", + "sub_path": "filament/BETA/BETA PLA Matte @BBL X1C.json" + }, + { + "name": "BETA PLA Metal @BBL A1", + "sub_path": "filament/BETA/BETA PLA Metal @BBL A1.json" + }, + { + "name": "BETA PLA Metal @BBL A1M", + "sub_path": "filament/BETA/BETA PLA Metal @BBL A1M.json" + }, + { + "name": "BETA PLA Metal @BBL H2D", + "sub_path": "filament/BETA/BETA PLA Metal @BBL H2D.json" + }, + { + "name": "BETA PLA Metal @BBL P1P", + "sub_path": "filament/BETA/BETA PLA Metal @BBL P1P.json" + }, + { + "name": "BETA PLA Metal @BBL X1C", + "sub_path": "filament/BETA/BETA PLA Metal @BBL X1C.json" + }, + { + "name": "BETA PLA Metallic @BBL A1", + "sub_path": "filament/BETA/BETA PLA Metallic @BBL A1.json" + }, + { + "name": "BETA PLA Metallic @BBL A1M", + "sub_path": "filament/BETA/BETA PLA Metallic @BBL A1M.json" + }, + { + "name": "BETA PLA Metallic @BBL H2D", + "sub_path": "filament/BETA/BETA PLA Metallic @BBL H2D.json" + }, + { + "name": "BETA PLA Metallic @BBL P1P", + "sub_path": "filament/BETA/BETA PLA Metallic @BBL P1P.json" + }, + { + "name": "BETA PLA Metallic @BBL X1C", + "sub_path": "filament/BETA/BETA PLA Metallic @BBL X1C.json" + }, + { + "name": "BETA PLA PRO @BBL A1", + "sub_path": "filament/BETA/BETA PLA PRO @BBL A1.json" + }, + { + "name": "BETA PLA PRO @BBL A1M", + "sub_path": "filament/BETA/BETA PLA PRO @BBL A1M.json" + }, + { + "name": "BETA PLA PRO @BBL H2D", + "sub_path": "filament/BETA/BETA PLA PRO @BBL H2D.json" + }, + { + "name": "BETA PLA PRO @BBL P1P", + "sub_path": "filament/BETA/BETA PLA PRO @BBL P1P.json" + }, + { + "name": "BETA PLA PRO @BBL X1C", + "sub_path": "filament/BETA/BETA PLA PRO @BBL X1C.json" + }, + { + "name": "BETA PLA Silk @BBL A1", + "sub_path": "filament/BETA/BETA PLA Silk @BBL A1.json" + }, + { + "name": "BETA PLA Silk @BBL A1M", + "sub_path": "filament/BETA/BETA PLA Silk @BBL A1M.json" + }, + { + "name": "BETA PLA Silk @BBL H2D", + "sub_path": "filament/BETA/BETA PLA Silk @BBL H2D.json" + }, + { + "name": "BETA PLA Silk @BBL P1P", + "sub_path": "filament/BETA/BETA PLA Silk @BBL P1P.json" + }, + { + "name": "BETA PLA Silk @BBL X1C", + "sub_path": "filament/BETA/BETA PLA Silk @BBL X1C.json" + }, + { + "name": "BETA PLA Silk+ @BBL A1", + "sub_path": "filament/BETA/BETA PLA Silk+ @BBL A1.json" + }, + { + "name": "BETA PLA Silk+ @BBL A1M", + "sub_path": "filament/BETA/BETA PLA Silk+ @BBL A1M.json" + }, + { + "name": "BETA PLA Silk+ @BBL H2D", + "sub_path": "filament/BETA/BETA PLA Silk+ @BBL H2D.json" + }, + { + "name": "BETA PLA Silk+ @BBL P1P", + "sub_path": "filament/BETA/BETA PLA Silk+ @BBL P1P.json" + }, + { + "name": "BETA PLA Silk+ @BBL X1C", + "sub_path": "filament/BETA/BETA PLA Silk+ @BBL X1C.json" + }, + { + "name": "BETA PLA Transparent @BBL A1", + "sub_path": "filament/BETA/BETA PLA Transparent @BBL A1.json" + }, + { + "name": "BETA PLA Transparent @BBL A1M", + "sub_path": "filament/BETA/BETA PLA Transparent @BBL A1M.json" + }, + { + "name": "BETA PLA Transparent @BBL H2D", + "sub_path": "filament/BETA/BETA PLA Transparent @BBL H2D.json" + }, + { + "name": "BETA PLA Transparent @BBL P1P", + "sub_path": "filament/BETA/BETA PLA Transparent @BBL P1P.json" + }, + { + "name": "BETA PLA Transparent @BBL X1C", + "sub_path": "filament/BETA/BETA PLA Transparent @BBL X1C.json" + }, + { + "name": "BETA PLA UV Color Change @BBL A1", + "sub_path": "filament/BETA/BETA PLA UV Color Change @BBL A1.json" + }, + { + "name": "BETA PLA UV Color Change @BBL A1M", + "sub_path": "filament/BETA/BETA PLA UV Color Change @BBL A1M.json" + }, + { + "name": "BETA PLA UV Color Change @BBL H2D", + "sub_path": "filament/BETA/BETA PLA UV Color Change @BBL H2D.json" + }, + { + "name": "BETA PLA UV Color Change @BBL P1P", + "sub_path": "filament/BETA/BETA PLA UV Color Change @BBL P1P.json" + }, + { + "name": "BETA PLA UV Color Change @BBL X1C", + "sub_path": "filament/BETA/BETA PLA UV Color Change @BBL X1C.json" + }, + { + "name": "BETA PLA Wood @BBL A1", + "sub_path": "filament/BETA/BETA PLA Wood @BBL A1.json" + }, + { + "name": "BETA PLA Wood @BBL A1M", + "sub_path": "filament/BETA/BETA PLA Wood @BBL A1M.json" + }, + { + "name": "BETA PLA Wood @BBL H2D", + "sub_path": "filament/BETA/BETA PLA Wood @BBL H2D.json" + }, + { + "name": "BETA PLA Wood @BBL P1P", + "sub_path": "filament/BETA/BETA PLA Wood @BBL P1P.json" + }, + { + "name": "BETA PLA Wood @BBL X1C", + "sub_path": "filament/BETA/BETA PLA Wood @BBL X1C.json" + }, + { + "name": "BETA PLA Youth @BBL A1", + "sub_path": "filament/BETA/BETA PLA Youth @BBL A1.json" + }, + { + "name": "BETA PLA Youth @BBL A1M", + "sub_path": "filament/BETA/BETA PLA Youth @BBL A1M.json" + }, + { + "name": "BETA PLA Youth @BBL H2D", + "sub_path": "filament/BETA/BETA PLA Youth @BBL H2D.json" + }, + { + "name": "BETA PLA Youth @BBL P1P", + "sub_path": "filament/BETA/BETA PLA Youth @BBL P1P.json" + }, + { + "name": "BETA PLA Youth @BBL X1C", + "sub_path": "filament/BETA/BETA PLA Youth @BBL X1C.json" + }, + { + "name": "BETA PLA-CF @BBL A1", + "sub_path": "filament/BETA/BETA PLA-CF @BBL A1.json" + }, + { + "name": "BETA PLA-CF @BBL A1M", + "sub_path": "filament/BETA/BETA PLA-CF @BBL A1M.json" + }, + { + "name": "BETA PLA-CF @BBL H2D 0.4 nozzle", + "sub_path": "filament/BETA/BETA PLA-CF @BBL H2D 0.4 nozzle.json" + }, + { + "name": "BETA PLA-CF @BBL P1P", + "sub_path": "filament/BETA/BETA PLA-CF @BBL P1P.json" + }, + { + "name": "BETA PLA-CF @BBL X1C", + "sub_path": "filament/BETA/BETA PLA-CF @BBL X1C.json" + }, { "name": "Bambu PLA Aero @BBL A1", "sub_path": "filament/Bambu PLA Aero @BBL A1.json" @@ -3577,6 +4877,14 @@ "name": "Bambu PLA Aero @BBL X1C", "sub_path": "filament/Bambu PLA Aero @BBL X1C.json" }, + { + "name": "Bambu PLA Aero @BBL X2D", + "sub_path": "filament/Bambu PLA Aero @BBL X2D.json" + }, + { + "name": "Bambu PLA Aero @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu PLA Aero @BBL X2D 0.4 nozzle.json" + }, { "name": "Bambu PLA Basic @BBL A1", "sub_path": "filament/Bambu PLA Basic @BBL A1.json" @@ -3681,6 +4989,18 @@ "name": "Bambu PLA Basic @BBL X1C 0.8 nozzle", "sub_path": "filament/Bambu PLA Basic @BBL X1C 0.8 nozzle.json" }, + { + "name": "Bambu PLA Basic @BBL X2D", + "sub_path": "filament/Bambu PLA Basic @BBL X2D.json" + }, + { + "name": "Bambu PLA Basic @BBL X2D 0.2 nozzle", + "sub_path": "filament/Bambu PLA Basic @BBL X2D 0.2 nozzle.json" + }, + { + "name": "Bambu PLA Basic @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu PLA Basic @BBL X2D 0.4 nozzle.json" + }, { "name": "Bambu PLA Dynamic @BBL A1", "sub_path": "filament/Bambu PLA Dynamic @BBL A1.json" @@ -3761,6 +5081,18 @@ "name": "Bambu PLA Dynamic @BBL X1C 0.8 nozzle", "sub_path": "filament/Bambu PLA Dynamic @BBL X1C 0.8 nozzle.json" }, + { + "name": "Bambu PLA Dynamic @BBL X2D", + "sub_path": "filament/Bambu PLA Dynamic @BBL X2D.json" + }, + { + "name": "Bambu PLA Dynamic @BBL X2D 0.2 nozzle", + "sub_path": "filament/Bambu PLA Dynamic @BBL X2D 0.2 nozzle.json" + }, + { + "name": "Bambu PLA Dynamic @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu PLA Dynamic @BBL X2D 0.4 nozzle.json" + }, { "name": "Bambu PLA Galaxy @BBL A1", "sub_path": "filament/Bambu PLA Galaxy @BBL A1.json" @@ -3841,6 +5173,18 @@ "name": "Bambu PLA Galaxy @BBL X1C 0.8 nozzle", "sub_path": "filament/Bambu PLA Galaxy @BBL X1C 0.8 nozzle.json" }, + { + "name": "Bambu PLA Galaxy @BBL X2D", + "sub_path": "filament/Bambu PLA Galaxy @BBL X2D.json" + }, + { + "name": "Bambu PLA Galaxy @BBL X2D 0.2 nozzle", + "sub_path": "filament/Bambu PLA Galaxy @BBL X2D 0.2 nozzle.json" + }, + { + "name": "Bambu PLA Galaxy @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu PLA Galaxy @BBL X2D 0.4 nozzle.json" + }, { "name": "Bambu PLA Glow @BBL A1", "sub_path": "filament/Bambu PLA Glow @BBL A1.json" @@ -3909,6 +5253,14 @@ "name": "Bambu PLA Glow @BBL X1E", "sub_path": "filament/Bambu PLA Glow @BBL X1E.json" }, + { + "name": "Bambu PLA Glow @BBL X2D", + "sub_path": "filament/Bambu PLA Glow @BBL X2D.json" + }, + { + "name": "Bambu PLA Glow @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu PLA Glow @BBL X2D 0.4 nozzle.json" + }, { "name": "Bambu PLA Lite @BBL A1", "sub_path": "filament/Bambu PLA Lite @BBL A1.json" @@ -3997,6 +5349,18 @@ "name": "Bambu PLA Lite @BBL X1C 0.8 nozzle", "sub_path": "filament/Bambu PLA Lite @BBL X1C 0.8 nozzle.json" }, + { + "name": "Bambu PLA Lite @BBL X2D", + "sub_path": "filament/Bambu PLA Lite @BBL X2D.json" + }, + { + "name": "Bambu PLA Lite @BBL X2D 0.2 nozzle", + "sub_path": "filament/Bambu PLA Lite @BBL X2D 0.2 nozzle.json" + }, + { + "name": "Bambu PLA Lite @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu PLA Lite @BBL X2D 0.4 nozzle.json" + }, { "name": "Bambu PLA Marble @BBL A1", "sub_path": "filament/Bambu PLA Marble @BBL A1.json" @@ -4037,6 +5401,14 @@ "name": "Bambu PLA Marble @BBL X1C", "sub_path": "filament/Bambu PLA Marble @BBL X1C.json" }, + { + "name": "Bambu PLA Marble @BBL X2D", + "sub_path": "filament/Bambu PLA Marble @BBL X2D.json" + }, + { + "name": "Bambu PLA Marble @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu PLA Marble @BBL X2D 0.4 nozzle.json" + }, { "name": "Bambu PLA Matte @BBL A1", "sub_path": "filament/Bambu PLA Matte @BBL A1.json" @@ -4141,6 +5513,18 @@ "name": "Bambu PLA Matte @BBL X1C 0.8 nozzle", "sub_path": "filament/Bambu PLA Matte @BBL X1C 0.8 nozzle.json" }, + { + "name": "Bambu PLA Matte @BBL X2D", + "sub_path": "filament/Bambu PLA Matte @BBL X2D.json" + }, + { + "name": "Bambu PLA Matte @BBL X2D 0.2 nozzle", + "sub_path": "filament/Bambu PLA Matte @BBL X2D 0.2 nozzle.json" + }, + { + "name": "Bambu PLA Matte @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu PLA Matte @BBL X2D 0.4 nozzle.json" + }, { "name": "Bambu PLA Metal @BBL A1", "sub_path": "filament/Bambu PLA Metal @BBL A1.json" @@ -4217,6 +5601,18 @@ "name": "Bambu PLA Metal @BBL X1C 0.2 nozzle", "sub_path": "filament/Bambu PLA Metal @BBL X1C 0.2 nozzle.json" }, + { + "name": "Bambu PLA Metal @BBL X2D", + "sub_path": "filament/Bambu PLA Metal @BBL X2D.json" + }, + { + "name": "Bambu PLA Metal @BBL X2D 0.2 nozzle", + "sub_path": "filament/Bambu PLA Metal @BBL X2D 0.2 nozzle.json" + }, + { + "name": "Bambu PLA Metal @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu PLA Metal @BBL X2D 0.4 nozzle.json" + }, { "name": "Bambu PLA Silk @BBL A1", "sub_path": "filament/Bambu PLA Silk @BBL A1.json" @@ -4293,6 +5689,18 @@ "name": "Bambu PLA Silk @BBL X1C 0.2 nozzle", "sub_path": "filament/Bambu PLA Silk @BBL X1C 0.2 nozzle.json" }, + { + "name": "Bambu PLA Silk @BBL X2D", + "sub_path": "filament/Bambu PLA Silk @BBL X2D.json" + }, + { + "name": "Bambu PLA Silk @BBL X2D 0.2 nozzle", + "sub_path": "filament/Bambu PLA Silk @BBL X2D 0.2 nozzle.json" + }, + { + "name": "Bambu PLA Silk @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu PLA Silk @BBL X2D 0.4 nozzle.json" + }, { "name": "Bambu PLA Silk+ @BBL A1", "sub_path": "filament/Bambu PLA Silk+ @BBL A1.json" @@ -4369,6 +5777,18 @@ "name": "Bambu PLA Silk+ @BBL X1C 0.2 nozzle", "sub_path": "filament/Bambu PLA Silk+ @BBL X1C 0.2 nozzle.json" }, + { + "name": "Bambu PLA Silk+ @BBL X2D", + "sub_path": "filament/Bambu PLA Silk+ @BBL X2D.json" + }, + { + "name": "Bambu PLA Silk+ @BBL X2D 0.2 nozzle", + "sub_path": "filament/Bambu PLA Silk+ @BBL X2D 0.2 nozzle.json" + }, + { + "name": "Bambu PLA Silk+ @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu PLA Silk+ @BBL X2D 0.4 nozzle.json" + }, { "name": "Bambu PLA Sparkle @BBL A1", "sub_path": "filament/Bambu PLA Sparkle @BBL A1.json" @@ -4413,6 +5833,14 @@ "name": "Bambu PLA Sparkle @BBL X1C", "sub_path": "filament/Bambu PLA Sparkle @BBL X1C.json" }, + { + "name": "Bambu PLA Sparkle @BBL X2D", + "sub_path": "filament/Bambu PLA Sparkle @BBL X2D.json" + }, + { + "name": "Bambu PLA Sparkle @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu PLA Sparkle @BBL X2D 0.4 nozzle.json" + }, { "name": "Bambu PLA Tough @BBL A1", "sub_path": "filament/Bambu PLA Tough @BBL A1.json" @@ -4481,6 +5909,18 @@ "name": "Bambu PLA Tough @BBL X1C 0.2 nozzle", "sub_path": "filament/Bambu PLA Tough @BBL X1C 0.2 nozzle.json" }, + { + "name": "Bambu PLA Tough @BBL X2D", + "sub_path": "filament/Bambu PLA Tough @BBL X2D.json" + }, + { + "name": "Bambu PLA Tough @BBL X2D 0.2 nozzle", + "sub_path": "filament/Bambu PLA Tough @BBL X2D 0.2 nozzle.json" + }, + { + "name": "Bambu PLA Tough @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu PLA Tough @BBL X2D 0.4 nozzle.json" + }, { "name": "Bambu PLA Tough+ @BBL A1", "sub_path": "filament/Bambu PLA Tough+ @BBL A1.json" @@ -4585,6 +6025,18 @@ "name": "Bambu PLA Tough+ @BBL X1C 0.8 nozzle", "sub_path": "filament/Bambu PLA Tough+ @BBL X1C 0.8 nozzle.json" }, + { + "name": "Bambu PLA Tough+ @BBL X2D", + "sub_path": "filament/Bambu PLA Tough+ @BBL X2D.json" + }, + { + "name": "Bambu PLA Tough+ @BBL X2D 0.2 nozzle", + "sub_path": "filament/Bambu PLA Tough+ @BBL X2D 0.2 nozzle.json" + }, + { + "name": "Bambu PLA Tough+ @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu PLA Tough+ @BBL X2D 0.4 nozzle.json" + }, { "name": "Bambu PLA Translucent @BBL A1", "sub_path": "filament/Bambu PLA Translucent @BBL A1.json" @@ -4681,6 +6133,22 @@ "name": "Bambu PLA Translucent @BBL X1C 0.8 nozzle", "sub_path": "filament/Bambu PLA Translucent @BBL X1C 0.8 nozzle.json" }, + { + "name": "Bambu PLA Translucent @BBL X2D 0.2 nozzle", + "sub_path": "filament/Bambu PLA Translucent @BBL X2D 0.2 nozzle.json" + }, + { + "name": "Bambu PLA Translucent @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu PLA Translucent @BBL X2D 0.4 nozzle.json" + }, + { + "name": "Bambu PLA Translucent @BBL X2D 0.6 nozzle", + "sub_path": "filament/Bambu PLA Translucent @BBL X2D 0.6 nozzle.json" + }, + { + "name": "Bambu PLA Translucent @BBL X2D 0.8 nozzle", + "sub_path": "filament/Bambu PLA Translucent @BBL X2D 0.8 nozzle.json" + }, { "name": "Bambu PLA Wood @BBL A1", "sub_path": "filament/Bambu PLA Wood @BBL A1.json" @@ -4737,6 +6205,14 @@ "name": "Bambu PLA Wood @BBL X1C 0.8 nozzle", "sub_path": "filament/Bambu PLA Wood @BBL X1C 0.8 nozzle.json" }, + { + "name": "Bambu PLA Wood @BBL X2D", + "sub_path": "filament/Bambu PLA Wood @BBL X2D.json" + }, + { + "name": "Bambu PLA Wood @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu PLA Wood @BBL X2D 0.4 nozzle.json" + }, { "name": "Bambu PLA-CF @BBL A1", "sub_path": "filament/Bambu PLA-CF @BBL A1.json" @@ -4797,6 +6273,14 @@ "name": "Bambu PLA-CF @BBL X1C 0.8 nozzle", "sub_path": "filament/Bambu PLA-CF @BBL X1C 0.8 nozzle.json" }, + { + "name": "Bambu PLA-CF @BBL X2D", + "sub_path": "filament/Bambu PLA-CF @BBL X2D.json" + }, + { + "name": "Bambu PLA-CF @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu PLA-CF @BBL X2D 0.4 nozzle.json" + }, { "name": "Bambu Support For PLA @BBL A1", "sub_path": "filament/Bambu Support For PLA @BBL A1.json" @@ -4861,6 +6345,18 @@ "name": "Bambu Support For PLA @BBL X1C 0.2 nozzle", "sub_path": "filament/Bambu Support For PLA @BBL X1C 0.2 nozzle.json" }, + { + "name": "Bambu Support For PLA @BBL X2D", + "sub_path": "filament/Bambu Support For PLA @BBL X2D.json" + }, + { + "name": "Bambu Support For PLA @BBL X2D 0.2 nozzle", + "sub_path": "filament/Bambu Support For PLA @BBL X2D 0.2 nozzle.json" + }, + { + "name": "Bambu Support For PLA @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu Support For PLA @BBL X2D 0.4 nozzle.json" + }, { "name": "Bambu Support For PLA/PETG @BBL A1", "sub_path": "filament/Bambu Support For PLA-PETG @BBL A1.json" @@ -4925,6 +6421,18 @@ "name": "Bambu Support For PLA/PETG @BBL X1C 0.2 nozzle", "sub_path": "filament/Bambu Support For PLA-PETG @BBL X1C 0.2 nozzle.json" }, + { + "name": "Bambu Support For PLA/PETG @BBL X2D", + "sub_path": "filament/Bambu Support For PLA-PETG @BBL X2D.json" + }, + { + "name": "Bambu Support For PLA/PETG @BBL X2D 0.2 nozzle", + "sub_path": "filament/Bambu Support For PLA-PETG @BBL X2D 0.2 nozzle.json" + }, + { + "name": "Bambu Support For PLA/PETG @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu Support For PLA-PETG @BBL X2D 0.4 nozzle.json" + }, { "name": "Bambu Support W @BBL A1", "sub_path": "filament/Bambu Support W @BBL A1.json" @@ -4993,6 +6501,18 @@ "name": "Bambu Support W @BBL X1C 0.2 nozzle", "sub_path": "filament/Bambu Support W @BBL X1C 0.2 nozzle.json" }, + { + "name": "Bambu Support W @BBL X2D", + "sub_path": "filament/Bambu Support W @BBL X2D.json" + }, + { + "name": "Bambu Support W @BBL X2D 0.2 nozzle", + "sub_path": "filament/Bambu Support W @BBL X2D 0.2 nozzle.json" + }, + { + "name": "Bambu Support W @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu Support W @BBL X2D 0.4 nozzle.json" + }, { "name": "Generic PLA", "sub_path": "filament/Generic PLA.json" @@ -5057,6 +6577,18 @@ "name": "Generic PLA @BBL P2S 0.2 nozzle", "sub_path": "filament/Generic PLA @BBL P2S 0.2 nozzle.json" }, + { + "name": "Generic PLA @BBL X2D", + "sub_path": "filament/Generic PLA @BBL X2D.json" + }, + { + "name": "Generic PLA @BBL X2D 0.2 nozzle", + "sub_path": "filament/Generic PLA @BBL X2D 0.2 nozzle.json" + }, + { + "name": "Generic PLA @BBL X2D 0.4 nozzle", + "sub_path": "filament/Generic PLA @BBL X2D 0.4 nozzle.json" + }, { "name": "Generic PLA High Speed @BBL A1", "sub_path": "filament/Generic PLA High Speed @BBL A1.json" @@ -5109,6 +6641,14 @@ "name": "Generic PLA High Speed @BBL X1C", "sub_path": "filament/Generic PLA High Speed @BBL X1C.json" }, + { + "name": "Generic PLA High Speed @BBL X2D", + "sub_path": "filament/Generic PLA High Speed @BBL X2D.json" + }, + { + "name": "Generic PLA High Speed @BBL X2D 0.4 nozzle", + "sub_path": "filament/Generic PLA High Speed @BBL X2D 0.4 nozzle.json" + }, { "name": "Generic PLA Silk", "sub_path": "filament/Generic PLA Silk.json" @@ -5141,6 +6681,14 @@ "name": "Generic PLA Silk @BBL P2S", "sub_path": "filament/Generic PLA Silk @BBL P2S.json" }, + { + "name": "Generic PLA Silk @BBL X2D", + "sub_path": "filament/Generic PLA Silk @BBL X2D.json" + }, + { + "name": "Generic PLA Silk @BBL X2D 0.4 nozzle", + "sub_path": "filament/Generic PLA Silk @BBL X2D 0.4 nozzle.json" + }, { "name": "Generic PLA-CF", "sub_path": "filament/Generic PLA-CF.json" @@ -5173,6 +6721,14 @@ "name": "Generic PLA-CF @BBL P2S", "sub_path": "filament/Generic PLA-CF @BBL P2S.json" }, + { + "name": "Generic PLA-CF @BBL X2D", + "sub_path": "filament/Generic PLA-CF @BBL X2D.json" + }, + { + "name": "Generic PLA-CF @BBL X2D 0.4 nozzle", + "sub_path": "filament/Generic PLA-CF @BBL X2D 0.4 nozzle.json" + }, { "name": "Numakers PLA+ @BBL A1", "sub_path": "filament/Numakers/Numakers PLA+ @BBL A1.json" @@ -5985,6 +7541,22 @@ "name": "Panchroma PLA UV Shift @BBL X1C 0.2 nozzle", "sub_path": "filament/Polymaker/Panchroma PLA UV Shift @BBL X1C 0.2 nozzle.json" }, + { + "name": "PolyLite CosPLA @BBL A1", + "sub_path": "filament/Polymaker/PolyLite CosPLA @BBL A1.json" + }, + { + "name": "PolyLite CosPLA @BBL A1M", + "sub_path": "filament/Polymaker/PolyLite CosPLA @BBL A1M.json" + }, + { + "name": "PolyLite CosPLA @BBL P1P", + "sub_path": "filament/Polymaker/PolyLite CosPLA @BBL P1P.json" + }, + { + "name": "PolyLite CosPLA @BBL X1", + "sub_path": "filament/Polymaker/PolyLite CosPLA @BBL X1.json" + }, { "name": "PolyLite PLA @BBL A1", "sub_path": "filament/Polymaker/PolyLite PLA @BBL A1.json" @@ -6037,6 +7609,70 @@ "name": "PolyLite PLA @BBL X1C", "sub_path": "filament/Polymaker/PolyLite PLA @BBL X1C.json" }, + { + "name": "PolyLite PLA Galaxy @BBL A1", + "sub_path": "filament/Polymaker/PolyLite PLA Galaxy @BBL A1.json" + }, + { + "name": "PolyLite PLA Galaxy @BBL A1M", + "sub_path": "filament/Polymaker/PolyLite PLA Galaxy @BBL A1M.json" + }, + { + "name": "PolyLite PLA Galaxy @BBL P1P", + "sub_path": "filament/Polymaker/PolyLite PLA Galaxy @BBL P1P.json" + }, + { + "name": "PolyLite PLA Galaxy @BBL X1", + "sub_path": "filament/Polymaker/PolyLite PLA Galaxy @BBL X1.json" + }, + { + "name": "PolyLite PLA Glow @BBL A1", + "sub_path": "filament/Polymaker/PolyLite PLA Glow @BBL A1.json" + }, + { + "name": "PolyLite PLA Glow @BBL A1M", + "sub_path": "filament/Polymaker/PolyLite PLA Glow @BBL A1M.json" + }, + { + "name": "PolyLite PLA Glow @BBL P1P", + "sub_path": "filament/Polymaker/PolyLite PLA Glow @BBL P1P.json" + }, + { + "name": "PolyLite PLA Glow @BBL X1", + "sub_path": "filament/Polymaker/PolyLite PLA Glow @BBL X1.json" + }, + { + "name": "PolyLite PLA Luminous @BBL A1", + "sub_path": "filament/Polymaker/PolyLite PLA Luminous @BBL A1.json" + }, + { + "name": "PolyLite PLA Luminous @BBL A1M", + "sub_path": "filament/Polymaker/PolyLite PLA Luminous @BBL A1M.json" + }, + { + "name": "PolyLite PLA Luminous @BBL P1P", + "sub_path": "filament/Polymaker/PolyLite PLA Luminous @BBL P1P.json" + }, + { + "name": "PolyLite PLA Luminous @BBL X1", + "sub_path": "filament/Polymaker/PolyLite PLA Luminous @BBL X1.json" + }, + { + "name": "PolyLite PLA Neon @BBL A1", + "sub_path": "filament/Polymaker/PolyLite PLA Neon @BBL A1.json" + }, + { + "name": "PolyLite PLA Neon @BBL A1M", + "sub_path": "filament/Polymaker/PolyLite PLA Neon @BBL A1M.json" + }, + { + "name": "PolyLite PLA Neon @BBL P1P", + "sub_path": "filament/Polymaker/PolyLite PLA Neon @BBL P1P.json" + }, + { + "name": "PolyLite PLA Neon @BBL X1", + "sub_path": "filament/Polymaker/PolyLite PLA Neon @BBL X1.json" + }, { "name": "PolyLite PLA Pro @BBL A1", "sub_path": "filament/Polymaker/PolyLite PLA Pro @BBL A1.json" @@ -6077,6 +7713,38 @@ "name": "PolyLite PLA Pro @BBL X1C 0.2 nozzle", "sub_path": "filament/Polymaker/PolyLite PLA Pro @BBL X1C 0.2 nozzle.json" }, + { + "name": "PolyLite PLA Starlight @BBL A1", + "sub_path": "filament/Polymaker/PolyLite PLA Starlight @BBL A1.json" + }, + { + "name": "PolyLite PLA Starlight @BBL A1M", + "sub_path": "filament/Polymaker/PolyLite PLA Starlight @BBL A1M.json" + }, + { + "name": "PolyLite PLA Starlight @BBL P1P", + "sub_path": "filament/Polymaker/PolyLite PLA Starlight @BBL P1P.json" + }, + { + "name": "PolyLite PLA Starlight @BBL X1", + "sub_path": "filament/Polymaker/PolyLite PLA Starlight @BBL X1.json" + }, + { + "name": "PolyLite PLA Translucent @BBL A1", + "sub_path": "filament/Polymaker/PolyLite PLA Translucent @BBL A1.json" + }, + { + "name": "PolyLite PLA Translucent @BBL A1M", + "sub_path": "filament/Polymaker/PolyLite PLA Translucent @BBL A1M.json" + }, + { + "name": "PolyLite PLA Translucent @BBL P1P", + "sub_path": "filament/Polymaker/PolyLite PLA Translucent @BBL P1P.json" + }, + { + "name": "PolyLite PLA Translucent @BBL X1", + "sub_path": "filament/Polymaker/PolyLite PLA Translucent @BBL X1.json" + }, { "name": "PolyTerra PLA @BBL A1", "sub_path": "filament/Polymaker/PolyTerra PLA @BBL A1.json" @@ -6129,6 +7797,38 @@ "name": "PolyTerra PLA @BBL X1C", "sub_path": "filament/Polymaker/PolyTerra PLA @BBL X1C.json" }, + { + "name": "PolyTerra PLA Marble @BBL A1", + "sub_path": "filament/Polymaker/PolyTerra PLA Marble @BBL A1.json" + }, + { + "name": "PolyTerra PLA Marble @BBL A1M", + "sub_path": "filament/Polymaker/PolyTerra PLA Marble @BBL A1M.json" + }, + { + "name": "PolyTerra PLA Marble @BBL P1P", + "sub_path": "filament/Polymaker/PolyTerra PLA Marble @BBL P1P.json" + }, + { + "name": "PolyTerra PLA Marble @BBL X1", + "sub_path": "filament/Polymaker/PolyTerra PLA Marble @BBL X1.json" + }, + { + "name": "PolyTerra PLA+ @BBL A1", + "sub_path": "filament/Polymaker/PolyTerra PLA+ @BBL A1.json" + }, + { + "name": "PolyTerra PLA+ @BBL A1M", + "sub_path": "filament/Polymaker/PolyTerra PLA+ @BBL A1M.json" + }, + { + "name": "PolyTerra PLA+ @BBL P1P", + "sub_path": "filament/Polymaker/PolyTerra PLA+ @BBL P1P.json" + }, + { + "name": "PolyTerra PLA+ @BBL X1", + "sub_path": "filament/Polymaker/PolyTerra PLA+ @BBL X1.json" + }, { "name": "Polymaker HT-PLA @BBL A1", "sub_path": "filament/Polymaker/Polymaker HT-PLA @BBL A1.json" @@ -6481,6 +8181,14 @@ "name": "Generic PP @BBL X1C", "sub_path": "filament/Generic PP @BBL X1C.json" }, + { + "name": "Generic PP @BBL X2D", + "sub_path": "filament/Generic PP @BBL X2D.json" + }, + { + "name": "Generic PP @BBL X2D 0.4 nozzle", + "sub_path": "filament/Generic PP @BBL X2D 0.4 nozzle.json" + }, { "name": "Generic PP-CF @BBL A1", "sub_path": "filament/Generic PP-CF @BBL A1.json" @@ -6505,6 +8213,14 @@ "name": "Generic PP-CF @BBL X1C", "sub_path": "filament/Generic PP-CF @BBL X1C.json" }, + { + "name": "Generic PP-CF @BBL X2D", + "sub_path": "filament/Generic PP-CF @BBL X2D.json" + }, + { + "name": "Generic PP-CF @BBL X2D 0.4 nozzle", + "sub_path": "filament/Generic PP-CF @BBL X2D 0.4 nozzle.json" + }, { "name": "Generic PP-GF @BBL A1", "sub_path": "filament/Generic PP-GF @BBL A1.json" @@ -6529,6 +8245,14 @@ "name": "Generic PP-GF @BBL X1C", "sub_path": "filament/Generic PP-GF @BBL X1C.json" }, + { + "name": "Generic PP-GF @BBL X2D", + "sub_path": "filament/Generic PP-GF @BBL X2D.json" + }, + { + "name": "Generic PP-GF @BBL X2D 0.4 nozzle", + "sub_path": "filament/Generic PP-GF @BBL X2D 0.4 nozzle.json" + }, { "name": "Bambu PPA-CF @BBL H2D", "sub_path": "filament/Bambu PPA-CF @BBL H2D.json" @@ -6553,6 +8277,14 @@ "name": "Bambu PPA-CF @BBL X1E", "sub_path": "filament/Bambu PPA-CF @BBL X1E.json" }, + { + "name": "Bambu PPA-CF @BBL X2D", + "sub_path": "filament/Bambu PPA-CF @BBL X2D.json" + }, + { + "name": "Bambu PPA-CF @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu PPA-CF @BBL X2D 0.4 nozzle.json" + }, { "name": "Generic PPA-CF @BBL H2D", "sub_path": "filament/Generic PPA-CF @BBL H2D.json" @@ -6577,6 +8309,14 @@ "name": "Generic PPA-CF @BBL X1E", "sub_path": "filament/Generic PPA-CF @BBL X1E.json" }, + { + "name": "Generic PPA-CF @BBL X2D", + "sub_path": "filament/Generic PPA-CF @BBL X2D.json" + }, + { + "name": "Generic PPA-CF @BBL X2D 0.4 nozzle", + "sub_path": "filament/Generic PPA-CF @BBL X2D 0.4 nozzle.json" + }, { "name": "Generic PPA-GF @BBL H2D", "sub_path": "filament/Generic PPA-GF @BBL H2D.json" @@ -6601,6 +8341,14 @@ "name": "Generic PPA-GF @BBL X1E", "sub_path": "filament/Generic PPA-GF @BBL X1E.json" }, + { + "name": "Generic PPA-GF @BBL X2D", + "sub_path": "filament/Generic PPA-GF @BBL X2D.json" + }, + { + "name": "Generic PPA-GF @BBL X2D 0.4 nozzle", + "sub_path": "filament/Generic PPA-GF @BBL X2D 0.4 nozzle.json" + }, { "name": "Bambu PPS-CF @BBL H2D", "sub_path": "filament/Bambu PPS-CF @BBL H2D.json" @@ -6697,6 +8445,14 @@ "name": "Bambu PVA @BBL X1C 0.2 nozzle", "sub_path": "filament/Bambu PVA @BBL X1C 0.2 nozzle.json" }, + { + "name": "Bambu PVA @BBL X2D", + "sub_path": "filament/Bambu PVA @BBL X2D.json" + }, + { + "name": "Bambu PVA @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu PVA @BBL X2D 0.4 nozzle.json" + }, { "name": "Generic PVA", "sub_path": "filament/Generic PVA.json" @@ -6749,10 +8505,122 @@ "name": "Generic PVA @BBL P2S 0.2 nozzle", "sub_path": "filament/Generic PVA @BBL P2S 0.2 nozzle.json" }, + { + "name": "Generic PVA @BBL X2D", + "sub_path": "filament/Generic PVA @BBL X2D.json" + }, + { + "name": "Generic PVA @BBL X2D 0.2 nozzle", + "sub_path": "filament/Generic PVA @BBL X2D 0.2 nozzle.json" + }, + { + "name": "Generic PVA @BBL X2D 0.4 nozzle", + "sub_path": "filament/Generic PVA @BBL X2D 0.4 nozzle.json" + }, { "name": "Generic SBS", "sub_path": "filament/Generic SBS.json" }, + { + "name": "BETA PEBA 90A @BBL A1", + "sub_path": "filament/BETA/BETA PEBA 90A @BBL A1.json" + }, + { + "name": "BETA PEBA 90A @BBL A1M", + "sub_path": "filament/BETA/BETA PEBA 90A @BBL A1M.json" + }, + { + "name": "BETA PEBA 90A @BBL H2D", + "sub_path": "filament/BETA/BETA PEBA 90A @BBL H2D.json" + }, + { + "name": "BETA PEBA 90A @BBL P1P", + "sub_path": "filament/BETA/BETA PEBA 90A @BBL P1P.json" + }, + { + "name": "BETA PEBA 90A @BBL X1C", + "sub_path": "filament/BETA/BETA PEBA 90A @BBL X1C.json" + }, + { + "name": "BETA TPU 90A @BBL A1", + "sub_path": "filament/BETA/BETA TPU 90A @BBL A1.json" + }, + { + "name": "BETA TPU 90A @BBL A1M", + "sub_path": "filament/BETA/BETA TPU 90A @BBL A1M.json" + }, + { + "name": "BETA TPU 90A @BBL H2D", + "sub_path": "filament/BETA/BETA TPU 90A @BBL H2D.json" + }, + { + "name": "BETA TPU 90A @BBL P1P", + "sub_path": "filament/BETA/BETA TPU 90A @BBL P1P.json" + }, + { + "name": "BETA TPU 90A @BBL X1C", + "sub_path": "filament/BETA/BETA TPU 90A @BBL X1C.json" + }, + { + "name": "BETA TPU 95A @BBL A1", + "sub_path": "filament/BETA/BETA TPU 95A @BBL A1.json" + }, + { + "name": "BETA TPU 95A @BBL A1M", + "sub_path": "filament/BETA/BETA TPU 95A @BBL A1M.json" + }, + { + "name": "BETA TPU 95A @BBL H2D", + "sub_path": "filament/BETA/BETA TPU 95A @BBL H2D.json" + }, + { + "name": "BETA TPU 95A @BBL P1P", + "sub_path": "filament/BETA/BETA TPU 95A @BBL P1P.json" + }, + { + "name": "BETA TPU 95A @BBL X1C", + "sub_path": "filament/BETA/BETA TPU 95A @BBL X1C.json" + }, + { + "name": "BETA TPU 98A @BBL A1", + "sub_path": "filament/BETA/BETA TPU 98A @BBL A1.json" + }, + { + "name": "BETA TPU 98A @BBL A1M", + "sub_path": "filament/BETA/BETA TPU 98A @BBL A1M.json" + }, + { + "name": "BETA TPU 98A @BBL H2D", + "sub_path": "filament/BETA/BETA TPU 98A @BBL H2D.json" + }, + { + "name": "BETA TPU 98A @BBL P1P", + "sub_path": "filament/BETA/BETA TPU 98A @BBL P1P.json" + }, + { + "name": "BETA TPU 98A @BBL X1C", + "sub_path": "filament/BETA/BETA TPU 98A @BBL X1C.json" + }, + { + "name": "BETA TPU Matte @BBL A1", + "sub_path": "filament/BETA/BETA TPU Matte @BBL A1.json" + }, + { + "name": "BETA TPU Matte @BBL A1M", + "sub_path": "filament/BETA/BETA TPU Matte @BBL A1M.json" + }, + { + "name": "BETA TPU Matte @BBL H2D", + "sub_path": "filament/BETA/BETA TPU Matte @BBL H2D.json" + }, + { + "name": "BETA TPU Matte @BBL P1P", + "sub_path": "filament/BETA/BETA TPU Matte @BBL P1P.json" + }, + { + "name": "BETA TPU Matte @BBL X1C", + "sub_path": "filament/BETA/BETA TPU Matte @BBL X1C.json" + }, { "name": "Bambu TPU 85A @BBL H2D", "sub_path": "filament/Bambu TPU 85A @BBL H2D.json" @@ -6789,6 +8657,14 @@ "name": "Bambu TPU 85A @BBL X1C", "sub_path": "filament/Bambu TPU 85A @BBL X1C.json" }, + { + "name": "Bambu TPU 85A @BBL X2D", + "sub_path": "filament/Bambu TPU 85A @BBL X2D.json" + }, + { + "name": "Bambu TPU 85A @BBL X2D 0.8 nozzle", + "sub_path": "filament/Bambu TPU 85A @BBL X2D 0.8 nozzle.json" + }, { "name": "Bambu TPU 90A @BBL A1", "sub_path": "filament/Bambu TPU 90A @BBL A1.json" @@ -6837,6 +8713,18 @@ "name": "Bambu TPU 90A @BBL X1C", "sub_path": "filament/Bambu TPU 90A @BBL X1C.json" }, + { + "name": "Bambu TPU 90A @BBL X2D", + "sub_path": "filament/Bambu TPU 90A @BBL X2D.json" + }, + { + "name": "Bambu TPU 90A @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu TPU 90A @BBL X2D 0.4 nozzle.json" + }, + { + "name": "Bambu TPU 90A @BBL X2D 0.8 nozzle", + "sub_path": "filament/Bambu TPU 90A @BBL X2D 0.8 nozzle.json" + }, { "name": "Bambu TPU 95A @BBL A1", "sub_path": "filament/Bambu TPU 95A @BBL A1.json" @@ -6873,6 +8761,14 @@ "name": "Bambu TPU 95A @BBL X1C", "sub_path": "filament/Bambu TPU 95A @BBL X1C.json" }, + { + "name": "Bambu TPU 95A @BBL X2D", + "sub_path": "filament/Bambu TPU 95A @BBL X2D.json" + }, + { + "name": "Bambu TPU 95A @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu TPU 95A @BBL X2D 0.4 nozzle.json" + }, { "name": "Bambu TPU 95A HF @BBL A1", "sub_path": "filament/Bambu TPU 95A HF @BBL A1.json" @@ -6917,6 +8813,14 @@ "name": "Bambu TPU 95A HF @BBL X1E", "sub_path": "filament/Bambu TPU 95A HF @BBL X1E.json" }, + { + "name": "Bambu TPU 95A HF @BBL X2D", + "sub_path": "filament/Bambu TPU 95A HF @BBL X2D.json" + }, + { + "name": "Bambu TPU 95A HF @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu TPU 95A HF @BBL X2D 0.4 nozzle.json" + }, { "name": "Bambu TPU for AMS @BBL A1", "sub_path": "filament/Bambu TPU for AMS @BBL A1.json" @@ -6949,6 +8853,14 @@ "name": "Bambu TPU for AMS @BBL X1C", "sub_path": "filament/Bambu TPU for AMS @BBL X1C.json" }, + { + "name": "Bambu TPU for AMS @BBL X2D", + "sub_path": "filament/Bambu TPU for AMS @BBL X2D.json" + }, + { + "name": "Bambu TPU for AMS @BBL X2D 0.4 nozzle", + "sub_path": "filament/Bambu TPU for AMS @BBL X2D 0.4 nozzle.json" + }, { "name": "Generic TPU", "sub_path": "filament/Generic TPU.json" @@ -6969,6 +8881,14 @@ "name": "Generic TPU @BBL P2S", "sub_path": "filament/Generic TPU @BBL P2S.json" }, + { + "name": "Generic TPU @BBL X2D", + "sub_path": "filament/Generic TPU @BBL X2D.json" + }, + { + "name": "Generic TPU @BBL X2D 0.4 nozzle", + "sub_path": "filament/Generic TPU @BBL X2D 0.4 nozzle.json" + }, { "name": "Generic TPU for AMS @BBL A1", "sub_path": "filament/Generic TPU for AMS @BBL A1.json" @@ -7001,6 +8921,14 @@ "name": "Generic TPU for AMS @BBL X1C", "sub_path": "filament/Generic TPU for AMS @BBL X1C.json" }, + { + "name": "Generic TPU for AMS @BBL X2D", + "sub_path": "filament/Generic TPU for AMS @BBL X2D.json" + }, + { + "name": "Generic TPU for AMS @BBL X2D 0.4 nozzle", + "sub_path": "filament/Generic TPU for AMS @BBL X2D 0.4 nozzle.json" + }, { "name": "Generic ABS @BBL H2DP", "sub_path": "filament/Generic ABS @BBL H2DP.json" @@ -7149,6 +9077,10 @@ "name": "Bambu PLA Glow @BBL X1C 0.2 nozzle", "sub_path": "filament/Bambu PLA Glow @BBL X1C 0.2 nozzle.json" }, + { + "name": "Bambu PLA Glow @BBL X2D 0.2 nozzle", + "sub_path": "filament/Bambu PLA Glow @BBL X2D 0.2 nozzle.json" + }, { "name": "Bambu PLA Glow @BBL X1E 0.2 nozzle", "sub_path": "filament/Bambu PLA Glow @BBL X1E 0.2 nozzle.json" @@ -7165,6 +9097,10 @@ "name": "Generic PLA High Speed @BBL X1C 0.2 nozzle", "sub_path": "filament/Generic PLA High Speed @BBL X1C 0.2 nozzle.json" }, + { + "name": "Generic PLA High Speed @BBL X2D 0.2 nozzle", + "sub_path": "filament/Generic PLA High Speed @BBL X2D 0.2 nozzle.json" + }, { "name": "Overture Matte PLA @BBL A1M 0.2 nozzle", "sub_path": "filament/Overture/Overture Matte PLA @BBL A1M 0.2 nozzle.json" @@ -7772,1710 +9708,6 @@ { "name": "fdm_filament_dual_common", "sub_path": "filament/fdm_filament_dual_common.json" - }, - { - "name": "BETA ABS @base", - "sub_path": "filament/BETA/BETA ABS @base.json" - }, - { - "name": "BETA ABS @BBL P1P", - "sub_path": "filament/BETA/BETA ABS @BBL P1P.json" - }, - { - "name": "BETA ABS @BBL A1", - "sub_path": "filament/BETA/BETA ABS @BBL A1.json" - }, - { - "name": "BETA ABS @BBL H2D", - "sub_path": "filament/BETA/BETA ABS @BBL H2D.json" - }, - { - "name": "BETA ABS @BBL X1C", - "sub_path": "filament/BETA/BETA ABS @BBL X1C.json" - }, - { - "name": "BETA ASA @base", - "sub_path": "filament/BETA/BETA ASA @base.json" - }, - { - "name": "BETA ASA @BBL A1 0.4 nozzle", - "sub_path": "filament/BETA/BETA ASA @BBL A1 0.4 nozzle.json" - }, - { - "name": "BETA ASA @BBL H2D 0.4 nozzle", - "sub_path": "filament/BETA/BETA ASA @BBL H2D 0.4 nozzle.json" - }, - { - "name": "BETA ASA @BBL X1C 0.4 nozzle", - "sub_path": "filament/BETA/BETA ASA @BBL X1C 0.4 nozzle.json" - }, - { - "name": "BETA PLA Silk+ @base", - "sub_path": "filament/BETA/BETA PLA Silk+ @base.json" - }, - { - "name": "BETA PLA Silk+ @BBL P1P", - "sub_path": "filament/BETA/BETA PLA Silk+ @BBL P1P.json" - }, - { - "name": "BETA PLA Silk+ @BBL X1C", - "sub_path": "filament/BETA/BETA PLA Silk+ @BBL X1C.json" - }, - { - "name": "BETA PLA Silk+ @BBL A1", - "sub_path": "filament/BETA/BETA PLA Silk+ @BBL A1.json" - }, - { - "name": "BETA PLA Silk+ @BBL A1M", - "sub_path": "filament/BETA/BETA PLA Silk+ @BBL A1M.json" - }, - { - "name": "BETA PLA Silk+ @BBL H2D", - "sub_path": "filament/BETA/BETA PLA Silk+ @BBL H2D.json" - }, - { - "name": "BETA PAHT-CF @base", - "sub_path": "filament/BETA/BETA PAHT-CF @base.json" - }, - { - "name": "BETA PAHT-CF @BBL P1P", - "sub_path": "filament/BETA/BETA PAHT-CF @BBL P1P.json" - }, - { - "name": "BETA PAHT-CF @BBL H2D", - "sub_path": "filament/BETA/BETA PAHT-CF @BBL H2D.json" - }, - { - "name": "BETA PAHT-CF @BBL X1C", - "sub_path": "filament/BETA/BETA PAHT-CF @BBL X1C.json" - }, - { - "name": "BETA PEBA 90A @base", - "sub_path": "filament/BETA/BETA PEBA 90A @base.json" - }, - { - "name": "BETA PEBA 90A @BBL A1", - "sub_path": "filament/BETA/BETA PEBA 90A @BBL A1.json" - }, - { - "name": "BETA PEBA 90A @BBL A1M", - "sub_path": "filament/BETA/BETA PEBA 90A @BBL A1M.json" - }, - { - "name": "BETA PEBA 90A @BBL H2D", - "sub_path": "filament/BETA/BETA PEBA 90A @BBL H2D.json" - }, - { - "name": "BETA PEBA 90A @BBL P1P", - "sub_path": "filament/BETA/BETA PEBA 90A @BBL P1P.json" - }, - { - "name": "BETA PEBA 90A @BBL X1C", - "sub_path": "filament/BETA/BETA PEBA 90A @BBL X1C.json" - }, - { - "name": "BETA PETG Heat Color Change @base", - "sub_path": "filament/BETA/BETA PETG Heat Color Change @base.json" - }, - { - "name": "BETA PETG Heat Color Change @BBL A1", - "sub_path": "filament/BETA/BETA PETG Heat Color Change @BBL A1.json" - }, - { - "name": "BETA PETG Heat Color Change @BBL A1M 0.4 nozzle", - "sub_path": "filament/BETA/BETA PETG Heat Color Change @BBL A1M 0.4 nozzle.json" - }, - { - "name": "BETA PETG Heat Color Change @BBL H2D 0.4 nozzle", - "sub_path": "filament/BETA/BETA PETG Heat Color Change @BBL H2D 0.4 nozzle.json" - }, - { - "name": "BETA PETG Heat Color Change @BBL X1C", - "sub_path": "filament/BETA/BETA PETG Heat Color Change @BBL X1C.json" - }, - { - "name": "BETA PETG Fluorescence @base", - "sub_path": "filament/BETA/BETA PETG Fluorescence @base.json" - }, - { - "name": "BETA PETG Fluorescence @BBL A1", - "sub_path": "filament/BETA/BETA PETG Fluorescence @BBL A1.json" - }, - { - "name": "BETA PETG Fluorescence @BBL A1M 0.4 nozzle", - "sub_path": "filament/BETA/BETA PETG Fluorescence @BBL A1M 0.4 nozzle.json" - }, - { - "name": "BETA PETG Fluorescence @BBL H2D 0.4 nozzle", - "sub_path": "filament/BETA/BETA PETG Fluorescence @BBL H2D 0.4 nozzle.json" - }, - { - "name": "BETA PETG Fluorescence @BBL X1C", - "sub_path": "filament/BETA/BETA PETG Fluorescence @BBL X1C.json" - }, - { - "name": "BETA PETG Glitter @base", - "sub_path": "filament/BETA/BETA PETG Glitter @base.json" - }, - { - "name": "BETA PETG Glitter @BBL A1", - "sub_path": "filament/BETA/BETA PETG Glitter @BBL A1.json" - }, - { - "name": "BETA PETG Glitter @BBL A1M 0.4 nozzle", - "sub_path": "filament/BETA/BETA PETG Glitter @BBL A1M 0.4 nozzle.json" - }, - { - "name": "BETA PETG Glitter @BBL H2D 0.4 nozzle", - "sub_path": "filament/BETA/BETA PETG Glitter @BBL H2D 0.4 nozzle.json" - }, - { - "name": "BETA PETG Glitter @BBL X1C", - "sub_path": "filament/BETA/BETA PETG Glitter @BBL X1C.json" - }, - { - "name": "BETA PETG Glow @base", - "sub_path": "filament/BETA/BETA PETG Glow @base.json" - }, - { - "name": "BETA PETG Glow @BBL A1", - "sub_path": "filament/BETA/BETA PETG Glow @BBL A1.json" - }, - { - "name": "BETA PETG Glow @BBL A1M 0.4 nozzle", - "sub_path": "filament/BETA/BETA PETG Glow @BBL A1M 0.4 nozzle.json" - }, - { - "name": "BETA PETG Glow @BBL H2D 0.4 nozzle", - "sub_path": "filament/BETA/BETA PETG Glow @BBL H2D 0.4 nozzle.json" - }, - { - "name": "BETA PETG Glow @BBL X1C", - "sub_path": "filament/BETA/BETA PETG Glow @BBL X1C.json" - }, - { - "name": "BETA PETG Gradient @base", - "sub_path": "filament/BETA/BETA PETG Gradient @base.json" - }, - { - "name": "BETA PETG Gradient @BBL A1", - "sub_path": "filament/BETA/BETA PETG Gradient @BBL A1.json" - }, - { - "name": "BETA PETG Gradient @BBL A1M 0.4 nozzle", - "sub_path": "filament/BETA/BETA PETG Gradient @BBL A1M 0.4 nozzle.json" - }, - { - "name": "BETA PETG Gradient @BBL H2D 0.4 nozzle", - "sub_path": "filament/BETA/BETA PETG Gradient @BBL H2D 0.4 nozzle.json" - }, - { - "name": "BETA PETG Gradient @BBL X1C", - "sub_path": "filament/BETA/BETA PETG Gradient @BBL X1C.json" - }, - { - "name": "BETA PETG HF @base", - "sub_path": "filament/BETA/BETA PETG HF @base.json" - }, - { - "name": "BETA PETG HF @BBL A1", - "sub_path": "filament/BETA/BETA PETG HF @BBL A1.json" - }, - { - "name": "BETA PETG HF @BBL A1M", - "sub_path": "filament/BETA/BETA PETG HF @BBL A1M.json" - }, - { - "name": "BETA PETG HF @BBL H2D 0.4 nozzle", - "sub_path": "filament/BETA/BETA PETG HF @BBL H2D 0.4 nozzle.json" - }, - { - "name": "BETA PETG HF @BBL X1C", - "sub_path": "filament/BETA/BETA PETG HF @BBL X1C.json" - }, - { - "name": "BETA PETG Marble @base", - "sub_path": "filament/BETA/BETA PETG Marble @base.json" - }, - { - "name": "BETA PETG Marble @BBL A1", - "sub_path": "filament/BETA/BETA PETG Marble @BBL A1.json" - }, - { - "name": "BETA PETG Marble @BBL A1M 0.4 nozzle", - "sub_path": "filament/BETA/BETA PETG Marble @BBL A1M 0.4 nozzle.json" - }, - { - "name": "BETA PETG Marble @BBL H2D 0.4 nozzle", - "sub_path": "filament/BETA/BETA PETG Marble @BBL H2D 0.4 nozzle.json" - }, - { - "name": "BETA PETG Marble @BBL X1C", - "sub_path": "filament/BETA/BETA PETG Marble @BBL X1C.json" - }, - { - "name": "BETA PETG Matte @base", - "sub_path": "filament/BETA/BETA PETG Matte @base.json" - }, - { - "name": "BETA PETG Matte @BBL H2D 0.4 nozzle", - "sub_path": "filament/BETA/BETA PETG Matte @BBL H2D 0.4 nozzle.json" - }, - { - "name": "BETA PETG Matte @BBL A1", - "sub_path": "filament/BETA/BETA PETG Matte @BBL A1.json" - }, - { - "name": "BETA PETG Matte @BBL A1M 0.4 nozzle", - "sub_path": "filament/BETA/BETA PETG Matte @BBL A1M 0.4 nozzle.json" - }, - { - "name": "BETA PETG Matte @BBL X1C", - "sub_path": "filament/BETA/BETA PETG Matte @BBL X1C.json" - }, - { - "name": "BETA PETG Metallic @base", - "sub_path": "filament/BETA/BETA PETG Metallic @base.json" - }, - { - "name": "BETA PETG Metallic @BBL H2D 0.4 nozzle", - "sub_path": "filament/BETA/BETA PETG Metallic @BBL H2D 0.4 nozzle.json" - }, - { - "name": "BETA PETG Metallic @BBL A1", - "sub_path": "filament/BETA/BETA PETG Metallic @BBL A1.json" - }, - { - "name": "BETA PETG Metallic @BBL A1M 0.4 nozzle", - "sub_path": "filament/BETA/BETA PETG Metallic @BBL A1M 0.4 nozzle.json" - }, - { - "name": "BETA PETG Metallic @BBL X1C", - "sub_path": "filament/BETA/BETA PETG Metallic @BBL X1C.json" - }, - { - "name": "BETA PETG Transparent @base", - "sub_path": "filament/BETA/BETA PETG Transparent @base.json" - }, - { - "name": "BETA PETG Transparent @BBL A1", - "sub_path": "filament/BETA/BETA PETG Transparent @BBL A1.json" - }, - { - "name": "BETA PETG Transparent @BBL A1M", - "sub_path": "filament/BETA/BETA PETG Transparent @BBL A1M.json" - }, - { - "name": "BETA PETG Transparent @BBL H2D 0.4 nozzle", - "sub_path": "filament/BETA/BETA PETG Transparent @BBL H2D 0.4 nozzle.json" - }, - { - "name": "BETA PETG Transparent @BBL X1C", - "sub_path": "filament/BETA/BETA PETG Transparent @BBL X1C.json" - }, - { - "name": "BETA PETG UV Color Change @base", - "sub_path": "filament/BETA/BETA PETG UV Color Change @base.json" - }, - { - "name": "BETA PETG UV Color Change @BBL A1M 0.4 nozzle", - "sub_path": "filament/BETA/BETA PETG UV Color Change @BBL A1M 0.4 nozzle.json" - }, - { - "name": "BETA PETG UV Color Change @BBL H2D 0.4 nozzle", - "sub_path": "filament/BETA/BETA PETG UV Color Change @BBL H2D 0.4 nozzle.json" - }, - { - "name": "BETA PETG UV Color Change @BBL A1", - "sub_path": "filament/BETA/BETA PETG UV Color Change @BBL A1.json" - }, - { - "name": "BETA PETG UV Color Change @BBL X1C", - "sub_path": "filament/BETA/BETA PETG UV Color Change @BBL X1C.json" - }, - { - "name": "BETA PETG-CF @base", - "sub_path": "filament/BETA/BETA PETG-CF @base.json" - }, - { - "name": "BETA PETG-CF @BBL P1P 0.4 nozzle", - "sub_path": "filament/BETA/BETA PETG-CF @BBL P1P 0.4 nozzle.json" - }, - { - "name": "BETA PETG-CF @BBL A1 0.4 nozzle", - "sub_path": "filament/BETA/BETA PETG-CF @BBL A1 0.4 nozzle.json" - }, - { - "name": "BETA PETG-CF @BBL A1M 0.4 nozzle", - "sub_path": "filament/BETA/BETA PETG-CF @BBL A1M 0.4 nozzle.json" - }, - { - "name": "BETA PETG-CF @BBL H2D 0.4 nozzle", - "sub_path": "filament/BETA/BETA PETG-CF @BBL H2D 0.4 nozzle.json" - }, - { - "name": "BETA PETG-CF @BBL X1C 0.4 nozzle", - "sub_path": "filament/BETA/BETA PETG-CF @BBL X1C 0.4 nozzle.json" - }, - { - "name": "BETA PETG-GF @base", - "sub_path": "filament/BETA/BETA PETG-GF @base.json" - }, - { - "name": "BETA PETG-GF @BBL P1P 0.4 nozzle", - "sub_path": "filament/BETA/BETA PETG-GF @BBL P1P 0.4 nozzle.json" - }, - { - "name": "BETA PETG-GF @BBL A1 0.4 nozzle", - "sub_path": "filament/BETA/BETA PETG-GF @BBL A1 0.4 nozzle.json" - }, - { - "name": "BETA PETG-GF @BBL A1M 0.4 nozzle", - "sub_path": "filament/BETA/BETA PETG-GF @BBL A1M 0.4 nozzle.json" - }, - { - "name": "BETA PETG-GF @BBL H2D 0.4 nozzle", - "sub_path": "filament/BETA/BETA PETG-GF @BBL H2D 0.4 nozzle.json" - }, - { - "name": "BETA PETG-GF @BBL X1C 0.4 nozzle", - "sub_path": "filament/BETA/BETA PETG-GF @BBL X1C 0.4 nozzle.json" - }, - { - "name": "BETA PETG @base", - "sub_path": "filament/BETA/BETA PETG @base.json" - }, - { - "name": "BETA PETG @BBL A1M 0.4 nozzle", - "sub_path": "filament/BETA/BETA PETG @BBL A1M 0.4 nozzle.json" - }, - { - "name": "BETA PETG @BBL H2D 0.4 nozzle", - "sub_path": "filament/BETA/BETA PETG @BBL H2D 0.4 nozzle.json" - }, - { - "name": "BETA PETG @BBL A1", - "sub_path": "filament/BETA/BETA PETG @BBL A1.json" - }, - { - "name": "BETA PETG @BBL X1C", - "sub_path": "filament/BETA/BETA PETG @BBL X1C.json" - }, - { - "name": "BETA PLA Basic @base", - "sub_path": "filament/BETA/BETA PLA Basic @base.json" - }, - { - "name": "BETA PLA Basic @BBL P1P", - "sub_path": "filament/BETA/BETA PLA Basic @BBL P1P.json" - }, - { - "name": "BETA PLA Basic @BBL A1", - "sub_path": "filament/BETA/BETA PLA Basic @BBL A1.json" - }, - { - "name": "BETA PLA Basic @BBL A1M", - "sub_path": "filament/BETA/BETA PLA Basic @BBL A1M.json" - }, - { - "name": "BETA PLA Basic @BBL H2D", - "sub_path": "filament/BETA/BETA PLA Basic @BBL H2D.json" - }, - { - "name": "BETA PLA Basic @BBL X1C", - "sub_path": "filament/BETA/BETA PLA Basic @BBL X1C.json" - }, - { - "name": "BETA PLA Chameleon @base", - "sub_path": "filament/BETA/BETA PLA Chameleon @base.json" - }, - { - "name": "BETA PLA Chameleon @BBL P1P", - "sub_path": "filament/BETA/BETA PLA Chameleon @BBL P1P.json" - }, - { - "name": "BETA PLA Chameleon @BBL A1", - "sub_path": "filament/BETA/BETA PLA Chameleon @BBL A1.json" - }, - { - "name": "BETA PLA Chameleon @BBL A1M", - "sub_path": "filament/BETA/BETA PLA Chameleon @BBL A1M.json" - }, - { - "name": "BETA PLA Chameleon @BBL H2D", - "sub_path": "filament/BETA/BETA PLA Chameleon @BBL H2D.json" - }, - { - "name": "BETA PLA Chameleon @BBL X1C", - "sub_path": "filament/BETA/BETA PLA Chameleon @BBL X1C.json" - }, - { - "name": "BETA PLA Heat Color Change @base", - "sub_path": "filament/BETA/BETA PLA Heat Color Change @base.json" - }, - { - "name": "BETA PLA Heat Color Change @BBL P1P", - "sub_path": "filament/BETA/BETA PLA Heat Color Change @BBL P1P.json" - }, - { - "name": "BETA PLA Heat Color Change @BBL A1", - "sub_path": "filament/BETA/BETA PLA Heat Color Change @BBL A1.json" - }, - { - "name": "BETA PLA Heat Color Change @BBL A1M", - "sub_path": "filament/BETA/BETA PLA Heat Color Change @BBL A1M.json" - }, - { - "name": "BETA PLA Heat Color Change @BBL H2D", - "sub_path": "filament/BETA/BETA PLA Heat Color Change @BBL H2D.json" - }, - { - "name": "BETA PLA Heat Color Change @BBL X1C", - "sub_path": "filament/BETA/BETA PLA Heat Color Change @BBL X1C.json" - }, - { - "name": "BETA PLA Fluorescence @base", - "sub_path": "filament/BETA/BETA PLA Fluorescence @base.json" - }, - { - "name": "BETA PLA Fluorescence @BBL P1P", - "sub_path": "filament/BETA/BETA PLA Fluorescence @BBL P1P.json" - }, - { - "name": "BETA PLA Fluorescence @BBL A1", - "sub_path": "filament/BETA/BETA PLA Fluorescence @BBL A1.json" - }, - { - "name": "BETA PLA Fluorescence @BBL A1M", - "sub_path": "filament/BETA/BETA PLA Fluorescence @BBL A1M.json" - }, - { - "name": "BETA PLA Fluorescence @BBL H2D", - "sub_path": "filament/BETA/BETA PLA Fluorescence @BBL H2D.json" - }, - { - "name": "BETA PLA Fluorescence @BBL X1C", - "sub_path": "filament/BETA/BETA PLA Fluorescence @BBL X1C.json" - }, - { - "name": "BETA PLA Glitter @base", - "sub_path": "filament/BETA/BETA PLA Glitter @base.json" - }, - { - "name": "BETA PLA Glitter @BBL A1", - "sub_path": "filament/BETA/BETA PLA Glitter @BBL A1.json" - }, - { - "name": "BETA PLA Glitter @BBL A1M", - "sub_path": "filament/BETA/BETA PLA Glitter @BBL A1M.json" - }, - { - "name": "BETA PLA Glitter @BBL H2D", - "sub_path": "filament/BETA/BETA PLA Glitter @BBL H2D.json" - }, - { - "name": "BETA PLA Glitter @BBL P1P", - "sub_path": "filament/BETA/BETA PLA Glitter @BBL P1P.json" - }, - { - "name": "BETA PLA Glitter @BBL X1C", - "sub_path": "filament/BETA/BETA PLA Glitter @BBL X1C.json" - }, - { - "name": "BETA PLA Glow @base", - "sub_path": "filament/BETA/BETA PLA Glow @base.json" - }, - { - "name": "BETA PLA Glow @BBL A1", - "sub_path": "filament/BETA/BETA PLA Glow @BBL A1.json" - }, - { - "name": "BETA PLA Glow @BBL A1M", - "sub_path": "filament/BETA/BETA PLA Glow @BBL A1M.json" - }, - { - "name": "BETA PLA Glow @BBL H2D", - "sub_path": "filament/BETA/BETA PLA Glow @BBL H2D.json" - }, - { - "name": "BETA PLA Glow @BBL P1P", - "sub_path": "filament/BETA/BETA PLA Glow @BBL P1P.json" - }, - { - "name": "BETA PLA Glow @BBL X1C", - "sub_path": "filament/BETA/BETA PLA Glow @BBL X1C.json" - }, - { - "name": "BETA PLA Gradient @base", - "sub_path": "filament/BETA/BETA PLA Gradient @base.json" - }, - { - "name": "BETA PLA Gradient @BBL H2D", - "sub_path": "filament/BETA/BETA PLA Gradient @BBL H2D.json" - }, - { - "name": "BETA PLA Gradient @BBL P1P", - "sub_path": "filament/BETA/BETA PLA Gradient @BBL P1P.json" - }, - { - "name": "BETA PLA Gradient @BBL A1", - "sub_path": "filament/BETA/BETA PLA Gradient @BBL A1.json" - }, - { - "name": "BETA PLA Gradient @BBL A1M", - "sub_path": "filament/BETA/BETA PLA Gradient @BBL A1M.json" - }, - { - "name": "BETA PLA Gradient @BBL X1C", - "sub_path": "filament/BETA/BETA PLA Gradient @BBL X1C.json" - }, - { - "name": "BETA PLA Marble @base", - "sub_path": "filament/BETA/BETA PLA Marble @base.json" - }, - { - "name": "BETA PLA Marble @BBL H2D", - "sub_path": "filament/BETA/BETA PLA Marble @BBL H2D.json" - }, - { - "name": "BETA PLA Marble @BBL P1P", - "sub_path": "filament/BETA/BETA PLA Marble @BBL P1P.json" - }, - { - "name": "BETA PLA Marble @BBL A1", - "sub_path": "filament/BETA/BETA PLA Marble @BBL A1.json" - }, - { - "name": "BETA PLA Marble @BBL A1M", - "sub_path": "filament/BETA/BETA PLA Marble @BBL A1M.json" - }, - { - "name": "BETA PLA Marble @BBL X1C", - "sub_path": "filament/BETA/BETA PLA Marble @BBL X1C.json" - }, - { - "name": "BETA PLA Matte @base", - "sub_path": "filament/BETA/BETA PLA Matte @base.json" - }, - { - "name": "BETA PLA Matte @BBL P1P", - "sub_path": "filament/BETA/BETA PLA Matte @BBL P1P.json" - }, - { - "name": "BETA PLA Matte @BBL A1", - "sub_path": "filament/BETA/BETA PLA Matte @BBL A1.json" - }, - { - "name": "BETA PLA Matte @BBL A1M", - "sub_path": "filament/BETA/BETA PLA Matte @BBL A1M.json" - }, - { - "name": "BETA PLA Matte @BBL H2D", - "sub_path": "filament/BETA/BETA PLA Matte @BBL H2D.json" - }, - { - "name": "BETA PLA Matte @BBL X1C", - "sub_path": "filament/BETA/BETA PLA Matte @BBL X1C.json" - }, - { - "name": "BETA PLA Metal @base", - "sub_path": "filament/BETA/BETA PLA Metal @base.json" - }, - { - "name": "BETA PLA Metal @BBL P1P", - "sub_path": "filament/BETA/BETA PLA Metal @BBL P1P.json" - }, - { - "name": "BETA PLA Metal @BBL A1", - "sub_path": "filament/BETA/BETA PLA Metal @BBL A1.json" - }, - { - "name": "BETA PLA Metal @BBL A1M", - "sub_path": "filament/BETA/BETA PLA Metal @BBL A1M.json" - }, - { - "name": "BETA PLA Metal @BBL H2D", - "sub_path": "filament/BETA/BETA PLA Metal @BBL H2D.json" - }, - { - "name": "BETA PLA Metal @BBL X1C", - "sub_path": "filament/BETA/BETA PLA Metal @BBL X1C.json" - }, - { - "name": "BETA PLA Metallic @base", - "sub_path": "filament/BETA/BETA PLA Metallic @base.json" - }, - { - "name": "BETA PLA Metallic @BBL H2D", - "sub_path": "filament/BETA/BETA PLA Metallic @BBL H2D.json" - }, - { - "name": "BETA PLA Metallic @BBL P1P", - "sub_path": "filament/BETA/BETA PLA Metallic @BBL P1P.json" - }, - { - "name": "BETA PLA Metallic @BBL A1", - "sub_path": "filament/BETA/BETA PLA Metallic @BBL A1.json" - }, - { - "name": "BETA PLA Metallic @BBL A1M", - "sub_path": "filament/BETA/BETA PLA Metallic @BBL A1M.json" - }, - { - "name": "BETA PLA Metallic @BBL X1C", - "sub_path": "filament/BETA/BETA PLA Metallic @BBL X1C.json" - }, - { - "name": "BETA PLA PRO @base", - "sub_path": "filament/BETA/BETA PLA PRO @base.json" - }, - { - "name": "BETA PLA PRO @BBL P1P", - "sub_path": "filament/BETA/BETA PLA PRO @BBL P1P.json" - }, - { - "name": "BETA PLA PRO @BBL A1", - "sub_path": "filament/BETA/BETA PLA PRO @BBL A1.json" - }, - { - "name": "BETA PLA PRO @BBL A1M", - "sub_path": "filament/BETA/BETA PLA PRO @BBL A1M.json" - }, - { - "name": "BETA PLA PRO @BBL H2D", - "sub_path": "filament/BETA/BETA PLA PRO @BBL H2D.json" - }, - { - "name": "BETA PLA PRO @BBL X1C", - "sub_path": "filament/BETA/BETA PLA PRO @BBL X1C.json" - }, - { - "name": "BETA PLA Silk @base", - "sub_path": "filament/BETA/BETA PLA Silk @base.json" - }, - { - "name": "BETA PLA Silk @BBL P1P", - "sub_path": "filament/BETA/BETA PLA Silk @BBL P1P.json" - }, - { - "name": "BETA PLA Silk @BBL A1", - "sub_path": "filament/BETA/BETA PLA Silk @BBL A1.json" - }, - { - "name": "BETA PLA Silk @BBL A1M", - "sub_path": "filament/BETA/BETA PLA Silk @BBL A1M.json" - }, - { - "name": "BETA PLA Silk @BBL H2D", - "sub_path": "filament/BETA/BETA PLA Silk @BBL H2D.json" - }, - { - "name": "BETA PLA Silk @BBL X1C", - "sub_path": "filament/BETA/BETA PLA Silk @BBL X1C.json" - }, - { - "name": "BETA PLA Transparent @base", - "sub_path": "filament/BETA/BETA PLA Transparent @base.json" - }, - { - "name": "BETA PLA Transparent @BBL A1", - "sub_path": "filament/BETA/BETA PLA Transparent @BBL A1.json" - }, - { - "name": "BETA PLA Transparent @BBL A1M", - "sub_path": "filament/BETA/BETA PLA Transparent @BBL A1M.json" - }, - { - "name": "BETA PLA Transparent @BBL H2D", - "sub_path": "filament/BETA/BETA PLA Transparent @BBL H2D.json" - }, - { - "name": "BETA PLA Transparent @BBL P1P", - "sub_path": "filament/BETA/BETA PLA Transparent @BBL P1P.json" - }, - { - "name": "BETA PLA Transparent @BBL X1C", - "sub_path": "filament/BETA/BETA PLA Transparent @BBL X1C.json" - }, - { - "name": "BETA PLA UV Color Change @base", - "sub_path": "filament/BETA/BETA PLA UV Color Change @base.json" - }, - { - "name": "BETA PLA UV Color Change @BBL P1P", - "sub_path": "filament/BETA/BETA PLA UV Color Change @BBL P1P.json" - }, - { - "name": "BETA PLA UV Color Change @BBL A1", - "sub_path": "filament/BETA/BETA PLA UV Color Change @BBL A1.json" - }, - { - "name": "BETA PLA UV Color Change @BBL A1M", - "sub_path": "filament/BETA/BETA PLA UV Color Change @BBL A1M.json" - }, - { - "name": "BETA PLA UV Color Change @BBL H2D", - "sub_path": "filament/BETA/BETA PLA UV Color Change @BBL H2D.json" - }, - { - "name": "BETA PLA UV Color Change @BBL X1C", - "sub_path": "filament/BETA/BETA PLA UV Color Change @BBL X1C.json" - }, - { - "name": "BETA PLA Youth @base", - "sub_path": "filament/BETA/BETA PLA Youth @base.json" - }, - { - "name": "BETA PLA Youth @BBL X1C", - "sub_path": "filament/BETA/BETA PLA Youth @BBL X1C.json" - }, - { - "name": "BETA PLA Youth @BBL A1M", - "sub_path": "filament/BETA/BETA PLA Youth @BBL A1M.json" - }, - { - "name": "BETA PLA Youth @BBL P1P", - "sub_path": "filament/BETA/BETA PLA Youth @BBL P1P.json" - }, - { - "name": "BETA PLA Youth @BBL A1", - "sub_path": "filament/BETA/BETA PLA Youth @BBL A1.json" - }, - { - "name": "BETA PLA Youth @BBL H2D", - "sub_path": "filament/BETA/BETA PLA Youth @BBL H2D.json" - }, - { - "name": "BETA PLA-CF @base", - "sub_path": "filament/BETA/BETA PLA-CF @base.json" - }, - { - "name": "BETA PLA-CF @BBL A1", - "sub_path": "filament/BETA/BETA PLA-CF @BBL A1.json" - }, - { - "name": "BETA PLA-CF @BBL A1M", - "sub_path": "filament/BETA/BETA PLA-CF @BBL A1M.json" - }, - { - "name": "BETA PLA-CF @BBL H2D 0.4 nozzle", - "sub_path": "filament/BETA/BETA PLA-CF @BBL H2D 0.4 nozzle.json" - }, - { - "name": "BETA PLA-CF @BBL P1P", - "sub_path": "filament/BETA/BETA PLA-CF @BBL P1P.json" - }, - { - "name": "BETA PLA-CF @BBL X1C", - "sub_path": "filament/BETA/BETA PLA-CF @BBL X1C.json" - }, - { - "name": "BETA PLA High Temp @base", - "sub_path": "filament/BETA/BETA PLA High Temp @base.json" - }, - { - "name": "BETA PLA High Temp @BBL P1P", - "sub_path": "filament/BETA/BETA PLA High Temp @BBL P1P.json" - }, - { - "name": "BETA PLA High Temp @BBL X1C", - "sub_path": "filament/BETA/BETA PLA High Temp @BBL X1C.json" - }, - { - "name": "BETA PLA High Temp @BBL A1", - "sub_path": "filament/BETA/BETA PLA High Temp @BBL A1.json" - }, - { - "name": "BETA PLA High Temp @BBL A1M", - "sub_path": "filament/BETA/BETA PLA High Temp @BBL A1M.json" - }, - { - "name": "BETA PLA High Temp @BBL H2D", - "sub_path": "filament/BETA/BETA PLA High Temp @BBL H2D.json" - }, - { - "name": "BETA PLA Wood @base", - "sub_path": "filament/BETA/BETA PLA Wood @base.json" - }, - { - "name": "BETA PLA Wood @BBL A1", - "sub_path": "filament/BETA/BETA PLA Wood @BBL A1.json" - }, - { - "name": "BETA PLA Wood @BBL A1M", - "sub_path": "filament/BETA/BETA PLA Wood @BBL A1M.json" - }, - { - "name": "BETA PLA Wood @BBL H2D", - "sub_path": "filament/BETA/BETA PLA Wood @BBL H2D.json" - }, - { - "name": "BETA PLA Wood @BBL P1P", - "sub_path": "filament/BETA/BETA PLA Wood @BBL P1P.json" - }, - { - "name": "BETA PLA Wood @BBL X1C", - "sub_path": "filament/BETA/BETA PLA Wood @BBL X1C.json" - }, - { - "name": "BETA TPU Matte @base", - "sub_path": "filament/BETA/BETA TPU Matte @base.json" - }, - { - "name": "BETA TPU Matte @BBL A1", - "sub_path": "filament/BETA/BETA TPU Matte @BBL A1.json" - }, - { - "name": "BETA TPU Matte @BBL A1M", - "sub_path": "filament/BETA/BETA TPU Matte @BBL A1M.json" - }, - { - "name": "BETA TPU Matte @BBL H2D", - "sub_path": "filament/BETA/BETA TPU Matte @BBL H2D.json" - }, - { - "name": "BETA TPU Matte @BBL P1P", - "sub_path": "filament/BETA/BETA TPU Matte @BBL P1P.json" - }, - { - "name": "BETA TPU Matte @BBL X1C", - "sub_path": "filament/BETA/BETA TPU Matte @BBL X1C.json" - }, - { - "name": "BETA TPU 95A @base", - "sub_path": "filament/BETA/BETA TPU 95A @base.json" - }, - { - "name": "BETA TPU 95A @BBL A1", - "sub_path": "filament/BETA/BETA TPU 95A @BBL A1.json" - }, - { - "name": "BETA TPU 95A @BBL A1M", - "sub_path": "filament/BETA/BETA TPU 95A @BBL A1M.json" - }, - { - "name": "BETA TPU 95A @BBL H2D", - "sub_path": "filament/BETA/BETA TPU 95A @BBL H2D.json" - }, - { - "name": "BETA TPU 95A @BBL P1P", - "sub_path": "filament/BETA/BETA TPU 95A @BBL P1P.json" - }, - { - "name": "BETA TPU 95A @BBL X1C", - "sub_path": "filament/BETA/BETA TPU 95A @BBL X1C.json" - }, - { - "name": "BETA TPU 98A @base", - "sub_path": "filament/BETA/BETA TPU 98A @base.json" - }, - { - "name": "BETA TPU 98A @BBL A1", - "sub_path": "filament/BETA/BETA TPU 98A @BBL A1.json" - }, - { - "name": "BETA TPU 98A @BBL A1M", - "sub_path": "filament/BETA/BETA TPU 98A @BBL A1M.json" - }, - { - "name": "BETA TPU 98A @BBL H2D", - "sub_path": "filament/BETA/BETA TPU 98A @BBL H2D.json" - }, - { - "name": "BETA TPU 98A @BBL P1P", - "sub_path": "filament/BETA/BETA TPU 98A @BBL P1P.json" - }, - { - "name": "BETA TPU 98A @BBL X1C", - "sub_path": "filament/BETA/BETA TPU 98A @BBL X1C.json" - }, - { - "name": "BETA TPU 90A @base", - "sub_path": "filament/BETA/BETA TPU 90A @base.json" - }, - { - "name": "BETA TPU 90A @BBL A1", - "sub_path": "filament/BETA/BETA TPU 90A @BBL A1.json" - }, - { - "name": "BETA TPU 90A @BBL A1M", - "sub_path": "filament/BETA/BETA TPU 90A @BBL A1M.json" - }, - { - "name": "BETA TPU 90A @BBL H2D", - "sub_path": "filament/BETA/BETA TPU 90A @BBL H2D.json" - }, - { - "name": "BETA TPU 90A @BBL P1P", - "sub_path": "filament/BETA/BETA TPU 90A @BBL P1P.json" - }, - { - "name": "BETA TPU 90A @BBL X1C", - "sub_path": "filament/BETA/BETA TPU 90A @BBL X1C.json" - }, - { - "name": "BETA PLA High Speed @base", - "sub_path": "filament/BETA/BETA PLA High Speed @base.json" - }, - { - "name": "BETA PLA High Speed @BBL A1", - "sub_path": "filament/BETA/BETA PLA High Speed @BBL A1.json" - }, - { - "name": "BETA PLA High Speed @BBL A1M", - "sub_path": "filament/BETA/BETA PLA High Speed @BBL A1M.json" - }, - { - "name": "BETA PLA High Speed @BBL H2D", - "sub_path": "filament/BETA/BETA PLA High Speed @BBL H2D.json" - }, - { - "name": "BETA PLA High Speed @BBL P1P", - "sub_path": "filament/BETA/BETA PLA High Speed @BBL P1P.json" - }, - { - "name": "BETA PLA High Speed @BBL X1C", - "sub_path": "filament/BETA/BETA PLA High Speed @BBL X1C.json" - }, - { - "name": "BETA HIPS @base", - "sub_path": "filament/BETA/BETA HIPS @base.json" - }, - { - "name": "BETA HIPS @BBL H2D", - "sub_path": "filament/BETA/BETA HIPS @BBL H2D.json" - }, - { - "name": "BETA HIPS @BBL X1C", - "sub_path": "filament/BETA/BETA HIPS @BBL X1C.json" - }, - { - "name": "Bambu ABS @BBL X2D", - "sub_path": "filament/Bambu ABS @BBL X2D.json" - }, - { - "name": "Bambu ABS @BBL X2D 0.2 nozzle", - "sub_path": "filament/Bambu ABS @BBL X2D 0.2 nozzle.json" - }, - { - "name": "Bambu ABS @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu ABS @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu ABS @BBL X2D 0.8 nozzle", - "sub_path": "filament/Bambu ABS @BBL X2D 0.8 nozzle.json" - }, - { - "name": "Bambu ABS-GF @BBL X2D", - "sub_path": "filament/Bambu ABS-GF @BBL X2D.json" - }, - { - "name": "Bambu ABS-GF @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu ABS-GF @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu Support for ABS @BBL X2D", - "sub_path": "filament/Bambu Support for ABS @BBL X2D.json" - }, - { - "name": "Bambu Support for ABS @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu Support for ABS @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Generic ABS @BBL X2D", - "sub_path": "filament/Generic ABS @BBL X2D.json" - }, - { - "name": "Generic ABS @BBL X2D 0.2 nozzle", - "sub_path": "filament/Generic ABS @BBL X2D 0.2 nozzle.json" - }, - { - "name": "Generic ABS @BBL X2D 0.4 nozzle", - "sub_path": "filament/Generic ABS @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu ASA @BBL X2D", - "sub_path": "filament/Bambu ASA @BBL X2D.json" - }, - { - "name": "Bambu ASA @BBL X2D 0.2 nozzle", - "sub_path": "filament/Bambu ASA @BBL X2D 0.2 nozzle.json" - }, - { - "name": "Bambu ASA @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu ASA @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu ASA-Aero @BBL X2D", - "sub_path": "filament/Bambu ASA-Aero @BBL X2D.json" - }, - { - "name": "Bambu ASA-Aero @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu ASA-Aero @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu ASA-CF @BBL X2D", - "sub_path": "filament/Bambu ASA-CF @BBL X2D.json" - }, - { - "name": "Bambu ASA-CF @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu ASA-CF @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Generic ASA @BBL X2D", - "sub_path": "filament/Generic ASA @BBL X2D.json" - }, - { - "name": "Generic ASA @BBL X2D 0.2 nozzle", - "sub_path": "filament/Generic ASA @BBL X2D 0.2 nozzle.json" - }, - { - "name": "Generic ASA @BBL X2D 0.4 nozzle", - "sub_path": "filament/Generic ASA @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Generic BVOH @BBL X2D", - "sub_path": "filament/Generic BVOH @BBL X2D.json" - }, - { - "name": "Generic BVOH @BBL X2D 0.4 nozzle", - "sub_path": "filament/Generic BVOH @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Generic EVA @BBL X2D", - "sub_path": "filament/Generic EVA @BBL X2D.json" - }, - { - "name": "Generic EVA @BBL X2D 0.4 nozzle", - "sub_path": "filament/Generic EVA @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Generic HIPS @BBL X2D", - "sub_path": "filament/Generic HIPS @BBL X2D.json" - }, - { - "name": "Generic HIPS @BBL X2D 0.2 nozzle", - "sub_path": "filament/Generic HIPS @BBL X2D 0.2 nozzle.json" - }, - { - "name": "Generic HIPS @BBL X2D 0.4 nozzle", - "sub_path": "filament/Generic HIPS @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu PA-CF @BBL X2D", - "sub_path": "filament/Bambu PA-CF @BBL X2D.json" - }, - { - "name": "Bambu PA-CF @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu PA-CF @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu PA6-CF @BBL X2D", - "sub_path": "filament/Bambu PA6-CF @BBL X2D.json" - }, - { - "name": "Bambu PA6-CF @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu PA6-CF @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu PA6-GF @BBL X2D", - "sub_path": "filament/Bambu PA6-GF @BBL X2D.json" - }, - { - "name": "Bambu PA6-GF @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu PA6-GF @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu PAHT-CF @BBL X2D", - "sub_path": "filament/Bambu PAHT-CF @BBL X2D.json" - }, - { - "name": "Bambu PAHT-CF @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu PAHT-CF @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu Support For PA/PET @BBL X2D", - "sub_path": "filament/Bambu Support For PA PET @BBL X2D.json" - }, - { - "name": "Bambu Support For PA/PET @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu Support For PA PET @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu Support G @BBL X2D", - "sub_path": "filament/Bambu Support G @BBL X2D.json" - }, - { - "name": "Bambu Support G @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu Support G @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Generic PA @BBL X2D", - "sub_path": "filament/Generic PA @BBL X2D.json" - }, - { - "name": "Generic PA @BBL X2D 0.4 nozzle", - "sub_path": "filament/Generic PA @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Generic PA-CF @BBL X2D", - "sub_path": "filament/Generic PA-CF @BBL X2D.json" - }, - { - "name": "Generic PA-CF @BBL X2D 0.4 nozzle", - "sub_path": "filament/Generic PA-CF @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu PC @BBL X2D", - "sub_path": "filament/Bambu PC @BBL X2D.json" - }, - { - "name": "Bambu PC @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu PC @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu PC @BBL X2D 0.8 nozzle", - "sub_path": "filament/Bambu PC @BBL X2D 0.8 nozzle.json" - }, - { - "name": "Bambu PC FR @BBL X2D", - "sub_path": "filament/Bambu PC FR @BBL X2D.json" - }, - { - "name": "Bambu PC FR @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu PC FR @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu PC FR @BBL X2D 0.8 nozzle", - "sub_path": "filament/Bambu PC FR @BBL X2D 0.8 nozzle.json" - }, - { - "name": "Generic PC @BBL X2D", - "sub_path": "filament/Generic PC @BBL X2D.json" - }, - { - "name": "Generic PC @BBL X2D 0.2 nozzle", - "sub_path": "filament/Generic PC @BBL X2D 0.2 nozzle.json" - }, - { - "name": "Generic PC @BBL X2D 0.4 nozzle", - "sub_path": "filament/Generic PC @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Generic PCTG @BBL X2D", - "sub_path": "filament/Generic PCTG @BBL X2D.json" - }, - { - "name": "Generic PCTG @BBL X2D 0.4 nozzle", - "sub_path": "filament/Generic PCTG @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Generic PE @BBL X2D", - "sub_path": "filament/Generic PE @BBL X2D.json" - }, - { - "name": "Generic PE @BBL X2D 0.4 nozzle", - "sub_path": "filament/Generic PE @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Generic PE-CF @BBL X2D", - "sub_path": "filament/Generic PE-CF @BBL X2D.json" - }, - { - "name": "Generic PE-CF @BBL X2D 0.4 nozzle", - "sub_path": "filament/Generic PE-CF @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu PET-CF @BBL X2D", - "sub_path": "filament/Bambu PET-CF @BBL X2D.json" - }, - { - "name": "Bambu PET-CF @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu PET-CF @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu PETG Basic @BBL X2D", - "sub_path": "filament/Bambu PETG Basic @BBL X2D.json" - }, - { - "name": "Bambu PETG Basic @BBL X2D 0.2 nozzle", - "sub_path": "filament/Bambu PETG Basic @BBL X2D 0.2 nozzle.json" - }, - { - "name": "Bambu PETG Basic @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu PETG Basic @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu PETG HF @BBL X2D", - "sub_path": "filament/Bambu PETG HF @BBL X2D.json" - }, - { - "name": "Bambu PETG HF @BBL X2D 0.2 nozzle", - "sub_path": "filament/Bambu PETG HF @BBL X2D 0.2 nozzle.json" - }, - { - "name": "Bambu PETG HF @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu PETG HF @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu PETG Translucent @BBL X2D", - "sub_path": "filament/Bambu PETG Translucent @BBL X2D.json" - }, - { - "name": "Bambu PETG Translucent @BBL X2D 0.2 nozzle", - "sub_path": "filament/Bambu PETG Translucent @BBL X2D 0.2 nozzle.json" - }, - { - "name": "Bambu PETG Translucent @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu PETG Translucent @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu PETG Translucent @BBL X2D 0.8 nozzle", - "sub_path": "filament/Bambu PETG Translucent @BBL X2D 0.8 nozzle.json" - }, - { - "name": "Bambu PETG-CF @BBL X2D", - "sub_path": "filament/Bambu PETG-CF @BBL X2D.json" - }, - { - "name": "Bambu PETG-CF @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu PETG-CF @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu PETG-CF @BBL X2D 0.8 nozzle", - "sub_path": "filament/Bambu PETG-CF @BBL X2D 0.8 nozzle.json" - }, - { - "name": "Generic PETG @BBL X2D", - "sub_path": "filament/Generic PETG @BBL X2D.json" - }, - { - "name": "Generic PETG @BBL X2D 0.2 nozzle", - "sub_path": "filament/Generic PETG @BBL X2D 0.2 nozzle.json" - }, - { - "name": "Generic PETG @BBL X2D 0.4 nozzle", - "sub_path": "filament/Generic PETG @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Generic PETG HF @BBL X2D", - "sub_path": "filament/Generic PETG HF @BBL X2D.json" - }, - { - "name": "Generic PETG HF @BBL X2D 0.2 nozzle", - "sub_path": "filament/Generic PETG HF @BBL X2D 0.2 nozzle.json" - }, - { - "name": "Generic PETG HF @BBL X2D 0.4 nozzle", - "sub_path": "filament/Generic PETG HF @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Generic PETG-CF @BBL X2D", - "sub_path": "filament/Generic PETG-CF @BBL X2D.json" - }, - { - "name": "Generic PETG-CF @BBL X2D 0.4 nozzle", - "sub_path": "filament/Generic PETG-CF @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Generic PHA @BBL X2D", - "sub_path": "filament/Generic PHA @BBL X2D.json" - }, - { - "name": "Generic PHA @BBL X2D 0.4 nozzle", - "sub_path": "filament/Generic PHA @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu PLA Aero @BBL X2D", - "sub_path": "filament/Bambu PLA Aero @BBL X2D.json" - }, - { - "name": "Bambu PLA Aero @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu PLA Aero @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu PLA Basic @BBL X2D", - "sub_path": "filament/Bambu PLA Basic @BBL X2D.json" - }, - { - "name": "Bambu PLA Basic @BBL X2D 0.2 nozzle", - "sub_path": "filament/Bambu PLA Basic @BBL X2D 0.2 nozzle.json" - }, - { - "name": "Bambu PLA Basic @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu PLA Basic @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu PLA Dynamic @BBL X2D", - "sub_path": "filament/Bambu PLA Dynamic @BBL X2D.json" - }, - { - "name": "Bambu PLA Dynamic @BBL X2D 0.2 nozzle", - "sub_path": "filament/Bambu PLA Dynamic @BBL X2D 0.2 nozzle.json" - }, - { - "name": "Bambu PLA Dynamic @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu PLA Dynamic @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu PLA Galaxy @BBL X2D", - "sub_path": "filament/Bambu PLA Galaxy @BBL X2D.json" - }, - { - "name": "Bambu PLA Galaxy @BBL X2D 0.2 nozzle", - "sub_path": "filament/Bambu PLA Galaxy @BBL X2D 0.2 nozzle.json" - }, - { - "name": "Bambu PLA Galaxy @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu PLA Galaxy @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu PLA Glow @BBL X2D 0.2 nozzle", - "sub_path": "filament/Bambu PLA Glow @BBL X2D 0.2 nozzle.json" - }, - { - "name": "Bambu PLA Glow @BBL X2D", - "sub_path": "filament/Bambu PLA Glow @BBL X2D.json" - }, - { - "name": "Bambu PLA Glow @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu PLA Glow @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu PLA Lite @BBL X2D", - "sub_path": "filament/Bambu PLA Lite @BBL X2D.json" - }, - { - "name": "Bambu PLA Lite @BBL X2D 0.2 nozzle", - "sub_path": "filament/Bambu PLA Lite @BBL X2D 0.2 nozzle.json" - }, - { - "name": "Bambu PLA Lite @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu PLA Lite @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu PLA Marble @BBL X2D", - "sub_path": "filament/Bambu PLA Marble @BBL X2D.json" - }, - { - "name": "Bambu PLA Marble @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu PLA Marble @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu PLA Matte @BBL X2D", - "sub_path": "filament/Bambu PLA Matte @BBL X2D.json" - }, - { - "name": "Bambu PLA Matte @BBL X2D 0.2 nozzle", - "sub_path": "filament/Bambu PLA Matte @BBL X2D 0.2 nozzle.json" - }, - { - "name": "Bambu PLA Matte @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu PLA Matte @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu PLA Metal @BBL X2D", - "sub_path": "filament/Bambu PLA Metal @BBL X2D.json" - }, - { - "name": "Bambu PLA Metal @BBL X2D 0.2 nozzle", - "sub_path": "filament/Bambu PLA Metal @BBL X2D 0.2 nozzle.json" - }, - { - "name": "Bambu PLA Metal @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu PLA Metal @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu PLA Silk @BBL X2D", - "sub_path": "filament/Bambu PLA Silk @BBL X2D.json" - }, - { - "name": "Bambu PLA Silk @BBL X2D 0.2 nozzle", - "sub_path": "filament/Bambu PLA Silk @BBL X2D 0.2 nozzle.json" - }, - { - "name": "Bambu PLA Silk @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu PLA Silk @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu PLA Silk+ @BBL X2D", - "sub_path": "filament/Bambu PLA Silk+ @BBL X2D.json" - }, - { - "name": "Bambu PLA Silk+ @BBL X2D 0.2 nozzle", - "sub_path": "filament/Bambu PLA Silk+ @BBL X2D 0.2 nozzle.json" - }, - { - "name": "Bambu PLA Silk+ @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu PLA Silk+ @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu PLA Sparkle @BBL X2D", - "sub_path": "filament/Bambu PLA Sparkle @BBL X2D.json" - }, - { - "name": "Bambu PLA Sparkle @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu PLA Sparkle @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu PLA Tough @BBL X2D", - "sub_path": "filament/Bambu PLA Tough @BBL X2D.json" - }, - { - "name": "Bambu PLA Tough @BBL X2D 0.2 nozzle", - "sub_path": "filament/Bambu PLA Tough @BBL X2D 0.2 nozzle.json" - }, - { - "name": "Bambu PLA Tough @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu PLA Tough @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu PLA Tough+ @BBL X2D", - "sub_path": "filament/Bambu PLA Tough+ @BBL X2D.json" - }, - { - "name": "Bambu PLA Tough+ @BBL X2D 0.2 nozzle", - "sub_path": "filament/Bambu PLA Tough+ @BBL X2D 0.2 nozzle.json" - }, - { - "name": "Bambu PLA Tough+ @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu PLA Tough+ @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu PLA Translucent @BBL X2D 0.2 nozzle", - "sub_path": "filament/Bambu PLA Translucent @BBL X2D 0.2 nozzle.json" - }, - { - "name": "Bambu PLA Translucent @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu PLA Translucent @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu PLA Translucent @BBL X2D 0.6 nozzle", - "sub_path": "filament/Bambu PLA Translucent @BBL X2D 0.6 nozzle.json" - }, - { - "name": "Bambu PLA Translucent @BBL X2D 0.8 nozzle", - "sub_path": "filament/Bambu PLA Translucent @BBL X2D 0.8 nozzle.json" - }, - { - "name": "Bambu PLA Wood @BBL X2D", - "sub_path": "filament/Bambu PLA Wood @BBL X2D.json" - }, - { - "name": "Bambu PLA Wood @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu PLA Wood @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu PLA-CF @BBL X2D", - "sub_path": "filament/Bambu PLA-CF @BBL X2D.json" - }, - { - "name": "Bambu PLA-CF @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu PLA-CF @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu Support For PLA @BBL X2D", - "sub_path": "filament/Bambu Support For PLA @BBL X2D.json" - }, - { - "name": "Bambu Support For PLA @BBL X2D 0.2 nozzle", - "sub_path": "filament/Bambu Support For PLA @BBL X2D 0.2 nozzle.json" - }, - { - "name": "Bambu Support For PLA @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu Support For PLA @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu Support For PLA/PETG @BBL X2D", - "sub_path": "filament/Bambu Support For PLA-PETG @BBL X2D.json" - }, - { - "name": "Bambu Support For PLA/PETG @BBL X2D 0.2 nozzle", - "sub_path": "filament/Bambu Support For PLA-PETG @BBL X2D 0.2 nozzle.json" - }, - { - "name": "Bambu Support For PLA/PETG @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu Support For PLA-PETG @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu Support W @BBL X2D", - "sub_path": "filament/Bambu Support W @BBL X2D.json" - }, - { - "name": "Bambu Support W @BBL X2D 0.2 nozzle", - "sub_path": "filament/Bambu Support W @BBL X2D 0.2 nozzle.json" - }, - { - "name": "Bambu Support W @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu Support W @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Generic PLA @BBL X2D", - "sub_path": "filament/Generic PLA @BBL X2D.json" - }, - { - "name": "Generic PLA @BBL X2D 0.2 nozzle", - "sub_path": "filament/Generic PLA @BBL X2D 0.2 nozzle.json" - }, - { - "name": "Generic PLA @BBL X2D 0.4 nozzle", - "sub_path": "filament/Generic PLA @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Generic PLA High Speed @BBL X2D 0.2 nozzle", - "sub_path": "filament/Generic PLA High Speed @BBL X2D 0.2 nozzle.json" - }, - { - "name": "Generic PLA High Speed @BBL X2D", - "sub_path": "filament/Generic PLA High Speed @BBL X2D.json" - }, - { - "name": "Generic PLA High Speed @BBL X2D 0.4 nozzle", - "sub_path": "filament/Generic PLA High Speed @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Generic PLA Silk @BBL X2D", - "sub_path": "filament/Generic PLA Silk @BBL X2D.json" - }, - { - "name": "Generic PLA Silk @BBL X2D 0.4 nozzle", - "sub_path": "filament/Generic PLA Silk @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Generic PLA-CF @BBL X2D", - "sub_path": "filament/Generic PLA-CF @BBL X2D.json" - }, - { - "name": "Generic PLA-CF @BBL X2D 0.4 nozzle", - "sub_path": "filament/Generic PLA-CF @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Generic PP @BBL X2D", - "sub_path": "filament/Generic PP @BBL X2D.json" - }, - { - "name": "Generic PP @BBL X2D 0.4 nozzle", - "sub_path": "filament/Generic PP @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Generic PP-CF @BBL X2D", - "sub_path": "filament/Generic PP-CF @BBL X2D.json" - }, - { - "name": "Generic PP-CF @BBL X2D 0.4 nozzle", - "sub_path": "filament/Generic PP-CF @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Generic PP-GF @BBL X2D", - "sub_path": "filament/Generic PP-GF @BBL X2D.json" - }, - { - "name": "Generic PP-GF @BBL X2D 0.4 nozzle", - "sub_path": "filament/Generic PP-GF @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu PPA-CF @BBL X2D", - "sub_path": "filament/Bambu PPA-CF @BBL X2D.json" - }, - { - "name": "Bambu PPA-CF @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu PPA-CF @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Generic PPA-CF @BBL X2D", - "sub_path": "filament/Generic PPA-CF @BBL X2D.json" - }, - { - "name": "Generic PPA-CF @BBL X2D 0.4 nozzle", - "sub_path": "filament/Generic PPA-CF @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Generic PPA-GF @BBL X2D", - "sub_path": "filament/Generic PPA-GF @BBL X2D.json" - }, - { - "name": "Generic PPA-GF @BBL X2D 0.4 nozzle", - "sub_path": "filament/Generic PPA-GF @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu PVA @BBL X2D", - "sub_path": "filament/Bambu PVA @BBL X2D.json" - }, - { - "name": "Bambu PVA @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu PVA @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Generic PVA @BBL X2D", - "sub_path": "filament/Generic PVA @BBL X2D.json" - }, - { - "name": "Generic PVA @BBL X2D 0.2 nozzle", - "sub_path": "filament/Generic PVA @BBL X2D 0.2 nozzle.json" - }, - { - "name": "Generic PVA @BBL X2D 0.4 nozzle", - "sub_path": "filament/Generic PVA @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu TPU 85A @BBL X2D", - "sub_path": "filament/Bambu TPU 85A @BBL X2D.json" - }, - { - "name": "Bambu TPU 85A @BBL X2D 0.8 nozzle", - "sub_path": "filament/Bambu TPU 85A @BBL X2D 0.8 nozzle.json" - }, - { - "name": "Bambu TPU 90A @BBL X2D", - "sub_path": "filament/Bambu TPU 90A @BBL X2D.json" - }, - { - "name": "Bambu TPU 90A @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu TPU 90A @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu TPU 90A @BBL X2D 0.8 nozzle", - "sub_path": "filament/Bambu TPU 90A @BBL X2D 0.8 nozzle.json" - }, - { - "name": "Bambu TPU 95A @BBL X2D", - "sub_path": "filament/Bambu TPU 95A @BBL X2D.json" - }, - { - "name": "Bambu TPU 95A @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu TPU 95A @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu TPU 95A HF @BBL X2D", - "sub_path": "filament/Bambu TPU 95A HF @BBL X2D.json" - }, - { - "name": "Bambu TPU 95A HF @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu TPU 95A HF @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Bambu TPU for AMS @BBL X2D", - "sub_path": "filament/Bambu TPU for AMS @BBL X2D.json" - }, - { - "name": "Bambu TPU for AMS @BBL X2D 0.4 nozzle", - "sub_path": "filament/Bambu TPU for AMS @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Generic TPU @BBL X2D", - "sub_path": "filament/Generic TPU @BBL X2D.json" - }, - { - "name": "Generic TPU @BBL X2D 0.4 nozzle", - "sub_path": "filament/Generic TPU @BBL X2D 0.4 nozzle.json" - }, - { - "name": "Generic TPU for AMS @BBL X2D", - "sub_path": "filament/Generic TPU for AMS @BBL X2D.json" - }, - { - "name": "Generic TPU for AMS @BBL X2D 0.4 nozzle", - "sub_path": "filament/Generic TPU for AMS @BBL X2D 0.4 nozzle.json" } ], "machine_list": [ @@ -9535,6 +9767,10 @@ "name": "Bambu Lab H2D Pro 0.4 nozzle", "sub_path": "machine/Bambu Lab H2D Pro 0.4 nozzle.json" }, + { + "name": "Bambu Lab X2D 0.4 nozzle", + "sub_path": "machine/Bambu Lab X2D 0.4 nozzle.json" + }, { "name": "Bambu Lab A1 0.2 nozzle", "sub_path": "machine/Bambu Lab A1 0.2 nozzle.json" @@ -9667,10 +9903,6 @@ "name": "Bambu Lab H2D Pro 0.8 nozzle", "sub_path": "machine/Bambu Lab H2D Pro 0.8 nozzle.json" }, - { - "name": "Bambu Lab X2D 0.4 nozzle", - "sub_path": "machine/Bambu Lab X2D 0.4 nozzle.json" - }, { "name": "Bambu Lab X2D 0.2 nozzle", "sub_path": "machine/Bambu Lab X2D 0.2 nozzle.json" diff --git a/resources/profiles/BBL/filament/Polymaker/Fiberon PA12-CF10 @BBL X1.json b/resources/profiles/BBL/filament/Polymaker/Fiberon PA12-CF10 @BBL X1.json new file mode 100644 index 00000000000..225e12d539c --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/Fiberon PA12-CF10 @BBL X1.json @@ -0,0 +1,18 @@ +{ + "type": "filament", + "name": "Fiberon PA12-CF10 @BBL X1", + "inherits": "Fiberon PA12-CF10 @base", + "from": "system", + "setting_id": "GFSL56_00", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab X1 0.4 nozzle", + "Bambu Lab X1 Carbon 0.4 nozzle", + "Bambu Lab P1S 0.4 nozzle", + "Bambu Lab X1E 0.4 nozzle" + ], + "filament_extruder_variant": [ + "Direct Drive Standard", + "Direct Drive High Flow" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/Fiberon PA12-CF10 @base.json b/resources/profiles/BBL/filament/Polymaker/Fiberon PA12-CF10 @base.json new file mode 100644 index 00000000000..368abf5570b --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/Fiberon PA12-CF10 @base.json @@ -0,0 +1,77 @@ +{ + "type": "filament", + "name": "Fiberon PA12-CF10 @base", + "inherits": "fdm_filament_pa", + "from": "system", + "filament_id": "GFL56", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "eng_plate_temp": [ + "40" + ], + "eng_plate_temp_initial_layer": [ + "40" + ], + "fan_cooling_layer_time": [ + "15" + ], + "fan_max_speed": [ + "100" + ], + "filament_cost": [ + "99.99" + ], + "filament_density": [ + "1.06" + ], + "filament_flow_ratio": [ + "0.95" + ], + "filament_max_volumetric_speed": [ + "14" + ], + "filament_type": [ + "PA-CF" + ], + "filament_vendor": [ + "Polymaker" + ], + "full_fan_speed_layer": [ + "2" + ], + "hot_plate_temp": [ + "40" + ], + "hot_plate_temp_initial_layer": [ + "40" + ], + "nozzle_temperature": [ + "300" + ], + "nozzle_temperature_initial_layer": [ + "300" + ], + "nozzle_temperature_range_low": [ + "280" + ], + "overhang_fan_speed": [ + "100" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "slow_down_min_speed": [ + "10" + ], + "temperature_vitrification": [ + "55" + ], + "textured_plate_temp": [ + "40" + ], + "textured_plate_temp_initial_layer": [ + "40" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/Fiberon PA6-CF20 @BBL X1.json b/resources/profiles/BBL/filament/Polymaker/Fiberon PA6-CF20 @BBL X1.json new file mode 100644 index 00000000000..ce552a17e6d --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/Fiberon PA6-CF20 @BBL X1.json @@ -0,0 +1,18 @@ +{ + "type": "filament", + "name": "Fiberon PA6-CF20 @BBL X1", + "inherits": "Fiberon PA6-CF20 @base", + "from": "system", + "setting_id": "GFSL57_00", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab X1 0.4 nozzle", + "Bambu Lab X1 Carbon 0.4 nozzle", + "Bambu Lab P1S 0.4 nozzle", + "Bambu Lab X1E 0.4 nozzle" + ], + "filament_extruder_variant": [ + "Direct Drive Standard", + "Direct Drive High Flow" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/Fiberon PA6-CF20 @base.json b/resources/profiles/BBL/filament/Polymaker/Fiberon PA6-CF20 @base.json new file mode 100644 index 00000000000..65fee6a5bb5 --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/Fiberon PA6-CF20 @base.json @@ -0,0 +1,74 @@ +{ + "type": "filament", + "name": "Fiberon PA6-CF20 @base", + "inherits": "fdm_filament_pa", + "from": "system", + "filament_id": "GFL57", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "eng_plate_temp": [ + "40" + ], + "eng_plate_temp_initial_layer": [ + "40" + ], + "fan_cooling_layer_time": [ + "15" + ], + "fan_max_speed": [ + "100" + ], + "filament_cost": [ + "83.99" + ], + "filament_density": [ + "1.17" + ], + "filament_flow_ratio": [ + "0.95" + ], + "filament_max_volumetric_speed": [ + "14" + ], + "filament_type": [ + "PA6-CF" + ], + "filament_vendor": [ + "Polymaker" + ], + "hot_plate_temp": [ + "40" + ], + "hot_plate_temp_initial_layer": [ + "40" + ], + "nozzle_temperature": [ + "300" + ], + "nozzle_temperature_initial_layer": [ + "300" + ], + "nozzle_temperature_range_low": [ + "280" + ], + "overhang_fan_speed": [ + "100" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "slow_down_min_speed": [ + "10" + ], + "temperature_vitrification": [ + "74.2" + ], + "textured_plate_temp": [ + "40" + ], + "textured_plate_temp_initial_layer": [ + "40" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/Fiberon PA6-GF25 @BBL X1.json b/resources/profiles/BBL/filament/Polymaker/Fiberon PA6-GF25 @BBL X1.json new file mode 100644 index 00000000000..7c03b332b70 --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/Fiberon PA6-GF25 @BBL X1.json @@ -0,0 +1,18 @@ +{ + "type": "filament", + "name": "Fiberon PA6-GF25 @BBL X1", + "inherits": "Fiberon PA6-GF25 @base", + "from": "system", + "setting_id": "GFSL58_00", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab X1 0.4 nozzle", + "Bambu Lab X1 Carbon 0.4 nozzle", + "Bambu Lab P1S 0.4 nozzle", + "Bambu Lab X1E 0.4 nozzle" + ], + "filament_extruder_variant": [ + "Direct Drive Standard", + "Direct Drive High Flow" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/Fiberon PA6-GF25 @base.json b/resources/profiles/BBL/filament/Polymaker/Fiberon PA6-GF25 @base.json new file mode 100644 index 00000000000..af2b6d92e17 --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/Fiberon PA6-GF25 @base.json @@ -0,0 +1,77 @@ +{ + "type": "filament", + "name": "Fiberon PA6-GF25 @base", + "inherits": "fdm_filament_pa", + "from": "system", + "filament_id": "GFL58", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "eng_plate_temp": [ + "40" + ], + "eng_plate_temp_initial_layer": [ + "40" + ], + "fan_cooling_layer_time": [ + "15" + ], + "fan_max_speed": [ + "100" + ], + "filament_cost": [ + "63.99" + ], + "filament_density": [ + "1.2" + ], + "filament_flow_ratio": [ + "0.95" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "filament_type": [ + "PA-GF" + ], + "filament_vendor": [ + "Polymaker" + ], + "full_fan_speed_layer": [ + "2" + ], + "hot_plate_temp": [ + "40" + ], + "hot_plate_temp_initial_layer": [ + "40" + ], + "nozzle_temperature": [ + "300" + ], + "nozzle_temperature_initial_layer": [ + "300" + ], + "nozzle_temperature_range_low": [ + "280" + ], + "overhang_fan_speed": [ + "100" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "slow_down_min_speed": [ + "10" + ], + "temperature_vitrification": [ + "70.4" + ], + "textured_plate_temp": [ + "40" + ], + "textured_plate_temp_initial_layer": [ + "40" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/Fiberon PA612-CF15 @BBL X1.json b/resources/profiles/BBL/filament/Polymaker/Fiberon PA612-CF15 @BBL X1.json new file mode 100644 index 00000000000..a33b87e8355 --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/Fiberon PA612-CF15 @BBL X1.json @@ -0,0 +1,18 @@ +{ + "type": "filament", + "name": "Fiberon PA612-CF15 @BBL X1", + "inherits": "Fiberon PA612-CF15 @base", + "from": "system", + "setting_id": "GFSL59_00", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab X1 0.4 nozzle", + "Bambu Lab X1 Carbon 0.4 nozzle", + "Bambu Lab P1S 0.4 nozzle", + "Bambu Lab X1E 0.4 nozzle" + ], + "filament_extruder_variant": [ + "Direct Drive Standard", + "Direct Drive High Flow" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/Fiberon PA612-CF15 @base.json b/resources/profiles/BBL/filament/Polymaker/Fiberon PA612-CF15 @base.json new file mode 100644 index 00000000000..dc7194aad03 --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/Fiberon PA612-CF15 @base.json @@ -0,0 +1,53 @@ +{ + "type": "filament", + "name": "Fiberon PA612-CF15 @base", + "inherits": "fdm_filament_pa", + "from": "system", + "filament_id": "GFL59", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "fan_cooling_layer_time": [ + "5" + ], + "fan_max_speed": [ + "30" + ], + "fan_min_speed": [ + "10" + ], + "filament_cost": [ + "94.99" + ], + "filament_density": [ + "1.03" + ], + "filament_flow_ratio": [ + "0.96" + ], + "filament_type": [ + "PA-CF" + ], + "filament_vendor": [ + "Polymaker" + ], + "full_fan_speed_layer": [ + "2" + ], + "nozzle_temperature_range_low": [ + "250" + ], + "overhang_fan_speed": [ + "40" + ], + "overhang_fan_threshold": [ + "0%" + ], + "slow_down_min_speed": [ + "10" + ], + "temperature_vitrification": [ + "206.2" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/Fiberon PET-CF17 @BBL X1.json b/resources/profiles/BBL/filament/Polymaker/Fiberon PET-CF17 @BBL X1.json new file mode 100644 index 00000000000..4661fc9dfc5 --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/Fiberon PET-CF17 @BBL X1.json @@ -0,0 +1,33 @@ +{ + "type": "filament", + "name": "Fiberon PET-CF17 @BBL X1", + "inherits": "Fiberon PET-CF17 @base", + "from": "system", + "setting_id": "GFSL60_00", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab X1 0.4 nozzle", + "Bambu Lab X1 Carbon 0.4 nozzle", + "Bambu Lab P1S 0.4 nozzle", + "Bambu Lab X1E 0.4 nozzle" + ], + "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}" + ], + "required_nozzle_HRC": [ + "40" + ], + "supertack_plate_temp": [ + "80" + ], + "supertack_plate_temp_initial_layer": [ + "80" + ], + "filament_adhesiveness_category": [ + "800" + ], + "filament_extruder_variant": [ + "Direct Drive Standard", + "Direct Drive High Flow" + ] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo Rapid PETG @base.json b/resources/profiles/BBL/filament/Polymaker/Fiberon PET-CF17 @base.json similarity index 63% rename from resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo Rapid PETG @base.json rename to resources/profiles/BBL/filament/Polymaker/Fiberon PET-CF17 @base.json index 61aa4f6714c..adcbf5c9ef6 100644 --- a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo Rapid PETG @base.json +++ b/resources/profiles/BBL/filament/Polymaker/Fiberon PET-CF17 @base.json @@ -1,74 +1,86 @@ { "type": "filament", - "name": "Elegoo Rapid PETG @base", + "name": "Fiberon PET-CF17 @base", "inherits": "fdm_filament_pet", "from": "system", - "filament_id": "OGFE01", + "filament_id": "GFL60", "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "0" + ], + "cool_plate_temp_initial_layer": [ + "0" + ], + "eng_plate_temp": [ + "70" + ], + "eng_plate_temp_initial_layer": [ + "70" + ], + "fan_cooling_layer_time": [ + "242" + ], + "fan_max_speed": [ + "80" + ], + "fan_min_speed": [ + "0" + ], "filament_cost": [ - "13.99" + "89.99" ], "filament_density": [ - "1.28" + "1.34" ], "filament_flow_ratio": [ - "0.98" + "0.95" ], "filament_max_volumetric_speed": [ - "20" + "12" ], - "filament_retraction_length": [ - "0.8" - ], - "filament_retraction_speed": [ - "45" - ], - "filament_deretraction_speed": [ - "45" + "filament_type": [ + "PET-CF" ], "filament_vendor": [ - "Elegoo" - ], - "nozzle_temperature": [ - "255" - ], - "nozzle_temperature_initial_layer": [ - "250" - ], - "nozzle_temperature_range_high": [ - "270" - ], - "nozzle_temperature_range_low": [ - "240" + "Polymaker" ], "hot_plate_temp": [ - "65" + "70" ], "hot_plate_temp_initial_layer": [ - "65" + "70" + ], + "nozzle_temperature": [ + "300" + ], + "nozzle_temperature_initial_layer": [ + "300" + ], + "nozzle_temperature_range_high": [ + "300" + ], + "nozzle_temperature_range_low": [ + "270" + ], + "overhang_fan_speed": [ + "70" + ], + "slow_down_layer_time": [ + "5" + ], + "slow_down_min_speed": [ + "20" + ], + "temperature_vitrification": [ + "79.3" ], "textured_plate_temp": [ "70" ], "textured_plate_temp_initial_layer": [ "70" - ], - "overhang_fan_speed": [ - "90" - ], - "fan_max_speed": [ - "80" - ], - "fan_min_speed": [ - "20" - ], - "fan_cooling_layer_time": [ - "20" - ], - "slow_down_layer_time": [ - "10" - ], - "slow_down_min_speed": [ - "20" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Fiberon PETG-ESD @BBL X1.json b/resources/profiles/BBL/filament/Polymaker/Fiberon PETG-ESD @BBL X1.json new file mode 100644 index 00000000000..e348b1e22f7 --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/Fiberon PETG-ESD @BBL X1.json @@ -0,0 +1,33 @@ +{ + "type": "filament", + "name": "Fiberon PETG-ESD @BBL X1", + "inherits": "Fiberon PETG-ESD @base", + "from": "system", + "setting_id": "GFSL06_01", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab X1 0.4 nozzle", + "Bambu Lab X1 Carbon 0.4 nozzle", + "Bambu Lab P1S 0.4 nozzle", + "Bambu Lab X1E 0.4 nozzle" + ], + "overhang_fan_speed": [ + "70" + ], + "filament_cost": [ + "29.99" + ], + "bed_type": [ + "Cool Plate" + ], + "fan_max_speed": [ + "80" + ], + "temperature_vitrification": [ + "77" + ], + "filament_extruder_variant": [ + "Direct Drive Standard", + "Direct Drive High Flow" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/Fiberon PETG-rCF08 @BBL X1.json b/resources/profiles/BBL/filament/Polymaker/Fiberon PETG-rCF08 @BBL X1.json new file mode 100644 index 00000000000..264472679c3 --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/Fiberon PETG-rCF08 @BBL X1.json @@ -0,0 +1,92 @@ +{ + "type": "filament", + "name": "Fiberon PETG-rCF08 @BBL X1", + "inherits": "Fiberon PETG-rCF08 @base", + "from": "system", + "setting_id": "GFSL61_00", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab X1 0.4 nozzle", + "Bambu Lab X1 0.6 nozzle", + "Bambu Lab X1 0.8 nozzle" + ], + "filament_deretraction_speed": [ + "nil" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ], + "filament_retraction_minimum_travel": [ + "nil" + ], + "filament_retract_before_wipe": [ + "nil" + ], + "filament_retract_when_changing_layer": [ + "nil" + ], + "filament_retraction_length": [ + "nil" + ], + "filament_z_hop": [ + "nil" + ], + "filament_z_hop_types": [ + "nil" + ], + "filament_retract_restart_extra": [ + "nil" + ], + "filament_retraction_speed": [ + "nil" + ], + "filament_wipe": [ + "nil" + ], + "filament_wipe_distance": [ + "nil" + ], + "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}" + ], + "required_nozzle_HRC": [ + "40" + ], + "filament_flush_temp": [ + "0" + ], + "filament_flush_volumetric_speed": [ + "0" + ], + "filament_long_retractions_when_cut": [ + "nil" + ], + "filament_ramming_volumetric_speed": [ + "-1" + ], + "filament_retraction_distances_when_cut": [ + "nil" + ], + "filament_extruder_variant": [ + "Direct Drive Standard", + "Direct Drive High Flow" + ], + "filament_pre_cooling_temperature": [ + "0" + ], + "filament_ramming_travel_time": [ + "0" + ], + "filament_adaptive_volumetric_speed": [ + "0" + ], + "long_retractions_when_ec": [ + "0" + ], + "retraction_distances_when_ec": [ + "0" + ], + "volumetric_speed_coefficients": [ + "0 0 0 0 0 0" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/Fiberon PETG-rCF08 @base.json b/resources/profiles/BBL/filament/Polymaker/Fiberon PETG-rCF08 @base.json new file mode 100644 index 00000000000..da9cdeb43cc --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/Fiberon PETG-rCF08 @base.json @@ -0,0 +1,101 @@ +{ + "type": "filament", + "name": "Fiberon PETG-rCF08 @base", + "inherits": "fdm_filament_pet", + "from": "system", + "filament_id": "GFL61", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "close_fan_the_first_x_layers": [ + "3" + ], + "cool_plate_temp": [ + "0" + ], + "cool_plate_temp_initial_layer": [ + "0" + ], + "eng_plate_temp": [ + "70" + ], + "eng_plate_temp_initial_layer": [ + "70" + ], + "fan_cooling_layer_time": [ + "12" + ], + "fan_max_speed": [ + "80" + ], + "fan_min_speed": [ + "0" + ], + "filament_cost": [ + "39.99" + ], + "filament_density": [ + "1.3" + ], + "filament_flow_ratio": [ + "0.95" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "filament_type": [ + "PETG-CF" + ], + "filament_vendor": [ + "Polymaker" + ], + "full_fan_speed_layer": [ + "0" + ], + "hot_plate_temp": [ + "70" + ], + "hot_plate_temp_initial_layer": [ + "70" + ], + "nozzle_temperature": [ + "270" + ], + "nozzle_temperature_initial_layer": [ + "270" + ], + "nozzle_temperature_range_high": [ + "270" + ], + "nozzle_temperature_range_low": [ + "240" + ], + "overhang_fan_speed": [ + "70" + ], + "overhang_fan_threshold": [ + "95%" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "slow_down_for_layer_cooling": [ + "1" + ], + "slow_down_layer_time": [ + "2" + ], + "slow_down_min_speed": [ + "20" + ], + "temperature_vitrification": [ + "69.7" + ], + "textured_plate_temp": [ + "70" + ], + "textured_plate_temp_initial_layer": [ + "70" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma CoPE @BBL A1.json b/resources/profiles/BBL/filament/Polymaker/Panchroma CoPE @BBL A1.json index 45b9f9383ad..ec927bbc52f 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma CoPE @BBL A1.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma CoPE @BBL A1.json @@ -10,19 +10,49 @@ "Bambu Lab A1 0.6 nozzle", "Bambu Lab A1 0.8 nozzle" ], - "fan_max_speed": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "hot_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "24" + "textured_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" ], "slow_down_layer_time": [ "2" + ], + "temperature_vitrification": [ + "58.2" + ], + "nozzle_temperature_range_low": [ + "200" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma CoPE @BBL A1M.json b/resources/profiles/BBL/filament/Polymaker/Panchroma CoPE @BBL A1M.json index 20846325aab..4857f27375e 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma CoPE @BBL A1M.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma CoPE @BBL A1M.json @@ -10,19 +10,49 @@ "Bambu Lab A1 mini 0.6 nozzle", "Bambu Lab A1 mini 0.8 nozzle" ], - "fan_max_speed": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "hot_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "24" + "textured_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" ], "slow_down_layer_time": [ "2" + ], + "temperature_vitrification": [ + "58.2" + ], + "nozzle_temperature_range_low": [ + "200" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma CoPE @BBL P1P.json b/resources/profiles/BBL/filament/Polymaker/Panchroma CoPE @BBL P1P.json index 1585bcdd582..a33f7058de5 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma CoPE @BBL P1P.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma CoPE @BBL P1P.json @@ -10,19 +10,46 @@ "Bambu Lab P1P 0.6 nozzle", "Bambu Lab P1P 0.8 nozzle" ], - "fan_max_speed": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "hot_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "24" + "textured_plate_temp": [ + "60" ], - "slow_down_layer_time": [ - "4" + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "58.2" + ], + "nozzle_temperature_range_low": [ + "200" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma CoPE @BBL X1.json b/resources/profiles/BBL/filament/Polymaker/Panchroma CoPE @BBL X1.json index 00b2549c8d3..2251c3a170b 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma CoPE @BBL X1.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma CoPE @BBL X1.json @@ -10,19 +10,46 @@ "Bambu Lab X1 0.6 nozzle", "Bambu Lab X1 0.8 nozzle" ], - "fan_max_speed": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "hot_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "24" + "textured_plate_temp": [ + "60" ], - "slow_down_layer_time": [ - "4" + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "58.2" + ], + "nozzle_temperature_range_low": [ + "200" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA @BBL A1.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA @BBL A1.json index d740f1ff814..8460996ce90 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA @BBL A1.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA @BBL A1.json @@ -10,19 +10,46 @@ "Bambu Lab A1 0.6 nozzle", "Bambu Lab A1 0.8 nozzle" ], - "fan_max_speed": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.95" + "hot_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "16" + "textured_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" ], "slow_down_layer_time": [ "2" + ], + "temperature_vitrification": [ + "62.5" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA @BBL A1M.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA @BBL A1M.json index 6918273b719..c592bdd1daf 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA @BBL A1M.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA @BBL A1M.json @@ -10,19 +10,46 @@ "Bambu Lab A1 mini 0.6 nozzle", "Bambu Lab A1 mini 0.8 nozzle" ], - "fan_max_speed": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.95" + "hot_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "16" + "textured_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" ], "slow_down_layer_time": [ "2" + ], + "temperature_vitrification": [ + "62.5" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA @BBL P1P.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA @BBL P1P.json index efa40c4fa2d..4f802b2f283 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA @BBL P1P.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA @BBL P1P.json @@ -10,19 +10,43 @@ "Bambu Lab P1P 0.6 nozzle", "Bambu Lab P1P 0.8 nozzle" ], - "fan_max_speed": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.95" + "hot_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "16" + "textured_plate_temp": [ + "60" ], - "slow_down_layer_time": [ - "4" + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "62.5" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA @BBL X1.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA @BBL X1.json index 0ba00b78e09..836f8c4cc71 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA @BBL X1.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA @BBL X1.json @@ -10,16 +10,43 @@ "Bambu Lab X1 0.6 nozzle", "Bambu Lab X1 0.8 nozzle" ], - "fan_max_speed": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.95" + "hot_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "16" + "textured_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "62.5" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Celestial @BBL A1.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Celestial @BBL A1.json index fdd3244d62b..6a34b190496 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Celestial @BBL A1.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Celestial @BBL A1.json @@ -10,19 +10,43 @@ "Bambu Lab A1 0.6 nozzle", "Bambu Lab A1 0.8 nozzle" ], - "fan_max_speed": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "hot_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "20" + "textured_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" ], "slow_down_layer_time": [ "2" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Celestial @BBL A1M.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Celestial @BBL A1M.json index 137b7fa8244..74aa730a034 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Celestial @BBL A1M.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Celestial @BBL A1M.json @@ -10,19 +10,43 @@ "Bambu Lab A1 mini 0.6 nozzle", "Bambu Lab A1 mini 0.8 nozzle" ], - "fan_max_speed": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "hot_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "20" + "textured_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" ], "slow_down_layer_time": [ "2" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Celestial @BBL P1P.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Celestial @BBL P1P.json index f34dc3c5a35..97c3558b2c5 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Celestial @BBL P1P.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Celestial @BBL P1P.json @@ -10,19 +10,43 @@ "Bambu Lab P1P 0.6 nozzle", "Bambu Lab P1P 0.8 nozzle" ], - "fan_max_speed": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "hot_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "20" + "textured_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" ], "slow_down_layer_time": [ "10" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Celestial @BBL X1.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Celestial @BBL X1.json index f5cd6735979..ef1c0886e78 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Celestial @BBL X1.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Celestial @BBL X1.json @@ -10,19 +10,40 @@ "Bambu Lab X1 0.6 nozzle", "Bambu Lab X1 0.8 nozzle" ], - "fan_max_speed": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "hot_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "20" + "textured_plate_temp": [ + "60" ], - "slow_down_layer_time": [ - "4" + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Galaxy @BBL A1.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Galaxy @BBL A1.json index fc959a4a0b0..22018973369 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Galaxy @BBL A1.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Galaxy @BBL A1.json @@ -10,19 +10,43 @@ "Bambu Lab A1 0.6 nozzle", "Bambu Lab A1 0.8 nozzle" ], - "fan_max_speed": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "hot_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "20" + "textured_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" ], "slow_down_layer_time": [ "2" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Galaxy @BBL A1M.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Galaxy @BBL A1M.json index c0c3e66bc9c..29a115d824f 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Galaxy @BBL A1M.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Galaxy @BBL A1M.json @@ -10,19 +10,43 @@ "Bambu Lab A1 mini 0.6 nozzle", "Bambu Lab A1 mini 0.8 nozzle" ], - "fan_max_speed": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "hot_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "20" + "textured_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" ], "slow_down_layer_time": [ "2" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Galaxy @BBL P1P.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Galaxy @BBL P1P.json index fc9b18c88d4..a5bda6970bb 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Galaxy @BBL P1P.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Galaxy @BBL P1P.json @@ -10,19 +10,43 @@ "Bambu Lab P1P 0.6 nozzle", "Bambu Lab P1P 0.8 nozzle" ], - "fan_max_speed": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "hot_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "20" + "textured_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" ], "slow_down_layer_time": [ "10" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Galaxy @BBL X1.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Galaxy @BBL X1.json index a8a66ff2930..c36bf6bf636 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Galaxy @BBL X1.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Galaxy @BBL X1.json @@ -10,19 +10,40 @@ "Bambu Lab X1 0.6 nozzle", "Bambu Lab X1 0.8 nozzle" ], - "fan_max_speed": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "hot_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "20" + "textured_plate_temp": [ + "60" ], - "slow_down_layer_time": [ - "4" + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Glow @BBL A1.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Glow @BBL A1.json index 1d100eb6be1..29aa7205ee6 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Glow @BBL A1.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Glow @BBL A1.json @@ -10,22 +10,43 @@ "Bambu Lab A1 0.6 nozzle", "Bambu Lab A1 0.8 nozzle" ], - "fan_cooling_layer_time": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_max_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "hot_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "textured_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "20" + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" ], "slow_down_layer_time": [ "2" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Glow @BBL A1M.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Glow @BBL A1M.json index 90b6d1971fe..d07309eef69 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Glow @BBL A1M.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Glow @BBL A1M.json @@ -10,22 +10,43 @@ "Bambu Lab A1 mini 0.6 nozzle", "Bambu Lab A1 mini 0.8 nozzle" ], - "fan_cooling_layer_time": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_max_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "hot_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "textured_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "20" + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" ], "slow_down_layer_time": [ "2" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Glow @BBL P1P.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Glow @BBL P1P.json index 2df18dc7f63..c81ef58f9cf 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Glow @BBL P1P.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Glow @BBL P1P.json @@ -10,22 +10,43 @@ "Bambu Lab P1P 0.6 nozzle", "Bambu Lab P1P 0.8 nozzle" ], - "fan_cooling_layer_time": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_max_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "hot_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "textured_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "20" + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" ], "slow_down_layer_time": [ "10" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Glow @BBL X1.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Glow @BBL X1.json index 7c551dcbb11..10701cfc01f 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Glow @BBL X1.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Glow @BBL X1.json @@ -10,22 +10,40 @@ "Bambu Lab X1 0.6 nozzle", "Bambu Lab X1 0.8 nozzle" ], - "fan_cooling_layer_time": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_max_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "hot_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "textured_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "20" + "cool_plate_temp_initial_layer": [ + "60" ], - "slow_down_layer_time": [ - "4" + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Luminous @BBL A1.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Luminous @BBL A1.json index 01098145c82..4da92b5a040 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Luminous @BBL A1.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Luminous @BBL A1.json @@ -10,22 +10,43 @@ "Bambu Lab A1 0.6 nozzle", "Bambu Lab A1 0.8 nozzle" ], - "fan_cooling_layer_time": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_max_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "hot_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "textured_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "20" + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" ], "slow_down_layer_time": [ "2" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Luminous @BBL A1M.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Luminous @BBL A1M.json index f24b5317d37..e121d53f7d5 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Luminous @BBL A1M.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Luminous @BBL A1M.json @@ -10,22 +10,43 @@ "Bambu Lab A1 mini 0.6 nozzle", "Bambu Lab A1 mini 0.8 nozzle" ], - "fan_cooling_layer_time": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_max_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "hot_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "textured_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "20" + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" ], "slow_down_layer_time": [ "2" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Luminous @BBL P1P.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Luminous @BBL P1P.json index dbaf7101e5b..f15189902b2 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Luminous @BBL P1P.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Luminous @BBL P1P.json @@ -10,22 +10,43 @@ "Bambu Lab P1P 0.6 nozzle", "Bambu Lab P1P 0.8 nozzle" ], - "fan_cooling_layer_time": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_max_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "hot_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "textured_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "20" + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" ], "slow_down_layer_time": [ "10" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Luminous @BBL X1.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Luminous @BBL X1.json index 174dd272905..db9dcf92691 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Luminous @BBL X1.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Luminous @BBL X1.json @@ -10,22 +10,40 @@ "Bambu Lab X1 0.6 nozzle", "Bambu Lab X1 0.8 nozzle" ], - "fan_cooling_layer_time": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_max_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "hot_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "textured_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "20" + "cool_plate_temp_initial_layer": [ + "60" ], - "slow_down_layer_time": [ - "4" + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Marble @BBL A1.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Marble @BBL A1.json index d68af37d9b8..e18cf6058f3 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Marble @BBL A1.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Marble @BBL A1.json @@ -10,19 +10,52 @@ "Bambu Lab A1 0.6 nozzle", "Bambu Lab A1 0.8 nozzle" ], + "cool_plate_temp": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "hot_plate_temp": [ + "60" + ], + "textured_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], "fan_cooling_layer_time": [ "80" ], + "filament_density": [ + "1.37" + ], + "bed_type": [ + "Cool Plate" + ], "fan_max_speed": [ "80" ], "fan_min_speed": [ "60" ], - "filament_max_volumetric_speed": [ - "22" + "slow_down_min_speed": [ + "5" ], - "slow_down_layer_time": [ - "8" + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Marble @BBL A1M.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Marble @BBL A1M.json index 32742ece66a..0cddd47a22b 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Marble @BBL A1M.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Marble @BBL A1M.json @@ -10,19 +10,52 @@ "Bambu Lab A1 mini 0.6 nozzle", "Bambu Lab A1 mini 0.8 nozzle" ], + "cool_plate_temp": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "hot_plate_temp": [ + "60" + ], + "textured_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], "fan_cooling_layer_time": [ "80" ], + "filament_density": [ + "1.37" + ], + "bed_type": [ + "Cool Plate" + ], "fan_max_speed": [ "80" ], "fan_min_speed": [ "60" ], - "filament_max_volumetric_speed": [ - "22" + "slow_down_min_speed": [ + "5" ], - "slow_down_layer_time": [ - "8" + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Marble @BBL P1P.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Marble @BBL P1P.json index 4dfe9f2b9e6..e67d08514c8 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Marble @BBL P1P.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Marble @BBL P1P.json @@ -10,19 +10,49 @@ "Bambu Lab P1P 0.6 nozzle", "Bambu Lab P1P 0.8 nozzle" ], + "cool_plate_temp": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "hot_plate_temp": [ + "60" + ], + "textured_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], "fan_cooling_layer_time": [ "80" ], - "fan_max_speed": [ - "100" + "filament_density": [ + "1.37" + ], + "bed_type": [ + "Cool Plate" ], "fan_min_speed": [ "50" ], - "filament_max_volumetric_speed": [ - "22" + "slow_down_min_speed": [ + "5" ], - "slow_down_layer_time": [ - "8" + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Marble @BBL X1.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Marble @BBL X1.json index cf9888f0df6..8f85dff8dfe 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Marble @BBL X1.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Marble @BBL X1.json @@ -10,19 +10,43 @@ "Bambu Lab X1 0.6 nozzle", "Bambu Lab X1 0.8 nozzle" ], - "fan_cooling_layer_time": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_max_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "hot_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "22" + "textured_plate_temp": [ + "60" ], - "slow_down_layer_time": [ - "8" + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "filament_density": [ + "1.37" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Matte @BBL A1.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Matte @BBL A1.json index 7f19ee82f25..905b6e86247 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Matte @BBL A1.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Matte @BBL A1.json @@ -10,19 +10,55 @@ "Bambu Lab A1 0.6 nozzle", "Bambu Lab A1 0.8 nozzle" ], + "cool_plate_temp": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "hot_plate_temp": [ + "60" + ], + "textured_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], "fan_cooling_layer_time": [ "80" ], + "filament_cost": [ + "21.99" + ], + "filament_density": [ + "1.37" + ], + "bed_type": [ + "Cool Plate" + ], "fan_max_speed": [ "80" ], "fan_min_speed": [ "60" ], - "filament_max_volumetric_speed": [ - "22" + "slow_down_min_speed": [ + "5" ], - "slow_down_layer_time": [ - "8" + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Matte @BBL A1M.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Matte @BBL A1M.json index f309b02f404..2bd26f4411c 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Matte @BBL A1M.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Matte @BBL A1M.json @@ -10,19 +10,55 @@ "Bambu Lab A1 mini 0.6 nozzle", "Bambu Lab A1 mini 0.8 nozzle" ], + "cool_plate_temp": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "hot_plate_temp": [ + "60" + ], + "textured_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], "fan_cooling_layer_time": [ "80" ], + "filament_cost": [ + "21.99" + ], + "filament_density": [ + "1.37" + ], + "bed_type": [ + "Cool Plate" + ], "fan_max_speed": [ "80" ], "fan_min_speed": [ "60" ], - "filament_max_volumetric_speed": [ - "22" + "slow_down_min_speed": [ + "5" ], - "slow_down_layer_time": [ - "8" + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Matte @BBL P1P.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Matte @BBL P1P.json index ec2e229bddc..4100fe84ab6 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Matte @BBL P1P.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Matte @BBL P1P.json @@ -10,19 +10,52 @@ "Bambu Lab P1P 0.6 nozzle", "Bambu Lab P1P 0.8 nozzle" ], + "cool_plate_temp": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "hot_plate_temp": [ + "60" + ], + "textured_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], "fan_cooling_layer_time": [ "80" ], - "fan_max_speed": [ - "100" + "filament_cost": [ + "21.99" + ], + "filament_density": [ + "1.37" + ], + "bed_type": [ + "Cool Plate" ], "fan_min_speed": [ "50" ], - "filament_max_volumetric_speed": [ - "22" + "slow_down_min_speed": [ + "5" ], - "slow_down_layer_time": [ - "8" + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Matte @BBL X1.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Matte @BBL X1.json index c4e665c830c..6901a33b60e 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Matte @BBL X1.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Matte @BBL X1.json @@ -10,19 +10,46 @@ "Bambu Lab X1 0.6 nozzle", "Bambu Lab X1 0.8 nozzle" ], - "fan_cooling_layer_time": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_max_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "hot_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "22" + "textured_plate_temp": [ + "60" ], - "slow_down_layer_time": [ - "8" + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "filament_cost": [ + "21.99" + ], + "filament_density": [ + "1.37" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Metallic @BBL A1.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Metallic @BBL A1.json index ba006ef5a9f..546e7c323c3 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Metallic @BBL A1.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Metallic @BBL A1.json @@ -10,22 +10,43 @@ "Bambu Lab A1 0.6 nozzle", "Bambu Lab A1 0.8 nozzle" ], - "fan_cooling_layer_time": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_max_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "hot_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "textured_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "20" + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" ], "slow_down_layer_time": [ "2" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Metallic @BBL A1M.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Metallic @BBL A1M.json index 8607acfa81c..f96e849799b 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Metallic @BBL A1M.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Metallic @BBL A1M.json @@ -10,22 +10,43 @@ "Bambu Lab A1 mini 0.6 nozzle", "Bambu Lab A1 mini 0.8 nozzle" ], - "fan_cooling_layer_time": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_max_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "hot_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "textured_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "20" + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" ], "slow_down_layer_time": [ "2" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Metallic @BBL P1P.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Metallic @BBL P1P.json index ec17b378100..a386ec33060 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Metallic @BBL P1P.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Metallic @BBL P1P.json @@ -10,22 +10,43 @@ "Bambu Lab P1P 0.6 nozzle", "Bambu Lab P1P 0.8 nozzle" ], - "fan_cooling_layer_time": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_max_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "hot_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "textured_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "20" + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" ], "slow_down_layer_time": [ "10" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Metallic @BBL X1.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Metallic @BBL X1.json index 6240fd79504..ca62255017f 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Metallic @BBL X1.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Metallic @BBL X1.json @@ -10,22 +10,40 @@ "Bambu Lab X1 0.6 nozzle", "Bambu Lab X1 0.8 nozzle" ], - "fan_cooling_layer_time": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_max_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "hot_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "textured_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "20" + "cool_plate_temp_initial_layer": [ + "60" ], - "slow_down_layer_time": [ - "4" + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Neon @BBL A1.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Neon @BBL A1.json index 6bf4327c1d7..cfb6c3f3d3b 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Neon @BBL A1.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Neon @BBL A1.json @@ -10,22 +10,46 @@ "Bambu Lab A1 0.6 nozzle", "Bambu Lab A1 0.8 nozzle" ], - "fan_cooling_layer_time": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_max_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "hot_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "textured_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "20" + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "filament_cost": [ + "29.99" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" ], "slow_down_layer_time": [ "2" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Neon @BBL A1M.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Neon @BBL A1M.json index 492b1efa540..d970f6b4688 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Neon @BBL A1M.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Neon @BBL A1M.json @@ -10,22 +10,46 @@ "Bambu Lab A1 mini 0.6 nozzle", "Bambu Lab A1 mini 0.8 nozzle" ], - "fan_cooling_layer_time": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_max_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "hot_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "textured_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "20" + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "filament_cost": [ + "29.99" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" ], "slow_down_layer_time": [ "2" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Neon @BBL P1P.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Neon @BBL P1P.json index c8f8b61654c..c09699ecd7d 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Neon @BBL P1P.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Neon @BBL P1P.json @@ -10,22 +10,46 @@ "Bambu Lab P1P 0.6 nozzle", "Bambu Lab P1P 0.8 nozzle" ], - "fan_cooling_layer_time": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_max_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "hot_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "textured_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "20" + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "filament_cost": [ + "29.99" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" ], "slow_down_layer_time": [ "10" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Neon @BBL X1.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Neon @BBL X1.json index 8b20da2c259..4a08ef9ec76 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Neon @BBL X1.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Neon @BBL X1.json @@ -10,22 +10,43 @@ "Bambu Lab X1 0.6 nozzle", "Bambu Lab X1 0.8 nozzle" ], - "fan_cooling_layer_time": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_max_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "hot_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "textured_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "20" + "cool_plate_temp_initial_layer": [ + "60" ], - "slow_down_layer_time": [ - "4" + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "filament_cost": [ + "29.99" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Satin @BBL A1.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Satin @BBL A1.json index 7d6e25c3caf..057f04d2322 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Satin @BBL A1.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Satin @BBL A1.json @@ -1,7 +1,6 @@ { "type": "filament", "name": "Panchroma PLA Satin @BBL A1", - "renamed_from": "Panchroma PLA Stain @BBL A1", "inherits": "Panchroma PLA Satin @base", "from": "system", "setting_id": "GFSPM005_00", @@ -11,22 +10,40 @@ "Bambu Lab A1 0.6 nozzle", "Bambu Lab A1 0.8 nozzle" ], - "fan_cooling_layer_time": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_max_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "hot_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.95" + "textured_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "16" + "cool_plate_temp_initial_layer": [ + "60" ], - "slow_down_layer_time": [ + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ "5" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Satin @BBL A1M.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Satin @BBL A1M.json index bdcfca5d99f..4492871b7c2 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Satin @BBL A1M.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Satin @BBL A1M.json @@ -1,7 +1,6 @@ { "type": "filament", "name": "Panchroma PLA Satin @BBL A1M", - "renamed_from": "Panchroma PLA Stain @BBL A1M", "inherits": "Panchroma PLA Satin @base", "from": "system", "setting_id": "GFSPM005_02", @@ -11,22 +10,40 @@ "Bambu Lab A1 mini 0.6 nozzle", "Bambu Lab A1 mini 0.8 nozzle" ], - "fan_cooling_layer_time": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_max_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "hot_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.95" + "textured_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "16" + "cool_plate_temp_initial_layer": [ + "60" ], - "slow_down_layer_time": [ + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ "5" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Satin @BBL P1P.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Satin @BBL P1P.json index 2e7a11004a5..39c5f418f00 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Satin @BBL P1P.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Satin @BBL P1P.json @@ -1,7 +1,6 @@ { "type": "filament", "name": "Panchroma PLA Satin @BBL P1P", - "renamed_from": "Panchroma PLA Stain @BBL P1P", "inherits": "Panchroma PLA Satin @base", "from": "system", "setting_id": "GFSPM005_04", @@ -11,22 +10,43 @@ "Bambu Lab P1P 0.6 nozzle", "Bambu Lab P1P 0.8 nozzle" ], - "fan_cooling_layer_time": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_max_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "hot_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.95" + "textured_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "16" + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" ], "slow_down_layer_time": [ "15" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Satin @BBL X1.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Satin @BBL X1.json index 955e6d572e3..c5720db9ae1 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Satin @BBL X1.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Satin @BBL X1.json @@ -1,7 +1,6 @@ { "type": "filament", "name": "Panchroma PLA Satin @BBL X1", - "renamed_from": "Panchroma PLA Stain @BBL X1", "inherits": "Panchroma PLA Satin @base", "from": "system", "setting_id": "GFSPM005_06", @@ -11,22 +10,43 @@ "Bambu Lab X1 0.6 nozzle", "Bambu Lab X1 0.8 nozzle" ], - "fan_cooling_layer_time": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_max_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "hot_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.95" + "textured_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "16" + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" ], "slow_down_layer_time": [ "15" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Satin @base.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Satin @base.json index 3c998b7c45f..6af2ad1bbe9 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Satin @base.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Satin @base.json @@ -1,7 +1,6 @@ { "type": "filament", "name": "Panchroma PLA Satin @base", - "renamed_from": "Panchroma PLA Stain @base", "inherits": "fdm_filament_pla", "from": "system", "filament_id": "GFPM005", diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Silk @BBL A1.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Silk @BBL A1.json index 2ec6e35e746..964735c2849 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Silk @BBL A1.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Silk @BBL A1.json @@ -10,22 +10,55 @@ "Bambu Lab A1 0.6 nozzle", "Bambu Lab A1 0.8 nozzle" ], + "cool_plate_temp": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "hot_plate_temp": [ + "60" + ], + "textured_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], "fan_cooling_layer_time": [ "80" ], + "filament_density": [ + "1.34" + ], + "bed_type": [ + "Cool Plate" + ], "fan_max_speed": [ "80" ], "fan_min_speed": [ "60" ], - "filament_flow_ratio": [ - "0.98" + "slow_down_min_speed": [ + "5" ], - "filament_max_volumetric_speed": [ - "16" + "temperature_vitrification": [ + "58.2" ], - "slow_down_layer_time": [ - "8" + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Silk @BBL A1M.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Silk @BBL A1M.json index 21fd5e2100a..ea303d2dcfd 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Silk @BBL A1M.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Silk @BBL A1M.json @@ -10,22 +10,55 @@ "Bambu Lab A1 mini 0.6 nozzle", "Bambu Lab A1 mini 0.8 nozzle" ], + "cool_plate_temp": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "hot_plate_temp": [ + "60" + ], + "textured_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], "fan_cooling_layer_time": [ "80" ], + "filament_density": [ + "1.34" + ], + "bed_type": [ + "Cool Plate" + ], "fan_max_speed": [ "80" ], "fan_min_speed": [ "60" ], - "filament_flow_ratio": [ - "0.98" + "slow_down_min_speed": [ + "5" ], - "filament_max_volumetric_speed": [ - "16" + "temperature_vitrification": [ + "58.2" ], - "slow_down_layer_time": [ - "8" + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Silk @BBL P1P.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Silk @BBL P1P.json index 4b69b6f390f..8523bbb0ccb 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Silk @BBL P1P.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Silk @BBL P1P.json @@ -10,22 +10,46 @@ "Bambu Lab P1P 0.6 nozzle", "Bambu Lab P1P 0.8 nozzle" ], - "fan_cooling_layer_time": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_max_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "hot_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "textured_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "16" + "cool_plate_temp_initial_layer": [ + "60" ], - "slow_down_layer_time": [ - "8" + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "filament_density": [ + "1.34" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "58.2" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Silk @BBL X1.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Silk @BBL X1.json index 16d7947087b..8bb1c8a001a 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Silk @BBL X1.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Silk @BBL X1.json @@ -10,22 +10,46 @@ "Bambu Lab X1 0.6 nozzle", "Bambu Lab X1 0.8 nozzle" ], - "fan_cooling_layer_time": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_max_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "hot_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "textured_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "16" + "cool_plate_temp_initial_layer": [ + "60" ], - "slow_down_layer_time": [ - "8" + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "filament_density": [ + "1.34" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "58.2" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Starlight @BBL A1.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Starlight @BBL A1.json index 5991483aa98..7195ee8aeea 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Starlight @BBL A1.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Starlight @BBL A1.json @@ -10,22 +10,43 @@ "Bambu Lab A1 0.6 nozzle", "Bambu Lab A1 0.8 nozzle" ], - "fan_cooling_layer_time": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_max_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "hot_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "textured_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "20" + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" ], "slow_down_layer_time": [ "2" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Starlight @BBL A1M.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Starlight @BBL A1M.json index 198d6be0c01..86702002c99 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Starlight @BBL A1M.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Starlight @BBL A1M.json @@ -10,22 +10,43 @@ "Bambu Lab A1 mini 0.6 nozzle", "Bambu Lab A1 mini 0.8 nozzle" ], - "fan_cooling_layer_time": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_max_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "hot_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "textured_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "20" + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" ], "slow_down_layer_time": [ "2" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Starlight @BBL P1P.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Starlight @BBL P1P.json index cec63cf6997..5a814b235b7 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Starlight @BBL P1P.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Starlight @BBL P1P.json @@ -10,22 +10,43 @@ "Bambu Lab P1P 0.6 nozzle", "Bambu Lab P1P 0.8 nozzle" ], - "fan_cooling_layer_time": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_max_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "hot_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "textured_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "20" + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" ], "slow_down_layer_time": [ "10" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Starlight @BBL X1.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Starlight @BBL X1.json index 79b868b884a..6d22d51867c 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Starlight @BBL X1.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Starlight @BBL X1.json @@ -10,22 +10,40 @@ "Bambu Lab X1 0.6 nozzle", "Bambu Lab X1 0.8 nozzle" ], - "fan_cooling_layer_time": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_max_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "hot_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "textured_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "20" + "cool_plate_temp_initial_layer": [ + "60" ], - "slow_down_layer_time": [ - "4" + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Translucent @BBL A1.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Translucent @BBL A1.json index 2b94f787869..aaa1caeb72f 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Translucent @BBL A1.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Translucent @BBL A1.json @@ -10,22 +10,49 @@ "Bambu Lab A1 0.6 nozzle", "Bambu Lab A1 0.8 nozzle" ], - "fan_cooling_layer_time": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_max_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "hot_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "textured_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "filament_cost": [ + "29.99" ], "filament_max_volumetric_speed": [ - "16" + "20" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" ], "slow_down_layer_time": [ "2" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Translucent @BBL A1M.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Translucent @BBL A1M.json index 4864a558a77..af56eb9d0b7 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Translucent @BBL A1M.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Translucent @BBL A1M.json @@ -10,22 +10,49 @@ "Bambu Lab A1 mini 0.6 nozzle", "Bambu Lab A1 mini 0.8 nozzle" ], - "fan_cooling_layer_time": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_max_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "hot_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "textured_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "filament_cost": [ + "29.99" ], "filament_max_volumetric_speed": [ - "16" + "20" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" ], "slow_down_layer_time": [ "2" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Translucent @BBL P1P.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Translucent @BBL P1P.json index 3a4d9e64f5b..7c6352f796b 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Translucent @BBL P1P.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Translucent @BBL P1P.json @@ -10,22 +10,49 @@ "Bambu Lab P1P 0.6 nozzle", "Bambu Lab P1P 0.8 nozzle" ], - "fan_cooling_layer_time": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_max_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "hot_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "textured_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "filament_cost": [ + "29.99" ], "filament_max_volumetric_speed": [ - "16" + "20" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" ], "slow_down_layer_time": [ "10" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Translucent @BBL X1.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Translucent @BBL X1.json index d07c761e6a6..e4c5264897c 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Translucent @BBL X1.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA Translucent @BBL X1.json @@ -10,22 +10,46 @@ "Bambu Lab X1 0.6 nozzle", "Bambu Lab X1 0.8 nozzle" ], - "fan_cooling_layer_time": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_max_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "hot_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "textured_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "filament_cost": [ + "29.99" ], "filament_max_volumetric_speed": [ - "16" + "20" ], - "slow_down_layer_time": [ - "4" + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA UV Shift @BBL A1.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA UV Shift @BBL A1.json index c998b6c002a..ebc5d11ea1c 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA UV Shift @BBL A1.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA UV Shift @BBL A1.json @@ -10,22 +10,43 @@ "Bambu Lab A1 0.6 nozzle", "Bambu Lab A1 0.8 nozzle" ], - "fan_cooling_layer_time": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_max_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "hot_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "textured_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "20" + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" ], "slow_down_layer_time": [ "2" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA UV Shift @BBL A1M.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA UV Shift @BBL A1M.json index 161b31f8ea0..2d62c7b9bd5 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA UV Shift @BBL A1M.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA UV Shift @BBL A1M.json @@ -10,22 +10,43 @@ "Bambu Lab A1 mini 0.6 nozzle", "Bambu Lab A1 mini 0.8 nozzle" ], - "fan_cooling_layer_time": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_max_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "hot_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "textured_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "20" + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" ], "slow_down_layer_time": [ "2" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA UV Shift @BBL P1P.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA UV Shift @BBL P1P.json index e39b37c12ce..795fa3ded89 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA UV Shift @BBL P1P.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA UV Shift @BBL P1P.json @@ -10,22 +10,43 @@ "Bambu Lab P1P 0.6 nozzle", "Bambu Lab P1P 0.8 nozzle" ], - "fan_cooling_layer_time": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_max_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "hot_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "textured_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "20" + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" ], "slow_down_layer_time": [ "10" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA UV Shift @BBL X1.json b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA UV Shift @BBL X1.json index 9ac498c983d..c2bc0b9edaf 100644 --- a/resources/profiles/BBL/filament/Polymaker/Panchroma PLA UV Shift @BBL X1.json +++ b/resources/profiles/BBL/filament/Polymaker/Panchroma PLA UV Shift @BBL X1.json @@ -10,22 +10,40 @@ "Bambu Lab X1 0.6 nozzle", "Bambu Lab X1 0.8 nozzle" ], - "fan_cooling_layer_time": [ - "100" + "cool_plate_temp": [ + "60" ], - "fan_max_speed": [ - "100" + "eng_plate_temp": [ + "60" ], - "fan_min_speed": [ - "100" + "hot_plate_temp": [ + "60" ], - "filament_flow_ratio": [ - "0.98" + "textured_plate_temp": [ + "60" ], - "filament_max_volumetric_speed": [ - "20" + "cool_plate_temp_initial_layer": [ + "60" ], - "slow_down_layer_time": [ - "4" + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/PolyLite CosPLA @BBL A1.json b/resources/profiles/BBL/filament/Polymaker/PolyLite CosPLA @BBL A1.json new file mode 100644 index 00000000000..b45a5cbad45 --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyLite CosPLA @BBL A1.json @@ -0,0 +1,13 @@ +{ + "type": "filament", + "name": "PolyLite CosPLA @BBL A1", + "inherits": "PolyLite CosPLA @base", + "from": "system", + "setting_id": "GFSL62_00", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab A1 0.4 nozzle", + "Bambu Lab A1 0.6 nozzle", + "Bambu Lab A1 0.8 nozzle" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyLite CosPLA @BBL A1M.json b/resources/profiles/BBL/filament/Polymaker/PolyLite CosPLA @BBL A1M.json new file mode 100644 index 00000000000..679b39ff18f --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyLite CosPLA @BBL A1M.json @@ -0,0 +1,13 @@ +{ + "type": "filament", + "name": "PolyLite CosPLA @BBL A1M", + "inherits": "PolyLite CosPLA @base", + "from": "system", + "setting_id": "GFSL62_01", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab A1 mini 0.4 nozzle", + "Bambu Lab A1 mini 0.6 nozzle", + "Bambu Lab A1 mini 0.8 nozzle" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyLite CosPLA @BBL P1P.json b/resources/profiles/BBL/filament/Polymaker/PolyLite CosPLA @BBL P1P.json new file mode 100644 index 00000000000..ef0e9ae3a6f --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyLite CosPLA @BBL P1P.json @@ -0,0 +1,16 @@ +{ + "type": "filament", + "name": "PolyLite CosPLA @BBL P1P", + "inherits": "PolyLite CosPLA @base", + "from": "system", + "setting_id": "GFSL62_02", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab P1P 0.4 nozzle", + "Bambu Lab P1P 0.6 nozzle", + "Bambu Lab P1P 0.8 nozzle" + ], + "slow_down_layer_time": [ + "15" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyLite CosPLA @BBL X1.json b/resources/profiles/BBL/filament/Polymaker/PolyLite CosPLA @BBL X1.json new file mode 100644 index 00000000000..7442729e321 --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyLite CosPLA @BBL X1.json @@ -0,0 +1,16 @@ +{ + "type": "filament", + "name": "PolyLite CosPLA @BBL X1", + "inherits": "PolyLite CosPLA @base", + "from": "system", + "setting_id": "GFSL62_03", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab X1 0.4 nozzle", + "Bambu Lab X1 0.6 nozzle", + "Bambu Lab X1 0.8 nozzle" + ], + "slow_down_layer_time": [ + "15" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyLite CosPLA @base.json b/resources/profiles/BBL/filament/Polymaker/PolyLite CosPLA @base.json new file mode 100644 index 00000000000..18f38f0c686 --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyLite CosPLA @base.json @@ -0,0 +1,71 @@ +{ + "type": "filament", + "name": "PolyLite CosPLA @base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "GFL62", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "filament_cost": [ + "20.99" + ], + "filament_flow_ratio": [ + "0.95" + ], + "filament_max_volumetric_speed": [ + "16" + ], + "filament_vendor": [ + "Polymaker" + ], + "hot_plate_temp": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "nozzle_temperature": [ + "230" + ], + "nozzle_temperature_initial_layer": [ + "230" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "overhang_fan_speed": [ + "75" + ], + "slow_down_layer_time": [ + "5" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "59" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "filament_type": [ + "PLA" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyLite PLA @BBL A1.json b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA @BBL A1.json index ab5335b2f90..f52c8e2011d 100644 --- a/resources/profiles/BBL/filament/Polymaker/PolyLite PLA @BBL A1.json +++ b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA @BBL A1.json @@ -5,36 +5,63 @@ "from": "system", "setting_id": "GFSL00_02", "instantiation": "true", - "fan_cooling_layer_time": [ - "80" - ], - "fan_max_speed": [ - "80" - ], - "fan_min_speed": [ - "60" - ], - "filament_max_volumetric_speed": [ - "15" - ], - "hot_plate_temp": [ - "65" - ], - "hot_plate_temp_initial_layer": [ - "65" - ], - "slow_down_layer_time": [ - "8" - ], - "textured_plate_temp": [ - "65" - ], - "textured_plate_temp_initial_layer": [ - "65" - ], "compatible_printers": [ "Bambu Lab A1 0.4 nozzle", "Bambu Lab A1 0.6 nozzle", "Bambu Lab A1 0.8 nozzle" + ], + "cool_plate_temp": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "hot_plate_temp": [ + "60" + ], + "textured_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "filament_flow_ratio": [ + "0.98" + ], + "filament_cost": [ + "29.99" + ], + "filament_density": [ + "1.17" + ], + "filament_max_volumetric_speed": [ + "20" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" + ], + "slow_down_layer_time": [ + "2" + ], + "temperature_vitrification": [ + "61" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/PolyLite PLA @BBL A1M.json b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA @BBL A1M.json index 38db40aced4..57b3ab4e56e 100644 --- a/resources/profiles/BBL/filament/Polymaker/PolyLite PLA @BBL A1M.json +++ b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA @BBL A1M.json @@ -5,36 +5,63 @@ "from": "system", "setting_id": "GFSL00_00", "instantiation": "true", - "fan_cooling_layer_time": [ - "80" + "compatible_printers": [ + "Bambu Lab A1 mini 0.4 nozzle", + "Bambu Lab A1 mini 0.6 nozzle", + "Bambu Lab A1 mini 0.8 nozzle" ], - "fan_max_speed": [ - "80" - ], - "fan_min_speed": [ + "cool_plate_temp": [ "60" ], - "filament_max_volumetric_speed": [ - "15" + "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" ], - "slow_down_layer_time": [ - "8" - ], - "textured_plate_temp": [ - "65" - ], "textured_plate_temp_initial_layer": [ - "65" + "60" ], - "compatible_printers": [ - "Bambu Lab A1 mini 0.4 nozzle", - "Bambu Lab A1 mini 0.6 nozzle", - "Bambu Lab A1 mini 0.8 nozzle" + "overhang_fan_speed": [ + "75" + ], + "filament_flow_ratio": [ + "0.98" + ], + "filament_cost": [ + "29.99" + ], + "filament_density": [ + "1.17" + ], + "filament_max_volumetric_speed": [ + "20" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" + ], + "slow_down_layer_time": [ + "2" + ], + "temperature_vitrification": [ + "61" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/PolyLite PLA @BBL X1.json b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA @BBL X1.json index dbacedc4be8..08bdd474a4f 100644 --- a/resources/profiles/BBL/filament/Polymaker/PolyLite PLA @BBL X1.json +++ b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA @BBL X1.json @@ -5,123 +5,60 @@ "from": "system", "setting_id": "GFSL23", "instantiation": "true", - "filament_max_volumetric_speed": [ - "15", - "15" - ], - "filament_flow_ratio": [ - "0.95", - "0.95" - ], - "filament_deretraction_speed": [ - "nil", - "nil" - ], - "filament_flush_temp": [ - "0", - "0" - ], - "filament_flush_volumetric_speed": [ - "0", - "0" - ], - "filament_long_retractions_when_cut": [ - "nil", - "nil" - ], - "filament_ramming_volumetric_speed": [ - "-1", - "-1" - ], - "filament_retract_before_wipe": [ - "nil", - "nil" - ], - "filament_retract_restart_extra": [ - "nil", - "nil" - ], - "filament_retract_when_changing_layer": [ - "nil", - "nil" - ], - "filament_retraction_distances_when_cut": [ - "nil", - "nil" - ], - "filament_retraction_length": [ - "nil", - "nil" - ], - "filament_retraction_minimum_travel": [ - "nil", - "nil" - ], - "filament_retraction_speed": [ - "nil", - "nil" - ], - "filament_wipe": [ - "nil", - "nil" - ], - "filament_wipe_distance": [ - "nil", - "nil" - ], - "filament_z_hop": [ - "nil", - "nil" - ], - "filament_z_hop_types": [ - "nil", - "nil" - ], - "filament_extruder_variant": [ - "Direct Drive Standard", - "Direct Drive High Flow" - ], - "filament_pre_cooling_temperature": [ - "0", - "0" - ], - "filament_ramming_travel_time": [ - "0", - "0" - ], - "filament_adaptive_volumetric_speed": [ - "0", - "0" - ], - "long_retractions_when_ec": [ - "0", - "0" - ], - "nozzle_temperature": [ - "220", - "220" - ], - "nozzle_temperature_initial_layer": [ - "220", - "220" - ], - "retraction_distances_when_ec": [ - "0", - "0" - ], - "slow_down_layer_time": [ - "8" - ], - "volumetric_speed_coefficients": [ - "0 0 0 0 0 0", - "0 0 0 0 0 0" - ], "compatible_printers": [ "Bambu Lab X1 0.4 nozzle", "Bambu Lab X1 0.6 nozzle", "Bambu Lab X1 0.8 nozzle" ], - "filament_start_gcode": [ - "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + "cool_plate_temp": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "hot_plate_temp": [ + "60" + ], + "textured_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "filament_flow_ratio": [ + "0.98" + ], + "filament_cost": [ + "29.99" + ], + "filament_density": [ + "1.17" + ], + "filament_max_volumetric_speed": [ + "20" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "61" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Galaxy @BBL A1.json b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Galaxy @BBL A1.json new file mode 100644 index 00000000000..feee6effdba --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Galaxy @BBL A1.json @@ -0,0 +1,13 @@ +{ + "type": "filament", + "name": "PolyLite PLA Galaxy @BBL A1", + "inherits": "PolyLite PLA Galaxy @base", + "from": "system", + "setting_id": "GFSL63_00", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab A1 0.4 nozzle", + "Bambu Lab A1 0.6 nozzle", + "Bambu Lab A1 0.8 nozzle" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Galaxy @BBL A1M.json b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Galaxy @BBL A1M.json new file mode 100644 index 00000000000..e7e4f70f238 --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Galaxy @BBL A1M.json @@ -0,0 +1,13 @@ +{ + "type": "filament", + "name": "PolyLite PLA Galaxy @BBL A1M", + "inherits": "PolyLite PLA Galaxy @base", + "from": "system", + "setting_id": "GFSL63_01", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab A1 mini 0.4 nozzle", + "Bambu Lab A1 mini 0.6 nozzle", + "Bambu Lab A1 mini 0.8 nozzle" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Galaxy @BBL P1P.json b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Galaxy @BBL P1P.json new file mode 100644 index 00000000000..5c29bee1f30 --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Galaxy @BBL P1P.json @@ -0,0 +1,16 @@ +{ + "type": "filament", + "name": "PolyLite PLA Galaxy @BBL P1P", + "inherits": "PolyLite PLA Galaxy @base", + "from": "system", + "setting_id": "GFSL63_02", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab P1P 0.4 nozzle", + "Bambu Lab P1P 0.6 nozzle", + "Bambu Lab P1P 0.8 nozzle" + ], + "slow_down_layer_time": [ + "10" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Galaxy @BBL X1.json b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Galaxy @BBL X1.json new file mode 100644 index 00000000000..5442a299061 --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Galaxy @BBL X1.json @@ -0,0 +1,16 @@ +{ + "type": "filament", + "name": "PolyLite PLA Galaxy @BBL X1", + "inherits": "PolyLite PLA Galaxy @base", + "from": "system", + "setting_id": "GFSL63_03", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab X1 0.4 nozzle", + "Bambu Lab X1 0.6 nozzle", + "Bambu Lab X1 0.8 nozzle" + ], + "slow_down_layer_time": [ + "4" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Galaxy @base.json b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Galaxy @base.json new file mode 100644 index 00000000000..9480b33392e --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Galaxy @base.json @@ -0,0 +1,68 @@ +{ + "type": "filament", + "name": "PolyLite PLA Galaxy @base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "GFL63", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "filament_cost": [ + "29.99" + ], + "filament_density": [ + "1.17" + ], + "filament_flow_ratio": [ + "0.98" + ], + "filament_max_volumetric_speed": [ + "20" + ], + "filament_vendor": [ + "Polymaker" + ], + "hot_plate_temp": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "overhang_fan_speed": [ + "75" + ], + "slow_down_layer_time": [ + "2" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "61" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "filament_type": [ + "PLA" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Glow @BBL A1.json b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Glow @BBL A1.json new file mode 100644 index 00000000000..3c9a455cae3 --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Glow @BBL A1.json @@ -0,0 +1,13 @@ +{ + "type": "filament", + "name": "PolyLite PLA Glow @BBL A1", + "inherits": "PolyLite PLA Glow @base", + "from": "system", + "setting_id": "GFSL64_00", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab A1 0.4 nozzle", + "Bambu Lab A1 0.6 nozzle", + "Bambu Lab A1 0.8 nozzle" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Glow @BBL A1M.json b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Glow @BBL A1M.json new file mode 100644 index 00000000000..205722c3d21 --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Glow @BBL A1M.json @@ -0,0 +1,13 @@ +{ + "type": "filament", + "name": "PolyLite PLA Glow @BBL A1M", + "inherits": "PolyLite PLA Glow @base", + "from": "system", + "setting_id": "GFSL64_01", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab A1 mini 0.4 nozzle", + "Bambu Lab A1 mini 0.6 nozzle", + "Bambu Lab A1 mini 0.8 nozzle" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Glow @BBL P1P.json b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Glow @BBL P1P.json new file mode 100644 index 00000000000..2c67c2098bf --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Glow @BBL P1P.json @@ -0,0 +1,16 @@ +{ + "type": "filament", + "name": "PolyLite PLA Glow @BBL P1P", + "inherits": "PolyLite PLA Glow @base", + "from": "system", + "setting_id": "GFSL64_02", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab P1P 0.4 nozzle", + "Bambu Lab P1P 0.6 nozzle", + "Bambu Lab P1P 0.8 nozzle" + ], + "slow_down_layer_time": [ + "10" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Glow @BBL X1.json b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Glow @BBL X1.json new file mode 100644 index 00000000000..932e217ee59 --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Glow @BBL X1.json @@ -0,0 +1,16 @@ +{ + "type": "filament", + "name": "PolyLite PLA Glow @BBL X1", + "inherits": "PolyLite PLA Glow @base", + "from": "system", + "setting_id": "GFSL64_03", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab X1 0.4 nozzle", + "Bambu Lab X1 0.6 nozzle", + "Bambu Lab X1 0.8 nozzle" + ], + "slow_down_layer_time": [ + "4" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Glow @base.json b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Glow @base.json new file mode 100644 index 00000000000..ab4b717dbb3 --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Glow @base.json @@ -0,0 +1,68 @@ +{ + "type": "filament", + "name": "PolyLite PLA Glow @base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "GFL64", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "filament_cost": [ + "29.99" + ], + "filament_density": [ + "1.17" + ], + "filament_flow_ratio": [ + "0.98" + ], + "filament_max_volumetric_speed": [ + "20" + ], + "filament_vendor": [ + "Polymaker" + ], + "hot_plate_temp": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "overhang_fan_speed": [ + "75" + ], + "slow_down_layer_time": [ + "2" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "61" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "filament_type": [ + "PLA" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Luminous @BBL A1.json b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Luminous @BBL A1.json new file mode 100644 index 00000000000..7b9b747ad11 --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Luminous @BBL A1.json @@ -0,0 +1,13 @@ +{ + "type": "filament", + "name": "PolyLite PLA Luminous @BBL A1", + "inherits": "PolyLite PLA Luminous @base", + "from": "system", + "setting_id": "GFSL65_00", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab A1 0.4 nozzle", + "Bambu Lab A1 0.6 nozzle", + "Bambu Lab A1 0.8 nozzle" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Luminous @BBL A1M.json b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Luminous @BBL A1M.json new file mode 100644 index 00000000000..f6a84a52cbb --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Luminous @BBL A1M.json @@ -0,0 +1,13 @@ +{ + "type": "filament", + "name": "PolyLite PLA Luminous @BBL A1M", + "inherits": "PolyLite PLA Luminous @base", + "from": "system", + "setting_id": "GFSL65_01", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab A1 mini 0.4 nozzle", + "Bambu Lab A1 mini 0.6 nozzle", + "Bambu Lab A1 mini 0.8 nozzle" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Luminous @BBL P1P.json b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Luminous @BBL P1P.json new file mode 100644 index 00000000000..c89622dd473 --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Luminous @BBL P1P.json @@ -0,0 +1,16 @@ +{ + "type": "filament", + "name": "PolyLite PLA Luminous @BBL P1P", + "inherits": "PolyLite PLA Luminous @base", + "from": "system", + "setting_id": "GFSL65_02", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab P1P 0.4 nozzle", + "Bambu Lab P1P 0.6 nozzle", + "Bambu Lab P1P 0.8 nozzle" + ], + "slow_down_layer_time": [ + "10" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Luminous @BBL X1.json b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Luminous @BBL X1.json new file mode 100644 index 00000000000..d9cca176655 --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Luminous @BBL X1.json @@ -0,0 +1,16 @@ +{ + "type": "filament", + "name": "PolyLite PLA Luminous @BBL X1", + "inherits": "PolyLite PLA Luminous @base", + "from": "system", + "setting_id": "GFSL65_03", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab X1 0.4 nozzle", + "Bambu Lab X1 0.6 nozzle", + "Bambu Lab X1 0.8 nozzle" + ], + "slow_down_layer_time": [ + "4" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Luminous @base.json b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Luminous @base.json new file mode 100644 index 00000000000..a6bb2746c1d --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Luminous @base.json @@ -0,0 +1,68 @@ +{ + "type": "filament", + "name": "PolyLite PLA Luminous @base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "GFL65", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "filament_cost": [ + "29.99" + ], + "filament_density": [ + "1.17" + ], + "filament_flow_ratio": [ + "0.98" + ], + "filament_max_volumetric_speed": [ + "20" + ], + "filament_vendor": [ + "Polymaker" + ], + "hot_plate_temp": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "overhang_fan_speed": [ + "75" + ], + "slow_down_layer_time": [ + "2" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "61" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "filament_type": [ + "PLA" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Neon @BBL A1.json b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Neon @BBL A1.json new file mode 100644 index 00000000000..c54ed61ca95 --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Neon @BBL A1.json @@ -0,0 +1,13 @@ +{ + "type": "filament", + "name": "PolyLite PLA Neon @BBL A1", + "inherits": "PolyLite PLA Neon @base", + "from": "system", + "setting_id": "GFSL66_00", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab A1 0.4 nozzle", + "Bambu Lab A1 0.6 nozzle", + "Bambu Lab A1 0.8 nozzle" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Neon @BBL A1M.json b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Neon @BBL A1M.json new file mode 100644 index 00000000000..b324cfd9bf3 --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Neon @BBL A1M.json @@ -0,0 +1,13 @@ +{ + "type": "filament", + "name": "PolyLite PLA Neon @BBL A1M", + "inherits": "PolyLite PLA Neon @base", + "from": "system", + "setting_id": "GFSL66_01", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab A1 mini 0.4 nozzle", + "Bambu Lab A1 mini 0.6 nozzle", + "Bambu Lab A1 mini 0.8 nozzle" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Neon @BBL P1P.json b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Neon @BBL P1P.json new file mode 100644 index 00000000000..79e994ecc47 --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Neon @BBL P1P.json @@ -0,0 +1,16 @@ +{ + "type": "filament", + "name": "PolyLite PLA Neon @BBL P1P", + "inherits": "PolyLite PLA Neon @base", + "from": "system", + "setting_id": "GFSL66_02", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab P1P 0.4 nozzle", + "Bambu Lab P1P 0.6 nozzle", + "Bambu Lab P1P 0.8 nozzle" + ], + "slow_down_layer_time": [ + "10" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Neon @BBL X1.json b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Neon @BBL X1.json new file mode 100644 index 00000000000..6cc2023b3b7 --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Neon @BBL X1.json @@ -0,0 +1,16 @@ +{ + "type": "filament", + "name": "PolyLite PLA Neon @BBL X1", + "inherits": "PolyLite PLA Neon @base", + "from": "system", + "setting_id": "GFSL66_03", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab X1 0.4 nozzle", + "Bambu Lab X1 0.6 nozzle", + "Bambu Lab X1 0.8 nozzle" + ], + "slow_down_layer_time": [ + "4" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Neon @base.json b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Neon @base.json new file mode 100644 index 00000000000..5a0ec604651 --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Neon @base.json @@ -0,0 +1,68 @@ +{ + "type": "filament", + "name": "PolyLite PLA Neon @base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "GFL66", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "filament_cost": [ + "29.99" + ], + "filament_density": [ + "1.17" + ], + "filament_flow_ratio": [ + "0.98" + ], + "filament_max_volumetric_speed": [ + "20" + ], + "filament_vendor": [ + "Polymaker" + ], + "hot_plate_temp": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "overhang_fan_speed": [ + "75" + ], + "slow_down_layer_time": [ + "2" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "61" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "filament_type": [ + "PLA" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Starlight @BBL A1.json b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Starlight @BBL A1.json new file mode 100644 index 00000000000..8e1425278be --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Starlight @BBL A1.json @@ -0,0 +1,13 @@ +{ + "type": "filament", + "name": "PolyLite PLA Starlight @BBL A1", + "inherits": "PolyLite PLA Starlight @base", + "from": "system", + "setting_id": "GFSL67_00", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab A1 0.4 nozzle", + "Bambu Lab A1 0.6 nozzle", + "Bambu Lab A1 0.8 nozzle" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Starlight @BBL A1M.json b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Starlight @BBL A1M.json new file mode 100644 index 00000000000..ecb482cdcb0 --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Starlight @BBL A1M.json @@ -0,0 +1,13 @@ +{ + "type": "filament", + "name": "PolyLite PLA Starlight @BBL A1M", + "inherits": "PolyLite PLA Starlight @base", + "from": "system", + "setting_id": "GFSL67_01", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab A1 mini 0.4 nozzle", + "Bambu Lab A1 mini 0.6 nozzle", + "Bambu Lab A1 mini 0.8 nozzle" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Starlight @BBL P1P.json b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Starlight @BBL P1P.json new file mode 100644 index 00000000000..0f7210a5ccc --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Starlight @BBL P1P.json @@ -0,0 +1,16 @@ +{ + "type": "filament", + "name": "PolyLite PLA Starlight @BBL P1P", + "inherits": "PolyLite PLA Starlight @base", + "from": "system", + "setting_id": "GFSL67_02", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab P1P 0.4 nozzle", + "Bambu Lab P1P 0.6 nozzle", + "Bambu Lab P1P 0.8 nozzle" + ], + "slow_down_layer_time": [ + "10" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Starlight @BBL X1.json b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Starlight @BBL X1.json new file mode 100644 index 00000000000..88d436c5267 --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Starlight @BBL X1.json @@ -0,0 +1,16 @@ +{ + "type": "filament", + "name": "PolyLite PLA Starlight @BBL X1", + "inherits": "PolyLite PLA Starlight @base", + "from": "system", + "setting_id": "GFSL67_03", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab X1 0.4 nozzle", + "Bambu Lab X1 0.6 nozzle", + "Bambu Lab X1 0.8 nozzle" + ], + "slow_down_layer_time": [ + "4" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Starlight @base.json b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Starlight @base.json new file mode 100644 index 00000000000..ecc73602c3f --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Starlight @base.json @@ -0,0 +1,68 @@ +{ + "type": "filament", + "name": "PolyLite PLA Starlight @base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "GFL67", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "filament_cost": [ + "29.99" + ], + "filament_density": [ + "1.17" + ], + "filament_flow_ratio": [ + "0.98" + ], + "filament_max_volumetric_speed": [ + "20" + ], + "filament_vendor": [ + "Polymaker" + ], + "hot_plate_temp": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "overhang_fan_speed": [ + "75" + ], + "slow_down_layer_time": [ + "2" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "61" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "filament_type": [ + "PLA" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Translucent @BBL A1.json b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Translucent @BBL A1.json new file mode 100644 index 00000000000..6664212a43e --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Translucent @BBL A1.json @@ -0,0 +1,13 @@ +{ + "type": "filament", + "name": "PolyLite PLA Translucent @BBL A1", + "inherits": "PolyLite PLA Translucent @base", + "from": "system", + "setting_id": "GFSL68_00", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab A1 0.4 nozzle", + "Bambu Lab A1 0.6 nozzle", + "Bambu Lab A1 0.8 nozzle" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Translucent @BBL A1M.json b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Translucent @BBL A1M.json new file mode 100644 index 00000000000..7b20e40ce12 --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Translucent @BBL A1M.json @@ -0,0 +1,13 @@ +{ + "type": "filament", + "name": "PolyLite PLA Translucent @BBL A1M", + "inherits": "PolyLite PLA Translucent @base", + "from": "system", + "setting_id": "GFSL68_01", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab A1 mini 0.4 nozzle", + "Bambu Lab A1 mini 0.6 nozzle", + "Bambu Lab A1 mini 0.8 nozzle" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Translucent @BBL P1P.json b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Translucent @BBL P1P.json new file mode 100644 index 00000000000..f3f3198158a --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Translucent @BBL P1P.json @@ -0,0 +1,16 @@ +{ + "type": "filament", + "name": "PolyLite PLA Translucent @BBL P1P", + "inherits": "PolyLite PLA Translucent @base", + "from": "system", + "setting_id": "GFSL68_02", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab P1P 0.4 nozzle", + "Bambu Lab P1P 0.6 nozzle", + "Bambu Lab P1P 0.8 nozzle" + ], + "slow_down_layer_time": [ + "10" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Translucent @BBL X1.json b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Translucent @BBL X1.json new file mode 100644 index 00000000000..f67db0a2711 --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Translucent @BBL X1.json @@ -0,0 +1,16 @@ +{ + "type": "filament", + "name": "PolyLite PLA Translucent @BBL X1", + "inherits": "PolyLite PLA Translucent @base", + "from": "system", + "setting_id": "GFSL68_03", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab X1 0.4 nozzle", + "Bambu Lab X1 0.6 nozzle", + "Bambu Lab X1 0.8 nozzle" + ], + "slow_down_layer_time": [ + "4" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Translucent @base.json b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Translucent @base.json new file mode 100644 index 00000000000..f5f9c89720e --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyLite PLA Translucent @base.json @@ -0,0 +1,68 @@ +{ + "type": "filament", + "name": "PolyLite PLA Translucent @base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "GFL68", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "filament_cost": [ + "29.99" + ], + "filament_density": [ + "1.17" + ], + "filament_flow_ratio": [ + "0.98" + ], + "filament_max_volumetric_speed": [ + "20" + ], + "filament_vendor": [ + "Polymaker" + ], + "hot_plate_temp": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "overhang_fan_speed": [ + "75" + ], + "slow_down_layer_time": [ + "2" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "61" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "filament_type": [ + "PLA" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA @BBL A1.json b/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA @BBL A1.json index a9929a1b814..d10f9585972 100644 --- a/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA @BBL A1.json +++ b/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA @BBL A1.json @@ -5,36 +5,69 @@ "from": "system", "setting_id": "GFSL01_02", "instantiation": "true", + "compatible_printers": [ + "Bambu Lab A1 0.4 nozzle", + "Bambu Lab A1 0.6 nozzle", + "Bambu Lab A1 0.8 nozzle" + ], + "cool_plate_temp": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "hot_plate_temp": [ + "60" + ], + "textured_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], "fan_cooling_layer_time": [ "80" ], + "filament_cost": [ + "21.99" + ], + "filament_density": [ + "1.37" + ], + "filament_max_volumetric_speed": [ + "22" + ], + "bed_type": [ + "Cool Plate" + ], "fan_max_speed": [ "80" ], "fan_min_speed": [ "60" ], - "filament_max_volumetric_speed": [ - "22" - ], - "hot_plate_temp": [ - "65" - ], - "hot_plate_temp_initial_layer": [ - "65" + "slow_down_min_speed": [ + "5" ], "slow_down_layer_time": [ "8" ], - "textured_plate_temp": [ - "65" + "temperature_vitrification": [ + "61" ], - "textured_plate_temp_initial_layer": [ - "65" - ], - "compatible_printers": [ - "Bambu Lab A1 0.4 nozzle", - "Bambu Lab A1 0.6 nozzle", - "Bambu Lab A1 0.8 nozzle" + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA @BBL A1M.json b/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA @BBL A1M.json index cf8d706e55b..ca09a479355 100644 --- a/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA @BBL A1M.json +++ b/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA @BBL A1M.json @@ -5,36 +5,69 @@ "from": "system", "setting_id": "GFSL01_00", "instantiation": "true", + "compatible_printers": [ + "Bambu Lab A1 mini 0.4 nozzle", + "Bambu Lab A1 mini 0.6 nozzle", + "Bambu Lab A1 mini 0.8 nozzle" + ], + "cool_plate_temp": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "hot_plate_temp": [ + "60" + ], + "textured_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], "fan_cooling_layer_time": [ "80" ], + "filament_cost": [ + "21.99" + ], + "filament_density": [ + "1.37" + ], + "filament_max_volumetric_speed": [ + "22" + ], + "bed_type": [ + "Cool Plate" + ], "fan_max_speed": [ "80" ], "fan_min_speed": [ "60" ], - "filament_max_volumetric_speed": [ - "22" - ], - "hot_plate_temp": [ - "60" - ], - "hot_plate_temp_initial_layer": [ - "60" + "slow_down_min_speed": [ + "5" ], "slow_down_layer_time": [ "8" ], - "textured_plate_temp": [ - "65" + "temperature_vitrification": [ + "61" ], - "textured_plate_temp_initial_layer": [ - "65" - ], - "compatible_printers": [ - "Bambu Lab A1 mini 0.4 nozzle", - "Bambu Lab A1 mini 0.6 nozzle", - "Bambu Lab A1 mini 0.8 nozzle" + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA @BBL X1.json b/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA @BBL X1.json index bb143728a71..d3f601395ba 100644 --- a/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA @BBL X1.json +++ b/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA @BBL X1.json @@ -5,123 +5,60 @@ "from": "system", "setting_id": "GFSL22", "instantiation": "true", - "filament_max_volumetric_speed": [ - "22", - "22" - ], - "filament_flow_ratio": [ - "0.98", - "0.98" - ], - "filament_deretraction_speed": [ - "nil", - "nil" - ], - "filament_flush_temp": [ - "0", - "0" - ], - "filament_flush_volumetric_speed": [ - "0", - "0" - ], - "filament_long_retractions_when_cut": [ - "nil", - "nil" - ], - "filament_ramming_volumetric_speed": [ - "-1", - "-1" - ], - "filament_retract_before_wipe": [ - "nil", - "nil" - ], - "filament_retract_restart_extra": [ - "nil", - "nil" - ], - "filament_retract_when_changing_layer": [ - "nil", - "nil" - ], - "filament_retraction_distances_when_cut": [ - "nil", - "nil" - ], - "filament_retraction_length": [ - "nil", - "nil" - ], - "filament_retraction_minimum_travel": [ - "nil", - "nil" - ], - "filament_retraction_speed": [ - "nil", - "nil" - ], - "filament_wipe": [ - "nil", - "nil" - ], - "filament_wipe_distance": [ - "nil", - "nil" - ], - "filament_z_hop": [ - "nil", - "nil" - ], - "filament_z_hop_types": [ - "nil", - "nil" - ], - "filament_extruder_variant": [ - "Direct Drive Standard", - "Direct Drive High Flow" - ], - "filament_pre_cooling_temperature": [ - "0", - "0" - ], - "filament_ramming_travel_time": [ - "0", - "0" - ], - "filament_adaptive_volumetric_speed": [ - "0", - "0" - ], - "long_retractions_when_ec": [ - "0", - "0" - ], - "nozzle_temperature": [ - "220", - "220" - ], - "nozzle_temperature_initial_layer": [ - "220", - "220" - ], - "retraction_distances_when_ec": [ - "0", - "0" - ], - "slow_down_layer_time": [ - "8" - ], - "volumetric_speed_coefficients": [ - "0 0 0 0 0 0", - "0 0 0 0 0 0" - ], "compatible_printers": [ "Bambu Lab X1 0.4 nozzle", "Bambu Lab X1 0.6 nozzle", "Bambu Lab X1 0.8 nozzle" ], - "filament_start_gcode": [ - "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + "cool_plate_temp": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "hot_plate_temp": [ + "60" + ], + "textured_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_speed": [ + "75" + ], + "filament_cost": [ + "21.99" + ], + "filament_density": [ + "1.37" + ], + "filament_max_volumetric_speed": [ + "22" + ], + "bed_type": [ + "Cool Plate" + ], + "slow_down_min_speed": [ + "5" + ], + "slow_down_layer_time": [ + "8" + ], + "temperature_vitrification": [ + "61" + ], + "nozzle_temperature_range_high": [ + "230" ] } diff --git a/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA Marble @BBL A1.json b/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA Marble @BBL A1.json new file mode 100644 index 00000000000..9bda6808d97 --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA Marble @BBL A1.json @@ -0,0 +1,13 @@ +{ + "type": "filament", + "name": "PolyTerra PLA Marble @BBL A1", + "inherits": "PolyTerra PLA Marble @base", + "from": "system", + "setting_id": "GFSL69_00", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab A1 0.4 nozzle", + "Bambu Lab A1 0.6 nozzle", + "Bambu Lab A1 0.8 nozzle" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA Marble @BBL A1M.json b/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA Marble @BBL A1M.json new file mode 100644 index 00000000000..721e0b3d3de --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA Marble @BBL A1M.json @@ -0,0 +1,13 @@ +{ + "type": "filament", + "name": "PolyTerra PLA Marble @BBL A1M", + "inherits": "PolyTerra PLA Marble @base", + "from": "system", + "setting_id": "GFSL69_01", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab A1 mini 0.4 nozzle", + "Bambu Lab A1 mini 0.6 nozzle", + "Bambu Lab A1 mini 0.8 nozzle" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA Marble @BBL P1P.json b/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA Marble @BBL P1P.json new file mode 100644 index 00000000000..5dedafd5ffe --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA Marble @BBL P1P.json @@ -0,0 +1,19 @@ +{ + "type": "filament", + "name": "PolyTerra PLA Marble @BBL P1P", + "inherits": "PolyTerra PLA Marble @base", + "from": "system", + "setting_id": "GFSL69_02", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab P1P 0.4 nozzle", + "Bambu Lab P1P 0.6 nozzle", + "Bambu Lab P1P 0.8 nozzle" + ], + "fan_max_speed": [ + "100" + ], + "fan_min_speed": [ + "50" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA Marble @BBL X1.json b/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA Marble @BBL X1.json new file mode 100644 index 00000000000..8a47922219e --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA Marble @BBL X1.json @@ -0,0 +1,22 @@ +{ + "type": "filament", + "name": "PolyTerra PLA Marble @BBL X1", + "inherits": "PolyTerra PLA Marble @base", + "from": "system", + "setting_id": "GFSL69_03", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab X1 0.4 nozzle", + "Bambu Lab X1 0.6 nozzle", + "Bambu Lab X1 0.8 nozzle" + ], + "fan_cooling_layer_time": [ + "100" + ], + "fan_max_speed": [ + "100" + ], + "fan_min_speed": [ + "100" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA Marble @base.json b/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA Marble @base.json new file mode 100644 index 00000000000..2b64adc51c3 --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA Marble @base.json @@ -0,0 +1,77 @@ +{ + "type": "filament", + "name": "PolyTerra PLA Marble @base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "GFL69", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "fan_cooling_layer_time": [ + "80" + ], + "fan_max_speed": [ + "80" + ], + "fan_min_speed": [ + "60" + ], + "filament_cost": [ + "21.99" + ], + "filament_density": [ + "1.37" + ], + "filament_flow_ratio": [ + "0.98" + ], + "filament_max_volumetric_speed": [ + "22" + ], + "filament_vendor": [ + "Polymaker" + ], + "hot_plate_temp": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "overhang_fan_speed": [ + "75" + ], + "slow_down_layer_time": [ + "8" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "61" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "filament_type": [ + "PLA" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA+ @BBL A1.json b/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA+ @BBL A1.json new file mode 100644 index 00000000000..08ace4c6a54 --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA+ @BBL A1.json @@ -0,0 +1,13 @@ +{ + "type": "filament", + "name": "PolyTerra PLA+ @BBL A1", + "inherits": "PolyTerra PLA+ @base", + "from": "system", + "setting_id": "GFSL70_00", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab A1 0.4 nozzle", + "Bambu Lab A1 0.6 nozzle", + "Bambu Lab A1 0.8 nozzle" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA+ @BBL A1M.json b/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA+ @BBL A1M.json new file mode 100644 index 00000000000..86f3ab3ffb1 --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA+ @BBL A1M.json @@ -0,0 +1,13 @@ +{ + "type": "filament", + "name": "PolyTerra PLA+ @BBL A1M", + "inherits": "PolyTerra PLA+ @base", + "from": "system", + "setting_id": "GFSL70_01", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab A1 mini 0.4 nozzle", + "Bambu Lab A1 mini 0.6 nozzle", + "Bambu Lab A1 mini 0.8 nozzle" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA+ @BBL P1P.json b/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA+ @BBL P1P.json new file mode 100644 index 00000000000..dd09d09637b --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA+ @BBL P1P.json @@ -0,0 +1,16 @@ +{ + "type": "filament", + "name": "PolyTerra PLA+ @BBL P1P", + "inherits": "PolyTerra PLA+ @base", + "from": "system", + "setting_id": "GFSL70_02", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab P1P 0.4 nozzle", + "Bambu Lab P1P 0.6 nozzle", + "Bambu Lab P1P 0.8 nozzle" + ], + "slow_down_layer_time": [ + "15" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA+ @BBL X1.json b/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA+ @BBL X1.json new file mode 100644 index 00000000000..a28a8d30d83 --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA+ @BBL X1.json @@ -0,0 +1,16 @@ +{ + "type": "filament", + "name": "PolyTerra PLA+ @BBL X1", + "inherits": "PolyTerra PLA+ @base", + "from": "system", + "setting_id": "GFSL70_03", + "instantiation": "true", + "compatible_printers": [ + "Bambu Lab X1 0.4 nozzle", + "Bambu Lab X1 0.6 nozzle", + "Bambu Lab X1 0.8 nozzle" + ], + "slow_down_layer_time": [ + "15" + ] +} diff --git a/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA+ @base.json b/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA+ @base.json new file mode 100644 index 00000000000..15fccef9e3c --- /dev/null +++ b/resources/profiles/BBL/filament/Polymaker/PolyTerra PLA+ @base.json @@ -0,0 +1,71 @@ +{ + "type": "filament", + "name": "PolyTerra PLA+ @base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "GFL70", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "filament_cost": [ + "20.99" + ], + "filament_flow_ratio": [ + "0.95" + ], + "filament_max_volumetric_speed": [ + "16" + ], + "filament_vendor": [ + "Polymaker" + ], + "hot_plate_temp": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "nozzle_temperature": [ + "230" + ], + "nozzle_temperature_initial_layer": [ + "230" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "overhang_fan_speed": [ + "75" + ], + "slow_down_layer_time": [ + "5" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "59" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "filament_type": [ + "PLA" + ] +} diff --git a/resources/profiles/BBL/machine/Bambu Lab X2D 0.4 nozzle.json b/resources/profiles/BBL/machine/Bambu Lab X2D 0.4 nozzle.json index 6d73d9fa8ed..beeb01dd8a6 100644 --- a/resources/profiles/BBL/machine/Bambu Lab X2D 0.4 nozzle.json +++ b/resources/profiles/BBL/machine/Bambu Lab X2D 0.4 nozzle.json @@ -8,7 +8,7 @@ "change_filament_gcode": "======== X2D filament_change gcode ==========\n;===== 2026/04/08 =====\n\nM620 S[next_extruder]A B H[next_hotend]\n;M204 S9000\n{if toolchange_count > 1 && (z_hop_types[current_extruder] == 0 || z_hop_types[current_extruder] == 3)}\nG17\nG2 Z{z_after_toolchange + 0.4} I0.86 J0.86 P1 F10000 ; spiral lift a little from second lift\n{endif}\n\n;nozzle_change_gcode\n\nG1 Z{max_layer_z + 3.0} F1200\n\nM400\nM106 P1 S0\n\n{if toolchange_count == 2}\n; get travel path for change filament\n;M620.1 X[travel_point_1_x] Y[travel_point_1_y] F21000 P0\n;M620.1 X[travel_point_2_x] Y[travel_point_2_y] F21000 P1\n;M620.1 X[travel_point_3_x] Y[travel_point_3_y] F21000 P2\n{endif}\n\n{if ((filament_type[current_extruder] == \"PLA\") || (filament_type[current_extruder] == \"PLA-CF\") || (filament_type[current_extruder] == \"PETG\")) && (nozzle_diameter[current_extruder] == 0.2)}\nM620.10 A0 F74.8347 L[flush_length] H{nozzle_diameter[current_extruder]} T{flush_temperatures[current_extruder]} P[old_filament_temp] S1\n{else}\nM620.10 A0 F{flush_volumetric_speeds[current_extruder]/2.4053*60} L[flush_length] H{nozzle_diameter[current_extruder]} T{flush_temperatures[current_extruder]} P[old_filament_temp] S1\n{endif}\n\n{if ((filament_type[next_extruder] == \"PLA\") || (filament_type[next_extruder] == \"PLA-CF\") || (filament_type[next_extruder] == \"PETG\")) && (nozzle_diameter[next_extruder] == 0.2)}\nM620.10 A1 F74.8347 L[flush_length] H{nozzle_diameter[next_extruder]} T{flush_temperatures[next_extruder]} P[new_filament_temp] S1\n{else}\nM620.10 A1 F{flush_volumetric_speeds[next_extruder]/2.4053*60} L[flush_length] H{nozzle_diameter[next_extruder]} T{flush_temperatures[next_extruder]} P[new_filament_temp] S1\n{endif}\n\nM620.15 C{new_filament_temp - filament_cooling_before_tower[next_extruder]}\n\n{if long_retraction_when_cut}\nM620.11 P1 L0 I[current_extruder] B[current_hotend] E-{retraction_distance_when_cut} F{max((flush_volumetric_speeds[current_extruder]/2.4053*60), 200)}\n{else}\nM620.11 P0 L0 I[current_extruder] B[current_hotend] E0\n{endif}\n\n{if long_retraction_when_ec}\nM620.11 K1 I[current_extruder] B[current_hotend] R{retraction_distance_when_ec} F{max((flush_volumetric_speeds[current_extruder]/2.4053*60), 200)}\n{else}\nM620.11 K0 I[current_extruder] B[current_hotend] R0\n{endif}\n\nM620.22 I[next_extruder] P1 ; enable remote extruder runout auto purge.\n \nT[next_extruder] H[next_hotend]\n\n;deretract\n{if filament_type[next_extruder] == \"TPU\"}\n{else}\n{if filament_type[next_extruder] == \"PA\"}\n;VG1 E1 F{max(new_filament_e_feedrate, 200)}\n;VG1 E1 F{max(new_filament_e_feedrate/2, 100)}\n{else}\n;VG1 E4 F{max(new_filament_e_feedrate, 200)}\n;VG1 E4 F{max(new_filament_e_feedrate/2, 100)}\n{endif}\n{endif}\n\n; VFLUSH_START\n{if flush_length>41.5}\n;VG1 E41.5 F{min(old_filament_e_feedrate,new_filament_e_feedrate)}\n;VG1 E{flush_length-41.5} F{new_filament_e_feedrate}\n{else}\n;VG1 E{flush_length} F{min(old_filament_e_feedrate,new_filament_e_feedrate)}\n{endif}\nSYNC T{ceil(flush_length / 125) * 5}\n; VFLUSH_END\n\nM1002 set_filament_type:{filament_type[next_extruder]}\n\nM400\nM83\n{if next_extruder < 255}\nM620.10 R{retract_length_toolchange[filament_map[next_extruder]-1]}\nM628 S0\n;VM109 S[new_filament_temp]\nM629\nM400\n\n;prime_tower_interface\n{if is_prime_tower_interface && filament_tower_interface_purge_volume !=0}\nG150.1\nM620.13 W0 L{filament_tower_interface_purge_volume} T{filament_tower_interface_print_temp} R0.0\n{endif}\n;prime_tower_interface\n\nM983.3 F{filament_max_volumetric_speed[next_extruder]/2.4} A0.4 R{retract_length_toolchange[filament_map[next_extruder]-1]}\n\nM400\n\nG1 Z{max_layer_z + 3.0} F3000\n\n{else}\nG1 X[x_after_toolchange] Y[y_after_toolchange] Z[z_after_toolchange] F12000\n{endif}\n\n\nM621 S[next_extruder]A B\n\nM622.1 S0 ;for prev version, default skip\nM1002 judge_flag powerloss_resume_flag\nM622 J1\nM983.3 F{filament_max_volumetric_speed[next_extruder]/2.4} A0.4 R{retract_length_toolchange[filament_map[next_extruder]-1]}\nM400\nG1 Z{max_layer_z + 3.0} F3000\nM1002 set_flag powerloss_resume_flag=0\nM623\n\nM620.6 I[next_extruder] H[next_hotend] W1 ;enable ams air printing detect\n\n{if (filament_type[next_extruder] == \"TPU\")}\nM1015.3 S1 H[nozzle_diameter];enable tpu clog detect\n{else}\nM1015.3 S0;disable tpu clog detect\n{endif}\n\n{if (filament_type[next_extruder] == \"PLA\") || (filament_type[next_extruder] == \"PETG\")\n || (filament_type[next_extruder] == \"PLA-CF\") || (filament_type[next_extruder] == \"PETG-CF\")}\nM1015.4 S1 K1 H[nozzle_diameter] ;enable E air printing detect\n{else}\nM1015.4 S0 K0 H[nozzle_diameter] ;disable E air printing detect\n{endif}\n\n{if layer_z <= (initial_layer_print_height + 0.001)}\nM204 S[initial_layer_acceleration]\n{else}\nM204 S[travel_acceleration]\n{endif}\n\nG1 Y256 F18000\n\n\n{if (overall_chamber_temperature < 40)}\n{if (layer_num + 1 <= close_additional_fan_first_x_layers[next_extruder])}\n M106 P2 S{first_x_layer_fan_speed[next_extruder]*255.0/100.0 };set first x_layer fan\n\tM106 P10 S{first_x_layer_fan_speed[next_extruder]*255.0/100.0 };set first x_layer fan\n{elsif (layer_num + 1 < additional_fan_full_speed_layer[next_extruder] && additional_fan_full_speed_layer[next_extruder] > close_additional_fan_first_x_layers[next_extruder])}\n M106 P2 S{(first_x_layer_fan_speed[next_extruder] + (additional_cooling_fan_speed[next_extruder] - first_x_layer_fan_speed[next_extruder]) * (layer_num + 1 - close_additional_fan_first_x_layers[next_extruder]) / (additional_fan_full_speed_layer[next_extruder] - close_additional_fan_first_x_layers[next_extruder])) * 255.0/100.0}\n\tM106 P10 S{(first_x_layer_fan_speed[next_extruder] + (additional_cooling_fan_speed[next_extruder] - first_x_layer_fan_speed[next_extruder]) * (layer_num + 1 - close_additional_fan_first_x_layers[next_extruder]) / (additional_fan_full_speed_layer[next_extruder] - close_additional_fan_first_x_layers[next_extruder])) * 255.0/100.0}\n{else}\n {if (min_vitrification_temperature <= 50)}\n {if (nozzle_diameter == 0.2)}\n M142 P1 R30 S35 U{max_additional_fan/100.0} V1.0 O40; set PLA/TPU ND0.2 chamber autocooling\n {else}\n M142 P1 R30 S40 U{max_additional_fan/100.0} V1.0 O45; set PLA/TPU ND0.4 chamber autocooling\n {endif}\n {else}\n {if (nozzle_diameter == 0.2)}\n M142 P1 R35 S45 U{max_additional_fan/100.0} V0.5 O50; set PETG ND0.2 chamber autocooling\n {else}\n M142 P1 R35 S50 U{max_additional_fan/100.0} V0.5 O55; set PETG ND0.4 chamber autocooling\n {endif}\n {endif}\n{endif}\n{endif}\n;not set fan changing filament", "layer_change_gcode": ";======== X2D layer_change gcode ==========\n;===== 2025/04/08 =====\n\n{if (layer_num + 1 == 1)}\n{if (overall_chamber_temperature >= 40)}\n ;not reset filter fan in first layer\n ;not reset fan\n{endif}\n{endif}\n\n{if (layer_num + 1 <= close_additional_fan_first_x_layers[current_extruder])}\n{if (overall_chamber_temperature < 40)}\n M106 P2 S{first_x_layer_fan_speed[current_extruder]*255.0/100.0}\n\tM106 P10 S{first_x_layer_fan_speed[current_extruder]*255.0/100.0}\n{endif}\n;not reset fan\n{elsif (layer_num + 1 < additional_fan_full_speed_layer[current_extruder] && additional_fan_full_speed_layer[current_extruder] > close_additional_fan_first_x_layers[current_extruder])}\n{if (overall_chamber_temperature < 40)}\n M106 P2 S{(first_x_layer_fan_speed[current_extruder] + (additional_cooling_fan_speed[current_extruder] - first_x_layer_fan_speed[current_extruder]) * (layer_num + 1 - close_additional_fan_first_x_layers[current_extruder]) / (additional_fan_full_speed_layer[current_extruder] - close_additional_fan_first_x_layers[current_extruder])) * 255.0/100.0}\n\tM106 P10 S{(first_x_layer_fan_speed[current_extruder] + (additional_cooling_fan_speed[current_extruder] - first_x_layer_fan_speed[current_extruder]) * (layer_num + 1 - close_additional_fan_first_x_layers[current_extruder]) / (additional_fan_full_speed_layer[current_extruder] - close_additional_fan_first_x_layers[current_extruder])) * 255.0/100.0}\n{endif}\n;not reset fan\n{elsif (layer_num + 1 == max(close_additional_fan_first_x_layers[current_extruder] + 1, additional_fan_full_speed_layer[current_extruder]))}\n{if (overall_chamber_temperature < 40)}\n ;updata chamber autocooling in Xth layer\n {if (min_vitrification_temperature <= 50)}\n {if (nozzle_diameter == 0.2)}\n M142 P1 R30 S35 U{max_additional_fan/100.0} V1.0 O40; set PLA/TPU ND0.2 chamber autocooling\n {else}\n M142 P1 R30 S40 U{max_additional_fan/100.0} V1.0 O45; set PLA/TPU ND0.4 chamber autocooling\n {endif}\n {else}\n {if (nozzle_diameter == 0.2)}\n M142 P1 R35 S45 U{max_additional_fan/100.0} V0.5 O50; set PETG ND0.2 chamber autocooling\n {else}\n M142 P1 R35 S50 U{max_additional_fan/100.0} V0.5 O55; set PETG ND0.4 chamber autocooling\n {endif}\n {endif}\n{else}\n ;not reset filter fan in Xth layer\n{endif}\n;not reset fan\n{endif}\n\n\n; update layer progress\nM73 L{layer_num+1}\nM991 S0 P{layer_num} ;notify layer change\n", "machine_end_gcode": ";======== X2D end gcode ==========\n;===== 2026/03/30 =====\n\nM400 ; wait for buffer to clear\nG92 E0 ; zero the extruder\n\nG90\nG1 Z{max_layer_z + 0.4} F900 ; lower z a little\nM1002 judge_flag timelapse_record_flag\nM622 J1\n G150.3\n M400 ; wait all motion done\n M991 S0 P-1 ;end smooth timelapse at safe pos\n M400 S5 ;wait for last picture to be taken\nM623 ;end of \"timelapse_record_flag\"\n\nG90\nG1 Z{max_layer_z + 10} F900 ; lower z a little\n\nM140 S0 ; turn off bed\nM141 S0 ; turn off chamber heating\nM106 S0 ; turn off fan\nM106 P2 S0 ; turn off remote part cooling fan\nM106 P3 S0 ; turn off chamber cooling fan\nM106 P10 S0 ; turn off remote part1 cooling fan\n\n; pull back filament to AMS\nM620 S65279 B\n; M620.11 P1 L0 I65279 E-3\nT65279\nG150.1 F8000\nM621 S65279 B\n\nM620 S65535 B\n; M620.11 P1 L0 I65535 E-4\nT65535\nG150.1 F8000\nM621 S65535 B\n\nG150.3\n\nM104 S0 T0; turn off hotend\nM104 S0 T1; turn off hotend\n\nM400 ; wait all motion done\nM17 S\nM17 Z0.4 ; lower z motor current to reduce impact if there is something in the bottom\n{if (80.0 - max_layer_z/2) > 0}\n {if (max_layer_z + 80.0 - max_layer_z/2) < 256}\n G1 Z{max_layer_z + 80.0 - max_layer_z/2} F600\n G1 Z{max_layer_z + 78.0 - max_layer_z/2}\n {else}\n G1 Z256 F600\n G1 Z256\n {endif}\n{else}\n {if (max_layer_z + 4.0) < 256}\n G1 Z{max_layer_z + 4.0} F600\n G1 Z{max_layer_z + 2.0}\n {else}\n G1 Z256 F600\n G1 Z256\n {endif}\n{endif}\nM400 P100\nM17 R ; restore z current\n\nM220 S100 ; Reset feedrate magnitude\nM201.2 K1.0 ; Reset acc magnitude\nM73.2 R1.0 ;Reset left time magnitude\nM1002 set_gcode_claim_speed_level : 0\n\nM1015.3 S0 ;disable clog detect\nM1015.4 S0 K0 ;disable air printing detect\n\n;=====printer finish air purification=========\nM622.1 S0\nM1002 judge_flag print_finish_air_filt_flag\n\nM622 J1\nM1002 gcode_claim_action : 66\nM145 P1\nM106 P10 S255\nM400 S180\nM106 P10 S0\nM623\n\nM622 J2\nM1002 gcode_claim_action : 66\nM145 P0\nM106 P3 S255\nM400 S180\nM106 P3 S0\nM623\n;=====printer finish air purification=========\n\n;=====printer finish sound=========\nM17\nM400 S1\nM1006 S1\nM1006 A53 B10 L50 C53 D10 M50 E53 F10 N50 \nM1006 A57 B10 L50 C57 D10 M50 E57 F10 N50 \nM1006 A0 B15 L0 C0 D15 M0 E0 F15 N0 \nM1006 A53 B10 L50 C53 D10 M50 E53 F10 N50 \nM1006 A57 B10 L50 C57 D10 M50 E57 F10 N50 \nM1006 A0 B15 L0 C0 D15 M0 E0 F15 N0 \nM1006 A48 B10 L50 C48 D10 M50 E48 F10 N50 \nM1006 A0 B15 L0 C0 D15 M0 E0 F15 N0 \nM1006 A60 B10 L50 C60 D10 M50 E60 F10 N50 \nM1006 W\n;=====printer finish sound=========\nM400\nM18\n\n", - "machine_start_gcode": ";M1002 set_flag extrude_cali_flag=1\n;M1002 set_flag g29_before_print_flag=1\n;M1002 set_flag auto_cali_toolhead_offset_flag=1\n;M1002 set_flag build_plate_detect_flag=1\n\n;======== X2D start gcode==========\n;===== 2026/03/26 =====\n\n M140 S[bed_temperature_initial_layer_single] ; heat heatbed first\n M993 A0 B0 C0 ; nozzle cam detection not allowed.\n M400\n ;M73 P99\n\n;=====printer start sound ===================\nM17\nM400 S1\nM1006 S1\nM1006 A53 B9 L50 C53 D9 M50 E53 F9 N50 \nM1006 A56 B9 L50 C56 D9 M50 E56 F9 N50 \nM1006 A61 B9 L50 C61 D9 M50 E61 F9 N50 \nM1006 A53 B9 L50 C53 D9 M50 E53 F9 N50 \nM1006 A56 B9 L50 C56 D9 M50 E56 F9 N50 \nM1006 A61 B18 L50 C61 D18 M50 E61 F18 N50 \nM1006 W\n;=====printer start sound ===================\n\n M1012.1 T1100\n M620 M ;enable remap\n M622.1 S0\n G383.4\n \n;===== avoid end stop =================\n G91\n G380 S2 Z22 F1200\n G380 S2 Z-12 F1200\n G90\n;===== avoid end stop =================\n\n;===== reset machine status =================\n M204 S10000\n M630 S0 P1\n G90\n M17 D ; reset motor current to default\n M960 S5 P1 ; turn on logo lamp\n M220 S100 ;Reset Feedrate\n M1002 set_gcode_claim_speed_level: 5\n M221 S100 ;Reset Flowrate\n M73.2 R1.0 ;Reset left time magnitude\n G29.1 Z{+0.0} ; clear z-trim value first\n M983.1 M1\n M982.2 S1 ; turn on cog noise reduction\n;===== reset machine status =================\n\n;==== set airduct mode ==== \n{if (overall_chamber_temperature >= 40)}\nM145 P1 ; set airduct mode to heating mode for heating\nM106 P2 S0 ; turn off auxiliary fan\nM106 P10 S255 ; turn on filter fan\n{else}\nM145 P0 ; set airduct mode to cooling mode for cooling\nM106 P2 S255 ; turn on auxiliary fan for cooling\nM106 P10 S255 ; turn on auxiliary fan for cooling\nM106 P3 S127 ; turn on chamber fan for cooling\n;M140 S0 ; stop heatbed from heating\nM1002 gcode_claim_action : 29\nM191 S0 ; wait for chamber temp\nM106 P2 S102 ; turn on auxiliary fan\nM106 P10 S102 ; turn on chamber fan\nM142 P6 R30 S40 U0.6 V0.8 ; set PLA/TPU/PETG exhaust chamber autocooling\n{endif}\n;==== set airduct mode ==== \n\n;===== start to heat heatbed & hotend==========\n M1002 gcode_claim_action : 2\n M1002 set_filament_type:{filament_type[initial_no_support_extruder]} \n \n ;===== set chamber temperature ==========\n {if (overall_chamber_temperature >= 40)}\n M145 P1 ; set airduct mode to heating mode\n M141 S[overall_chamber_temperature] ; Let Chamber begin to heat\n {endif}\n;===== set chamber temperature ==========\n\n G29.2 S0 ; avoid invalid abl data\n\n;===== first homing start =====\n M1002 gcode_claim_action : 13\n G28 X T300 R\n G150.1 F8000 ; wipe mouth to avoid filament stick to heatbed\n G150.3\n M972 S24 P0\n M1002 gcode_claim_action : 74 ; Heatbed surface foreign object detection\n M972 S26 P0 C0\n G90\n M83\n G1 Y128 F30000\n G1 X128\n G28 Z P0 T400\n M400\n;===== first homign end =====\n\n;===== detection start =====\n M1002 gcode_claim_action : 11\n\n M104 S0 T0\n M104 S0 T1\n M562 P1 E0 B1\n M562 P2 E0 B1\n M18 E\n M400 P200\n M1028 S1\n M972 S19 P0 ;heatbed detection\n M972 S31 P0 ;toolhead camera dirt detection\n M1002 gcode_claim_action : 73 ; Build plate alignment detection\n M972 S34 P0 ;print plate deviation detection\n M1028 S0\n M562 P1 E1 B1\n M562 P2 E1 B1\n M17 D\n\n ;M400\n M104 S{nozzle_temperature_initial_layer[initial_no_support_extruder]} T{filament_map[initial_no_support_extruder] % 2} ; rise temp in advance\n G151 P{filament_map[initial_no_support_extruder] % 2} M ; plug the heat nozzle\n {if max_print_z >= 145}\n M1002 gcode_claim_action : 75 ; Detect obstacles at the botton of the heated bed\n G3811 Z{max_print_z} ; Detect obstacles at the bottom of the heated bed\n {endif}\n;===== detection end =====\n\n;===== prepare print temperature and material ==========\n M104 S{nozzle_temperature_initial_layer[initial_no_support_extruder]-40} A ; rise temp in advance\n M400\n M211 X0 Y0 Z0 ;turn off soft endstop\n M975 S1 ; turn on input shaping\n \n G29.2 S0 ; avoid invalid abl data\n G150.3\n{if ((filament_type[initial_no_support_extruder] == \"PLA\") || (filament_type[initial_no_support_extruder] == \"PLA-CF\") || (filament_type[initial_no_support_extruder] == \"PETG\")) && (nozzle_diameter[initial_no_support_extruder] == 0.2)}\nM620.10 A0 F74.8347 H{nozzle_diameter[initial_no_support_extruder]} T{flush_temperatures[initial_no_support_extruder]} P{nozzle_temperature_initial_layer[initial_no_support_extruder]} S1\nM620.10 A1 F74.8347 H{nozzle_diameter[initial_no_support_extruder]} T{flush_temperatures[initial_no_support_extruder]} P{nozzle_temperature_initial_layer[initial_no_support_extruder]} S1\n{else}\nM620.10 A0 F{flush_volumetric_speeds[initial_no_support_extruder]/2.4053*60} H{nozzle_diameter[initial_no_support_extruder]} T{flush_temperatures[initial_no_support_extruder]} P{nozzle_temperature_initial_layer[initial_no_support_extruder]} S1\nM620.10 A1 F{flush_volumetric_speeds[initial_no_support_extruder]/2.4053*60} H{nozzle_diameter[initial_no_support_extruder]} T{flush_temperatures[initial_no_support_extruder]} P{nozzle_temperature_initial_layer[initial_no_support_extruder]} S1\n{endif}\n \n M620.11 P0 L0 I[initial_no_support_extruder] B[initial_no_support_hotend] E0\n M620.11 K0 I[initial_no_support_extruder] B[initial_no_support_hotend] R0\n\n M620 S[initial_no_support_extruder]A H[initial_no_support_hotend] B ; switch material if AMS exist\n M620.22 I[initial_no_support_extruder] P1 ; enable remote extruder runout auto purge.\n M1002 gcode_claim_action : 4\n M1002 set_filament_type:UNKNOWN\n M400\n T[initial_no_support_extruder] H[initial_no_support_hotend]\n M400\n M628 S0\n M629\n M400\n M1002 set_filament_type:{filament_type[initial_no_support_extruder]}\n M621 S[initial_no_support_extruder]A B\n M104 S{nozzle_temperature_initial_layer[initial_no_support_extruder]}\n M400\n M106 P1 S0\n M400\n G29.2 S1\n;===== prepare print temperature and material ==========\n\n;===== auto extrude cali start =========================\n M975 S1\n M1002 judge_flag extrude_cali_flag\n M622 J0\n M983.3 F{filament_max_volumetric_speed[initial_no_support_extruder]/2.4} A0.4 ; cali dynamic extrusion compensation\n M623\n\n M622 J1\n M1002 set_filament_type:{filament_type[initial_no_support_extruder]}\n M1002 gcode_claim_action : 8\n M109 S{nozzle_temperature[initial_no_support_extruder]}\n G90\n M83\n M983.3 F{filament_max_volumetric_speed[initial_no_support_extruder]/2.4} A0.4 ; cali dynamic extrusion compensation\n M400\n M106 P1 S255\n M400 S5\n M106 P1 S0\n G150.3\n M623\n\n M622 J2\n M1002 set_filament_type:{filament_type[initial_no_support_extruder]}\n M1002 gcode_claim_action : 8\n M109 S{nozzle_temperature[initial_no_support_extruder]}\n G90\n M83\n M983.3 F{filament_max_volumetric_speed[initial_no_support_extruder]/2.4} A0.4 ; cali dynamic extrusion compensation\n M400\n M106 P1 S255\n M400 S5\n M106 P1 S0\n G150.3\n M623\n;===== auto extrude cali end =========================\n\n {if hold_chamber_temp_for_flat_print}\n G150.3\n M1002 gcode_claim_action : 58\n M104 S{first_layer_temperature[initial_no_support_extruder]}\n {if bed_temperature_initial_layer_single > 89}\n {if overall_chamber_temperature < 40}\n M1030 S1200\n SYNC R0 T1200\n {else}\n M1030 S600\n SYNC R0 T600\n {endif} \n {else}\n M1030 S300\n SYNC R0 T300\n {endif}\n M1030 C\n {endif}\n\n {if filament_type[current_extruder] == \"TPU\" || filament_type[current_extruder] == \"PVA\"}\n {else}\n M83\n G1 E-3 F1800\n M400 P500\n {endif}\n G150.2\n G150.1 F8000\n G150.2\n G150.1 F8000\n\n G91\n G1 Y-16 F12000 ; move away from the trash bin\n G90\n M400\n\n M104 S{nozzle_temperature_initial_layer[initial_no_support_extruder]-80} A\n\n;===== wipe right nozzle start =====\n M1002 gcode_claim_action : 14\n G150 T{nozzle_temperature_initial_layer[initial_no_support_extruder]}\n M400\n;===== wipe left nozzle end =====\n\n{if filament_type[current_extruder] == \"PC\"}\n M109 S170 A\n{else}\n M109 S140 A\n{endif}\n M106 S0 ; turn off fan , too noisy\n G91\n G1 Z5 F1200\n G90\n M400\n G150.1\n\n{if (overall_chamber_temperature >= 40)}\nM1002 gcode_claim_action : 49\nM191 S[overall_chamber_temperature] ; wait for chamber temp\n{endif}\n\n;===== z ofst cali start =====\n M190 S[bed_temperature_initial_layer_single]; ensure bed temp\n G383 O0 M1 T140\n M400\n;===== z ofst cali end =====\nG90\nM83\nG0 Y200 F18000\n\n;===== bed leveling ==================================\n M1002 gcode_claim_action : 54\n M190 S[bed_temperature_initial_layer_single]; ensure bed temp\n M109 S140 A\n M106 S0 ; turn off fan , too noisy\n M1002 judge_flag g29_before_print_flag\n M622 J1\n M1002 gcode_claim_action : 1\n {if hold_chamber_temp_for_flat_print}\n G29 H R\n {else}\n G29 A1 X{first_layer_print_min[0]} Y{first_layer_print_min[1]} I{first_layer_print_size[0]} J{first_layer_print_size[1]} R\n {endif}\n M400\n M623\n \n M622 J2\n M1002 gcode_claim_action : 1\n {if hold_chamber_temp_for_flat_print}\n G29 H R\n {else}\n G29 A2 X{first_layer_print_min[0]} Y{first_layer_print_min[1]} I{first_layer_print_size[0]} J{first_layer_print_size[1]} R\n {endif}\n M400\n M623\n\n M622 J0\n G28 R\n M623\n G29.2 S1\n;===== bed leveling end ================================\n\n; cali eddy z pos\n;G383.13 T1 C1\n\nM104 S{nozzle_temperature_initial_layer[initial_no_support_extruder]} A\n;===== mech mode sweep start =====\n M1002 gcode_claim_action : 3\n G90\n G1 X128 Y128 F20000\n G1 Z5 F1200\n M400 P200\n M970.3 Q1 A5 K0 O1\n M974 Q1 S2 P0\n M970.3 Q0 A7 K0 O1\n M974 Q0 S2 P0\n M975 S1\n M400\n;===== mech mode sweep end =====\n\nM104 S[nozzle_temperature_initial_layer] A\nG150.3\n;===== xy ofst cali start =====\nM1002 judge_flag auto_cali_toolhead_offset_flag\n\nM622 J0\n M1012.5 N1 R1\nM623\n\nM622 J1\n M1002 gcode_claim_action : 39\n M141 S0\n M620.17 T0 S{nozzle_temperature_initial_layer[(first_non_support_filaments[0] != -1 ? first_non_support_filaments[0] : first_filaments[0])]} L{(first_non_support_filaments[0] != -1 ? first_non_support_filaments[0] : first_filaments[0])}\n M620.17 T1 S{nozzle_temperature_initial_layer[(first_non_support_filaments[1] != -1 ? first_non_support_filaments[1] : first_filaments[1])]} L{(first_non_support_filaments[1] != -1 ? first_non_support_filaments[1] : first_filaments[1])}\n M620 D[initial_no_support_hotend]\n G383 O1 T{nozzle_temperature_initial_layer[initial_no_support_extruder]} L{initial_no_support_extruder}\n M141 S[overall_chamber_temperature]\nM623\n\nM622 J2\n M1002 gcode_claim_action : 39\n M141 S0\n M620.17 T0 S{nozzle_temperature_initial_layer[(first_non_support_filaments[0] != -1 ? first_non_support_filaments[0] : first_filaments[0])]} L{(first_non_support_filaments[0] != -1 ? first_non_support_filaments[0] : first_filaments[0])}\n M620.17 T1 S{nozzle_temperature_initial_layer[(first_non_support_filaments[1] != -1 ? first_non_support_filaments[1] : first_filaments[1])]} L{(first_non_support_filaments[1] != -1 ? first_non_support_filaments[1] : first_filaments[1])}\n M620 D[initial_no_support_hotend]\n G383.3 T{nozzle_temperature_initial_layer[initial_no_support_extruder]} L{initial_no_support_extruder}\n M141 S[overall_chamber_temperature]\nM623\n;===== xy ofst cali end =====\n\n M104 S[nozzle_temperature_initial_layer] A\n\n G150.3 ; move to garbage can to wait for temp\n\n;===== wait temperature reaching the reference value =======\n M140 S[bed_temperature_initial_layer_single] \n M190 S[bed_temperature_initial_layer_single] \n\n ;========turn off light and fans =============\n M960 S1 P0 ; turn off laser\n M960 S2 P0 ; turn off laser\n M106 S0 ; turn off cooling fan\n \n;===== wait temperature reaching the reference value =======\n\n M1002 gcode_claim_action : 255\n M400\n M975 S1 ; turn on mech mode supression\n M983.4 S0 ; turn off deformation compensation \n\n;============switch again==================\n M211 X0 Y0 Z0 ;turn off soft endstop\n G91\n G1 Z6 F1200\n G90\n M1002 set_filament_type:{filament_type[initial_no_support_extruder]}\n M620 S[initial_no_support_extruder]A H[initial_no_support_hotend] B\n M620.22 I[initial_no_support_extruder] P1 ; enable remote extruder runout auto purge.\n M400\n T[initial_no_support_extruder] H[initial_no_support_hotend]\n M400\n M628 S0\n M629\n M400\n M621 S[initial_no_support_extruder]A B\n;============switch again==================\n\n;===== for Textured PEI Plate , lower the nozzle as the nozzle was touching topmost of the texture when homing ==\n {if curr_bed_type==\"Textured PEI Plate\"}\n G29.1 Z{0.002} ; for Textured PEI Plate\n {else}\n G29.1 Z{0.022}\n {endif}\n\n;===== nozzle load line ===============================\nM1002 gcode_claim_action : 51\n G29.2 S1 ; ensure z comp turn on\n G90\n M83\n M109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]}\n G0 X100 Y0 F24000\n M400\n ;G130 O0 X100 Y-0.4 Z0.6 F{filament_max_volumetric_speed[initial_no_support_extruder]/2/2.4053} L40 E20 D5\n G130 O0 X100 Y-0.2 Z0.6 F{filament_max_volumetric_speed[initial_no_support_extruder]/2/2.4053} L40 E12 D4\nG90\n G90\n M83\n G1 Z0.5\n M400\n;===== noozle load line end ===========================\nM1002 gcode_claim_action : 0\n G29.99\n\n;M993 A1 B1 C1 ; nozzle cam detection allowed.\n\nM620.6 I[initial_no_support_extruder] H[initial_no_support_hotend] W1 ;enable ams air printing detect\n\n\n{if (filament_type[initial_no_support_extruder] == \"TPU\")}\nM1015.3 S1 H[nozzle_diameter];enable tpu clog detect\n{else}\nM1015.3 S0;disable tpu clog detect\n{endif}\n\n{if (filament_type[initial_no_support_extruder] == \"PLA\") || (filament_type[initial_no_support_extruder] == \"PETG\")\n || (filament_type[initial_no_support_extruder] == \"PLA-CF\") || (filament_type[initial_no_support_extruder] == \"PETG-CF\")}\nM1015.4 S1 K1 H[nozzle_diameter] ;enable E air printing detect\n{else}\nM1015.4 S0 K0 H[nozzle_diameter] ;disable E air printing detect\n{endif}\nM400 P50\nM500 D1\n", + "machine_start_gcode": ";M1002 set_flag extrude_cali_flag=1\n;M1002 set_flag g29_before_print_flag=1\n;M1002 set_flag auto_cali_toolhead_offset_flag=1\n;M1002 set_flag build_plate_detect_flag=1\n\n;======== X2D start gcode==========\n;===== 2026/05/08 =====\n\n M140 S[bed_temperature_initial_layer_single] ; heat heatbed first\n M993 A0 B0 C0 ; nozzle cam detection not allowed.\n M400\n ;M73 P99\n\n;=====printer start sound ===================\nM17\nM400 S1\nM1006 S1\nM1006 A53 B9 L50 C53 D9 M50 E53 F9 N50 \nM1006 A56 B9 L50 C56 D9 M50 E56 F9 N50 \nM1006 A61 B9 L50 C61 D9 M50 E61 F9 N50 \nM1006 A53 B9 L50 C53 D9 M50 E53 F9 N50 \nM1006 A56 B9 L50 C56 D9 M50 E56 F9 N50 \nM1006 A61 B18 L50 C61 D18 M50 E61 F18 N50 \nM1006 W\n;=====printer start sound ===================\n\n M1012.1 T1100\n M620 M ;enable remap\n M622.1 S0\n G383.4\n \n;===== avoid end stop =================\n G91\n G380 S2 Z22 F1200\n G380 S2 Z-12 F1200\n G90\n;===== avoid end stop =================\n\n;===== reset machine status =================\n M204 S10000\n M630 S0 P1\n G90\n M17 D ; reset motor current to default\n M960 S5 P1 ; turn on logo lamp\n M220 S100 ;Reset Feedrate\n M1002 set_gcode_claim_speed_level: 5\n M221 S100 ;Reset Flowrate\n M73.2 R1.0 ;Reset left time magnitude\n G29.1 Z{+0.0} ; clear z-trim value first\n M983.1 M1\n M982.2 S1 ; turn on cog noise reduction\n;===== reset machine status =================\n\n;==== set airduct mode ==== \n{if (overall_chamber_temperature >= 40)}\nM145 P1 ; set airduct mode to heating mode for heating\nM106 P2 S0 ; turn off auxiliary fan\nM106 P10 S255 ; turn on filter fan\n{else}\nM145 P0 ; set airduct mode to cooling mode for cooling\nM106 P2 S255 ; turn on auxiliary fan for cooling\nM106 P10 S255 ; turn on auxiliary fan for cooling\nM106 P3 S127 ; turn on chamber fan for cooling\n;M140 S0 ; stop heatbed from heating\nM1002 gcode_claim_action : 29\nM191 S0 ; wait for chamber temp\nM106 P2 S102 ; turn on auxiliary fan\nM106 P10 S102 ; turn on chamber fan\nM142 P6 R30 S40 U0.6 V0.8 ; set PLA/TPU/PETG exhaust chamber autocooling\n{endif}\n;==== set airduct mode ==== \n\n;===== start to heat heatbed & hotend==========\n M1002 gcode_claim_action : 2\n M1002 set_filament_type:{filament_type[initial_no_support_extruder]} \n \n ;===== set chamber temperature ==========\n {if (overall_chamber_temperature >= 40)}\n M145 P1 ; set airduct mode to heating mode\n M141 S[overall_chamber_temperature] ; Let Chamber begin to heat\n {endif}\n;===== set chamber temperature ==========\n\n G29.2 S0 ; avoid invalid abl data\n\n;===== first homing start =====\n M1002 gcode_claim_action : 13\n G28 X T300 R\n G150.1 F8000 ; wipe mouth to avoid filament stick to heatbed\n G150.3\n M972 S24 P0\n M1002 gcode_claim_action : 74 ; Heatbed surface foreign object detection\n M972 S26 P0 C0\n G90\n M83\n G1 Y128 F30000\n G1 X128\n G28 Z P0 T400\n M400\n;===== first homign end =====\n\n;===== detection start =====\n M1002 gcode_claim_action : 11\n\n M104 S0 T0\n M104 S0 T1\n M562 P1 E0 B1\n M562 P2 E0 B1\n M18 E\n M400 P200\n M1028 S1\n M972 S19 P0 ;heatbed detection\n M972 S31 P0 ;toolhead camera dirt detection\n M1002 gcode_claim_action : 73 ; Build plate alignment detection\n M972 S34 P0 ;print plate deviation detection\n M1028 S0\n M562 P1 E1 B1\n M562 P2 E1 B1\n M17 D\n\n ;M400\n M104 S{nozzle_temperature_initial_layer[initial_no_support_extruder]} T{filament_map[initial_no_support_extruder] % 2} ; rise temp in advance\n G151 P{filament_map[initial_no_support_extruder] % 2} M ; plug the heat nozzle\n {if max_print_z >= 145}\n M1002 gcode_claim_action : 75 ; Detect obstacles at the botton of the heated bed\n G3811 Z{max_print_z} ; Detect obstacles at the bottom of the heated bed\n {endif}\n;===== detection end =====\n\n;===== prepare print temperature and material ==========\n M104 S{nozzle_temperature_initial_layer[initial_no_support_extruder]-40} A ; rise temp in advance\n M400\n M211 X0 Y0 Z0 ;turn off soft endstop\n M975 S1 ; turn on input shaping\n \n G29.2 S0 ; avoid invalid abl data\n G150.3\n{if ((filament_type[initial_no_support_extruder] == \"PLA\") || (filament_type[initial_no_support_extruder] == \"PLA-CF\") || (filament_type[initial_no_support_extruder] == \"PETG\")) && (nozzle_diameter[initial_no_support_extruder] == 0.2)}\nM620.10 A0 F74.8347 H{nozzle_diameter[initial_no_support_extruder]} T{flush_temperatures[initial_no_support_extruder]} P{nozzle_temperature_initial_layer[initial_no_support_extruder]} S1\nM620.10 A1 F74.8347 H{nozzle_diameter[initial_no_support_extruder]} T{flush_temperatures[initial_no_support_extruder]} P{nozzle_temperature_initial_layer[initial_no_support_extruder]} S1\n{else}\nM620.10 A0 F{flush_volumetric_speeds[initial_no_support_extruder]/2.4053*60} H{nozzle_diameter[initial_no_support_extruder]} T{flush_temperatures[initial_no_support_extruder]} P{nozzle_temperature_initial_layer[initial_no_support_extruder]} S1\nM620.10 A1 F{flush_volumetric_speeds[initial_no_support_extruder]/2.4053*60} H{nozzle_diameter[initial_no_support_extruder]} T{flush_temperatures[initial_no_support_extruder]} P{nozzle_temperature_initial_layer[initial_no_support_extruder]} S1\n{endif}\n \n M620.11 P0 L0 I[initial_no_support_extruder] B[initial_no_support_hotend] E0\n M620.11 K0 I[initial_no_support_extruder] B[initial_no_support_hotend] R0\n\n M620 S[initial_no_support_extruder]A H[initial_no_support_hotend] B ; switch material if AMS exist\n M620.22 I[initial_no_support_extruder] P1 ; enable remote extruder runout auto purge.\n M1002 gcode_claim_action : 4\n M1002 set_filament_type:UNKNOWN\n M400\n T[initial_no_support_extruder] H[initial_no_support_hotend]\n M400\n M628 S0\n M629\n M400\n M1002 set_filament_type:{filament_type[initial_no_support_extruder]}\n M621 S[initial_no_support_extruder]A B\n M104 S{nozzle_temperature_initial_layer[initial_no_support_extruder]}\n M400\n M106 P1 S0\n M400\n G29.2 S1\n;===== prepare print temperature and material ==========\n\n;===== auto extrude cali start =========================\n M975 S1\n M1002 judge_flag extrude_cali_flag\n M622 J0\n M983.3 F{filament_max_volumetric_speed[initial_no_support_extruder]/2.4} A0.4 ; cali dynamic extrusion compensation\n M623\n\n M622 J1\n M1002 set_filament_type:{filament_type[initial_no_support_extruder]}\n M1002 gcode_claim_action : 8\n M109 S{nozzle_temperature[initial_no_support_extruder]}\n G90\n M83\n M983.3 F{filament_max_volumetric_speed[initial_no_support_extruder]/2.4} A0.4 ; cali dynamic extrusion compensation\n M400\n M106 P1 S255\n M400 S5\n M106 P1 S0\n G150.3\n M623\n\n M622 J2\n M1002 set_filament_type:{filament_type[initial_no_support_extruder]}\n M1002 gcode_claim_action : 8\n M109 S{nozzle_temperature[initial_no_support_extruder]}\n G90\n M83\n M983.3 F{filament_max_volumetric_speed[initial_no_support_extruder]/2.4} A0.4 ; cali dynamic extrusion compensation\n M400\n M106 P1 S255\n M400 S5\n M106 P1 S0\n G150.3\n M623\n;===== auto extrude cali end =========================\n\n {if hold_chamber_temp_for_flat_print}\n G150.3\n M1002 gcode_claim_action : 58\n M104 S{first_layer_temperature[initial_no_support_extruder]}\n {if bed_temperature_initial_layer_single > 89}\n {if overall_chamber_temperature < 40}\n M1030 S1200\n SYNC R0 T1200\n {else}\n M1030 S600\n SYNC R0 T600\n {endif} \n {else}\n M1030 S300\n SYNC R0 T300\n {endif}\n M1030 C\n {endif}\n\n {if filament_type[current_extruder] == \"TPU\" || filament_type[current_extruder] == \"PVA\"}\n {else}\n M83\n G1 E-3 F1800\n M400 P500\n {endif}\n G150.2\n G150.1 F8000\n G150.2\n G150.1 F8000\n\n G91\n G1 Y-16 F12000 ; move away from the trash bin\n G90\n M400\n\n M104 S{nozzle_temperature_initial_layer[initial_no_support_extruder]-80} A\n\n;===== wipe right nozzle start =====\n M1002 gcode_claim_action : 14\n G150 T{nozzle_temperature_initial_layer[initial_no_support_extruder]}\n M400\n;===== wipe left nozzle end =====\n\n{if filament_type[current_extruder] == \"PC\"}\n M109 S170 A\n{else}\n M109 S140 A\n{endif}\n M106 S0 ; turn off fan , too noisy\n G91\n G1 Z5 F1200\n G90\n M400\n G150.1\n\n{if (overall_chamber_temperature >= 40)}\nM1002 gcode_claim_action : 49\nM191 S[overall_chamber_temperature] ; wait for chamber temp\n{endif}\n\n;===== z ofst cali start =====\n M190 S[bed_temperature_initial_layer_single]; ensure bed temp\n G383 O0 M1 T140\n M400\n;===== z ofst cali end =====\nG90\nM83\nG0 Y200 F18000\n\n;===== bed leveling ==================================\n M1002 gcode_claim_action : 54\n M190 S[bed_temperature_initial_layer_single]; ensure bed temp\n M109 S140 A\n M106 S0 ; turn off fan , too noisy\n M1002 judge_flag g29_before_print_flag\n M622 J1\n M1002 gcode_claim_action : 1\n {if hold_chamber_temp_for_flat_print}\n G29 H R\n {else}\n G29 A1 X{first_layer_print_min[0]} Y{first_layer_print_min[1]} I{first_layer_print_size[0]} J{first_layer_print_size[1]} R\n {endif}\n M400\n M623\n \n M622 J2\n M1002 gcode_claim_action : 1\n {if hold_chamber_temp_for_flat_print}\n G29 H R\n {else}\n G29 A2 X{first_layer_print_min[0]} Y{first_layer_print_min[1]} I{first_layer_print_size[0]} J{first_layer_print_size[1]} R\n {endif}\n M400\n M623\n\n M622 J0\n G28 R\n M623\n G29.2 S1\n;===== bed leveling end ================================\n\n; cali eddy z pos\n;G383.13 T1 C1\n\nM104 S{nozzle_temperature_initial_layer[initial_no_support_extruder]} A\n;===== mech mode sweep start =====\n M1002 gcode_claim_action : 3\n G90\n G1 X128 Y128 F20000\n G1 Z5 F1200\n M400 P200\n M970.3 Q1 A5 K0 O1\n M974 Q1 S2 P0\n M970.3 Q0 A7 K0 O1\n M974 Q0 S2 P0\n M975 S1\n M400\n;===== mech mode sweep end =====\n\nM104 S[nozzle_temperature_initial_layer] A\nG150.3\n\n M400 P50\n M500 D1\n M400 S3\n;===== xy ofst cali start =====\nM1002 judge_flag auto_cali_toolhead_offset_flag\n\nM622 J0\n M1012.5 N1 R1\nM623\n\nM622 J1\n M1002 gcode_claim_action : 39\n M141 S0\n M620.17 T0 S{nozzle_temperature_initial_layer[(first_non_support_filaments[0] != -1 ? first_non_support_filaments[0] : first_filaments[0])]} L{(first_non_support_filaments[0] != -1 ? first_non_support_filaments[0] : first_filaments[0])}\n M620.17 T1 S{nozzle_temperature_initial_layer[(first_non_support_filaments[1] != -1 ? first_non_support_filaments[1] : first_filaments[1])]} L{(first_non_support_filaments[1] != -1 ? first_non_support_filaments[1] : first_filaments[1])}\n M620 D[initial_no_support_hotend]\n G383 O1 T{nozzle_temperature_initial_layer[initial_no_support_extruder]} L{initial_no_support_extruder}\n M141 S[overall_chamber_temperature]\nM623\n\nM622 J2\n M1002 gcode_claim_action : 39\n M141 S0\n M620.17 T0 S{nozzle_temperature_initial_layer[(first_non_support_filaments[0] != -1 ? first_non_support_filaments[0] : first_filaments[0])]} L{(first_non_support_filaments[0] != -1 ? first_non_support_filaments[0] : first_filaments[0])}\n M620.17 T1 S{nozzle_temperature_initial_layer[(first_non_support_filaments[1] != -1 ? first_non_support_filaments[1] : first_filaments[1])]} L{(first_non_support_filaments[1] != -1 ? first_non_support_filaments[1] : first_filaments[1])}\n M620 D[initial_no_support_hotend]\n G383.3 T{nozzle_temperature_initial_layer[initial_no_support_extruder]} L{initial_no_support_extruder}\n M141 S[overall_chamber_temperature]\nM623\n;===== xy ofst cali end =====\n\n M104 S[nozzle_temperature_initial_layer] A\n\n G150.3 ; move to garbage can to wait for temp\n\n;===== wait temperature reaching the reference value =======\n M140 S[bed_temperature_initial_layer_single] \n M190 S[bed_temperature_initial_layer_single] \n\n ;========turn off light and fans =============\n M960 S1 P0 ; turn off laser\n M960 S2 P0 ; turn off laser\n M106 S0 ; turn off cooling fan\n \n;===== wait temperature reaching the reference value =======\n\n M1002 gcode_claim_action : 255\n M400\n M975 S1 ; turn on mech mode supression\n M983.4 S0 ; turn off deformation compensation \n\n;============switch again==================\n M211 X0 Y0 Z0 ;turn off soft endstop\n G91\n G1 Z6 F1200\n G90\n M1002 set_filament_type:{filament_type[initial_no_support_extruder]}\n M620 S[initial_no_support_extruder]A H[initial_no_support_hotend] B\n M620.22 I[initial_no_support_extruder] P1 ; enable remote extruder runout auto purge.\n M400\n T[initial_no_support_extruder] H[initial_no_support_hotend]\n M400\n M628 S0\n M629\n M400\n M621 S[initial_no_support_extruder]A B\n;============switch again==================\n\n;===== for Textured PEI Plate , lower the nozzle as the nozzle was touching topmost of the texture when homing ==\n {if bed_temperature_initial_layer_single > 70}\n {if curr_bed_type=='Textured PEI Plate'}\n G29.1 Z{-0.003} ; for Textured PEI Plate\n {else}\n G29.1 Z{0.017}\n {endif}\n {else}\n {if curr_bed_type=='Textured PEI Plate'}\n G29.1 Z{0.002} ; for Textured PEI Plate\n {else}\n G29.1 Z{0.022}\n {endif}\n {endif}\n\n;===== nozzle load line ===============================\nM1002 gcode_claim_action : 51\n G29.2 S1 ; ensure z comp turn on\n G90\n M83\n M109 S{nozzle_temperature_initial_layer[initial_no_support_extruder]}\n G0 X100 Y0 F24000\n M400\n ;G130 O0 X100 Y-0.4 Z0.6 F{filament_max_volumetric_speed[initial_no_support_extruder]/2/2.4053} L40 E20 D5\n G130 O0 X100 Y-0.2 Z0.6 F{filament_max_volumetric_speed[initial_no_support_extruder]/2/2.4053} L40 E12 D4\nG90\n G90\n M83\n G1 Z1\n M400\n;===== noozle load line end ===========================\nM1002 gcode_claim_action : 0\n G29.99\n\n;M993 A1 B1 C1 ; nozzle cam detection allowed.\n\nM620.6 I[initial_no_support_extruder] H[initial_no_support_hotend] W1 ;enable ams air printing detect\n\n\n{if (filament_type[initial_no_support_extruder] == \"TPU\")}\nM1015.3 S1 H[nozzle_diameter];enable tpu clog detect\n{else}\nM1015.3 S0;disable tpu clog detect\n{endif}\n\n{if (filament_type[initial_no_support_extruder] == \"PLA\") || (filament_type[initial_no_support_extruder] == \"PETG\")\n || (filament_type[initial_no_support_extruder] == \"PLA-CF\") || (filament_type[initial_no_support_extruder] == \"PETG-CF\")}\nM1015.4 S1 K1 H[nozzle_diameter] ;enable E air printing detect\n{else}\nM1015.4 S0 K0 H[nozzle_diameter] ;disable E air printing detect\n{endif}\n", "time_lapse_gcode": ";======== X2D timelapse gcode ========\n;======== 2025/08/15 ========\n; SKIPPABLE_START\n; SKIPTYPE: timelapse\nM622.1 S1 ; for prev firware, default turned on\n\nM1002 judge_flag timelapse_record_flag\n\nM622 J1\n\n{if !spiral_mode && !(has_timelapse_safe_pos && print_sequence != \"by object\") }\n {if most_used_physical_extruder_id!= curr_physical_extruder_id || timelapse_type == 1}\n M83\n G1 Z{max_layer_z + 0.4} F1200\n M400\n {endif}\n{endif}\n\n{if has_timelapse_safe_pos && print_sequence != \"by object\"}\nM9711 M{timelapse_type} E{most_used_physical_extruder_id} X{timelapse_pos_x} Y{timelapse_pos_y} Z{layer_z + 0.4} S11 C10 O0 T3000\n{else}\nM9711 M{timelapse_type} E{most_used_physical_extruder_id} Z{layer_z + 0.4} S11 C10 O0 T3000\n{endif}\n\n{if !spiral_mode && !(has_timelapse_safe_pos && print_sequence != \"by object\") }\n {if most_used_physical_extruder_id!= curr_physical_extruder_id || timelapse_type == 1}\n G90\n M83\n G1 Z{max_layer_z + 3.0} F1200\n G0 F18000\n {endif}\n{endif}\n\nM623\n; SKIPPABLE_END\n", "nozzle_diameter": [ "0.4", diff --git a/resources/profiles/CoLiDo/process/fdm_process_colidodiy40_common.json b/resources/profiles/CoLiDo/process/fdm_process_colidodiy40_common.json index f6121052374..b12228818aa 100644 --- a/resources/profiles/CoLiDo/process/fdm_process_colidodiy40_common.json +++ b/resources/profiles/CoLiDo/process/fdm_process_colidodiy40_common.json @@ -185,10 +185,10 @@ "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.4", "sparse_infill_pattern": "grid", "sparse_infill_speed": "270", @@ -255,7 +255,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_loops": "2", "wall_sequence": "inner wall/outer wall", diff --git a/resources/profiles/CoLiDo/process/fdm_process_colidox16_common.json b/resources/profiles/CoLiDo/process/fdm_process_colidox16_common.json index 0ea02caf844..3306fbda473 100644 --- a/resources/profiles/CoLiDo/process/fdm_process_colidox16_common.json +++ b/resources/profiles/CoLiDo/process/fdm_process_colidox16_common.json @@ -196,10 +196,10 @@ "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.4", "sparse_infill_pattern": "grid", "sparse_infill_speed": "90", @@ -266,7 +266,7 @@ "tree_support_wall_count": "2", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_loops": "2", "wall_sequence": "inner wall/outer wall", diff --git a/resources/profiles/Comgrow/process/fdm_process_comgrow_common.json b/resources/profiles/Comgrow/process/fdm_process_comgrow_common.json index 855d58bc847..b4441aa4a53 100644 --- a/resources/profiles/Comgrow/process/fdm_process_comgrow_common.json +++ b/resources/profiles/Comgrow/process/fdm_process_comgrow_common.json @@ -137,10 +137,10 @@ "slowdown_for_curled_perimeters": "0", "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "10%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.4", "sparse_infill_pattern": "crosshatch", "sparse_infill_speed": "200", @@ -199,7 +199,7 @@ "tree_support_top_rate": "30%", "tree_support_wall_count": "0", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "arachne", "wall_infill_order": "inner wall/outer wall/infill", "wall_loops": "3", diff --git a/resources/profiles/Creality/process/0.20mm Standard @Creality Ender-5 Max 0.4mm nozzle.json b/resources/profiles/Creality/process/0.20mm Standard @Creality Ender-5 Max 0.4mm nozzle.json index 4d11f181dc7..2f807eea7f1 100644 --- a/resources/profiles/Creality/process/0.20mm Standard @Creality Ender-5 Max 0.4mm nozzle.json +++ b/resources/profiles/Creality/process/0.20mm Standard @Creality Ender-5 Max 0.4mm nozzle.json @@ -170,10 +170,10 @@ "small_area_infill_flow_compensation_model": "0,0;\"\\n0.2,0.4444\";\"\\n0.4,0.6145\";\"\\n0.6,0.7059\";\"\\n0.8,0.7619\";\"\\n1.5,0.8571\";\"\\n2,0.8889\";\"\\n3,0.9231\";\"\\n5,0.9520\";\"\\n10,1\"", "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "10", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.55", "sparse_infill_pattern": "zig-zag", "sparse_infill_speed": "500", @@ -240,7 +240,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "arachne", "wall_loops": "2", "wall_sequence": "inner wall/outer wall", diff --git a/resources/profiles/Creality/process/0.20mm Standard @Creality K2 0.4 nozzle.json b/resources/profiles/Creality/process/0.20mm Standard @Creality K2 0.4 nozzle.json index a23da736cf8..c55d985a147 100644 --- a/resources/profiles/Creality/process/0.20mm Standard @Creality K2 0.4 nozzle.json +++ b/resources/profiles/Creality/process/0.20mm Standard @Creality K2 0.4 nozzle.json @@ -175,10 +175,10 @@ "small_area_infill_flow_compensation_model": "0,0;\"\\n0.2,0.4444\";\"\\n0.4,0.6145\";\"\\n0.6,0.7059\";\"\\n0.8,0.7619\";\"\\n1.5,0.8571\";\"\\n2,0.8889\";\"\\n3,0.9231\";\"\\n5,0.9520\";\"\\n10,1\"", "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "grid", "sparse_infill_speed": "270", @@ -247,7 +247,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_loops": "2", "wall_sequence": "inner wall/outer wall", diff --git a/resources/profiles/Creality/process/0.20mm Ultrafast @Creality Ender-5 Max 0.4mm nozzle.json b/resources/profiles/Creality/process/0.20mm Ultrafast @Creality Ender-5 Max 0.4mm nozzle.json index 89c8ce64206..322d3617eb0 100644 --- a/resources/profiles/Creality/process/0.20mm Ultrafast @Creality Ender-5 Max 0.4mm nozzle.json +++ b/resources/profiles/Creality/process/0.20mm Ultrafast @Creality Ender-5 Max 0.4mm nozzle.json @@ -172,10 +172,10 @@ "small_area_infill_flow_compensation_model": "0,0;\"\\n0.2,0.4444\";\"\\n0.4,0.6145\";\"\\n0.6,0.7059\";\"\\n0.8,0.7619\";\"\\n1.5,0.8571\";\"\\n2,0.8889\";\"\\n3,0.9231\";\"\\n5,0.9520\";\"\\n10,1\"", "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "10", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.55", "sparse_infill_pattern": "zig-zag", "sparse_infill_speed": "500", @@ -242,7 +242,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "arachne", "wall_loops": "2", "wall_sequence": "inner wall/outer wall", diff --git a/resources/profiles/Creality/process/0.30mm Standard @Creality K2 0.6 nozzle.json b/resources/profiles/Creality/process/0.30mm Standard @Creality K2 0.6 nozzle.json index d61f1ba20fe..7a05eb7d6c4 100644 --- a/resources/profiles/Creality/process/0.30mm Standard @Creality K2 0.6 nozzle.json +++ b/resources/profiles/Creality/process/0.30mm Standard @Creality K2 0.6 nozzle.json @@ -152,10 +152,10 @@ "slowdown_for_curled_perimeters": "0", "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.62", "sparse_infill_pattern": "grid", "sparse_infill_speed": "120", @@ -222,7 +222,7 @@ "tree_support_top_rate": "30%", "tree_support_wall_count": "0", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_loops": "2", "wall_sequence": "inner wall/outer wall", diff --git a/resources/profiles/Creality/process/0.40mm Standard @Creality K2 0.8 nozzle.json b/resources/profiles/Creality/process/0.40mm Standard @Creality K2 0.8 nozzle.json index 51d383111ff..c5f40a43796 100644 --- a/resources/profiles/Creality/process/0.40mm Standard @Creality K2 0.8 nozzle.json +++ b/resources/profiles/Creality/process/0.40mm Standard @Creality K2 0.8 nozzle.json @@ -152,10 +152,10 @@ "slowdown_for_curled_perimeters": "0", "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.82", "sparse_infill_pattern": "grid", "sparse_infill_speed": "120", @@ -222,7 +222,7 @@ "tree_support_top_rate": "30%", "tree_support_wall_count": "0", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_loops": "2", "wall_sequence": "inner wall/outer wall", diff --git a/resources/profiles/Cubicon/process/process template @base.json b/resources/profiles/Cubicon/process/process template @base.json index 214f41171a0..8d1a85cdbcc 100644 --- a/resources/profiles/Cubicon/process/process template @base.json +++ b/resources/profiles/Cubicon/process/process template @base.json @@ -211,10 +211,10 @@ "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "10%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "grid", "sparse_infill_speed": "270", @@ -284,7 +284,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_loops": "2", "wall_sequence": "outer wall/inner wall", diff --git a/resources/profiles/Custom.json b/resources/profiles/Custom.json index a2dae74cabf..2f9eeefd348 100644 --- a/resources/profiles/Custom.json +++ b/resources/profiles/Custom.json @@ -38,15 +38,14 @@ "name": "fdm_process_marlin_common", "sub_path": "process/fdm_process_marlin_common.json" }, - { - "name": "fdm_process_rrf_common", - "sub_path": "process/fdm_process_rrf_common.json" - }, { "name": "fdm_process_repetier_common", "sub_path": "process/fdm_process_repetier_common.json" }, - + { + "name": "fdm_process_rrf_common", + "sub_path": "process/fdm_process_rrf_common.json" + }, { "name": "0.08mm Extra Fine @MyKlipper", "sub_path": "process/0.08mm Extra Fine @MyKlipper.json" @@ -115,6 +114,10 @@ "name": "0.28mm Extra Draft @MyMarlin", "sub_path": "process/0.28mm Extra Draft @MyMarlin.json" }, + { + "name": "0.20mm Standard @MyRepetier", + "sub_path": "process/0.20mm Standard @MyRepetier.json" + }, { "name": "0.08mm Extra Fine @MyRRF", "sub_path": "process/0.08mm Extra Fine @MyRRF.json" @@ -139,10 +142,6 @@ "name": "0.28mm Extra Draft @MyRRF", "sub_path": "process/0.28mm Extra Draft @MyRRF.json" }, - { - "name": "0.20mm Standard @MyRepetier", - "sub_path": "process/0.20mm Standard @MyRepetier.json" - }, { "name": "0.08mm Extra Fine @MyToolChanger", "sub_path": "process/0.08mm Extra Fine @MyToolChanger.json" @@ -239,14 +238,14 @@ "name": "fdm_klipper_common", "sub_path": "machine/fdm_klipper_common.json" }, - { - "name": "fdm_rrf_common", - "sub_path": "machine/fdm_rrf_common.json" - }, { "name": "fdm_repetier_common", "sub_path": "machine/fdm_repetier_common.json" }, + { + "name": "fdm_rrf_common", + "sub_path": "machine/fdm_rrf_common.json" + }, { "name": "MyKlipper 0.2 nozzle", "sub_path": "machine/MyKlipper 0.2 nozzle.json" @@ -267,14 +266,14 @@ "name": "fdm_toolchanger_common", "sub_path": "machine/fdm_toolchanger_common.json" }, - { - "name": "MyRRF 0.4 nozzle", - "sub_path": "machine/MyRRF 0.4 nozzle.json" - }, { "name": "MyRepetier 0.4 nozzle", "sub_path": "machine/MyRepetier 0.4 nozzle.json" }, + { + "name": "MyRRF 0.4 nozzle", + "sub_path": "machine/MyRRF 0.4 nozzle.json" + }, { "name": "MyToolChanger 0.2 nozzle", "sub_path": "machine/MyToolChanger 0.2 nozzle.json" diff --git a/resources/profiles/Elegoo.json b/resources/profiles/Elegoo.json index 25597355fb7..d22fb9f0f0b 100644 --- a/resources/profiles/Elegoo.json +++ b/resources/profiles/Elegoo.json @@ -78,234 +78,10 @@ "name": "fdm_process_common", "sub_path": "process/fdm_process_common.json" }, - { - "name": "fdm_process_ecc_common", - "sub_path": "process/ECC/fdm_process_ecc_common.json" - }, { "name": "fdm_process_elegoo_common", "sub_path": "process/fdm_process_elegoo_common.json" }, - { - "name": "fdm_process_ecc", - "sub_path": "process/ECC/fdm_process_ecc.json" - }, - { - "name": "0.08mm Extra Fine @Elegoo Neptune", - "sub_path": "process/EN2SERIES/0.08mm Extra Fine @Elegoo Neptune.json" - }, - { - "name": "0.08mm Extra Fine @Elegoo Neptune2", - "sub_path": "process/EN2SERIES/0.08mm Extra Fine @Elegoo Neptune2.json" - }, - { - "name": "0.08mm Extra Fine @Elegoo Neptune2D", - "sub_path": "process/EN2SERIES/0.08mm Extra Fine @Elegoo Neptune2D.json" - }, - { - "name": "0.08mm Extra Fine @Elegoo Neptune2S", - "sub_path": "process/EN2SERIES/0.08mm Extra Fine @Elegoo Neptune2S.json" - }, - { - "name": "0.08mm Extra Fine @Elegoo Neptune3", - "sub_path": "process/EN2SERIES/0.08mm Extra Fine @Elegoo Neptune3.json" - }, - { - "name": "0.08mm Extra Fine @Elegoo Neptune3Max", - "sub_path": "process/EN3SERIES/0.08mm Extra Fine @Elegoo Neptune3Max.json" - }, - { - "name": "0.08mm Extra Fine @Elegoo Neptune3Plus", - "sub_path": "process/EN3SERIES/0.08mm Extra Fine @Elegoo Neptune3Plus.json" - }, - { - "name": "0.08mm Extra Fine @Elegoo Neptune3Pro", - "sub_path": "process/EN3SERIES/0.08mm Extra Fine @Elegoo Neptune3Pro.json" - }, - { - "name": "0.08mm Extra Fine @Elegoo NeptuneX", - "sub_path": "process/EN2SERIES/0.08mm Extra Fine @Elegoo NeptuneX.json" - }, - { - "name": "0.12mm Fine @Elegoo Neptune", - "sub_path": "process/EN2SERIES/0.12mm Fine @Elegoo Neptune.json" - }, - { - "name": "0.12mm Fine @Elegoo Neptune2", - "sub_path": "process/EN2SERIES/0.12mm Fine @Elegoo Neptune2.json" - }, - { - "name": "0.12mm Fine @Elegoo Neptune2D", - "sub_path": "process/EN2SERIES/0.12mm Fine @Elegoo Neptune2D.json" - }, - { - "name": "0.12mm Fine @Elegoo Neptune2S", - "sub_path": "process/EN2SERIES/0.12mm Fine @Elegoo Neptune2S.json" - }, - { - "name": "0.12mm Fine @Elegoo Neptune3", - "sub_path": "process/EN2SERIES/0.12mm Fine @Elegoo Neptune3.json" - }, - { - "name": "0.12mm Fine @Elegoo Neptune3Max", - "sub_path": "process/EN3SERIES/0.12mm Fine @Elegoo Neptune3Max.json" - }, - { - "name": "0.12mm Fine @Elegoo Neptune3Plus", - "sub_path": "process/EN3SERIES/0.12mm Fine @Elegoo Neptune3Plus.json" - }, - { - "name": "0.12mm Fine @Elegoo Neptune3Pro", - "sub_path": "process/EN3SERIES/0.12mm Fine @Elegoo Neptune3Pro.json" - }, - { - "name": "0.12mm Fine @Elegoo NeptuneX", - "sub_path": "process/EN2SERIES/0.12mm Fine @Elegoo NeptuneX.json" - }, - { - "name": "0.16mm Optimal @Elegoo Neptune", - "sub_path": "process/EN2SERIES/0.16mm Optimal @Elegoo Neptune.json" - }, - { - "name": "0.16mm Optimal @Elegoo Neptune2", - "sub_path": "process/EN2SERIES/0.16mm Optimal @Elegoo Neptune2.json" - }, - { - "name": "0.16mm Optimal @Elegoo Neptune2D", - "sub_path": "process/EN2SERIES/0.16mm Optimal @Elegoo Neptune2D.json" - }, - { - "name": "0.16mm Optimal @Elegoo Neptune2S", - "sub_path": "process/EN2SERIES/0.16mm Optimal @Elegoo Neptune2S.json" - }, - { - "name": "0.16mm Optimal @Elegoo Neptune3", - "sub_path": "process/EN2SERIES/0.16mm Optimal @Elegoo Neptune3.json" - }, - { - "name": "0.16mm Optimal @Elegoo Neptune3Max", - "sub_path": "process/EN3SERIES/0.16mm Optimal @Elegoo Neptune3Max.json" - }, - { - "name": "0.16mm Optimal @Elegoo Neptune3Plus", - "sub_path": "process/EN3SERIES/0.16mm Optimal @Elegoo Neptune3Plus.json" - }, - { - "name": "0.16mm Optimal @Elegoo Neptune3Pro", - "sub_path": "process/EN3SERIES/0.16mm Optimal @Elegoo Neptune3Pro.json" - }, - { - "name": "0.16mm Optimal @Elegoo NeptuneX", - "sub_path": "process/EN2SERIES/0.16mm Optimal @Elegoo NeptuneX.json" - }, - { - "name": "0.20mm Standard @Elegoo Neptune", - "sub_path": "process/EN2SERIES/0.20mm Standard @Elegoo Neptune.json" - }, - { - "name": "0.20mm Standard @Elegoo Neptune2", - "sub_path": "process/EN2SERIES/0.20mm Standard @Elegoo Neptune2.json" - }, - { - "name": "0.20mm Standard @Elegoo Neptune2D", - "sub_path": "process/EN2SERIES/0.20mm Standard @Elegoo Neptune2D.json" - }, - { - "name": "0.20mm Standard @Elegoo Neptune2S", - "sub_path": "process/EN2SERIES/0.20mm Standard @Elegoo Neptune2S.json" - }, - { - "name": "0.20mm Standard @Elegoo Neptune3", - "sub_path": "process/EN2SERIES/0.20mm Standard @Elegoo Neptune3.json" - }, - { - "name": "0.20mm Standard @Elegoo Neptune3Max", - "sub_path": "process/EN3SERIES/0.20mm Standard @Elegoo Neptune3Max.json" - }, - { - "name": "0.20mm Standard @Elegoo Neptune3Plus", - "sub_path": "process/EN3SERIES/0.20mm Standard @Elegoo Neptune3Plus.json" - }, - { - "name": "0.20mm Standard @Elegoo Neptune3Pro", - "sub_path": "process/EN3SERIES/0.20mm Standard @Elegoo Neptune3Pro.json" - }, - { - "name": "0.20mm Standard @Elegoo NeptuneX", - "sub_path": "process/EN2SERIES/0.20mm Standard @Elegoo NeptuneX.json" - }, - { - "name": "0.24mm Draft @Elegoo Neptune", - "sub_path": "process/EN2SERIES/0.24mm Draft @Elegoo Neptune.json" - }, - { - "name": "0.24mm Draft @Elegoo Neptune2", - "sub_path": "process/EN2SERIES/0.24mm Draft @Elegoo Neptune2.json" - }, - { - "name": "0.24mm Draft @Elegoo Neptune2D", - "sub_path": "process/EN2SERIES/0.24mm Draft @Elegoo Neptune2D.json" - }, - { - "name": "0.24mm Draft @Elegoo Neptune2S", - "sub_path": "process/EN2SERIES/0.24mm Draft @Elegoo Neptune2S.json" - }, - { - "name": "0.24mm Draft @Elegoo Neptune3", - "sub_path": "process/EN2SERIES/0.24mm Draft @Elegoo Neptune3.json" - }, - { - "name": "0.24mm Draft @Elegoo Neptune3Max", - "sub_path": "process/EN3SERIES/0.24mm Draft @Elegoo Neptune3Max.json" - }, - { - "name": "0.24mm Draft @Elegoo Neptune3Plus", - "sub_path": "process/EN3SERIES/0.24mm Draft @Elegoo Neptune3Plus.json" - }, - { - "name": "0.24mm Draft @Elegoo Neptune3Pro", - "sub_path": "process/EN3SERIES/0.24mm Draft @Elegoo Neptune3Pro.json" - }, - { - "name": "0.24mm Draft @Elegoo NeptuneX", - "sub_path": "process/EN2SERIES/0.24mm Draft @Elegoo NeptuneX.json" - }, - { - "name": "0.28mm Extra Draft @Elegoo Neptune", - "sub_path": "process/EN2SERIES/0.28mm Extra Draft @Elegoo Neptune.json" - }, - { - "name": "0.28mm Extra Draft @Elegoo Neptune2", - "sub_path": "process/EN2SERIES/0.28mm Extra Draft @Elegoo Neptune2.json" - }, - { - "name": "0.28mm Extra Draft @Elegoo Neptune2D", - "sub_path": "process/EN2SERIES/0.28mm Extra Draft @Elegoo Neptune2D.json" - }, - { - "name": "0.28mm Extra Draft @Elegoo Neptune2S", - "sub_path": "process/EN2SERIES/0.28mm Extra Draft @Elegoo Neptune2S.json" - }, - { - "name": "0.28mm Extra Draft @Elegoo Neptune3", - "sub_path": "process/EN2SERIES/0.28mm Extra Draft @Elegoo Neptune3.json" - }, - { - "name": "0.28mm Extra Draft @Elegoo Neptune3Max", - "sub_path": "process/EN3SERIES/0.28mm Extra Draft @Elegoo Neptune3Max.json" - }, - { - "name": "0.28mm Extra Draft @Elegoo Neptune3Plus", - "sub_path": "process/EN3SERIES/0.28mm Extra Draft @Elegoo Neptune3Plus.json" - }, - { - "name": "0.28mm Extra Draft @Elegoo Neptune3Pro", - "sub_path": "process/EN3SERIES/0.28mm Extra Draft @Elegoo Neptune3Pro.json" - }, - { - "name": "0.28mm Extra Draft @Elegoo NeptuneX", - "sub_path": "process/EN2SERIES/0.28mm Extra Draft @Elegoo NeptuneX.json" - }, { "name": "fdm_process_elegoo_02010", "sub_path": "process/fdm_process_elegoo_02010.json" @@ -326,350 +102,6 @@ "name": "fdm_process_elegoo_10050", "sub_path": "process/fdm_process_elegoo_10050.json" }, - { - "name": "fdm_process_neptune4_common", - "sub_path": "process/EN4SERIES/fdm_process_neptune4_common.json" - }, - { - "name": "fdm_process_ecc_02010", - "sub_path": "process/ECC/fdm_process_ecc_02010.json" - }, - { - "name": "fdm_process_ecc_04020", - "sub_path": "process/ECC/fdm_process_ecc_04020.json" - }, - { - "name": "fdm_process_ecc_06030", - "sub_path": "process/ECC/fdm_process_ecc_06030.json" - }, - { - "name": "fdm_process_ecc_08040", - "sub_path": "process/ECC/fdm_process_ecc_08040.json" - }, - { - "name": "0.10mm Standard @Elegoo CC2 0.2 nozzle", - "sub_path": "process/ECC2/0.10mm Standard @Elegoo CC2 0.2 nozzle.json" - }, - { - "name": "0.20mm Standard @Elegoo CC2 0.4 nozzle", - "sub_path": "process/ECC2/0.20mm Standard @Elegoo CC2 0.4 nozzle.json" - }, - { - "name": "0.20mm Standard @Elegoo Giga 0.4 nozzle", - "sub_path": "process/EOSGIGA/0.20mm Standard @Elegoo Giga 0.4 nozzle.json" - }, - { - "name": "0.30mm Standard @Elegoo CC2 0.6 nozzle", - "sub_path": "process/ECC2/0.30mm Standard @Elegoo CC2 0.6 nozzle.json" - }, - { - "name": "0.30mm Standard @Elegoo Giga 0.6 nozzle", - "sub_path": "process/EOSGIGA/0.30mm Standard @Elegoo Giga 0.6 nozzle.json" - }, - { - "name": "0.40mm Standard @Elegoo CC2 0.8 nozzle", - "sub_path": "process/ECC2/0.40mm Standard @Elegoo CC2 0.8 nozzle.json" - }, - { - "name": "0.40mm Standard @Elegoo Giga 0.8 nozzle", - "sub_path": "process/EOSGIGA/0.40mm Standard @Elegoo Giga 0.8 nozzle.json" - }, - { - "name": "0.50mm Standard @Elegoo Giga 1.0 nozzle", - "sub_path": "process/EOSGIGA/0.50mm Standard @Elegoo Giga 1.0 nozzle.json" - }, - { - "name": "0.08mm Extra Fine @Elegoo Neptune4 (0.2 nozzle)", - "sub_path": "process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4 (0.2 nozzle).json" - }, - { - "name": "0.08mm Extra Fine @Elegoo Neptune4 (0.4 nozzle)", - "sub_path": "process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4 (0.4 nozzle).json" - }, - { - "name": "0.08mm Extra Fine @Elegoo Neptune4 (0.6 nozzle)", - "sub_path": "process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4 (0.6 nozzle).json" - }, - { - "name": "0.08mm Extra Fine @Elegoo Neptune4 (0.8 nozzle)", - "sub_path": "process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4 (0.8 nozzle).json" - }, - { - "name": "0.08mm Extra Fine @Elegoo Neptune4 Plus (0.2 nozzle)", - "sub_path": "process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4 Plus (0.2 nozzle).json" - }, - { - "name": "0.08mm Extra Fine @Elegoo Neptune4 Plus (0.4 nozzle)", - "sub_path": "process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4 Plus (0.4 nozzle).json" - }, - { - "name": "0.08mm Extra Fine @Elegoo Neptune4 Plus (0.6 nozzle)", - "sub_path": "process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4 Plus (0.6 nozzle).json" - }, - { - "name": "0.08mm Extra Fine @Elegoo Neptune4 Plus (0.8 nozzle)", - "sub_path": "process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4 Plus (0.8 nozzle).json" - }, - { - "name": "0.08mm Extra Fine @Elegoo Neptune4Pro (0.2 nozzle)", - "sub_path": "process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4Pro (0.2 nozzle).json" - }, - { - "name": "0.08mm Extra Fine @Elegoo Neptune4Pro (0.4 nozzle)", - "sub_path": "process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4Pro (0.4 nozzle).json" - }, - { - "name": "0.08mm Extra Fine @Elegoo Neptune4Pro (0.6 nozzle)", - "sub_path": "process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4Pro (0.6 nozzle).json" - }, - { - "name": "0.08mm Extra Fine @Elegoo Neptune4Pro (0.8 nozzle)", - "sub_path": "process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4Pro (0.8 nozzle).json" - }, - { - "name": "0.12mm Fine @Elegoo Neptune4 (0.2 nozzle)", - "sub_path": "process/EN4SERIES/0.12mm Fine @Elegoo Neptune4 (0.2 nozzle).json" - }, - { - "name": "0.12mm Fine @Elegoo Neptune4 (0.4 nozzle)", - "sub_path": "process/EN4SERIES/0.12mm Fine @Elegoo Neptune4 (0.4 nozzle).json" - }, - { - "name": "0.12mm Fine @Elegoo Neptune4 (0.6 nozzle)", - "sub_path": "process/EN4SERIES/0.12mm Fine @Elegoo Neptune4 (0.6 nozzle).json" - }, - { - "name": "0.12mm Fine @Elegoo Neptune4 (0.8 nozzle)", - "sub_path": "process/EN4SERIES/0.12mm Fine @Elegoo Neptune4 (0.8 nozzle).json" - }, - { - "name": "0.12mm Fine @Elegoo Neptune4 Plus (0.2 nozzle)", - "sub_path": "process/EN4SERIES/0.12mm Fine @Elegoo Neptune4 Plus (0.2 nozzle).json" - }, - { - "name": "0.12mm Fine @Elegoo Neptune4 Plus (0.4 nozzle)", - "sub_path": "process/EN4SERIES/0.12mm Fine @Elegoo Neptune4 Plus (0.4 nozzle).json" - }, - { - "name": "0.12mm Fine @Elegoo Neptune4 Plus (0.6 nozzle)", - "sub_path": "process/EN4SERIES/0.12mm Fine @Elegoo Neptune4 Plus (0.6 nozzle).json" - }, - { - "name": "0.12mm Fine @Elegoo Neptune4 Plus (0.8 nozzle)", - "sub_path": "process/EN4SERIES/0.12mm Fine @Elegoo Neptune4 Plus (0.8 nozzle).json" - }, - { - "name": "0.12mm Fine @Elegoo Neptune4Pro (0.2 nozzle)", - "sub_path": "process/EN4SERIES/0.12mm Fine @Elegoo Neptune4Pro (0.2 nozzle).json" - }, - { - "name": "0.12mm Fine @Elegoo Neptune4Pro (0.4 nozzle)", - "sub_path": "process/EN4SERIES/0.12mm Fine @Elegoo Neptune4Pro (0.4 nozzle).json" - }, - { - "name": "0.12mm Fine @Elegoo Neptune4Pro (0.6 nozzle)", - "sub_path": "process/EN4SERIES/0.12mm Fine @Elegoo Neptune4Pro (0.6 nozzle).json" - }, - { - "name": "0.12mm Fine @Elegoo Neptune4Pro (0.8 nozzle)", - "sub_path": "process/EN4SERIES/0.12mm Fine @Elegoo Neptune4Pro (0.8 nozzle).json" - }, - { - "name": "0.16mm Optimal @Elegoo Neptune4 (0.2 nozzle)", - "sub_path": "process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4 (0.2 nozzle).json" - }, - { - "name": "0.16mm Optimal @Elegoo Neptune4 (0.4 nozzle)", - "sub_path": "process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4 (0.4 nozzle).json" - }, - { - "name": "0.16mm Optimal @Elegoo Neptune4 (0.6 nozzle)", - "sub_path": "process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4 (0.6 nozzle).json" - }, - { - "name": "0.16mm Optimal @Elegoo Neptune4 (0.8 nozzle)", - "sub_path": "process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4 (0.8 nozzle).json" - }, - { - "name": "0.16mm Optimal @Elegoo Neptune4 Plus (0.2 nozzle)", - "sub_path": "process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4 Plus (0.2 nozzle).json" - }, - { - "name": "0.16mm Optimal @Elegoo Neptune4 Plus (0.4 nozzle)", - "sub_path": "process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4 Plus (0.4 nozzle).json" - }, - { - "name": "0.16mm Optimal @Elegoo Neptune4 Plus (0.6 nozzle)", - "sub_path": "process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4 Plus (0.6 nozzle).json" - }, - { - "name": "0.16mm Optimal @Elegoo Neptune4 Plus (0.8 nozzle)", - "sub_path": "process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4 Plus (0.8 nozzle).json" - }, - { - "name": "0.16mm Optimal @Elegoo Neptune4Pro (0.2 nozzle)", - "sub_path": "process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4Pro (0.2 nozzle).json" - }, - { - "name": "0.16mm Optimal @Elegoo Neptune4Pro (0.4 nozzle)", - "sub_path": "process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4Pro (0.4 nozzle).json" - }, - { - "name": "0.16mm Optimal @Elegoo Neptune4Pro (0.6 nozzle)", - "sub_path": "process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4Pro (0.6 nozzle).json" - }, - { - "name": "0.16mm Optimal @Elegoo Neptune4Pro (0.8 nozzle)", - "sub_path": "process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4Pro (0.8 nozzle).json" - }, - { - "name": "0.20mm Standard @Elegoo Neptune4 (0.2 nozzle)", - "sub_path": "process/EN4SERIES/0.20mm Standard @Elegoo Neptune4 (0.2 nozzle).json" - }, - { - "name": "0.20mm Standard @Elegoo Neptune4 (0.4 nozzle)", - "sub_path": "process/EN4SERIES/0.20mm Standard @Elegoo Neptune4 (0.4 nozzle).json" - }, - { - "name": "0.20mm Standard @Elegoo Neptune4 (0.6 nozzle)", - "sub_path": "process/EN4SERIES/0.20mm Standard @Elegoo Neptune4 (0.6 nozzle).json" - }, - { - "name": "0.20mm Standard @Elegoo Neptune4 (0.8 nozzle)", - "sub_path": "process/EN4SERIES/0.20mm Standard @Elegoo Neptune4 (0.8 nozzle).json" - }, - { - "name": "0.20mm Standard @Elegoo Neptune4 Plus (0.2 nozzle)", - "sub_path": "process/EN4SERIES/0.20mm Standard @Elegoo Neptune4 Plus (0.2 nozzle).json" - }, - { - "name": "0.20mm Standard @Elegoo Neptune4 Plus (0.4 nozzle)", - "sub_path": "process/EN4SERIES/0.20mm Standard @Elegoo Neptune4 Plus (0.4 nozzle).json" - }, - { - "name": "0.20mm Standard @Elegoo Neptune4 Plus (0.6 nozzle)", - "sub_path": "process/EN4SERIES/0.20mm Standard @Elegoo Neptune4 Plus (0.6 nozzle).json" - }, - { - "name": "0.20mm Standard @Elegoo Neptune4 Plus (0.8 nozzle)", - "sub_path": "process/EN4SERIES/0.20mm Standard @Elegoo Neptune4 Plus (0.8 nozzle).json" - }, - { - "name": "0.20mm Standard @Elegoo Neptune4Pro (0.2 nozzle)", - "sub_path": "process/EN4SERIES/0.20mm Standard @Elegoo Neptune4Pro (0.2 nozzle).json" - }, - { - "name": "0.20mm Standard @Elegoo Neptune4Pro (0.4 nozzle)", - "sub_path": "process/EN4SERIES/0.20mm Standard @Elegoo Neptune4Pro (0.4 nozzle).json" - }, - { - "name": "0.20mm Standard @Elegoo Neptune4Pro (0.6 nozzle)", - "sub_path": "process/EN4SERIES/0.20mm Standard @Elegoo Neptune4Pro (0.6 nozzle).json" - }, - { - "name": "0.20mm Standard @Elegoo Neptune4Pro (0.8 nozzle)", - "sub_path": "process/EN4SERIES/0.20mm Standard @Elegoo Neptune4Pro (0.8 nozzle).json" - }, - { - "name": "0.24mm Draft @Elegoo Neptune4 (0.2 nozzle)", - "sub_path": "process/EN4SERIES/0.24mm Draft @Elegoo Neptune4 (0.2 nozzle).json" - }, - { - "name": "0.24mm Draft @Elegoo Neptune4 (0.4 nozzle)", - "sub_path": "process/EN4SERIES/0.24mm Draft @Elegoo Neptune4 (0.4 nozzle).json" - }, - { - "name": "0.24mm Draft @Elegoo Neptune4 (0.6 nozzle)", - "sub_path": "process/EN4SERIES/0.24mm Draft @Elegoo Neptune4 (0.6 nozzle).json" - }, - { - "name": "0.24mm Draft @Elegoo Neptune4 (0.8 nozzle)", - "sub_path": "process/EN4SERIES/0.24mm Draft @Elegoo Neptune4 (0.8 nozzle).json" - }, - { - "name": "0.24mm Draft @Elegoo Neptune4 Plus (0.2 nozzle)", - "sub_path": "process/EN4SERIES/0.24mm Draft @Elegoo Neptune4 Plus (0.2 nozzle).json" - }, - { - "name": "0.24mm Draft @Elegoo Neptune4 Plus (0.4 nozzle)", - "sub_path": "process/EN4SERIES/0.24mm Draft @Elegoo Neptune4 Plus (0.4 nozzle).json" - }, - { - "name": "0.24mm Draft @Elegoo Neptune4 Plus (0.6 nozzle)", - "sub_path": "process/EN4SERIES/0.24mm Draft @Elegoo Neptune4 Plus (0.6 nozzle).json" - }, - { - "name": "0.24mm Draft @Elegoo Neptune4 Plus (0.8 nozzle)", - "sub_path": "process/EN4SERIES/0.24mm Draft @Elegoo Neptune4 Plus (0.8 nozzle).json" - }, - { - "name": "0.24mm Draft @Elegoo Neptune4Pro (0.2 nozzle)", - "sub_path": "process/EN4SERIES/0.24mm Draft @Elegoo Neptune4Pro (0.2 nozzle).json" - }, - { - "name": "0.24mm Draft @Elegoo Neptune4Pro (0.4 nozzle)", - "sub_path": "process/EN4SERIES/0.24mm Draft @Elegoo Neptune4Pro (0.4 nozzle).json" - }, - { - "name": "0.24mm Draft @Elegoo Neptune4Pro (0.6 nozzle)", - "sub_path": "process/EN4SERIES/0.24mm Draft @Elegoo Neptune4Pro (0.6 nozzle).json" - }, - { - "name": "0.24mm Draft @Elegoo Neptune4Pro (0.8 nozzle)", - "sub_path": "process/EN4SERIES/0.24mm Draft @Elegoo Neptune4Pro (0.8 nozzle).json" - }, - { - "name": "0.28mm Extra Draft @Elegoo Neptune4 (0.2 nozzle)", - "sub_path": "process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4 (0.2 nozzle).json" - }, - { - "name": "0.28mm Extra Draft @Elegoo Neptune4 (0.4 nozzle)", - "sub_path": "process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4 (0.4 nozzle).json" - }, - { - "name": "0.28mm Extra Draft @Elegoo Neptune4 (0.6 nozzle)", - "sub_path": "process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4 (0.6 nozzle).json" - }, - { - "name": "0.28mm Extra Draft @Elegoo Neptune4 (0.8 nozzle)", - "sub_path": "process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4 (0.8 nozzle).json" - }, - { - "name": "0.28mm Extra Draft @Elegoo Neptune4 Plus (0.2 nozzle)", - "sub_path": "process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4 Plus (0.2 nozzle).json" - }, - { - "name": "0.28mm Extra Draft @Elegoo Neptune4 Plus (0.4 nozzle)", - "sub_path": "process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4 Plus (0.4 nozzle).json" - }, - { - "name": "0.28mm Extra Draft @Elegoo Neptune4 Plus (0.6 nozzle)", - "sub_path": "process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4 Plus (0.6 nozzle).json" - }, - { - "name": "0.28mm Extra Draft @Elegoo Neptune4 Plus (0.8 nozzle)", - "sub_path": "process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4 Plus (0.8 nozzle).json" - }, - { - "name": "0.28mm Extra Draft @Elegoo Neptune4Pro (0.2 nozzle)", - "sub_path": "process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4Pro (0.2 nozzle).json" - }, - { - "name": "0.28mm Extra Draft @Elegoo Neptune4Pro (0.4 nozzle)", - "sub_path": "process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4Pro (0.4 nozzle).json" - }, - { - "name": "0.28mm Extra Draft @Elegoo Neptune4Pro (0.6 nozzle)", - "sub_path": "process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4Pro (0.6 nozzle).json" - }, - { - "name": "0.28mm Extra Draft @Elegoo Neptune4Pro (0.8 nozzle)", - "sub_path": "process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4Pro (0.8 nozzle).json" - }, - { - "name": "fdm_process_neptune4max_common", - "sub_path": "process/EN4SERIES/fdm_process_neptune4max_common.json" - }, { "name": "0.10mm Standard @Elegoo C 0.2 nozzle", "sub_path": "process/EC/0.10mm Standard @Elegoo C 0.2 nozzle.json" @@ -678,6 +110,38 @@ "name": "0.10mm Standard @Elegoo CC 0.2 nozzle", "sub_path": "process/ECC/0.10mm Standard @Elegoo CC 0.2 nozzle.json" }, + { + "name": "0.10mm Standard @Elegoo CC2 0.2 nozzle", + "sub_path": "process/ECC2/0.10mm Standard @Elegoo CC2 0.2 nozzle.json" + }, + { + "name": "0.10mm Standard @Elegoo N3Max 0.2 nozzle", + "sub_path": "process/EN3SERIES/0.10mm Standard @Elegoo N3Max 0.2 nozzle.json" + }, + { + "name": "0.10mm Standard @Elegoo N3Plus 0.2 nozzle", + "sub_path": "process/EN3SERIES/0.10mm Standard @Elegoo N3Plus 0.2 nozzle.json" + }, + { + "name": "0.10mm Standard @Elegoo N3Pro 0.2 nozzle", + "sub_path": "process/EN3SERIES/0.10mm Standard @Elegoo N3Pro 0.2 nozzle.json" + }, + { + "name": "0.10mm Standard @Elegoo N4 0.2 nozzle", + "sub_path": "process/EN4SERIES/0.10mm Standard @Elegoo N4 0.2 nozzle.json" + }, + { + "name": "0.10mm Standard @Elegoo N4Max 0.2 nozzle", + "sub_path": "process/EN4SERIES/0.10mm Standard @Elegoo N4Max 0.2 nozzle.json" + }, + { + "name": "0.10mm Standard @Elegoo N4Plus 0.2 nozzle", + "sub_path": "process/EN4SERIES/0.10mm Standard @Elegoo N4Plus 0.2 nozzle.json" + }, + { + "name": "0.10mm Standard @Elegoo N4Pro 0.2 nozzle", + "sub_path": "process/EN4SERIES/0.10mm Standard @Elegoo N4Pro 0.2 nozzle.json" + }, { "name": "0.20mm Standard @Elegoo C 0.4 nozzle", "sub_path": "process/EC/0.20mm Standard @Elegoo C 0.4 nozzle.json" @@ -686,6 +150,46 @@ "name": "0.20mm Standard @Elegoo CC 0.4 nozzle", "sub_path": "process/ECC/0.20mm Standard @Elegoo CC 0.4 nozzle.json" }, + { + "name": "0.20mm Standard @Elegoo CC2 0.4 nozzle", + "sub_path": "process/ECC2/0.20mm Standard @Elegoo CC2 0.4 nozzle.json" + }, + { + "name": "0.20mm Standard @Elegoo Giga 0.4 nozzle", + "sub_path": "process/EOSGIGA/0.20mm Standard @Elegoo Giga 0.4 nozzle.json" + }, + { + "name": "0.20mm Standard @Elegoo N3Max 0.4 nozzle", + "sub_path": "process/EN3SERIES/0.20mm Standard @Elegoo N3Max 0.4 nozzle.json" + }, + { + "name": "0.20mm Standard @Elegoo N3Plus 0.4 nozzle", + "sub_path": "process/EN3SERIES/0.20mm Standard @Elegoo N3Plus 0.4 nozzle.json" + }, + { + "name": "0.20mm Standard @Elegoo N3Pro 0.4 nozzle", + "sub_path": "process/EN3SERIES/0.20mm Standard @Elegoo N3Pro 0.4 nozzle.json" + }, + { + "name": "0.20mm Standard @Elegoo N4 0.4 nozzle", + "sub_path": "process/EN4SERIES/0.20mm Standard @Elegoo N4 0.4 nozzle.json" + }, + { + "name": "0.20mm Standard @Elegoo N4Max 0.4 nozzle", + "sub_path": "process/EN4SERIES/0.20mm Standard @Elegoo N4Max 0.4 nozzle.json" + }, + { + "name": "0.20mm Standard @Elegoo N4Plus 0.4 nozzle", + "sub_path": "process/EN4SERIES/0.20mm Standard @Elegoo N4Plus 0.4 nozzle.json" + }, + { + "name": "0.20mm Standard @Elegoo N4Pro 0.4 nozzle", + "sub_path": "process/EN4SERIES/0.20mm Standard @Elegoo N4Pro 0.4 nozzle.json" + }, + { + "name": "0.20mm Standard @Elegoo Neptune 0.4 nozzle", + "sub_path": "process/EN2SERIES/0.20mm Standard @Elegoo Neptune 0.4 nozzle.json" + }, { "name": "0.30mm Standard @Elegoo C 0.6 nozzle", "sub_path": "process/EC/0.30mm Standard @Elegoo C 0.6 nozzle.json" @@ -694,6 +198,46 @@ "name": "0.30mm Standard @Elegoo CC 0.6 nozzle", "sub_path": "process/ECC/0.30mm Standard @Elegoo CC 0.6 nozzle.json" }, + { + "name": "0.30mm Standard @Elegoo CC2 0.6 nozzle", + "sub_path": "process/ECC2/0.30mm Standard @Elegoo CC2 0.6 nozzle.json" + }, + { + "name": "0.30mm Standard @Elegoo Giga 0.6 nozzle", + "sub_path": "process/EOSGIGA/0.30mm Standard @Elegoo Giga 0.6 nozzle.json" + }, + { + "name": "0.30mm Standard @Elegoo N3Max 0.6 nozzle", + "sub_path": "process/EN3SERIES/0.30mm Standard @Elegoo N3Max 0.6 nozzle.json" + }, + { + "name": "0.30mm Standard @Elegoo N3Plus 0.6 nozzle", + "sub_path": "process/EN3SERIES/0.30mm Standard @Elegoo N3Plus 0.6 nozzle.json" + }, + { + "name": "0.30mm Standard @Elegoo N3Pro 0.6 nozzle", + "sub_path": "process/EN3SERIES/0.30mm Standard @Elegoo N3Pro 0.6 nozzle.json" + }, + { + "name": "0.30mm Standard @Elegoo N4 0.6 nozzle", + "sub_path": "process/EN4SERIES/0.30mm Standard @Elegoo N4 0.6 nozzle.json" + }, + { + "name": "0.30mm Standard @Elegoo N4Max 0.6 nozzle", + "sub_path": "process/EN4SERIES/0.30mm Standard @Elegoo N4Max 0.6 nozzle.json" + }, + { + "name": "0.30mm Standard @Elegoo N4Plus 0.6 nozzle", + "sub_path": "process/EN4SERIES/0.30mm Standard @Elegoo N4Plus 0.6 nozzle.json" + }, + { + "name": "0.30mm Standard @Elegoo N4Pro 0.6 nozzle", + "sub_path": "process/EN4SERIES/0.30mm Standard @Elegoo N4Pro 0.6 nozzle.json" + }, + { + "name": "0.30mm Standard @Elegoo Neptune 0.6 nozzle", + "sub_path": "process/EN2SERIES/0.30mm Standard @Elegoo Neptune 0.6 nozzle.json" + }, { "name": "0.40mm Standard @Elegoo C 0.8 nozzle", "sub_path": "process/EC/0.40mm Standard @Elegoo C 0.8 nozzle.json" @@ -703,395 +247,387 @@ "sub_path": "process/ECC/0.40mm Standard @Elegoo CC 0.8 nozzle.json" }, { - "name": "0.08mm Optimal @Elegoo CC2 0.2 nozzle", - "sub_path": "process/ECC2/0.08mm Optimal @Elegoo CC2 0.2 nozzle.json" + "name": "0.40mm Standard @Elegoo CC2 0.8 nozzle", + "sub_path": "process/ECC2/0.40mm Standard @Elegoo CC2 0.8 nozzle.json" }, { - "name": "0.12mm Draft @Elegoo CC2 0.2 nozzle", - "sub_path": "process/ECC2/0.12mm Draft @Elegoo CC2 0.2 nozzle.json" + "name": "0.40mm Standard @Elegoo Giga 0.8 nozzle", + "sub_path": "process/EOSGIGA/0.40mm Standard @Elegoo Giga 0.8 nozzle.json" }, { - "name": "0.14mm Extra Draft @Elegoo CC2 0.2 nozzle", - "sub_path": "process/ECC2/0.14mm Extra Draft @Elegoo CC2 0.2 nozzle.json" + "name": "0.40mm Standard @Elegoo N3Max 0.8 nozzle", + "sub_path": "process/EN3SERIES/0.40mm Standard @Elegoo N3Max 0.8 nozzle.json" }, { - "name": "0.12mm Fine @Elegoo CC2 0.4 nozzle", - "sub_path": "process/ECC2/0.12mm Fine @Elegoo CC2 0.4 nozzle.json" + "name": "0.40mm Standard @Elegoo N3Plus 0.8 nozzle", + "sub_path": "process/EN3SERIES/0.40mm Standard @Elegoo N3Plus 0.8 nozzle.json" }, { - "name": "0.16mm Optimal @Elegoo CC2 0.4 nozzle", - "sub_path": "process/ECC2/0.16mm Optimal @Elegoo CC2 0.4 nozzle.json" + "name": "0.40mm Standard @Elegoo N3Pro 0.8 nozzle", + "sub_path": "process/EN3SERIES/0.40mm Standard @Elegoo N3Pro 0.8 nozzle.json" }, { - "name": "0.20mm Strength @Elegoo CC2 0.4 nozzle", - "sub_path": "process/ECC2/0.20mm Strength @Elegoo CC2 0.4 nozzle.json" + "name": "0.40mm Standard @Elegoo N4 0.8 nozzle", + "sub_path": "process/EN4SERIES/0.40mm Standard @Elegoo N4 0.8 nozzle.json" }, { - "name": "0.24mm Draft @Elegoo CC2 0.4 nozzle", - "sub_path": "process/ECC2/0.24mm Draft @Elegoo CC2 0.4 nozzle.json" + "name": "0.40mm Standard @Elegoo N4Max 0.8 nozzle", + "sub_path": "process/EN4SERIES/0.40mm Standard @Elegoo N4Max 0.8 nozzle.json" }, { - "name": "0.28mm Extra Draft @Elegoo CC2 0.4 nozzle", - "sub_path": "process/ECC2/0.28mm Extra Draft @Elegoo CC2 0.4 nozzle.json" + "name": "0.40mm Standard @Elegoo N4Plus 0.8 nozzle", + "sub_path": "process/EN4SERIES/0.40mm Standard @Elegoo N4Plus 0.8 nozzle.json" }, { - "name": "0.16mm Optimal @Elegoo Giga 0.4 nozzle", - "sub_path": "process/EOSGIGA/0.16mm Optimal @Elegoo Giga 0.4 nozzle.json" + "name": "0.40mm Standard @Elegoo N4Pro 0.8 nozzle", + "sub_path": "process/EN4SERIES/0.40mm Standard @Elegoo N4Pro 0.8 nozzle.json" }, { - "name": "0.20mm Strength @Elegoo Giga 0.4 nozzle", - "sub_path": "process/EOSGIGA/0.20mm Strength @Elegoo Giga 0.4 nozzle.json" + "name": "0.40mm Standard @Elegoo Neptune 0.8 nozzle", + "sub_path": "process/EN2SERIES/0.40mm Standard @Elegoo Neptune 0.8 nozzle.json" }, { - "name": "0.24mm Draft @Elegoo Giga 0.4 nozzle", - "sub_path": "process/EOSGIGA/0.24mm Draft @Elegoo Giga 0.4 nozzle.json" + "name": "0.50mm Standard @Elegoo N3Max 1.0 nozzle", + "sub_path": "process/EN3SERIES/0.50mm Standard @Elegoo N3Max 1.0 nozzle.json" }, { - "name": "0.28mm Extra Draft @Elegoo Giga 0.4 nozzle", - "sub_path": "process/EOSGIGA/0.28mm Extra Draft @Elegoo Giga 0.4 nozzle.json" + "name": "0.50mm Standard @Elegoo N3Plus 1.0 nozzle", + "sub_path": "process/EN3SERIES/0.50mm Standard @Elegoo N3Plus 1.0 nozzle.json" }, { - "name": "0.18mm Fine @Elegoo CC2 0.6 nozzle", - "sub_path": "process/ECC2/0.18mm Fine @Elegoo CC2 0.6 nozzle.json" + "name": "0.50mm Standard @Elegoo N3Pro 1.0 nozzle", + "sub_path": "process/EN3SERIES/0.50mm Standard @Elegoo N3Pro 1.0 nozzle.json" }, { - "name": "0.24mm Optimal @Elegoo CC2 0.6 nozzle", - "sub_path": "process/ECC2/0.24mm Optimal @Elegoo CC2 0.6 nozzle.json" + "name": "0.50mm Standard @Elegoo N4 1.0 nozzle", + "sub_path": "process/EN4SERIES/0.50mm Standard @Elegoo N4 1.0 nozzle.json" }, { - "name": "0.30mm Strength @Elegoo CC2 0.6 nozzle", - "sub_path": "process/ECC2/0.30mm Strength @Elegoo CC2 0.6 nozzle.json" + "name": "0.50mm Standard @Elegoo N4Max 1.0 nozzle", + "sub_path": "process/EN4SERIES/0.50mm Standard @Elegoo N4Max 1.0 nozzle.json" }, { - "name": "0.36mm Draft @Elegoo CC2 0.6 nozzle", - "sub_path": "process/ECC2/0.36mm Draft @Elegoo CC2 0.6 nozzle.json" + "name": "0.50mm Standard @Elegoo N4Plus 1.0 nozzle", + "sub_path": "process/EN4SERIES/0.50mm Standard @Elegoo N4Plus 1.0 nozzle.json" }, { - "name": "0.42mm Extra Draft @Elegoo CC2 0.6 nozzle", - "sub_path": "process/ECC2/0.42mm Extra Draft @Elegoo CC2 0.6 nozzle.json" + "name": "0.50mm Standard @Elegoo N4Pro 1.0 nozzle", + "sub_path": "process/EN4SERIES/0.50mm Standard @Elegoo N4Pro 1.0 nozzle.json" }, { - "name": "0.18mm Fine @Elegoo Giga 0.6 nozzle", - "sub_path": "process/EOSGIGA/0.18mm Fine @Elegoo Giga 0.6 nozzle.json" + "name": "0.08mm Optimal @Elegoo N3Max 0.2 nozzle", + "sub_path": "process/EN3SERIES/0.08mm Optimal @Elegoo N3Max 0.2 nozzle.json" }, { - "name": "0.24mm Optimal @Elegoo Giga 0.6 nozzle", - "sub_path": "process/EOSGIGA/0.24mm Optimal @Elegoo Giga 0.6 nozzle.json" + "name": "0.12mm Draft @Elegoo N3Max 0.2 nozzle", + "sub_path": "process/EN3SERIES/0.12mm Draft @Elegoo N3Max 0.2 nozzle.json" }, { - "name": "0.30mm Strength @Elegoo Giga 0.6 nozzle", - "sub_path": "process/EOSGIGA/0.30mm Strength @Elegoo Giga 0.6 nozzle.json" + "name": "0.08mm Optimal @Elegoo N3Plus 0.2 nozzle", + "sub_path": "process/EN3SERIES/0.08mm Optimal @Elegoo N3Plus 0.2 nozzle.json" }, { - "name": "0.36mm Draft @Elegoo Giga 0.6 nozzle", - "sub_path": "process/EOSGIGA/0.36mm Draft @Elegoo Giga 0.6 nozzle.json" + "name": "0.12mm Draft @Elegoo N3Plus 0.2 nozzle", + "sub_path": "process/EN3SERIES/0.12mm Draft @Elegoo N3Plus 0.2 nozzle.json" }, { - "name": "0.42mm Extra Draft @Elegoo Giga 0.6 nozzle", - "sub_path": "process/EOSGIGA/0.42mm Extra Draft @Elegoo Giga 0.6 nozzle.json" + "name": "0.08mm Optimal @Elegoo N3Pro 0.2 nozzle", + "sub_path": "process/EN3SERIES/0.08mm Optimal @Elegoo N3Pro 0.2 nozzle.json" }, { - "name": "0.16mm Extra Fine @Elegoo CC2 0.8 nozzle", - "sub_path": "process/ECC2/0.16mm Extra Fine @Elegoo CC2 0.8 nozzle.json" + "name": "0.12mm Draft @Elegoo N3Pro 0.2 nozzle", + "sub_path": "process/EN3SERIES/0.12mm Draft @Elegoo N3Pro 0.2 nozzle.json" }, { - "name": "0.24mm Fine @Elegoo CC2 0.8 nozzle", - "sub_path": "process/ECC2/0.24mm Fine @Elegoo CC2 0.8 nozzle.json" + "name": "0.08mm Optimal @Elegoo N4 0.2 nozzle", + "sub_path": "process/EN4SERIES/0.08mm Optimal @Elegoo N4 0.2 nozzle.json" }, { - "name": "0.32mm Optimal @Elegoo CC2 0.8 nozzle", - "sub_path": "process/ECC2/0.32mm Optimal @Elegoo CC2 0.8 nozzle.json" + "name": "0.12mm Draft @Elegoo N4 0.2 nozzle", + "sub_path": "process/EN4SERIES/0.12mm Draft @Elegoo N4 0.2 nozzle.json" }, { - "name": "0.48mm Draft @Elegoo CC2 0.8 nozzle", - "sub_path": "process/ECC2/0.48mm Draft @Elegoo CC2 0.8 nozzle.json" + "name": "0.08mm Optimal @Elegoo N4Max 0.2 nozzle", + "sub_path": "process/EN4SERIES/0.08mm Optimal @Elegoo N4Max 0.2 nozzle.json" }, { - "name": "0.24mm Fine @Elegoo Giga 0.8 nozzle", - "sub_path": "process/EOSGIGA/0.24mm Fine @Elegoo Giga 0.8 nozzle.json" + "name": "0.12mm Draft @Elegoo N4Max 0.2 nozzle", + "sub_path": "process/EN4SERIES/0.12mm Draft @Elegoo N4Max 0.2 nozzle.json" }, { - "name": "0.32mm Optimal @Elegoo Giga 0.8 nozzle", - "sub_path": "process/EOSGIGA/0.32mm Optimal @Elegoo Giga 0.8 nozzle.json" + "name": "0.08mm Optimal @Elegoo N4Plus 0.2 nozzle", + "sub_path": "process/EN4SERIES/0.08mm Optimal @Elegoo N4Plus 0.2 nozzle.json" }, { - "name": "0.48mm Draft @Elegoo Giga 0.8 nozzle", - "sub_path": "process/EOSGIGA/0.48mm Draft @Elegoo Giga 0.8 nozzle.json" + "name": "0.12mm Draft @Elegoo N4Plus 0.2 nozzle", + "sub_path": "process/EN4SERIES/0.12mm Draft @Elegoo N4Plus 0.2 nozzle.json" }, { - "name": "0.56mm Extra Draft @Elegoo Giga 0.8 nozzle", - "sub_path": "process/EOSGIGA/0.56mm Extra Draft @Elegoo Giga 0.8 nozzle.json" + "name": "0.08mm Optimal @Elegoo N4Pro 0.2 nozzle", + "sub_path": "process/EN4SERIES/0.08mm Optimal @Elegoo N4Pro 0.2 nozzle.json" }, { - "name": "0.30mm Fine @Elegoo Giga 1.0 nozzle", - "sub_path": "process/EOSGIGA/0.30mm Fine @Elegoo Giga 1.0 nozzle.json" + "name": "0.12mm Draft @Elegoo N4Pro 0.2 nozzle", + "sub_path": "process/EN4SERIES/0.12mm Draft @Elegoo N4Pro 0.2 nozzle.json" }, { - "name": "0.40mm Optimal @Elegoo Giga 1.0 nozzle", - "sub_path": "process/EOSGIGA/0.40mm Optimal @Elegoo Giga 1.0 nozzle.json" + "name": "0.24mm Optimal @Elegoo N3Max 0.6 nozzle", + "sub_path": "process/EN3SERIES/0.24mm Optimal @Elegoo N3Max 0.6 nozzle.json" }, { - "name": "0.60mm Draft @Elegoo Giga 1.0 nozzle", - "sub_path": "process/EOSGIGA/0.60mm Draft @Elegoo Giga 1.0 nozzle.json" + "name": "0.36mm Draft @Elegoo N3Max 0.6 nozzle", + "sub_path": "process/EN3SERIES/0.36mm Draft @Elegoo N3Max 0.6 nozzle.json" }, { - "name": "0.08mm Extra Fine @Elegoo Neptune4Max (0.2 nozzle)", - "sub_path": "process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4Max (0.2 nozzle).json" + "name": "0.42mm Extra Draft @Elegoo N3Max 0.6 nozzle", + "sub_path": "process/EN3SERIES/0.42mm Extra Draft @Elegoo N3Max 0.6 nozzle.json" }, { - "name": "0.08mm Extra Fine @Elegoo Neptune4Max (0.4 nozzle)", - "sub_path": "process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4Max (0.4 nozzle).json" + "name": "0.24mm Optimal @Elegoo N3Plus 0.6 nozzle", + "sub_path": "process/EN3SERIES/0.24mm Optimal @Elegoo N3Plus 0.6 nozzle.json" }, { - "name": "0.08mm Extra Fine @Elegoo Neptune4Max (0.6 nozzle)", - "sub_path": "process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4Max (0.6 nozzle).json" + "name": "0.36mm Draft @Elegoo N3Plus 0.6 nozzle", + "sub_path": "process/EN3SERIES/0.36mm Draft @Elegoo N3Plus 0.6 nozzle.json" }, { - "name": "0.08mm Extra Fine @Elegoo Neptune4Max (0.8 nozzle)", - "sub_path": "process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4Max (0.8 nozzle).json" + "name": "0.42mm Extra Draft @Elegoo N3Plus 0.6 nozzle", + "sub_path": "process/EN3SERIES/0.42mm Extra Draft @Elegoo N3Plus 0.6 nozzle.json" }, { - "name": "0.12mm Fine @Elegoo Neptune4Max (0.2 nozzle)", - "sub_path": "process/EN4SERIES/0.12mm Fine @Elegoo Neptune4Max (0.2 nozzle).json" + "name": "0.24mm Optimal @Elegoo N3Pro 0.6 nozzle", + "sub_path": "process/EN3SERIES/0.24mm Optimal @Elegoo N3Pro 0.6 nozzle.json" }, { - "name": "0.12mm Fine @Elegoo Neptune4Max (0.4 nozzle)", - "sub_path": "process/EN4SERIES/0.12mm Fine @Elegoo Neptune4Max (0.4 nozzle).json" + "name": "0.36mm Draft @Elegoo N3Pro 0.6 nozzle", + "sub_path": "process/EN3SERIES/0.36mm Draft @Elegoo N3Pro 0.6 nozzle.json" }, { - "name": "0.12mm Fine @Elegoo Neptune4Max (0.6 nozzle)", - "sub_path": "process/EN4SERIES/0.12mm Fine @Elegoo Neptune4Max (0.6 nozzle).json" + "name": "0.42mm Extra Draft @Elegoo N3Pro 0.6 nozzle", + "sub_path": "process/EN3SERIES/0.42mm Extra Draft @Elegoo N3Pro 0.6 nozzle.json" }, { - "name": "0.12mm Fine @Elegoo Neptune4Max (0.8 nozzle)", - "sub_path": "process/EN4SERIES/0.12mm Fine @Elegoo Neptune4Max (0.8 nozzle).json" + "name": "0.24mm Optimal @Elegoo N4 0.6 nozzle", + "sub_path": "process/EN4SERIES/0.24mm Optimal @Elegoo N4 0.6 nozzle.json" }, { - "name": "0.16mm Optimal @Elegoo Neptune4Max (0.2 nozzle)", - "sub_path": "process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4Max (0.2 nozzle).json" + "name": "0.36mm Draft @Elegoo N4 0.6 nozzle", + "sub_path": "process/EN4SERIES/0.36mm Draft @Elegoo N4 0.6 nozzle.json" }, { - "name": "0.16mm Optimal @Elegoo Neptune4Max (0.4 nozzle)", - "sub_path": "process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4Max (0.4 nozzle).json" + "name": "0.42mm Extra Draft @Elegoo N4 0.6 nozzle", + "sub_path": "process/EN4SERIES/0.42mm Extra Draft @Elegoo N4 0.6 nozzle.json" }, { - "name": "0.16mm Optimal @Elegoo Neptune4Max (0.6 nozzle)", - "sub_path": "process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4Max (0.6 nozzle).json" + "name": "0.24mm Optimal @Elegoo N4Max 0.6 nozzle", + "sub_path": "process/EN4SERIES/0.24mm Optimal @Elegoo N4Max 0.6 nozzle.json" }, { - "name": "0.16mm Optimal @Elegoo Neptune4Max (0.8 nozzle)", - "sub_path": "process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4Max (0.8 nozzle).json" + "name": "0.36mm Draft @Elegoo N4Max 0.6 nozzle", + "sub_path": "process/EN4SERIES/0.36mm Draft @Elegoo N4Max 0.6 nozzle.json" }, { - "name": "0.20mm Standard @Elegoo Neptune4Max (0.2 nozzle)", - "sub_path": "process/EN4SERIES/0.20mm Standard @Elegoo Neptune4Max (0.2 nozzle).json" + "name": "0.42mm Extra Draft @Elegoo N4Max 0.6 nozzle", + "sub_path": "process/EN4SERIES/0.42mm Extra Draft @Elegoo N4Max 0.6 nozzle.json" }, { - "name": "0.20mm Standard @Elegoo Neptune4Max (0.4 nozzle)", - "sub_path": "process/EN4SERIES/0.20mm Standard @Elegoo Neptune4Max (0.4 nozzle).json" + "name": "0.24mm Optimal @Elegoo N4Plus 0.6 nozzle", + "sub_path": "process/EN4SERIES/0.24mm Optimal @Elegoo N4Plus 0.6 nozzle.json" }, { - "name": "0.20mm Standard @Elegoo Neptune4Max (0.6 nozzle)", - "sub_path": "process/EN4SERIES/0.20mm Standard @Elegoo Neptune4Max (0.6 nozzle).json" + "name": "0.36mm Draft @Elegoo N4Plus 0.6 nozzle", + "sub_path": "process/EN4SERIES/0.36mm Draft @Elegoo N4Plus 0.6 nozzle.json" }, { - "name": "0.20mm Standard @Elegoo Neptune4Max (0.8 nozzle)", - "sub_path": "process/EN4SERIES/0.20mm Standard @Elegoo Neptune4Max (0.8 nozzle).json" + "name": "0.42mm Extra Draft @Elegoo N4Plus 0.6 nozzle", + "sub_path": "process/EN4SERIES/0.42mm Extra Draft @Elegoo N4Plus 0.6 nozzle.json" }, { - "name": "0.24mm Draft @Elegoo Neptune4Max (0.2 nozzle)", - "sub_path": "process/EN4SERIES/0.24mm Draft @Elegoo Neptune4Max (0.2 nozzle).json" + "name": "0.24mm Optimal @Elegoo N4Pro 0.6 nozzle", + "sub_path": "process/EN4SERIES/0.24mm Optimal @Elegoo N4Pro 0.6 nozzle.json" }, { - "name": "0.24mm Draft @Elegoo Neptune4Max (0.4 nozzle)", - "sub_path": "process/EN4SERIES/0.24mm Draft @Elegoo Neptune4Max (0.4 nozzle).json" + "name": "0.36mm Draft @Elegoo N4Pro 0.6 nozzle", + "sub_path": "process/EN4SERIES/0.36mm Draft @Elegoo N4Pro 0.6 nozzle.json" }, { - "name": "0.24mm Draft @Elegoo Neptune4Max (0.6 nozzle)", - "sub_path": "process/EN4SERIES/0.24mm Draft @Elegoo Neptune4Max (0.6 nozzle).json" + "name": "0.42mm Extra Draft @Elegoo N4Pro 0.6 nozzle", + "sub_path": "process/EN4SERIES/0.42mm Extra Draft @Elegoo N4Pro 0.6 nozzle.json" }, { - "name": "0.24mm Draft @Elegoo Neptune4Max (0.8 nozzle)", - "sub_path": "process/EN4SERIES/0.24mm Draft @Elegoo Neptune4Max (0.8 nozzle).json" + "name": "0.24mm Fine @Elegoo N3Max 0.8 nozzle", + "sub_path": "process/EN3SERIES/0.24mm Fine @Elegoo N3Max 0.8 nozzle.json" }, { - "name": "0.28mm Extra Draft @Elegoo Neptune4Max (0.2 nozzle)", - "sub_path": "process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4Max (0.2 nozzle).json" + "name": "0.32mm Optimal @Elegoo N3Max 0.8 nozzle", + "sub_path": "process/EN3SERIES/0.32mm Optimal @Elegoo N3Max 0.8 nozzle.json" }, { - "name": "0.28mm Extra Draft @Elegoo Neptune4Max (0.4 nozzle)", - "sub_path": "process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4Max (0.4 nozzle).json" + "name": "0.48mm Draft @Elegoo N3Max 0.8 nozzle", + "sub_path": "process/EN3SERIES/0.48mm Draft @Elegoo N3Max 0.8 nozzle.json" }, { - "name": "0.28mm Extra Draft @Elegoo Neptune4Max (0.6 nozzle)", - "sub_path": "process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4Max (0.6 nozzle).json" + "name": "0.24mm Fine @Elegoo N3Plus 0.8 nozzle", + "sub_path": "process/EN3SERIES/0.24mm Fine @Elegoo N3Plus 0.8 nozzle.json" }, { - "name": "0.28mm Extra Draft @Elegoo Neptune4Max (0.8 nozzle)", - "sub_path": "process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4Max (0.8 nozzle).json" + "name": "0.32mm Optimal @Elegoo N3Plus 0.8 nozzle", + "sub_path": "process/EN3SERIES/0.32mm Optimal @Elegoo N3Plus 0.8 nozzle.json" }, { - "name": "0.08mm Optimal @Elegoo C 0.2 nozzle", - "sub_path": "process/EC/0.08mm Optimal @Elegoo C 0.2 nozzle.json" + "name": "0.48mm Draft @Elegoo N3Plus 0.8 nozzle", + "sub_path": "process/EN3SERIES/0.48mm Draft @Elegoo N3Plus 0.8 nozzle.json" }, { - "name": "0.12mm Draft @Elegoo C 0.2 nozzle", - "sub_path": "process/EC/0.12mm Draft @Elegoo C 0.2 nozzle.json" + "name": "0.24mm Fine @Elegoo N3Pro 0.8 nozzle", + "sub_path": "process/EN3SERIES/0.24mm Fine @Elegoo N3Pro 0.8 nozzle.json" }, { - "name": "0.14mm Extra Draft @Elegoo C 0.2 nozzle", - "sub_path": "process/EC/0.14mm Extra Draft @Elegoo C 0.2 nozzle.json" + "name": "0.32mm Optimal @Elegoo N3Pro 0.8 nozzle", + "sub_path": "process/EN3SERIES/0.32mm Optimal @Elegoo N3Pro 0.8 nozzle.json" }, { - "name": "0.08mm Optimal @Elegoo CC 0.2 nozzle", - "sub_path": "process/ECC/0.08mm Optimal @Elegoo CC 0.2 nozzle.json" + "name": "0.48mm Draft @Elegoo N3Pro 0.8 nozzle", + "sub_path": "process/EN3SERIES/0.48mm Draft @Elegoo N3Pro 0.8 nozzle.json" }, { - "name": "0.12mm Draft @Elegoo CC 0.2 nozzle", - "sub_path": "process/ECC/0.12mm Draft @Elegoo CC 0.2 nozzle.json" + "name": "0.24mm Fine @Elegoo N4 0.8 nozzle", + "sub_path": "process/EN4SERIES/0.24mm Fine @Elegoo N4 0.8 nozzle.json" }, { - "name": "0.14mm Extra Draft @Elegoo CC 0.2 nozzle", - "sub_path": "process/ECC/0.14mm Extra Draft @Elegoo CC 0.2 nozzle.json" + "name": "0.32mm Optimal @Elegoo N4 0.8 nozzle", + "sub_path": "process/EN4SERIES/0.32mm Optimal @Elegoo N4 0.8 nozzle.json" }, { - "name": "0.12mm Fine @Elegoo C 0.4 nozzle", - "sub_path": "process/EC/0.12mm Fine @Elegoo C 0.4 nozzle.json" + "name": "0.48mm Draft @Elegoo N4 0.8 nozzle", + "sub_path": "process/EN4SERIES/0.48mm Draft @Elegoo N4 0.8 nozzle.json" }, { - "name": "0.16mm Optimal @Elegoo C 0.4 nozzle", - "sub_path": "process/EC/0.16mm Optimal @Elegoo C 0.4 nozzle.json" + "name": "0.24mm Fine @Elegoo N4Max 0.8 nozzle", + "sub_path": "process/EN4SERIES/0.24mm Fine @Elegoo N4Max 0.8 nozzle.json" }, { - "name": "0.20mm Strength @Elegoo C 0.4 nozzle", - "sub_path": "process/EC/0.20mm Strength @Elegoo C 0.4 nozzle.json" + "name": "0.32mm Optimal @Elegoo N4Max 0.8 nozzle", + "sub_path": "process/EN4SERIES/0.32mm Optimal @Elegoo N4Max 0.8 nozzle.json" }, { - "name": "0.24mm Draft @Elegoo C 0.4 nozzle", - "sub_path": "process/EC/0.24mm Draft @Elegoo C 0.4 nozzle.json" + "name": "0.48mm Draft @Elegoo N4Max 0.8 nozzle", + "sub_path": "process/EN4SERIES/0.48mm Draft @Elegoo N4Max 0.8 nozzle.json" }, { - "name": "0.28mm Extra Draft @Elegoo C 0.4 nozzle", - "sub_path": "process/EC/0.28mm Extra Draft @Elegoo C 0.4 nozzle.json" + "name": "0.24mm Fine @Elegoo N4Plus 0.8 nozzle", + "sub_path": "process/EN4SERIES/0.24mm Fine @Elegoo N4Plus 0.8 nozzle.json" }, { - "name": "0.12mm Fine @Elegoo CC 0.4 nozzle", - "sub_path": "process/ECC/0.12mm Fine @Elegoo CC 0.4 nozzle.json" + "name": "0.32mm Optimal @Elegoo N4Plus 0.8 nozzle", + "sub_path": "process/EN4SERIES/0.32mm Optimal @Elegoo N4Plus 0.8 nozzle.json" }, { - "name": "0.16mm Optimal @Elegoo CC 0.4 nozzle", - "sub_path": "process/ECC/0.16mm Optimal @Elegoo CC 0.4 nozzle.json" + "name": "0.48mm Draft @Elegoo N4Plus 0.8 nozzle", + "sub_path": "process/EN4SERIES/0.48mm Draft @Elegoo N4Plus 0.8 nozzle.json" }, { - "name": "0.20mm Strength @Elegoo CC 0.4 nozzle", - "sub_path": "process/ECC/0.20mm Strength @Elegoo CC 0.4 nozzle.json" + "name": "0.24mm Fine @Elegoo N4Pro 0.8 nozzle", + "sub_path": "process/EN4SERIES/0.24mm Fine @Elegoo N4Pro 0.8 nozzle.json" }, { - "name": "0.24mm Draft @Elegoo CC 0.4 nozzle", - "sub_path": "process/ECC/0.24mm Draft @Elegoo CC 0.4 nozzle.json" + "name": "0.32mm Optimal @Elegoo N4Pro 0.8 nozzle", + "sub_path": "process/EN4SERIES/0.32mm Optimal @Elegoo N4Pro 0.8 nozzle.json" }, { - "name": "0.28mm Extra Draft @Elegoo CC 0.4 nozzle", - "sub_path": "process/ECC/0.28mm Extra Draft @Elegoo CC 0.4 nozzle.json" + "name": "0.48mm Draft @Elegoo N4Pro 0.8 nozzle", + "sub_path": "process/EN4SERIES/0.48mm Draft @Elegoo N4Pro 0.8 nozzle.json" }, { - "name": "0.18mm Fine @Elegoo C 0.6 nozzle", - "sub_path": "process/EC/0.18mm Fine @Elegoo C 0.6 nozzle.json" + "name": "0.30mm Fine @Elegoo N3Max 1.0 nozzle", + "sub_path": "process/EN3SERIES/0.30mm Fine @Elegoo N3Max 1.0 nozzle.json" }, { - "name": "0.24mm Optimal @Elegoo C 0.6 nozzle", - "sub_path": "process/EC/0.24mm Optimal @Elegoo C 0.6 nozzle.json" + "name": "0.40mm Optimal @Elegoo N3Max 1.0 nozzle", + "sub_path": "process/EN3SERIES/0.40mm Optimal @Elegoo N3Max 1.0 nozzle.json" }, { - "name": "0.30mm Strength @Elegoo C 0.6 nozzle", - "sub_path": "process/EC/0.30mm Strength @Elegoo C 0.6 nozzle.json" + "name": "0.60mm Draft @Elegoo N3Max 1.0 nozzle", + "sub_path": "process/EN3SERIES/0.60mm Draft @Elegoo N3Max 1.0 nozzle.json" }, { - "name": "0.36mm Draft @Elegoo C 0.6 nozzle", - "sub_path": "process/EC/0.36mm Draft @Elegoo C 0.6 nozzle.json" + "name": "0.30mm Fine @Elegoo N3Plus 1.0 nozzle", + "sub_path": "process/EN3SERIES/0.30mm Fine @Elegoo N3Plus 1.0 nozzle.json" }, { - "name": "0.42mm Extra Draft @Elegoo C 0.6 nozzle", - "sub_path": "process/EC/0.42mm Extra Draft @Elegoo C 0.6 nozzle.json" + "name": "0.40mm Optimal @Elegoo N3Plus 1.0 nozzle", + "sub_path": "process/EN3SERIES/0.40mm Optimal @Elegoo N3Plus 1.0 nozzle.json" }, { - "name": "0.18mm Fine @Elegoo CC 0.6 nozzle", - "sub_path": "process/ECC/0.18mm Fine @Elegoo CC 0.6 nozzle.json" + "name": "0.60mm Draft @Elegoo N3Plus 1.0 nozzle", + "sub_path": "process/EN3SERIES/0.60mm Draft @Elegoo N3Plus 1.0 nozzle.json" }, { - "name": "0.24mm Optimal @Elegoo CC 0.6 nozzle", - "sub_path": "process/ECC/0.24mm Optimal @Elegoo CC 0.6 nozzle.json" + "name": "0.30mm Fine @Elegoo N3Pro 1.0 nozzle", + "sub_path": "process/EN3SERIES/0.30mm Fine @Elegoo N3Pro 1.0 nozzle.json" }, { - "name": "0.30mm Strength @Elegoo CC 0.6 nozzle", - "sub_path": "process/ECC/0.30mm Strength @Elegoo CC 0.6 nozzle.json" + "name": "0.40mm Optimal @Elegoo N3Pro 1.0 nozzle", + "sub_path": "process/EN3SERIES/0.40mm Optimal @Elegoo N3Pro 1.0 nozzle.json" }, { - "name": "0.36mm Draft @Elegoo CC 0.6 nozzle", - "sub_path": "process/ECC/0.36mm Draft @Elegoo CC 0.6 nozzle.json" + "name": "0.60mm Draft @Elegoo N3Pro 1.0 nozzle", + "sub_path": "process/EN3SERIES/0.60mm Draft @Elegoo N3Pro 1.0 nozzle.json" }, { - "name": "0.42mm Extra Draft @Elegoo CC 0.6 nozzle", - "sub_path": "process/ECC/0.42mm Extra Draft @Elegoo CC 0.6 nozzle.json" + "name": "0.30mm Fine @Elegoo N4 1.0 nozzle", + "sub_path": "process/EN4SERIES/0.30mm Fine @Elegoo N4 1.0 nozzle.json" }, { - "name": "0.16mm Extra Fine @Elegoo C 0.8 nozzle", - "sub_path": "process/EC/0.16mm Extra Fine @Elegoo C 0.8 nozzle.json" + "name": "0.40mm Optimal @Elegoo N4 1.0 nozzle", + "sub_path": "process/EN4SERIES/0.40mm Optimal @Elegoo N4 1.0 nozzle.json" }, { - "name": "0.24mm Fine @Elegoo C 0.8 nozzle", - "sub_path": "process/EC/0.24mm Fine @Elegoo C 0.8 nozzle.json" + "name": "0.60mm Draft @Elegoo N4 1.0 nozzle", + "sub_path": "process/EN4SERIES/0.60mm Draft @Elegoo N4 1.0 nozzle.json" }, { - "name": "0.32mm Optimal @Elegoo C 0.8 nozzle", - "sub_path": "process/EC/0.32mm Optimal @Elegoo C 0.8 nozzle.json" + "name": "0.30mm Fine @Elegoo N4Max 1.0 nozzle", + "sub_path": "process/EN4SERIES/0.30mm Fine @Elegoo N4Max 1.0 nozzle.json" }, { - "name": "0.48mm Draft @Elegoo C 0.8 nozzle", - "sub_path": "process/EC/0.48mm Draft @Elegoo C 0.8 nozzle.json" + "name": "0.40mm Optimal @Elegoo N4Max 1.0 nozzle", + "sub_path": "process/EN4SERIES/0.40mm Optimal @Elegoo N4Max 1.0 nozzle.json" }, { - "name": "0.16mm Extra Fine @Elegoo CC 0.8 nozzle", - "sub_path": "process/ECC/0.16mm Extra Fine @Elegoo CC 0.8 nozzle.json" + "name": "0.60mm Draft @Elegoo N4Max 1.0 nozzle", + "sub_path": "process/EN4SERIES/0.60mm Draft @Elegoo N4Max 1.0 nozzle.json" }, { - "name": "0.24mm Fine @Elegoo CC 0.8 nozzle", - "sub_path": "process/ECC/0.24mm Fine @Elegoo CC 0.8 nozzle.json" + "name": "0.30mm Fine @Elegoo N4Plus 1.0 nozzle", + "sub_path": "process/EN4SERIES/0.30mm Fine @Elegoo N4Plus 1.0 nozzle.json" }, { - "name": "0.32mm Optimal @Elegoo CC 0.8 nozzle", - "sub_path": "process/ECC/0.32mm Optimal @Elegoo CC 0.8 nozzle.json" + "name": "0.40mm Optimal @Elegoo N4Plus 1.0 nozzle", + "sub_path": "process/EN4SERIES/0.40mm Optimal @Elegoo N4Plus 1.0 nozzle.json" }, { - "name": "0.48mm Draft @Elegoo CC 0.8 nozzle", - "sub_path": "process/ECC/0.48mm Draft @Elegoo CC 0.8 nozzle.json" + "name": "0.60mm Draft @Elegoo N4Plus 1.0 nozzle", + "sub_path": "process/EN4SERIES/0.60mm Draft @Elegoo N4Plus 1.0 nozzle.json" + }, + { + "name": "0.30mm Fine @Elegoo N4Pro 1.0 nozzle", + "sub_path": "process/EN4SERIES/0.30mm Fine @Elegoo N4Pro 1.0 nozzle.json" + }, + { + "name": "0.40mm Optimal @Elegoo N4Pro 1.0 nozzle", + "sub_path": "process/EN4SERIES/0.40mm Optimal @Elegoo N4Pro 1.0 nozzle.json" + }, + { + "name": "0.60mm Draft @Elegoo N4Pro 1.0 nozzle", + "sub_path": "process/EN4SERIES/0.60mm Draft @Elegoo N4Pro 1.0 nozzle.json" } ], "filament_list": [ - { - "name": "fdm_elegoo_filament_common", - "sub_path": "filament/ELEGOO/fdm_elegoo_filament_common.json" - }, { "name": "fdm_filament_common", "sub_path": "filament/fdm_filament_common.json" }, - { - "name": "fdm_elegoo_filament_asa", - "sub_path": "filament/ELEGOO/fdm_elegoo_filament_asa.json" - }, - { - "name": "fdm_elegoo_filament_pet", - "sub_path": "filament/ELEGOO/fdm_elegoo_filament_pet.json" - }, - { - "name": "fdm_elegoo_filament_pla", - "sub_path": "filament/ELEGOO/fdm_elegoo_filament_pla.json" - }, - { - "name": "fdm_elegoo_filament_tpu", - "sub_path": "filament/ELEGOO/fdm_elegoo_filament_tpu.json" - }, { "name": "fdm_filament_abs", "sub_path": "filament/fdm_filament_abs.json" @@ -1100,10 +636,22 @@ "name": "fdm_filament_asa", "sub_path": "filament/fdm_filament_asa.json" }, + { + "name": "fdm_filament_hips", + "sub_path": "filament/fdm_filament_hips.json" + }, + { + "name": "fdm_filament_pa", + "sub_path": "filament/fdm_filament_pa.json" + }, { "name": "fdm_filament_paht", "sub_path": "filament/fdm_filament_paht.json" }, + { + "name": "fdm_filament_pc", + "sub_path": "filament/fdm_filament_pc.json" + }, { "name": "fdm_filament_pet", "sub_path": "filament/fdm_filament_pet.json" @@ -1113,60 +661,108 @@ "sub_path": "filament/fdm_filament_pla.json" }, { - "name": "Generic ABS @Elegoo", - "sub_path": "filament/Generic/Generic ABS @Elegoo.json" + "name": "fdm_filament_ppa", + "sub_path": "filament/fdm_filament_ppa.json" }, { - "name": "Generic ASA @Elegoo", - "sub_path": "filament/Generic/Generic ASA @Elegoo.json" + "name": "fdm_filament_pps", + "sub_path": "filament/fdm_filament_pps.json" }, { - "name": "Generic PETG @Elegoo", - "sub_path": "filament/Generic/Generic PETG @Elegoo.json" + "name": "fdm_filament_pva", + "sub_path": "filament/fdm_filament_pva.json" }, { - "name": "Generic PETG PRO @Elegoo", - "sub_path": "filament/Generic/Generic PETG PRO @Elegoo.json" + "name": "fdm_filament_tpu", + "sub_path": "filament/fdm_filament_tpu.json" }, { - "name": "Generic PLA @Elegoo", - "sub_path": "filament/Generic/Generic PLA @Elegoo.json" + "name": "Elegoo ABS @base", + "sub_path": "filament/BASE/Elegoo ABS @base.json" }, { - "name": "Generic PLA Matte @Elegoo", - "sub_path": "filament/Generic/Generic PLA Matte @Elegoo.json" + "name": "Generic ABS @base", + "sub_path": "filament/BASE/Generic ABS @base.json" }, { - "name": "Elegoo ASA @Elegoo Giga", - "sub_path": "filament/EOSGIGA/Elegoo ASA @Elegoo Giga.json" + "name": "Elegoo ASA @base", + "sub_path": "filament/BASE/Elegoo ASA @base.json" }, { - "name": "Elegoo PETG PRO @Elegoo Giga", - "sub_path": "filament/EOSGIGA/Elegoo PETG PRO @Elegoo Giga.json" + "name": "Generic ASA @base", + "sub_path": "filament/BASE/Generic ASA @base.json" }, { - "name": "Elegoo PLA @Elegoo Giga", - "sub_path": "filament/EOSGIGA/Elegoo PLA @Elegoo Giga.json" + "name": "Elegoo PAHT @base", + "sub_path": "filament/BASE/Elegoo PAHT @base.json" }, { - "name": "Elegoo PLA Matte @Elegoo Giga", - "sub_path": "filament/EOSGIGA/Elegoo PLA Matte @Elegoo Giga.json" + "name": "Generic PA @base", + "sub_path": "filament/BASE/Generic PA @base.json" + }, + { + "name": "Elegoo PC @base", + "sub_path": "filament/BASE/Elegoo PC @base.json" + }, + { + "name": "Generic PC @base", + "sub_path": "filament/BASE/Generic PC @base.json" + }, + { + "name": "Elegoo PETG @base", + "sub_path": "filament/BASE/Elegoo PETG @base.json" + }, + { + "name": "Generic PET @base", + "sub_path": "filament/BASE/Generic PET @base.json" + }, + { + "name": "Generic PETG @base", + "sub_path": "filament/BASE/Generic PETG @base.json" + }, + { + "name": "Elegoo PLA @base", + "sub_path": "filament/BASE/Elegoo PLA @base.json" + }, + { + "name": "Generic PLA @base", + "sub_path": "filament/BASE/Generic PLA @base.json" + }, + { + "name": "Elegoo TPU @base", + "sub_path": "filament/BASE/Elegoo TPU @base.json" }, { "name": "Elegoo ABS @0.2 nozzle", - "sub_path": "filament/ELEGOO/Elegoo ABS @0.2 nozzle.json" + "sub_path": "filament/ELEGOO_02_NOZZLE/Elegoo ABS @0.2 nozzle.json" + }, + { + "name": "Elegoo ABS @EC", + "sub_path": "filament/EC/Elegoo ABS @EC.json" + }, + { + "name": "Elegoo ABS @ECC", + "sub_path": "filament/ECC/Elegoo ABS @ECC.json" }, { "name": "Elegoo ABS @ECC2", "sub_path": "filament/ECC2/Elegoo ABS @ECC2.json" }, { - "name": "Elegoo ASA", - "sub_path": "filament/ELEGOO/Elegoo ASA.json" + "name": "Generic ABS @Elegoo", + "sub_path": "filament/Generic/Generic ABS @Elegoo.json" + }, + { + "name": "Generic ABS @Elegoo Centauri", + "sub_path": "filament/Generic/Generic ABS @Elegoo Centauri.json" + }, + { + "name": "Generic ABS-CF @Elegoo Centauri", + "sub_path": "filament/Generic/Generic ABS-CF @Elegoo Centauri.json" }, { "name": "Elegoo ASA @0.2 nozzle", - "sub_path": "filament/ELEGOO/Elegoo ASA @0.2 nozzle.json" + "sub_path": "filament/ELEGOO_02_NOZZLE/Elegoo ASA @0.2 nozzle.json" }, { "name": "Elegoo ASA @EC", @@ -1180,13 +776,65 @@ "name": "Elegoo ASA @ECC2", "sub_path": "filament/ECC2/Elegoo ASA @ECC2.json" }, + { + "name": "Elegoo ASA @EN2 Series", + "sub_path": "filament/EN2SERIES/Elegoo ASA @EN2 Series.json" + }, + { + "name": "Elegoo ASA @EN3 Series", + "sub_path": "filament/EN3SERIES/Elegoo ASA @EN3 Series.json" + }, + { + "name": "Elegoo ASA @EN4 Series", + "sub_path": "filament/EN4SERIES/Elegoo ASA @EN4 Series.json" + }, + { + "name": "Elegoo ASA @Elegoo Giga", + "sub_path": "filament/EOSGIGA/Elegoo ASA @Elegoo Giga.json" + }, + { + "name": "Elegoo ASA-CF @ECC2", + "sub_path": "filament/ECC2/Elegoo ASA-CF @ECC2.json" + }, + { + "name": "Generic ASA @Elegoo", + "sub_path": "filament/Generic/Generic ASA @Elegoo.json" + }, + { + "name": "Generic ASA-CF @Elegoo Centauri", + "sub_path": "filament/Generic/Generic ASA-CF @Elegoo Centauri.json" + }, + { + "name": "Elegoo PAHT-CF @EC", + "sub_path": "filament/EC/Elegoo PAHT-CF @EC.json" + }, + { + "name": "Elegoo PAHT-CF @ECC", + "sub_path": "filament/ECC/Elegoo PAHT-CF @ECC.json" + }, { "name": "Elegoo PAHT-CF @ECC2", "sub_path": "filament/ECC2/Elegoo PAHT-CF @ECC2.json" }, + { + "name": "Generic PA @Elegoo", + "sub_path": "filament/Generic/Generic PA @Elegoo.json" + }, + { + "name": "Generic PA6-CF @Elegoo", + "sub_path": "filament/Generic/Generic PA6-CF @Elegoo.json" + }, { "name": "Elegoo PC @0.2 nozzle", - "sub_path": "filament/ELEGOO/Elegoo PC @0.2 nozzle.json" + "sub_path": "filament/ELEGOO_02_NOZZLE/Elegoo PC @0.2 nozzle.json" + }, + { + "name": "Elegoo PC @EC", + "sub_path": "filament/EC/Elegoo PC @EC.json" + }, + { + "name": "Elegoo PC @ECC", + "sub_path": "filament/ECC/Elegoo PC @ECC.json" }, { "name": "Elegoo PC @ECC2", @@ -1194,27 +842,71 @@ }, { "name": "Elegoo PC-FR @0.2 nozzle", - "sub_path": "filament/ELEGOO/Elegoo PC-FR @0.2 nozzle.json" + "sub_path": "filament/ELEGOO_02_NOZZLE/Elegoo PC-FR @0.2 nozzle.json" + }, + { + "name": "Elegoo PC-FR @EC", + "sub_path": "filament/EC/Elegoo PC-FR @EC.json" + }, + { + "name": "Elegoo PC-FR @ECC", + "sub_path": "filament/ECC/Elegoo PC-FR @ECC.json" }, { "name": "Elegoo PC-FR @ECC2", "sub_path": "filament/ECC2/Elegoo PC-FR @ECC2.json" }, + { + "name": "Generic PC @Elegoo", + "sub_path": "filament/Generic/Generic PC @Elegoo.json" + }, + { + "name": "Generic PC-CF @Elegoo", + "sub_path": "filament/Generic/Generic PC-CF @Elegoo.json" + }, + { + "name": "Elegoo PET-CF @ECC2", + "sub_path": "filament/ECC2/Elegoo PET-CF @ECC2.json" + }, { "name": "Elegoo PETG @0.2 nozzle", - "sub_path": "filament/ELEGOO/Elegoo PETG @0.2 nozzle.json" + "sub_path": "filament/ELEGOO_02_NOZZLE/Elegoo PETG @0.2 nozzle.json" + }, + { + "name": "Elegoo PETG @EC", + "sub_path": "filament/EC/Elegoo PETG @EC.json" + }, + { + "name": "Elegoo PETG @ECC", + "sub_path": "filament/ECC/Elegoo PETG @ECC.json" }, { "name": "Elegoo PETG @ECC2", "sub_path": "filament/ECC2/Elegoo PETG @ECC2.json" }, { - "name": "Elegoo PETG PRO", - "sub_path": "filament/ELEGOO/Elegoo PETG PRO.json" + "name": "Elegoo PETG @EN2 Series", + "sub_path": "filament/EN2SERIES/Elegoo PETG @EN2 Series.json" + }, + { + "name": "Elegoo PETG @EN3 Series", + "sub_path": "filament/EN3SERIES/Elegoo PETG @EN3 Series.json" + }, + { + "name": "Elegoo PETG @EN4 Series", + "sub_path": "filament/EN4SERIES/Elegoo PETG @EN4 Series.json" + }, + { + "name": "Elegoo PETG @Elegoo Giga", + "sub_path": "filament/EOSGIGA/Elegoo PETG @Elegoo Giga.json" + }, + { + "name": "Elegoo PETG HF @ECC2", + "sub_path": "filament/ECC2/Elegoo PETG HF @ECC2.json" }, { "name": "Elegoo PETG PRO @0.2 nozzle", - "sub_path": "filament/ELEGOO/Elegoo PETG PRO @0.2 nozzle.json" + "sub_path": "filament/ELEGOO_02_NOZZLE/Elegoo PETG PRO @0.2 nozzle.json" }, { "name": "Elegoo PETG PRO @EC", @@ -1228,165 +920,113 @@ "name": "Elegoo PETG PRO @ECC2", "sub_path": "filament/ECC2/Elegoo PETG PRO @ECC2.json" }, + { + "name": "Elegoo PETG PRO @EN2 Series", + "sub_path": "filament/EN2SERIES/Elegoo PETG PRO @EN2 Series.json" + }, + { + "name": "Elegoo PETG PRO @EN3 Series", + "sub_path": "filament/EN3SERIES/Elegoo PETG PRO @EN3 Series.json" + }, + { + "name": "Elegoo PETG PRO @EN4 Series", + "sub_path": "filament/EN4SERIES/Elegoo PETG PRO @EN4 Series.json" + }, + { + "name": "Elegoo PETG PRO @Elegoo Giga", + "sub_path": "filament/EOSGIGA/Elegoo PETG PRO @Elegoo Giga.json" + }, { "name": "Elegoo PETG Translucent @0.2 nozzle", - "sub_path": "filament/ELEGOO/Elegoo PETG Translucent @0.2 nozzle.json" + "sub_path": "filament/ELEGOO_02_NOZZLE/Elegoo PETG Translucent @0.2 nozzle.json" + }, + { + "name": "Elegoo PETG Translucent @EC", + "sub_path": "filament/EC/Elegoo PETG Translucent @EC.json" + }, + { + "name": "Elegoo PETG Translucent @ECC", + "sub_path": "filament/ECC/Elegoo PETG Translucent @ECC.json" }, { "name": "Elegoo PETG Translucent @ECC2", "sub_path": "filament/ECC2/Elegoo PETG Translucent @ECC2.json" }, + { + "name": "Elegoo PETG Translucent @EN2 Series", + "sub_path": "filament/EN2SERIES/Elegoo PETG Translucent @EN2 Series.json" + }, + { + "name": "Elegoo PETG Translucent @EN3 Series", + "sub_path": "filament/EN3SERIES/Elegoo PETG Translucent @EN3 Series.json" + }, + { + "name": "Elegoo PETG Translucent @EN4 Series", + "sub_path": "filament/EN4SERIES/Elegoo PETG Translucent @EN4 Series.json" + }, + { + "name": "Elegoo PETG Translucent @Elegoo Giga", + "sub_path": "filament/EOSGIGA/Elegoo PETG Translucent @Elegoo Giga.json" + }, + { + "name": "Elegoo PETG-CF @EC", + "sub_path": "filament/EC/Elegoo PETG-CF @EC.json" + }, + { + "name": "Elegoo PETG-CF @ECC", + "sub_path": "filament/ECC/Elegoo PETG-CF @ECC.json" + }, { "name": "Elegoo PETG-CF @ECC2", "sub_path": "filament/ECC2/Elegoo PETG-CF @ECC2.json" }, + { + "name": "Elegoo PETG-CF @EN2 Series", + "sub_path": "filament/EN2SERIES/Elegoo PETG-CF @EN2 Series.json" + }, + { + "name": "Elegoo PETG-CF @EN3 Series", + "sub_path": "filament/EN3SERIES/Elegoo PETG-CF @EN3 Series.json" + }, + { + "name": "Elegoo PETG-CF @EN4 Series", + "sub_path": "filament/EN4SERIES/Elegoo PETG-CF @EN4 Series.json" + }, + { + "name": "Elegoo PETG-CF @Elegoo Giga", + "sub_path": "filament/EOSGIGA/Elegoo PETG-CF @Elegoo Giga.json" + }, + { + "name": "Elegoo PETG-GF @EC", + "sub_path": "filament/EC/Elegoo PETG-GF @EC.json" + }, + { + "name": "Elegoo PETG-GF @ECC", + "sub_path": "filament/ECC/Elegoo PETG-GF @ECC.json" + }, { "name": "Elegoo PETG-GF @ECC2", "sub_path": "filament/ECC2/Elegoo PETG-GF @ECC2.json" }, { - "name": "Elegoo PLA", - "sub_path": "filament/ELEGOO/Elegoo PLA.json" + "name": "Elegoo PETG-GF @EN2 Series", + "sub_path": "filament/EN2SERIES/Elegoo PETG-GF @EN2 Series.json" }, { - "name": "Elegoo PLA @0.2 nozzle", - "sub_path": "filament/ELEGOO/Elegoo PLA @0.2 nozzle.json" + "name": "Elegoo PETG-GF @EN3 Series", + "sub_path": "filament/EN3SERIES/Elegoo PETG-GF @EN3 Series.json" }, { - "name": "Elegoo PLA @EC", - "sub_path": "filament/EC/Elegoo PLA @EC.json" + "name": "Elegoo PETG-GF @EN4 Series", + "sub_path": "filament/EN4SERIES/Elegoo PETG-GF @EN4 Series.json" }, { - "name": "Elegoo PLA @ECC", - "sub_path": "filament/ECC/Elegoo PLA @ECC.json" - }, - { - "name": "Elegoo PLA @ECC2", - "sub_path": "filament/ECC2/Elegoo PLA @ECC2.json" - }, - { - "name": "Elegoo PLA Basic @0.2 nozzle", - "sub_path": "filament/ELEGOO/Elegoo PLA Basic @0.2 nozzle.json" - }, - { - "name": "Elegoo PLA Basic @ECC2", - "sub_path": "filament/ECC2/Elegoo PLA Basic @ECC2.json" - }, - { - "name": "Elegoo PLA Galaxy @ECC2", - "sub_path": "filament/ECC2/Elegoo PLA Galaxy @ECC2.json" - }, - { - "name": "Elegoo PLA Marble @ECC2", - "sub_path": "filament/ECC2/Elegoo PLA Marble @ECC2.json" - }, - { - "name": "Elegoo PLA Matte", - "sub_path": "filament/ELEGOO/Elegoo PLA Matte.json" - }, - { - "name": "Elegoo PLA Matte @0.2 nozzle", - "sub_path": "filament/ELEGOO/Elegoo PLA Matte @0.2 nozzle.json" - }, - { - "name": "Elegoo PLA Matte @EC", - "sub_path": "filament/EC/Elegoo PLA Matte @EC.json" - }, - { - "name": "Elegoo PLA Matte @ECC", - "sub_path": "filament/ECC/Elegoo PLA Matte @ECC.json" - }, - { - "name": "Elegoo PLA Matte @ECC2", - "sub_path": "filament/ECC2/Elegoo PLA Matte @ECC2.json" - }, - { - "name": "Elegoo PLA PRO", - "sub_path": "filament/ELEGOO/Elegoo PLA PRO.json" - }, - { - "name": "Elegoo PLA PRO @0.2 nozzle", - "sub_path": "filament/ELEGOO/Elegoo PLA PRO @0.2 nozzle.json" - }, - { - "name": "Elegoo PLA PRO @EC", - "sub_path": "filament/EC/Elegoo PLA PRO @EC.json" - }, - { - "name": "Elegoo PLA PRO @ECC", - "sub_path": "filament/ECC/Elegoo PLA PRO @ECC.json" - }, - { - "name": "Elegoo PLA PRO @ECC2", - "sub_path": "filament/ECC2/Elegoo PLA PRO @ECC2.json" - }, - { - "name": "Elegoo PLA Silk", - "sub_path": "filament/ELEGOO/Elegoo PLA Silk.json" - }, - { - "name": "Elegoo PLA Silk @0.2 nozzle", - "sub_path": "filament/ELEGOO/Elegoo PLA Silk @0.2 nozzle.json" - }, - { - "name": "Elegoo PLA Silk @EC", - "sub_path": "filament/EC/Elegoo PLA Silk @EC.json" - }, - { - "name": "Elegoo PLA Silk @ECC", - "sub_path": "filament/ECC/Elegoo PLA Silk @ECC.json" - }, - { - "name": "Elegoo PLA Silk @ECC2", - "sub_path": "filament/ECC2/Elegoo PLA Silk @ECC2.json" - }, - { - "name": "Elegoo PLA Sparkle @ECC2", - "sub_path": "filament/ECC2/Elegoo PLA Sparkle @ECC2.json" - }, - { - "name": "Elegoo PLA Wood @ECC2", - "sub_path": "filament/ECC2/Elegoo PLA Wood @ECC2.json" - }, - { - "name": "Elegoo PLA+", - "sub_path": "filament/ELEGOO/Elegoo PLA+.json" - }, - { - "name": "Elegoo PLA+ @0.2 nozzle", - "sub_path": "filament/ELEGOO/Elegoo PLA+ @0.2 nozzle.json" - }, - { - "name": "Elegoo PLA+ @EC", - "sub_path": "filament/EC/Elegoo PLA+ @EC.json" - }, - { - "name": "Elegoo PLA+ @ECC", - "sub_path": "filament/ECC/Elegoo PLA+ @ECC.json" - }, - { - "name": "Elegoo PLA+ @ECC2", - "sub_path": "filament/ECC2/Elegoo PLA+ @ECC2.json" - }, - { - "name": "Elegoo PLA-CF", - "sub_path": "filament/ELEGOO/Elegoo PLA-CF.json" - }, - { - "name": "Elegoo PLA-CF @ECC", - "sub_path": "filament/ECC/Elegoo PLA-CF @ECC.json" - }, - { - "name": "Elegoo PLA-CF @ECC2", - "sub_path": "filament/ECC2/Elegoo PLA-CF @ECC2.json" - }, - { - "name": "Elegoo Rapid PETG", - "sub_path": "filament/ELEGOO/Elegoo Rapid PETG.json" + "name": "Elegoo PETG-GF @Elegoo Giga", + "sub_path": "filament/EOSGIGA/Elegoo PETG-GF @Elegoo Giga.json" }, { "name": "Elegoo Rapid PETG @0.2 nozzle", - "sub_path": "filament/ELEGOO/Elegoo Rapid PETG @0.2 nozzle.json" + "sub_path": "filament/ELEGOO_02_NOZZLE/Elegoo Rapid PETG @0.2 nozzle.json" }, { "name": "Elegoo Rapid PETG @EC", @@ -1401,16 +1041,364 @@ "sub_path": "filament/ECC2/Elegoo Rapid PETG @ECC2.json" }, { - "name": "Elegoo Rapid PETG+", - "sub_path": "filament/ELEGOO/Elegoo Rapid PETG+.json" + "name": "Elegoo Rapid PETG @EN2 Series", + "sub_path": "filament/EN2SERIES/Elegoo Rapid PETG @EN2 Series.json" }, { - "name": "Elegoo Rapid PLA+", - "sub_path": "filament/ELEGOO/Elegoo Rapid PLA+.json" + "name": "Elegoo Rapid PETG @EN3 Series", + "sub_path": "filament/EN3SERIES/Elegoo Rapid PETG @EN3 Series.json" + }, + { + "name": "Elegoo Rapid PETG @EN4 Series", + "sub_path": "filament/EN4SERIES/Elegoo Rapid PETG @EN4 Series.json" + }, + { + "name": "Elegoo Rapid PETG @Elegoo Giga", + "sub_path": "filament/EOSGIGA/Elegoo Rapid PETG @Elegoo Giga.json" + }, + { + "name": "Generic PET @Elegoo Centauri", + "sub_path": "filament/Generic/Generic PET @Elegoo Centauri.json" + }, + { + "name": "Generic PET-CF @Elegoo Centauri", + "sub_path": "filament/Generic/Generic PET-CF @Elegoo Centauri.json" + }, + { + "name": "Generic PETG @Elegoo", + "sub_path": "filament/Generic/Generic PETG @Elegoo.json" + }, + { + "name": "Generic PETG PRO @Elegoo", + "sub_path": "filament/Generic/Generic PETG PRO @Elegoo.json" + }, + { + "name": "Generic PETG-CF @Elegoo Centauri", + "sub_path": "filament/Generic/Generic PETG-CF @Elegoo Centauri.json" + }, + { + "name": "Elegoo PLA @0.2 nozzle", + "sub_path": "filament/ELEGOO_02_NOZZLE/Elegoo PLA @0.2 nozzle.json" + }, + { + "name": "Elegoo PLA @EC", + "sub_path": "filament/EC/Elegoo PLA @EC.json" + }, + { + "name": "Elegoo PLA @ECC", + "sub_path": "filament/ECC/Elegoo PLA @ECC.json" + }, + { + "name": "Elegoo PLA @ECC2", + "sub_path": "filament/ECC2/Elegoo PLA @ECC2.json" + }, + { + "name": "Elegoo PLA @EN2 Series", + "sub_path": "filament/EN2SERIES/Elegoo PLA @EN2 Series.json" + }, + { + "name": "Elegoo PLA @EN3 Series", + "sub_path": "filament/EN3SERIES/Elegoo PLA @EN3 Series.json" + }, + { + "name": "Elegoo PLA @EN4 Series", + "sub_path": "filament/EN4SERIES/Elegoo PLA @EN4 Series.json" + }, + { + "name": "Elegoo PLA @Elegoo Giga", + "sub_path": "filament/EOSGIGA/Elegoo PLA @Elegoo Giga.json" + }, + { + "name": "Elegoo PLA Basic @0.2 nozzle", + "sub_path": "filament/ELEGOO_02_NOZZLE/Elegoo PLA Basic @0.2 nozzle.json" + }, + { + "name": "Elegoo PLA Basic @EC", + "sub_path": "filament/EC/Elegoo PLA Basic @EC.json" + }, + { + "name": "Elegoo PLA Basic @ECC", + "sub_path": "filament/ECC/Elegoo PLA Basic @ECC.json" + }, + { + "name": "Elegoo PLA Basic @ECC2", + "sub_path": "filament/ECC2/Elegoo PLA Basic @ECC2.json" + }, + { + "name": "Elegoo PLA Basic @EN2 Series", + "sub_path": "filament/EN2SERIES/Elegoo PLA Basic @EN2 Series.json" + }, + { + "name": "Elegoo PLA Basic @EN3 Series", + "sub_path": "filament/EN3SERIES/Elegoo PLA Basic @EN3 Series.json" + }, + { + "name": "Elegoo PLA Basic @EN4 Series", + "sub_path": "filament/EN4SERIES/Elegoo PLA Basic @EN4 Series.json" + }, + { + "name": "Elegoo PLA Basic @Elegoo Giga", + "sub_path": "filament/EOSGIGA/Elegoo PLA Basic @Elegoo Giga.json" + }, + { + "name": "Elegoo PLA Galaxy @EC", + "sub_path": "filament/EC/Elegoo PLA Galaxy @EC.json" + }, + { + "name": "Elegoo PLA Galaxy @ECC", + "sub_path": "filament/ECC/Elegoo PLA Galaxy @ECC.json" + }, + { + "name": "Elegoo PLA Galaxy @ECC2", + "sub_path": "filament/ECC2/Elegoo PLA Galaxy @ECC2.json" + }, + { + "name": "Elegoo PLA Galaxy @EN2 Series", + "sub_path": "filament/EN2SERIES/Elegoo PLA Galaxy @EN2 Series.json" + }, + { + "name": "Elegoo PLA Galaxy @EN3 Series", + "sub_path": "filament/EN3SERIES/Elegoo PLA Galaxy @EN3 Series.json" + }, + { + "name": "Elegoo PLA Galaxy @EN4 Series", + "sub_path": "filament/EN4SERIES/Elegoo PLA Galaxy @EN4 Series.json" + }, + { + "name": "Elegoo PLA Galaxy @Elegoo Giga", + "sub_path": "filament/EOSGIGA/Elegoo PLA Galaxy @Elegoo Giga.json" + }, + { + "name": "Elegoo PLA Glow @ECC2", + "sub_path": "filament/ECC2/Elegoo PLA Glow @ECC2.json" + }, + { + "name": "Elegoo PLA Marble @EC", + "sub_path": "filament/EC/Elegoo PLA Marble @EC.json" + }, + { + "name": "Elegoo PLA Marble @ECC", + "sub_path": "filament/ECC/Elegoo PLA Marble @ECC.json" + }, + { + "name": "Elegoo PLA Marble @ECC2", + "sub_path": "filament/ECC2/Elegoo PLA Marble @ECC2.json" + }, + { + "name": "Elegoo PLA Marble @EN2 Series", + "sub_path": "filament/EN2SERIES/Elegoo PLA Marble @EN2 Series.json" + }, + { + "name": "Elegoo PLA Marble @EN3 Series", + "sub_path": "filament/EN3SERIES/Elegoo PLA Marble @EN3 Series.json" + }, + { + "name": "Elegoo PLA Marble @EN4 Series", + "sub_path": "filament/EN4SERIES/Elegoo PLA Marble @EN4 Series.json" + }, + { + "name": "Elegoo PLA Marble @Elegoo Giga", + "sub_path": "filament/EOSGIGA/Elegoo PLA Marble @Elegoo Giga.json" + }, + { + "name": "Elegoo PLA Matte @0.2 nozzle", + "sub_path": "filament/ELEGOO_02_NOZZLE/Elegoo PLA Matte @0.2 nozzle.json" + }, + { + "name": "Elegoo PLA Matte @EC", + "sub_path": "filament/EC/Elegoo PLA Matte @EC.json" + }, + { + "name": "Elegoo PLA Matte @ECC", + "sub_path": "filament/ECC/Elegoo PLA Matte @ECC.json" + }, + { + "name": "Elegoo PLA Matte @ECC2", + "sub_path": "filament/ECC2/Elegoo PLA Matte @ECC2.json" + }, + { + "name": "Elegoo PLA Matte @EN2 Series", + "sub_path": "filament/EN2SERIES/Elegoo PLA Matte @EN2 Series.json" + }, + { + "name": "Elegoo PLA Matte @EN3 Series", + "sub_path": "filament/EN3SERIES/Elegoo PLA Matte @EN3 Series.json" + }, + { + "name": "Elegoo PLA Matte @EN4 Series", + "sub_path": "filament/EN4SERIES/Elegoo PLA Matte @EN4 Series.json" + }, + { + "name": "Elegoo PLA Matte @Elegoo Giga", + "sub_path": "filament/EOSGIGA/Elegoo PLA Matte @Elegoo Giga.json" + }, + { + "name": "Elegoo PLA PRO @0.2 nozzle", + "sub_path": "filament/ELEGOO_02_NOZZLE/Elegoo PLA PRO @0.2 nozzle.json" + }, + { + "name": "Elegoo PLA PRO @EC", + "sub_path": "filament/EC/Elegoo PLA PRO @EC.json" + }, + { + "name": "Elegoo PLA PRO @ECC", + "sub_path": "filament/ECC/Elegoo PLA PRO @ECC.json" + }, + { + "name": "Elegoo PLA PRO @ECC2", + "sub_path": "filament/ECC2/Elegoo PLA PRO @ECC2.json" + }, + { + "name": "Elegoo PLA PRO @EN2 Series", + "sub_path": "filament/EN2SERIES/Elegoo PLA PRO @EN2 Series.json" + }, + { + "name": "Elegoo PLA PRO @EN3 Series", + "sub_path": "filament/EN3SERIES/Elegoo PLA PRO @EN3 Series.json" + }, + { + "name": "Elegoo PLA PRO @EN4 Series", + "sub_path": "filament/EN4SERIES/Elegoo PLA PRO @EN4 Series.json" + }, + { + "name": "Elegoo PLA Silk @0.2 nozzle", + "sub_path": "filament/ELEGOO_02_NOZZLE/Elegoo PLA Silk @0.2 nozzle.json" + }, + { + "name": "Elegoo PLA Silk @EC", + "sub_path": "filament/EC/Elegoo PLA Silk @EC.json" + }, + { + "name": "Elegoo PLA Silk @ECC", + "sub_path": "filament/ECC/Elegoo PLA Silk @ECC.json" + }, + { + "name": "Elegoo PLA Silk @ECC2", + "sub_path": "filament/ECC2/Elegoo PLA Silk @ECC2.json" + }, + { + "name": "Elegoo PLA Silk @EN2 Series", + "sub_path": "filament/EN2SERIES/Elegoo PLA Silk @EN2 Series.json" + }, + { + "name": "Elegoo PLA Silk @EN3 Series", + "sub_path": "filament/EN3SERIES/Elegoo PLA Silk @EN3 Series.json" + }, + { + "name": "Elegoo PLA Silk @EN4 Series", + "sub_path": "filament/EN4SERIES/Elegoo PLA Silk @EN4 Series.json" + }, + { + "name": "Elegoo PLA Sparkle @EC", + "sub_path": "filament/EC/Elegoo PLA Sparkle @EC.json" + }, + { + "name": "Elegoo PLA Sparkle @ECC", + "sub_path": "filament/ECC/Elegoo PLA Sparkle @ECC.json" + }, + { + "name": "Elegoo PLA Sparkle @ECC2", + "sub_path": "filament/ECC2/Elegoo PLA Sparkle @ECC2.json" + }, + { + "name": "Elegoo PLA Sparkle @EN2 Series", + "sub_path": "filament/EN2SERIES/Elegoo PLA Sparkle @EN2 Series.json" + }, + { + "name": "Elegoo PLA Sparkle @EN3 Series", + "sub_path": "filament/EN3SERIES/Elegoo PLA Sparkle @EN3 Series.json" + }, + { + "name": "Elegoo PLA Sparkle @EN4 Series", + "sub_path": "filament/EN4SERIES/Elegoo PLA Sparkle @EN4 Series.json" + }, + { + "name": "Elegoo PLA Sparkle @Elegoo Giga", + "sub_path": "filament/EOSGIGA/Elegoo PLA Sparkle @Elegoo Giga.json" + }, + { + "name": "Elegoo PLA Translucent2 @ECC2", + "sub_path": "filament/ECC2/Elegoo PLA Translucent2 @ECC2.json" + }, + { + "name": "Elegoo PLA Wood @EC", + "sub_path": "filament/EC/Elegoo PLA Wood @EC.json" + }, + { + "name": "Elegoo PLA Wood @ECC", + "sub_path": "filament/ECC/Elegoo PLA Wood @ECC.json" + }, + { + "name": "Elegoo PLA Wood @ECC2", + "sub_path": "filament/ECC2/Elegoo PLA Wood @ECC2.json" + }, + { + "name": "Elegoo PLA Wood @EN2 Series", + "sub_path": "filament/EN2SERIES/Elegoo PLA Wood @EN2 Series.json" + }, + { + "name": "Elegoo PLA Wood @EN3 Series", + "sub_path": "filament/EN3SERIES/Elegoo PLA Wood @EN3 Series.json" + }, + { + "name": "Elegoo PLA Wood @EN4 Series", + "sub_path": "filament/EN4SERIES/Elegoo PLA Wood @EN4 Series.json" + }, + { + "name": "Elegoo PLA Wood @Elegoo Giga", + "sub_path": "filament/EOSGIGA/Elegoo PLA Wood @Elegoo Giga.json" + }, + { + "name": "Elegoo PLA+ @0.2 nozzle", + "sub_path": "filament/ELEGOO_02_NOZZLE/Elegoo PLA+ @0.2 nozzle.json" + }, + { + "name": "Elegoo PLA+ @EC", + "sub_path": "filament/EC/Elegoo PLA+ @EC.json" + }, + { + "name": "Elegoo PLA+ @ECC", + "sub_path": "filament/ECC/Elegoo PLA+ @ECC.json" + }, + { + "name": "Elegoo PLA+ @ECC2", + "sub_path": "filament/ECC2/Elegoo PLA+ @ECC2.json" + }, + { + "name": "Elegoo PLA+ @EN2 Series", + "sub_path": "filament/EN2SERIES/Elegoo PLA+ @EN2 Series.json" + }, + { + "name": "Elegoo PLA+ @EN3 Series", + "sub_path": "filament/EN3SERIES/Elegoo PLA+ @EN3 Series.json" + }, + { + "name": "Elegoo PLA+ @EN4 Series", + "sub_path": "filament/EN4SERIES/Elegoo PLA+ @EN4 Series.json" + }, + { + "name": "Elegoo PLA-CF @ECC", + "sub_path": "filament/ECC/Elegoo PLA-CF @ECC.json" + }, + { + "name": "Elegoo PLA-CF @ECC2", + "sub_path": "filament/ECC2/Elegoo PLA-CF @ECC2.json" + }, + { + "name": "Elegoo PLA-CF @EN2 Series", + "sub_path": "filament/EN2SERIES/Elegoo PLA-CF @EN2 Series.json" + }, + { + "name": "Elegoo PLA-CF @EN3 Series", + "sub_path": "filament/EN3SERIES/Elegoo PLA-CF @EN3 Series.json" + }, + { + "name": "Elegoo PLA-CF @EN4 Series", + "sub_path": "filament/EN4SERIES/Elegoo PLA-CF @EN4 Series.json" }, { "name": "Elegoo Rapid PLA+ @0.2 nozzle", - "sub_path": "filament/ELEGOO/Elegoo Rapid PLA+ @0.2 nozzle.json" + "sub_path": "filament/ELEGOO_02_NOZZLE/Elegoo Rapid PLA+ @0.2 nozzle.json" }, { "name": "Elegoo Rapid PLA+ @EC", @@ -1424,10 +1412,62 @@ "name": "Elegoo Rapid PLA+ @ECC2", "sub_path": "filament/ECC2/Elegoo Rapid PLA+ @ECC2.json" }, + { + "name": "Elegoo Rapid PLA+ @EN2 Series", + "sub_path": "filament/EN2SERIES/Elegoo Rapid PLA+ @EN2 Series.json" + }, + { + "name": "Elegoo Rapid PLA+ @EN3 Series", + "sub_path": "filament/EN3SERIES/Elegoo Rapid PLA+ @EN3 Series.json" + }, + { + "name": "Elegoo Rapid PLA+ @EN4 Series", + "sub_path": "filament/EN4SERIES/Elegoo Rapid PLA+ @EN4 Series.json" + }, + { + "name": "Elegoo Rapid PLA+ @Elegoo Giga", + "sub_path": "filament/EOSGIGA/Elegoo Rapid PLA+ @Elegoo Giga.json" + }, + { + "name": "Generic PLA @Elegoo", + "sub_path": "filament/Generic/Generic PLA @Elegoo.json" + }, + { + "name": "Generic PLA @Elegoo Centauri", + "sub_path": "filament/Generic/Generic PLA @Elegoo Centauri.json" + }, + { + "name": "Generic PLA Matte @Elegoo", + "sub_path": "filament/Generic/Generic PLA Matte @Elegoo.json" + }, + { + "name": "Elegoo Rapid TPU 95A @EC", + "sub_path": "filament/EC/Elegoo Rapid TPU 95A @EC.json" + }, + { + "name": "Elegoo Rapid TPU 95A @ECC", + "sub_path": "filament/ECC/Elegoo Rapid TPU 95A @ECC.json" + }, { "name": "Elegoo Rapid TPU 95A @ECC2", "sub_path": "filament/ECC2/Elegoo Rapid TPU 95A @ECC2.json" }, + { + "name": "Elegoo Rapid TPU 95A @EN2 Series", + "sub_path": "filament/EN2SERIES/Elegoo Rapid TPU 95A @EN2 Series.json" + }, + { + "name": "Elegoo Rapid TPU 95A @EN3 Series", + "sub_path": "filament/EN3SERIES/Elegoo Rapid TPU 95A @EN3 Series.json" + }, + { + "name": "Elegoo Rapid TPU 95A @EN4 Series", + "sub_path": "filament/EN4SERIES/Elegoo Rapid TPU 95A @EN4 Series.json" + }, + { + "name": "Elegoo Rapid TPU 95A @Elegoo Giga", + "sub_path": "filament/EOSGIGA/Elegoo Rapid TPU 95A @Elegoo Giga.json" + }, { "name": "Elegoo TPU 95A @EC", "sub_path": "filament/EC/Elegoo TPU 95A @EC.json" @@ -1439,6 +1479,14 @@ { "name": "Elegoo TPU 95A @ECC2", "sub_path": "filament/ECC2/Elegoo TPU 95A @ECC2.json" + }, + { + "name": "Elegoo TPU 95A @EN3 Series", + "sub_path": "filament/EN3SERIES/Elegoo TPU 95A @EN3 Series.json" + }, + { + "name": "Elegoo TPU 95A @EN4 Series", + "sub_path": "filament/EN4SERIES/Elegoo TPU 95A @EN4 Series.json" } ], "machine_list": [ @@ -1446,10 +1494,6 @@ "name": "fdm_machine_common", "sub_path": "machine/fdm_machine_common.json" }, - { - "name": "fdm_machine_ecc_common", - "sub_path": "machine/ECC/fdm_machine_ecc_common.json" - }, { "name": "fdm_elegoo_3dp_001_common", "sub_path": "machine/fdm_elegoo_3dp_001_common.json" @@ -1458,58 +1502,6 @@ "name": "fdm_elegoo_common", "sub_path": "machine/fdm_elegoo_common.json" }, - { - "name": "fdm_machine_ecc", - "sub_path": "machine/ECC/fdm_machine_ecc.json" - }, - { - "name": "Elegoo Centauri Carbon 2 0.4 nozzle", - "sub_path": "machine/ECC2/Elegoo Centauri Carbon 2 0.4 nozzle.json" - }, - { - "name": "Elegoo OrangeStorm Giga 0.4 nozzle", - "sub_path": "machine/EOSGIGA/Elegoo OrangeStorm Giga 0.4 nozzle.json" - }, - { - "name": "Elegoo Neptune 0.4 nozzle", - "sub_path": "machine/EN2SERIES/Elegoo Neptune 0.4 nozzle.json" - }, - { - "name": "Elegoo Neptune 2 0.4 nozzle", - "sub_path": "machine/EN2SERIES/Elegoo Neptune 2 0.4 nozzle.json" - }, - { - "name": "Elegoo Neptune 2D 0.4 nozzle", - "sub_path": "machine/EN2SERIES/Elegoo Neptune 2D 0.4 nozzle.json" - }, - { - "name": "Elegoo Neptune 2S 0.4 nozzle", - "sub_path": "machine/EN2SERIES/Elegoo Neptune 2S 0.4 nozzle.json" - }, - { - "name": "Elegoo Neptune 3 0.4 nozzle", - "sub_path": "machine/EN2SERIES/Elegoo Neptune 3 0.4 nozzle.json" - }, - { - "name": "Elegoo Neptune 3 Max 0.4 nozzle", - "sub_path": "machine/EN3SERIES/Elegoo Neptune 3 Max 0.4 nozzle.json" - }, - { - "name": "Elegoo Neptune 3 Plus 0.4 nozzle", - "sub_path": "machine/EN3SERIES/Elegoo Neptune 3 Plus 0.4 nozzle.json" - }, - { - "name": "Elegoo Neptune 3 Pro 0.4 nozzle", - "sub_path": "machine/EN3SERIES/Elegoo Neptune 3 Pro 0.4 nozzle.json" - }, - { - "name": "Elegoo Neptune X 0.4 nozzle", - "sub_path": "machine/EN2SERIES/Elegoo Neptune X 0.4 nozzle.json" - }, - { - "name": "fdm_neptune_4_common", - "sub_path": "machine/EN4SERIES/fdm_neptune_4_common.json" - }, { "name": "Elegoo Centauri 0.4 nozzle", "sub_path": "machine/EC/Elegoo Centauri 0.4 nozzle.json" @@ -1519,92 +1511,32 @@ "sub_path": "machine/ECC/Elegoo Centauri Carbon 0.4 nozzle.json" }, { - "name": "Elegoo Centauri Carbon 2 0.2 nozzle", - "sub_path": "machine/ECC2/Elegoo Centauri Carbon 2 0.2 nozzle.json" + "name": "Elegoo Centauri Carbon 2 0.4 nozzle", + "sub_path": "machine/ECC2/Elegoo Centauri Carbon 2 0.4 nozzle.json" }, { - "name": "Elegoo Centauri Carbon 2 0.6 nozzle", - "sub_path": "machine/ECC2/Elegoo Centauri Carbon 2 0.6 nozzle.json" + "name": "Elegoo Neptune 4 0.4 nozzle", + "sub_path": "machine/EN4SERIES/Elegoo Neptune 4 0.4 nozzle.json" }, { - "name": "Elegoo Centauri Carbon 2 0.8 nozzle", - "sub_path": "machine/ECC2/Elegoo Centauri Carbon 2 0.8 nozzle.json" + "name": "Elegoo OrangeStorm Giga 0.4 nozzle", + "sub_path": "machine/EOSGIGA/Elegoo OrangeStorm Giga 0.4 nozzle.json" }, { - "name": "Elegoo OrangeStorm Giga 0.6 nozzle", - "sub_path": "machine/EOSGIGA/Elegoo OrangeStorm Giga 0.6 nozzle.json" + "name": "Elegoo Neptune 2 0.4 nozzle", + "sub_path": "machine/EN2SERIES/Elegoo Neptune 2 0.4 nozzle.json" }, { - "name": "Elegoo OrangeStorm Giga 0.8 nozzle", - "sub_path": "machine/EOSGIGA/Elegoo OrangeStorm Giga 0.8 nozzle.json" + "name": "Elegoo Neptune 2S 0.4 nozzle", + "sub_path": "machine/EN2SERIES/Elegoo Neptune 2S 0.4 nozzle.json" }, { - "name": "Elegoo OrangeStorm Giga 1.0 nozzle", - "sub_path": "machine/EOSGIGA/Elegoo OrangeStorm Giga 1.0 nozzle.json" + "name": "Elegoo Neptune 3 Pro 0.4 nozzle", + "sub_path": "machine/EN3SERIES/Elegoo Neptune 3 Pro 0.4 nozzle.json" }, { - "name": "Elegoo Neptune 4 (0.2 nozzle)", - "sub_path": "machine/EN4SERIES/Elegoo Neptune 4 (0.2 nozzle).json" - }, - { - "name": "Elegoo Neptune 4 (0.4 nozzle)", - "sub_path": "machine/EN4SERIES/Elegoo Neptune 4 (0.4 nozzle).json" - }, - { - "name": "Elegoo Neptune 4 (0.6 nozzle)", - "sub_path": "machine/EN4SERIES/Elegoo Neptune 4 (0.6 nozzle).json" - }, - { - "name": "Elegoo Neptune 4 (0.8 nozzle)", - "sub_path": "machine/EN4SERIES/Elegoo Neptune 4 (0.8 nozzle).json" - }, - { - "name": "Elegoo Neptune 4 Max (0.2 nozzle)", - "sub_path": "machine/EN4SERIES/Elegoo Neptune 4 Max (0.2 nozzle).json" - }, - { - "name": "Elegoo Neptune 4 Max (0.4 nozzle)", - "sub_path": "machine/EN4SERIES/Elegoo Neptune 4 Max (0.4 nozzle).json" - }, - { - "name": "Elegoo Neptune 4 Max (0.6 nozzle)", - "sub_path": "machine/EN4SERIES/Elegoo Neptune 4 Max (0.6 nozzle).json" - }, - { - "name": "Elegoo Neptune 4 Max (0.8 nozzle)", - "sub_path": "machine/EN4SERIES/Elegoo Neptune 4 Max (0.8 nozzle).json" - }, - { - "name": "Elegoo Neptune 4 Plus (0.2 nozzle)", - "sub_path": "machine/EN4SERIES/Elegoo Neptune 4 Plus (0.2 nozzle).json" - }, - { - "name": "Elegoo Neptune 4 Plus (0.4 nozzle)", - "sub_path": "machine/EN4SERIES/Elegoo Neptune 4 Plus (0.4 nozzle).json" - }, - { - "name": "Elegoo Neptune 4 Plus (0.6 nozzle)", - "sub_path": "machine/EN4SERIES/Elegoo Neptune 4 Plus (0.6 nozzle).json" - }, - { - "name": "Elegoo Neptune 4 Plus (0.8 nozzle)", - "sub_path": "machine/EN4SERIES/Elegoo Neptune 4 Plus (0.8 nozzle).json" - }, - { - "name": "Elegoo Neptune 4 Pro (0.2 nozzle)", - "sub_path": "machine/EN4SERIES/Elegoo Neptune 4 Pro (0.2 nozzle).json" - }, - { - "name": "Elegoo Neptune 4 Pro (0.4 nozzle)", - "sub_path": "machine/EN4SERIES/Elegoo Neptune 4 Pro (0.4 nozzle).json" - }, - { - "name": "Elegoo Neptune 4 Pro (0.6 nozzle)", - "sub_path": "machine/EN4SERIES/Elegoo Neptune 4 Pro (0.6 nozzle).json" - }, - { - "name": "Elegoo Neptune 4 Pro (0.8 nozzle)", - "sub_path": "machine/EN4SERIES/Elegoo Neptune 4 Pro (0.8 nozzle).json" + "name": "Elegoo Neptune X 0.4 nozzle", + "sub_path": "machine/EN2SERIES/Elegoo Neptune X 0.4 nozzle.json" }, { "name": "Elegoo Centauri 0.2 nozzle", @@ -1629,6 +1561,222 @@ { "name": "Elegoo Centauri Carbon 0.8 nozzle", "sub_path": "machine/ECC/Elegoo Centauri Carbon 0.8 nozzle.json" + }, + { + "name": "Elegoo Centauri Carbon 2 0.2 nozzle", + "sub_path": "machine/ECC2/Elegoo Centauri Carbon 2 0.2 nozzle.json" + }, + { + "name": "Elegoo Centauri Carbon 2 0.6 nozzle", + "sub_path": "machine/ECC2/Elegoo Centauri Carbon 2 0.6 nozzle.json" + }, + { + "name": "Elegoo Centauri Carbon 2 0.8 nozzle", + "sub_path": "machine/ECC2/Elegoo Centauri Carbon 2 0.8 nozzle.json" + }, + { + "name": "Elegoo Neptune 4 0.2 nozzle", + "sub_path": "machine/EN4SERIES/Elegoo Neptune 4 0.2 nozzle.json" + }, + { + "name": "Elegoo Neptune 4 0.6 nozzle", + "sub_path": "machine/EN4SERIES/Elegoo Neptune 4 0.6 nozzle.json" + }, + { + "name": "Elegoo Neptune 4 0.8 nozzle", + "sub_path": "machine/EN4SERIES/Elegoo Neptune 4 0.8 nozzle.json" + }, + { + "name": "Elegoo Neptune 4 1.0 nozzle", + "sub_path": "machine/EN4SERIES/Elegoo Neptune 4 1.0 nozzle.json" + }, + { + "name": "Elegoo Neptune 4 Max 0.4 nozzle", + "sub_path": "machine/EN4SERIES/Elegoo Neptune 4 Max 0.4 nozzle.json" + }, + { + "name": "Elegoo Neptune 4 Plus 0.4 nozzle", + "sub_path": "machine/EN4SERIES/Elegoo Neptune 4 Plus 0.4 nozzle.json" + }, + { + "name": "Elegoo Neptune 4 Pro 0.4 nozzle", + "sub_path": "machine/EN4SERIES/Elegoo Neptune 4 Pro 0.4 nozzle.json" + }, + { + "name": "Elegoo OrangeStorm Giga 0.6 nozzle", + "sub_path": "machine/EOSGIGA/Elegoo OrangeStorm Giga 0.6 nozzle.json" + }, + { + "name": "Elegoo OrangeStorm Giga 0.8 nozzle", + "sub_path": "machine/EOSGIGA/Elegoo OrangeStorm Giga 0.8 nozzle.json" + }, + { + "name": "Elegoo OrangeStorm Giga 1.0 nozzle", + "sub_path": "machine/EOSGIGA/Elegoo OrangeStorm Giga 1.0 nozzle.json" + }, + { + "name": "Elegoo Neptune 0.4 nozzle", + "sub_path": "machine/EN2SERIES/Elegoo Neptune 0.4 nozzle.json" + }, + { + "name": "Elegoo Neptune 2 0.6 nozzle", + "sub_path": "machine/EN2SERIES/Elegoo Neptune 2 0.6 nozzle.json" + }, + { + "name": "Elegoo Neptune 2 0.8 nozzle", + "sub_path": "machine/EN2SERIES/Elegoo Neptune 2 0.8 nozzle.json" + }, + { + "name": "Elegoo Neptune 2D 0.4 nozzle", + "sub_path": "machine/EN2SERIES/Elegoo Neptune 2D 0.4 nozzle.json" + }, + { + "name": "Elegoo Neptune 3 0.4 nozzle", + "sub_path": "machine/EN2SERIES/Elegoo Neptune 3 0.4 nozzle.json" + }, + { + "name": "Elegoo Neptune 2S 0.6 nozzle", + "sub_path": "machine/EN2SERIES/Elegoo Neptune 2S 0.6 nozzle.json" + }, + { + "name": "Elegoo Neptune 2S 0.8 nozzle", + "sub_path": "machine/EN2SERIES/Elegoo Neptune 2S 0.8 nozzle.json" + }, + { + "name": "Elegoo Neptune 3 Max 0.4 nozzle", + "sub_path": "machine/EN3SERIES/Elegoo Neptune 3 Max 0.4 nozzle.json" + }, + { + "name": "Elegoo Neptune 3 Plus 0.4 nozzle", + "sub_path": "machine/EN3SERIES/Elegoo Neptune 3 Plus 0.4 nozzle.json" + }, + { + "name": "Elegoo Neptune 3 Pro 0.2 nozzle", + "sub_path": "machine/EN3SERIES/Elegoo Neptune 3 Pro 0.2 nozzle.json" + }, + { + "name": "Elegoo Neptune 3 Pro 0.6 nozzle", + "sub_path": "machine/EN3SERIES/Elegoo Neptune 3 Pro 0.6 nozzle.json" + }, + { + "name": "Elegoo Neptune 3 Pro 0.8 nozzle", + "sub_path": "machine/EN3SERIES/Elegoo Neptune 3 Pro 0.8 nozzle.json" + }, + { + "name": "Elegoo Neptune 3 Pro 1.0 nozzle", + "sub_path": "machine/EN3SERIES/Elegoo Neptune 3 Pro 1.0 nozzle.json" + }, + { + "name": "Elegoo Neptune X 0.6 nozzle", + "sub_path": "machine/EN2SERIES/Elegoo Neptune X 0.6 nozzle.json" + }, + { + "name": "Elegoo Neptune X 0.8 nozzle", + "sub_path": "machine/EN2SERIES/Elegoo Neptune X 0.8 nozzle.json" + }, + { + "name": "Elegoo Neptune 4 Max 0.2 nozzle", + "sub_path": "machine/EN4SERIES/Elegoo Neptune 4 Max 0.2 nozzle.json" + }, + { + "name": "Elegoo Neptune 4 Max 0.6 nozzle", + "sub_path": "machine/EN4SERIES/Elegoo Neptune 4 Max 0.6 nozzle.json" + }, + { + "name": "Elegoo Neptune 4 Max 0.8 nozzle", + "sub_path": "machine/EN4SERIES/Elegoo Neptune 4 Max 0.8 nozzle.json" + }, + { + "name": "Elegoo Neptune 4 Max 1.0 nozzle", + "sub_path": "machine/EN4SERIES/Elegoo Neptune 4 Max 1.0 nozzle.json" + }, + { + "name": "Elegoo Neptune 4 Plus 0.2 nozzle", + "sub_path": "machine/EN4SERIES/Elegoo Neptune 4 Plus 0.2 nozzle.json" + }, + { + "name": "Elegoo Neptune 4 Plus 0.6 nozzle", + "sub_path": "machine/EN4SERIES/Elegoo Neptune 4 Plus 0.6 nozzle.json" + }, + { + "name": "Elegoo Neptune 4 Plus 0.8 nozzle", + "sub_path": "machine/EN4SERIES/Elegoo Neptune 4 Plus 0.8 nozzle.json" + }, + { + "name": "Elegoo Neptune 4 Plus 1.0 nozzle", + "sub_path": "machine/EN4SERIES/Elegoo Neptune 4 Plus 1.0 nozzle.json" + }, + { + "name": "Elegoo Neptune 4 Pro 0.2 nozzle", + "sub_path": "machine/EN4SERIES/Elegoo Neptune 4 Pro 0.2 nozzle.json" + }, + { + "name": "Elegoo Neptune 4 Pro 0.6 nozzle", + "sub_path": "machine/EN4SERIES/Elegoo Neptune 4 Pro 0.6 nozzle.json" + }, + { + "name": "Elegoo Neptune 4 Pro 0.8 nozzle", + "sub_path": "machine/EN4SERIES/Elegoo Neptune 4 Pro 0.8 nozzle.json" + }, + { + "name": "Elegoo Neptune 4 Pro 1.0 nozzle", + "sub_path": "machine/EN4SERIES/Elegoo Neptune 4 Pro 1.0 nozzle.json" + }, + { + "name": "Elegoo Neptune 0.6 nozzle", + "sub_path": "machine/EN2SERIES/Elegoo Neptune 0.6 nozzle.json" + }, + { + "name": "Elegoo Neptune 0.8 nozzle", + "sub_path": "machine/EN2SERIES/Elegoo Neptune 0.8 nozzle.json" + }, + { + "name": "Elegoo Neptune 2D 0.6 nozzle", + "sub_path": "machine/EN2SERIES/Elegoo Neptune 2D 0.6 nozzle.json" + }, + { + "name": "Elegoo Neptune 2D 0.8 nozzle", + "sub_path": "machine/EN2SERIES/Elegoo Neptune 2D 0.8 nozzle.json" + }, + { + "name": "Elegoo Neptune 3 0.6 nozzle", + "sub_path": "machine/EN2SERIES/Elegoo Neptune 3 0.6 nozzle.json" + }, + { + "name": "Elegoo Neptune 3 0.8 nozzle", + "sub_path": "machine/EN2SERIES/Elegoo Neptune 3 0.8 nozzle.json" + }, + { + "name": "Elegoo Neptune 3 Max 0.2 nozzle", + "sub_path": "machine/EN3SERIES/Elegoo Neptune 3 Max 0.2 nozzle.json" + }, + { + "name": "Elegoo Neptune 3 Max 0.6 nozzle", + "sub_path": "machine/EN3SERIES/Elegoo Neptune 3 Max 0.6 nozzle.json" + }, + { + "name": "Elegoo Neptune 3 Max 0.8 nozzle", + "sub_path": "machine/EN3SERIES/Elegoo Neptune 3 Max 0.8 nozzle.json" + }, + { + "name": "Elegoo Neptune 3 Max 1.0 nozzle", + "sub_path": "machine/EN3SERIES/Elegoo Neptune 3 Max 1.0 nozzle.json" + }, + { + "name": "Elegoo Neptune 3 Plus 0.2 nozzle", + "sub_path": "machine/EN3SERIES/Elegoo Neptune 3 Plus 0.2 nozzle.json" + }, + { + "name": "Elegoo Neptune 3 Plus 0.6 nozzle", + "sub_path": "machine/EN3SERIES/Elegoo Neptune 3 Plus 0.6 nozzle.json" + }, + { + "name": "Elegoo Neptune 3 Plus 0.8 nozzle", + "sub_path": "machine/EN3SERIES/Elegoo Neptune 3 Plus 0.8 nozzle.json" + }, + { + "name": "Elegoo Neptune 3 Plus 1.0 nozzle", + "sub_path": "machine/EN3SERIES/Elegoo Neptune 3 Plus 1.0 nozzle.json" } ] } diff --git a/resources/profiles/Elegoo/filament/BASE/Elegoo ABS @base.json b/resources/profiles/Elegoo/filament/BASE/Elegoo ABS @base.json new file mode 100644 index 00000000000..86b533bba10 --- /dev/null +++ b/resources/profiles/Elegoo/filament/BASE/Elegoo ABS @base.json @@ -0,0 +1,23 @@ +{ + "type": "filament", + "name": "Elegoo ABS @base", + "inherits": "fdm_filament_abs", + "from": "system", + "filament_id": "EABSB00", + "instantiation": "false", + "filament_vendor": [ + "Elegoo" + ], + "filament_density": [ + "1.1" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "nozzle_temperature": [ + "270" + ], + "fan_cooling_layer_time": [ + "35" + ] +} diff --git a/resources/profiles/Elegoo/filament/BASE/Elegoo ASA @base.json b/resources/profiles/Elegoo/filament/BASE/Elegoo ASA @base.json new file mode 100644 index 00000000000..c48b5e56716 --- /dev/null +++ b/resources/profiles/Elegoo/filament/BASE/Elegoo ASA @base.json @@ -0,0 +1,17 @@ +{ + "type": "filament", + "name": "Elegoo ASA @base", + "inherits": "fdm_filament_asa", + "from": "system", + "filament_id": "EASAB00", + "instantiation": "false", + "filament_vendor": [ + "Elegoo" + ], + "filament_density": [ + "1.1" + ], + "filament_max_volumetric_speed": [ + "12" + ] +} diff --git a/resources/profiles/Elegoo/filament/ELEGOO/fdm_elegoo_filament_pla.json b/resources/profiles/Elegoo/filament/BASE/Elegoo PAHT @base.json similarity index 81% rename from resources/profiles/Elegoo/filament/ELEGOO/fdm_elegoo_filament_pla.json rename to resources/profiles/Elegoo/filament/BASE/Elegoo PAHT @base.json index 6f82d279130..87907a36f82 100644 --- a/resources/profiles/Elegoo/filament/ELEGOO/fdm_elegoo_filament_pla.json +++ b/resources/profiles/Elegoo/filament/BASE/Elegoo PAHT @base.json @@ -1,20 +1,15 @@ { "type": "filament", - "name": "fdm_elegoo_filament_pla", - "inherits": "fdm_elegoo_filament_common", + "name": "Elegoo PAHT @base", + "inherits": "fdm_filament_pa", "from": "system", + "filament_id": "EPAHTB00", "instantiation": "false", - "filament_max_volumetric_speed": [ - "12" - ], - "filament_type": [ - "PLA" - ], "filament_density": [ - "1.24" + "1.25" ], - "filament_cost": [ - "0" + "filament_max_volumetric_speed": [ + "16" ], "cool_plate_temp": [ "35" @@ -79,10 +74,10 @@ "slow_down_layer_time": [ "8" ], - "filament_start_gcode": [ - "; Filament start gcode\n" + "filament_vendor": [ + "Elegoo" ], - "filament_end_gcode": [ - "; filament end gcode \n" + "filament_start_gcode": [ + "; filament start gcode\n" ] } diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA Matte @base.json b/resources/profiles/Elegoo/filament/BASE/Elegoo PC @base.json similarity index 61% rename from resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA Matte @base.json rename to resources/profiles/Elegoo/filament/BASE/Elegoo PC @base.json index 06bc55b87d2..d60048b30a0 100644 --- a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA Matte @base.json +++ b/resources/profiles/Elegoo/filament/BASE/Elegoo PC @base.json @@ -1,16 +1,16 @@ { "type": "filament", - "name": "Elegoo PLA Matte @base", - "inherits": "fdm_filament_pla", + "name": "Elegoo PC @base", + "inherits": "fdm_filament_pc", "from": "system", - "filament_id": "EPLAMB00", + "filament_id": "EPCB00", "instantiation": "false", - "filament_cost": [ - "0" - ], "filament_density": [ "1.25" ], + "filament_max_volumetric_speed": [ + "16" + ], "filament_vendor": [ "Elegoo" ], diff --git a/resources/profiles/Elegoo/filament/ELEGOO/fdm_elegoo_filament_pet.json b/resources/profiles/Elegoo/filament/BASE/Elegoo PETG @base.json similarity index 63% rename from resources/profiles/Elegoo/filament/ELEGOO/fdm_elegoo_filament_pet.json rename to resources/profiles/Elegoo/filament/BASE/Elegoo PETG @base.json index 9774cf457aa..29d83df77ae 100644 --- a/resources/profiles/Elegoo/filament/ELEGOO/fdm_elegoo_filament_pet.json +++ b/resources/profiles/Elegoo/filament/BASE/Elegoo PETG @base.json @@ -1,67 +1,80 @@ { "type": "filament", - "name": "fdm_elegoo_filament_pet", - "inherits": "fdm_elegoo_filament_common", + "name": "Elegoo PETG @base", + "inherits": "fdm_filament_pet", "from": "system", + "filament_id": "EPETGB00", "instantiation": "false", + "cool_plate_temp": [ + "0" + ], + "cool_plate_temp_initial_layer": [ + "0" + ], "eng_plate_temp": [ - "0" - ], - "eng_plate_temp_initial_layer": [ - "0" - ], - "fan_cooling_layer_time": [ - "20" - ], - "fan_min_speed": [ - "20" - ], - "filament_cost": [ - "0" - ], - "filament_density": [ - "1.27" - ], - "filament_max_volumetric_speed": [ - "12" - ], - "filament_type": [ - "PET" - ], - "hot_plate_temp": [ - "80" - ], - "hot_plate_temp_initial_layer": [ - "80" - ], - "nozzle_temperature": [ - "250" - ], - "nozzle_temperature_initial_layer": [ - "250" - ], - "nozzle_temperature_range_high": [ - "260" - ], - "nozzle_temperature_range_low": [ - "220" - ], - "reduce_fan_stop_start_freq": [ - "1" - ], - "temperature_vitrification": [ "70" ], + "eng_plate_temp_initial_layer": [ + "70" + ], + "fan_cooling_layer_time": [ + "30" + ], + "fan_max_speed": [ + "40" + ], + "fan_min_speed": [ + "10" + ], + "filament_density": [ + "1.25" + ], + "filament_max_volumetric_speed": [ + "8" + ], + "filament_vendor": [ + "Elegoo" + ], + "hot_plate_temp": [ + "70" + ], + "hot_plate_temp_initial_layer": [ + "70" + ], + "nozzle_temperature_range_high": [ + "270" + ], + "nozzle_temperature_range_low": [ + "230" + ], + "nozzle_temperature": [ + "240" + ], + "nozzle_temperature_initial_layer": [ + "240" + ], + "overhang_fan_speed": [ + "90" + ], + "overhang_fan_threshold": [ + "10%" + ], + "slow_down_layer_time": [ + "12" + ], "textured_plate_temp": [ - "80" + "70" ], "textured_plate_temp_initial_layer": [ - "80" + "70" ], "filament_start_gcode": [ "; Filament start gcode\n" ], "filament_end_gcode": [ "; filament end gcode \n" + ], + "filament_type": [ + "PETG" ] } diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo Rapid PLA+ @base.json b/resources/profiles/Elegoo/filament/BASE/Elegoo PLA @base.json similarity index 80% rename from resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo Rapid PLA+ @base.json rename to resources/profiles/Elegoo/filament/BASE/Elegoo PLA @base.json index f4ddb101f97..40e594ee622 100644 --- a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo Rapid PLA+ @base.json +++ b/resources/profiles/Elegoo/filament/BASE/Elegoo PLA @base.json @@ -1,16 +1,16 @@ { "type": "filament", - "name": "Elegoo Rapid PLA+ @base", + "name": "Elegoo PLA @base", "inherits": "fdm_filament_pla", "from": "system", - "filament_id": "OGFE05", + "filament_id": "EPLAB00", "instantiation": "false", - "filament_max_volumetric_speed": [ - "21" - ], "filament_density": [ "1.25" ], + "filament_max_volumetric_speed": [ + "16" + ], "filament_vendor": [ "Elegoo" ], diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo TPU 95A @base.json b/resources/profiles/Elegoo/filament/BASE/Elegoo TPU @base.json similarity index 86% rename from resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo TPU 95A @base.json rename to resources/profiles/Elegoo/filament/BASE/Elegoo TPU @base.json index b23bc70b5ab..99ed8dc8e94 100644 --- a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo TPU 95A @base.json +++ b/resources/profiles/Elegoo/filament/BASE/Elegoo TPU @base.json @@ -1,9 +1,9 @@ { "type": "filament", - "name": "Elegoo TPU 95A @base", + "name": "Elegoo TPU @base", "inherits": "fdm_filament_tpu", "from": "system", - "filament_id": "OGFE07", + "filament_id": "ETPUB00", "instantiation": "false", "filament_max_volumetric_speed": [ "3.6" diff --git a/resources/profiles/Elegoo/filament/BASE/Generic ABS @base.json b/resources/profiles/Elegoo/filament/BASE/Generic ABS @base.json new file mode 100644 index 00000000000..5607709da78 --- /dev/null +++ b/resources/profiles/Elegoo/filament/BASE/Generic ABS @base.json @@ -0,0 +1,17 @@ +{ + "type": "filament", + "name": "Generic ABS @base", + "inherits": "fdm_filament_abs", + "from": "system", + "filament_id": "GABSB00", + "instantiation": "false", + "filament_max_volumetric_speed": [ + "12" + ], + "filament_vendor": [ + "Generic" + ], + "filament_type": [ + "ABS" + ] +} diff --git a/resources/profiles/Elegoo/filament/BASE/Generic ASA @base.json b/resources/profiles/Elegoo/filament/BASE/Generic ASA @base.json new file mode 100644 index 00000000000..d2f0c4672b3 --- /dev/null +++ b/resources/profiles/Elegoo/filament/BASE/Generic ASA @base.json @@ -0,0 +1,17 @@ +{ + "type": "filament", + "name": "Generic ASA @base", + "inherits": "fdm_filament_asa", + "from": "system", + "filament_id": "GASAB00", + "instantiation": "false", + "filament_max_volumetric_speed": [ + "12" + ], + "filament_vendor": [ + "Generic" + ], + "filament_type": [ + "ASA" + ] +} diff --git a/resources/profiles/Elegoo/filament/BASE/Generic PA @base.json b/resources/profiles/Elegoo/filament/BASE/Generic PA @base.json new file mode 100644 index 00000000000..e130cbf2e24 --- /dev/null +++ b/resources/profiles/Elegoo/filament/BASE/Generic PA @base.json @@ -0,0 +1,56 @@ +{ + "type": "filament", + "name": "Generic PA @base", + "inherits": "fdm_filament_pa", + "from": "system", + "filament_id": "GPAB00", + "instantiation": "false", + "chamber_temperatures": [ + "60" + ], + "fan_cooling_layer_time": [ + "65" + ], + "fan_max_speed": [ + "85" + ], + "fan_min_speed": [ + "40" + ], + "filament_max_volumetric_speed": [ + "8" + ], + "nozzle_temperature": [ + "260" + ], + "nozzle_temperature_initial_layer": [ + "260" + ], + "nozzle_temperature_range_high": [ + "280" + ], + "nozzle_temperature_range_low": [ + "240" + ], + "overhang_fan_speed": [ + "95" + ], + "overhang_fan_threshold": [ + "10%" + ], + "required_nozzle_HRC": [ + "3" + ], + "slow_down_layer_time": [ + "8" + ], + "slow_down_min_speed": [ + "10" + ], + "filament_vendor": [ + "Generic" + ], + "filament_type": [ + "PA" + ] +} diff --git a/resources/profiles/Elegoo/filament/BASE/Generic PC @base.json b/resources/profiles/Elegoo/filament/BASE/Generic PC @base.json new file mode 100644 index 00000000000..71850f98a9b --- /dev/null +++ b/resources/profiles/Elegoo/filament/BASE/Generic PC @base.json @@ -0,0 +1,17 @@ +{ + "type": "filament", + "name": "Generic PC @base", + "inherits": "fdm_filament_pc", + "from": "system", + "filament_id": "GPCB00", + "instantiation": "false", + "filament_max_volumetric_speed": [ + "16" + ], + "filament_vendor": [ + "Generic" + ], + "filament_type": [ + "PC" + ] +} diff --git a/resources/profiles/Elegoo/filament/BASE/Generic PET @base.json b/resources/profiles/Elegoo/filament/BASE/Generic PET @base.json new file mode 100644 index 00000000000..61a6f03b961 --- /dev/null +++ b/resources/profiles/Elegoo/filament/BASE/Generic PET @base.json @@ -0,0 +1,71 @@ +{ + "type": "filament", + "name": "Generic PET @base", + "inherits": "fdm_filament_pet", + "from": "system", + "filament_id": "GPETB00", + "instantiation": "false", + "filament_vendor": [ + "Generic" + ], + "filament_type": [ + "PET" + ], + "cool_plate_temp": [ + "0" + ], + "cool_plate_temp_initial_layer": [ + "0" + ], + "eng_plate_temp": [ + "70" + ], + "eng_plate_temp_initial_layer": [ + "70" + ], + "fan_cooling_layer_time": [ + "30" + ], + "fan_max_speed": [ + "90" + ], + "fan_min_speed": [ + "40" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "hot_plate_temp": [ + "70" + ], + "hot_plate_temp_initial_layer": [ + "70" + ], + "nozzle_temperature_range_high": [ + "270" + ], + "overhang_fan_speed": [ + "90" + ], + "overhang_fan_threshold": [ + "10%" + ], + "slow_down_layer_time": [ + "12" + ], + "slow_down_min_speed": [ + "20" + ], + "textured_plate_temp": [ + "70" + ], + "textured_plate_temp_initial_layer": [ + "70" + ], + "filament_start_gcode": [ + "; Filament start gcode\n" + ], + "filament_end_gcode": [ + "; filament end gcode \n" + ] +} diff --git a/resources/profiles/Elegoo/filament/BASE/Generic PETG @base.json b/resources/profiles/Elegoo/filament/BASE/Generic PETG @base.json new file mode 100644 index 00000000000..046d0dab902 --- /dev/null +++ b/resources/profiles/Elegoo/filament/BASE/Generic PETG @base.json @@ -0,0 +1,71 @@ +{ + "type": "filament", + "name": "Generic PETG @base", + "inherits": "fdm_filament_pet", + "from": "system", + "filament_id": "GPETGB00", + "instantiation": "false", + "cool_plate_temp": [ + "0" + ], + "cool_plate_temp_initial_layer": [ + "0" + ], + "eng_plate_temp": [ + "70" + ], + "eng_plate_temp_initial_layer": [ + "70" + ], + "fan_cooling_layer_time": [ + "30" + ], + "fan_max_speed": [ + "90" + ], + "fan_min_speed": [ + "40" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "hot_plate_temp": [ + "70" + ], + "hot_plate_temp_initial_layer": [ + "70" + ], + "nozzle_temperature_range_high": [ + "270" + ], + "overhang_fan_speed": [ + "90" + ], + "overhang_fan_threshold": [ + "10%" + ], + "slow_down_layer_time": [ + "12" + ], + "slow_down_min_speed": [ + "20" + ], + "textured_plate_temp": [ + "70" + ], + "textured_plate_temp_initial_layer": [ + "70" + ], + "filament_start_gcode": [ + "; Filament start gcode\n" + ], + "filament_end_gcode": [ + "; filament end gcode \n" + ], + "filament_vendor": [ + "Generic" + ], + "filament_type": [ + "PETG" + ] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA Silk @base.json b/resources/profiles/Elegoo/filament/BASE/Generic PLA @base.json similarity index 57% rename from resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA Silk @base.json rename to resources/profiles/Elegoo/filament/BASE/Generic PLA @base.json index 20062e9c39a..b9b1b0299c1 100644 --- a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA Silk @base.json +++ b/resources/profiles/Elegoo/filament/BASE/Generic PLA @base.json @@ -1,27 +1,21 @@ { "type": "filament", - "name": "Elegoo PLA Silk @base", + "name": "Generic PLA @base", "inherits": "fdm_filament_pla", "from": "system", - "filament_id": "EPLASB00", + "filament_id": "GPLAB00", "instantiation": "false", - "filament_cost": [ - "0" - ], "filament_density": [ - "1.32" - ], - "filament_vendor": [ - "Elegoo" + "1.25" ], "filament_max_volumetric_speed": [ "16" ], - "nozzle_temperature": [ - "230" + "filament_vendor": [ + "Generic" ], - "nozzle_temperature_initial_layer": [ - "230" + "filament_type": [ + "PLA" ], "filament_start_gcode": [ "; filament start gcode\n" diff --git a/resources/profiles/Elegoo/filament/EC/Elegoo ABS @EC.json b/resources/profiles/Elegoo/filament/EC/Elegoo ABS @EC.json new file mode 100644 index 00000000000..f9dc2c1fbf6 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EC/Elegoo ABS @EC.json @@ -0,0 +1,29 @@ +{ + "type": "filament", + "name": "Elegoo ABS @EC", + "inherits": "Elegoo ABS @base", + "from": "system", + "setting_id": "EABSEC", + "instantiation": "true", + "fan_max_speed": [ + "40" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "pressure_advance": [ + "0.024" + ], + "nozzle_temperature": [ + "270" + ], + "nozzle_temperature_initial_layer": [ + "270" + ], + "compatible_printers": [ + "Elegoo Centauri 0.2 nozzle", + "Elegoo Centauri 0.4 nozzle", + "Elegoo Centauri 0.6 nozzle", + "Elegoo Centauri 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EC/Elegoo ASA @EC.json b/resources/profiles/Elegoo/filament/EC/Elegoo ASA @EC.json index b10be9fd9e8..0ce8f444fc9 100644 --- a/resources/profiles/Elegoo/filament/EC/Elegoo ASA @EC.json +++ b/resources/profiles/Elegoo/filament/EC/Elegoo ASA @EC.json @@ -15,6 +15,7 @@ "270" ], "compatible_printers": [ + "Elegoo Centauri 0.2 nozzle", "Elegoo Centauri 0.4 nozzle", "Elegoo Centauri 0.6 nozzle", "Elegoo Centauri 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/EC/Elegoo PAHT-CF @EC.json b/resources/profiles/Elegoo/filament/EC/Elegoo PAHT-CF @EC.json new file mode 100644 index 00000000000..9f0760d492d --- /dev/null +++ b/resources/profiles/Elegoo/filament/EC/Elegoo PAHT-CF @EC.json @@ -0,0 +1,71 @@ +{ + "type": "filament", + "name": "Elegoo PAHT-CF @EC", + "inherits": "Elegoo PAHT @base", + "from": "system", + "setting_id": "EPAHTCFEC", + "instantiation": "true", + "close_fan_the_first_x_layers": [ + "3" + ], + "fan_cooling_layer_time": [ + "5" + ], + "fan_max_speed": [ + "30" + ], + "fan_min_speed": [ + "10" + ], + "filament_flow_ratio": [ + "0.96" + ], + "filament_max_volumetric_speed": [ + "8" + ], + "nozzle_temperature": [ + "290" + ], + "nozzle_temperature_initial_layer": [ + "290" + ], + "nozzle_temperature_range_high": [ + "290" + ], + "nozzle_temperature_range_low": [ + "260" + ], + "overhang_fan_speed": [ + "40" + ], + "overhang_fan_threshold": [ + "0%" + ], + "reduce_fan_stop_start_freq": [ + "0" + ], + "slow_down_layer_time": [ + "2" + ], + "slow_down_min_speed": [ + "10" + ], + "textured_plate_temp": [ + "100" + ], + "textured_plate_temp_initial_layer": [ + "100" + ], + "pressure_advance": [ + "0.024" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [ + "Elegoo Centauri 0.2 nozzle", + "Elegoo Centauri 0.4 nozzle", + "Elegoo Centauri 0.6 nozzle", + "Elegoo Centauri 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EC/Elegoo PC @EC.json b/resources/profiles/Elegoo/filament/EC/Elegoo PC @EC.json new file mode 100644 index 00000000000..82ec99e6a07 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EC/Elegoo PC @EC.json @@ -0,0 +1,56 @@ +{ + "type": "filament", + "name": "Elegoo PC @EC", + "inherits": "Elegoo PC @base", + "from": "system", + "setting_id": "EPCEC", + "instantiation": "true", + "pressure_advance": [ + "0.024" + ], + "nozzle_temperature": [ + "270" + ], + "nozzle_temperature_initial_layer": [ + "270" + ], + "nozzle_temperature_range_high": [ + "270" + ], + "nozzle_temperature_range_low": [ + "250" + ], + "overhang_fan_threshold": [ + "25%" + ], + "slow_down_layer_time": [ + "6" + ], + "textured_plate_temp": [ + "100" + ], + "textured_plate_temp_initial_layer": [ + "100" + ], + "fan_cooling_layer_time": [ + "30" + ], + "fan_max_speed": [ + "35" + ], + "fan_min_speed": [ + "10" + ], + "filament_max_volumetric_speed": [ + "16" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [ + "Elegoo Centauri 0.2 nozzle", + "Elegoo Centauri 0.4 nozzle", + "Elegoo Centauri 0.6 nozzle", + "Elegoo Centauri 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EC/Elegoo PC-FR @EC.json b/resources/profiles/Elegoo/filament/EC/Elegoo PC-FR @EC.json new file mode 100644 index 00000000000..2bf1299fead --- /dev/null +++ b/resources/profiles/Elegoo/filament/EC/Elegoo PC-FR @EC.json @@ -0,0 +1,41 @@ +{ + "type": "filament", + "name": "Elegoo PC-FR @EC", + "inherits": "Elegoo PC @base", + "from": "system", + "setting_id": "EPCFREC", + "instantiation": "true", + "pressure_advance": [ + "0.024" + ], + "nozzle_temperature": [ + "280" + ], + "nozzle_temperature_initial_layer": [ + "280" + ], + "nozzle_temperature_range_high": [ + "290" + ], + "nozzle_temperature_range_low": [ + "260" + ], + "slow_down_layer_time": [ + "10" + ], + "fan_max_speed": [ + "40" + ], + "filament_density": [ + "1.1" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "compatible_printers": [ + "Elegoo Centauri 0.2 nozzle", + "Elegoo Centauri 0.4 nozzle", + "Elegoo Centauri 0.6 nozzle", + "Elegoo Centauri 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EC/Elegoo PETG @EC.json b/resources/profiles/Elegoo/filament/EC/Elegoo PETG @EC.json new file mode 100644 index 00000000000..4c9c7ffadc8 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EC/Elegoo PETG @EC.json @@ -0,0 +1,29 @@ +{ + "type": "filament", + "name": "Elegoo PETG @EC", + "inherits": "Elegoo PETG @base", + "from": "system", + "setting_id": "EPETGEC", + "instantiation": "true", + "pressure_advance": [ + "0.024" + ], + "overhang_fan_threshold": [ + "50%" + ], + "nozzle_temperature": [ + "250" + ], + "nozzle_temperature_initial_layer": [ + "250" + ], + "filament_max_volumetric_speed": [ + "11" + ], + "compatible_printers": [ + "Elegoo Centauri 0.2 nozzle", + "Elegoo Centauri 0.4 nozzle", + "Elegoo Centauri 0.6 nozzle", + "Elegoo Centauri 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EC/Elegoo PETG PRO @EC.json b/resources/profiles/Elegoo/filament/EC/Elegoo PETG PRO @EC.json index 8719208ea67..a9bc6b32eaf 100644 --- a/resources/profiles/Elegoo/filament/EC/Elegoo PETG PRO @EC.json +++ b/resources/profiles/Elegoo/filament/EC/Elegoo PETG PRO @EC.json @@ -1,14 +1,18 @@ { "type": "filament", "name": "Elegoo PETG PRO @EC", - "inherits": "Elegoo PETG PRO @base", + "inherits": "Elegoo PETG @base", "from": "system", "setting_id": "EPETGPROEC", "instantiation": "true", "pressure_advance": [ "0.024" ], + "overhang_fan_threshold": [ + "50%" + ], "compatible_printers": [ + "Elegoo Centauri 0.2 nozzle", "Elegoo Centauri 0.4 nozzle", "Elegoo Centauri 0.6 nozzle", "Elegoo Centauri 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/EC/Elegoo PETG Translucent @EC.json b/resources/profiles/Elegoo/filament/EC/Elegoo PETG Translucent @EC.json new file mode 100644 index 00000000000..8c4f9aa94d2 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EC/Elegoo PETG Translucent @EC.json @@ -0,0 +1,29 @@ +{ + "type": "filament", + "name": "Elegoo PETG Translucent @EC", + "inherits": "Elegoo PETG @base", + "from": "system", + "setting_id": "EPETGTRANSEC", + "instantiation": "true", + "pressure_advance": [ + "0.024" + ], + "fan_max_speed": [ + "35" + ], + "filament_max_volumetric_speed": [ + "10" + ], + "nozzle_temperature": [ + "255" + ], + "nozzle_temperature_initial_layer": [ + "255" + ], + "compatible_printers": [ + "Elegoo Centauri 0.2 nozzle", + "Elegoo Centauri 0.4 nozzle", + "Elegoo Centauri 0.6 nozzle", + "Elegoo Centauri 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EC/Elegoo PETG-CF @EC.json b/resources/profiles/Elegoo/filament/EC/Elegoo PETG-CF @EC.json new file mode 100644 index 00000000000..be07c0a6ac6 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EC/Elegoo PETG-CF @EC.json @@ -0,0 +1,44 @@ +{ + "type": "filament", + "name": "Elegoo PETG-CF @EC", + "inherits": "Elegoo PETG @base", + "from": "system", + "setting_id": "EPETGCFEC", + "instantiation": "true", + "pressure_advance": [ + "0.024" + ], + "filament_density": [ + "1.26" + ], + "nozzle_temperature": [ + "250" + ], + "nozzle_temperature_initial_layer": [ + "250" + ], + "fan_max_speed": [ + "40" + ], + "fan_min_speed": [ + "5" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "nozzle_temperature_range_low": [ + "240" + ], + "overhang_fan_speed": [ + "100" + ], + "slow_down_layer_time": [ + "6" + ], + "compatible_printers": [ + "Elegoo Centauri 0.2 nozzle", + "Elegoo Centauri 0.4 nozzle", + "Elegoo Centauri 0.6 nozzle", + "Elegoo Centauri 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EC/Elegoo PETG-GF @EC.json b/resources/profiles/Elegoo/filament/EC/Elegoo PETG-GF @EC.json new file mode 100644 index 00000000000..1237af2f27f --- /dev/null +++ b/resources/profiles/Elegoo/filament/EC/Elegoo PETG-GF @EC.json @@ -0,0 +1,44 @@ +{ + "type": "filament", + "name": "Elegoo PETG-GF @EC", + "inherits": "Elegoo PETG @base", + "from": "system", + "setting_id": "EPETGFEC", + "instantiation": "true", + "pressure_advance": [ + "0.024" + ], + "filament_density": [ + "1.26" + ], + "nozzle_temperature": [ + "250" + ], + "nozzle_temperature_initial_layer": [ + "250" + ], + "fan_max_speed": [ + "40" + ], + "fan_min_speed": [ + "5" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "nozzle_temperature_range_low": [ + "240" + ], + "overhang_fan_speed": [ + "100" + ], + "slow_down_layer_time": [ + "6" + ], + "compatible_printers": [ + "Elegoo Centauri 0.2 nozzle", + "Elegoo Centauri 0.4 nozzle", + "Elegoo Centauri 0.6 nozzle", + "Elegoo Centauri 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EC/Elegoo PLA @EC.json b/resources/profiles/Elegoo/filament/EC/Elegoo PLA @EC.json index c80383d1c56..7bb71e473a6 100644 --- a/resources/profiles/Elegoo/filament/EC/Elegoo PLA @EC.json +++ b/resources/profiles/Elegoo/filament/EC/Elegoo PLA @EC.json @@ -24,6 +24,7 @@ "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" ], "compatible_printers": [ + "Elegoo Centauri 0.2 nozzle", "Elegoo Centauri 0.4 nozzle", "Elegoo Centauri 0.6 nozzle", "Elegoo Centauri 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/EC/Elegoo PLA Basic @EC.json b/resources/profiles/Elegoo/filament/EC/Elegoo PLA Basic @EC.json new file mode 100644 index 00000000000..90d947c038b --- /dev/null +++ b/resources/profiles/Elegoo/filament/EC/Elegoo PLA Basic @EC.json @@ -0,0 +1,35 @@ +{ + "type": "filament", + "name": "Elegoo PLA Basic @EC", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLABASICEC", + "instantiation": "true", + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "filament_max_volumetric_speed": [ + "21" + ], + "pressure_advance": [ + "0.024" + ], + "slow_down_layer_time": [ + "4" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [ + "Elegoo Centauri 0.2 nozzle", + "Elegoo Centauri 0.4 nozzle", + "Elegoo Centauri 0.6 nozzle", + "Elegoo Centauri 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EC/Elegoo PLA Galaxy @EC.json b/resources/profiles/Elegoo/filament/EC/Elegoo PLA Galaxy @EC.json new file mode 100644 index 00000000000..0aa51d0cafa --- /dev/null +++ b/resources/profiles/Elegoo/filament/EC/Elegoo PLA Galaxy @EC.json @@ -0,0 +1,38 @@ +{ + "type": "filament", + "name": "Elegoo PLA Galaxy @EC", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLAGALAXYEC", + "instantiation": "true", + "fan_min_speed": [ + "80" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature_range_high": [ + "220" + ], + "pressure_advance": [ + "0.024" + ], + "slow_down_layer_time": [ + "4" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [ + "Elegoo Centauri 0.2 nozzle", + "Elegoo Centauri 0.4 nozzle", + "Elegoo Centauri 0.6 nozzle", + "Elegoo Centauri 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EC/Elegoo PLA Marble @EC.json b/resources/profiles/Elegoo/filament/EC/Elegoo PLA Marble @EC.json new file mode 100644 index 00000000000..47174d4fa36 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EC/Elegoo PLA Marble @EC.json @@ -0,0 +1,38 @@ +{ + "type": "filament", + "name": "Elegoo PLA Marble @EC", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLAMARBLEEC", + "instantiation": "true", + "fan_min_speed": [ + "80" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature_range_high": [ + "220" + ], + "pressure_advance": [ + "0.024" + ], + "slow_down_layer_time": [ + "4" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [ + "Elegoo Centauri 0.2 nozzle", + "Elegoo Centauri 0.4 nozzle", + "Elegoo Centauri 0.6 nozzle", + "Elegoo Centauri 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EC/Elegoo PLA Matte @EC.json b/resources/profiles/Elegoo/filament/EC/Elegoo PLA Matte @EC.json index 60226db181e..3ae43990526 100644 --- a/resources/profiles/Elegoo/filament/EC/Elegoo PLA Matte @EC.json +++ b/resources/profiles/Elegoo/filament/EC/Elegoo PLA Matte @EC.json @@ -1,7 +1,7 @@ { "type": "filament", "name": "Elegoo PLA Matte @EC", - "inherits": "Elegoo PLA Matte @base", + "inherits": "Elegoo PLA @base", "from": "system", "setting_id": "EPLAMEC", "instantiation": "true", @@ -35,10 +35,14 @@ "pressure_advance": [ "0.024" ], + "filament_density": [ + "1.25" + ], "filament_start_gcode": [ "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" ], "compatible_printers": [ + "Elegoo Centauri 0.2 nozzle", "Elegoo Centauri 0.4 nozzle", "Elegoo Centauri 0.6 nozzle", "Elegoo Centauri 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/EC/Elegoo PLA PRO @EC.json b/resources/profiles/Elegoo/filament/EC/Elegoo PLA PRO @EC.json index 6b39f40ca9e..0cc360b9943 100644 --- a/resources/profiles/Elegoo/filament/EC/Elegoo PLA PRO @EC.json +++ b/resources/profiles/Elegoo/filament/EC/Elegoo PLA PRO @EC.json @@ -18,6 +18,7 @@ "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" ], "compatible_printers": [ + "Elegoo Centauri 0.2 nozzle", "Elegoo Centauri 0.4 nozzle", "Elegoo Centauri 0.6 nozzle", "Elegoo Centauri 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/EC/Elegoo PLA Silk @EC.json b/resources/profiles/Elegoo/filament/EC/Elegoo PLA Silk @EC.json index 3ae634ea973..ad549484e3c 100644 --- a/resources/profiles/Elegoo/filament/EC/Elegoo PLA Silk @EC.json +++ b/resources/profiles/Elegoo/filament/EC/Elegoo PLA Silk @EC.json @@ -1,7 +1,7 @@ { "type": "filament", "name": "Elegoo PLA Silk @EC", - "inherits": "Elegoo PLA Silk @base", + "inherits": "Elegoo PLA @base", "from": "system", "setting_id": "EPLASEC", "instantiation": "true", @@ -32,10 +32,20 @@ "pressure_advance": [ "0.024" ], + "filament_density": [ + "1.32" + ], + "nozzle_temperature": [ + "230" + ], + "nozzle_temperature_initial_layer": [ + "230" + ], "filament_start_gcode": [ "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" ], "compatible_printers": [ + "Elegoo Centauri 0.2 nozzle", "Elegoo Centauri 0.4 nozzle", "Elegoo Centauri 0.6 nozzle", "Elegoo Centauri 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/EC/Elegoo PLA Sparkle @EC.json b/resources/profiles/Elegoo/filament/EC/Elegoo PLA Sparkle @EC.json new file mode 100644 index 00000000000..e261cfbd624 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EC/Elegoo PLA Sparkle @EC.json @@ -0,0 +1,38 @@ +{ + "type": "filament", + "name": "Elegoo PLA Sparkle @EC", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLASPARKLEEC", + "instantiation": "true", + "fan_min_speed": [ + "80" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature_range_high": [ + "220" + ], + "pressure_advance": [ + "0.024" + ], + "slow_down_layer_time": [ + "4" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [ + "Elegoo Centauri 0.2 nozzle", + "Elegoo Centauri 0.4 nozzle", + "Elegoo Centauri 0.6 nozzle", + "Elegoo Centauri 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EC/Elegoo PLA Wood @EC.json b/resources/profiles/Elegoo/filament/EC/Elegoo PLA Wood @EC.json new file mode 100644 index 00000000000..bab8194d05e --- /dev/null +++ b/resources/profiles/Elegoo/filament/EC/Elegoo PLA Wood @EC.json @@ -0,0 +1,38 @@ +{ + "type": "filament", + "name": "Elegoo PLA Wood @EC", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLAWOODEC", + "instantiation": "true", + "fan_min_speed": [ + "80" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature_range_low": [ + "200" + ], + "pressure_advance": [ + "0.024" + ], + "slow_down_layer_time": [ + "4" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [ + "Elegoo Centauri 0.2 nozzle", + "Elegoo Centauri 0.4 nozzle", + "Elegoo Centauri 0.6 nozzle", + "Elegoo Centauri 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EC/Elegoo PLA+ @EC.json b/resources/profiles/Elegoo/filament/EC/Elegoo PLA+ @EC.json index e37a5b261fa..af2922966d8 100644 --- a/resources/profiles/Elegoo/filament/EC/Elegoo PLA+ @EC.json +++ b/resources/profiles/Elegoo/filament/EC/Elegoo PLA+ @EC.json @@ -18,6 +18,7 @@ "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" ], "compatible_printers": [ + "Elegoo Centauri 0.2 nozzle", "Elegoo Centauri 0.4 nozzle", "Elegoo Centauri 0.6 nozzle", "Elegoo Centauri 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/EC/Elegoo Rapid PETG @EC.json b/resources/profiles/Elegoo/filament/EC/Elegoo Rapid PETG @EC.json index 610751d6215..f900f7b64b0 100644 --- a/resources/profiles/Elegoo/filament/EC/Elegoo Rapid PETG @EC.json +++ b/resources/profiles/Elegoo/filament/EC/Elegoo Rapid PETG @EC.json @@ -2,14 +2,33 @@ "type": "filament", "name": "Elegoo Rapid PETG @EC", "renamed_from": "Elegoo RAPID PETG @EC", - "inherits": "Elegoo Rapid PETG @base", + "inherits": "Elegoo PETG @base", "from": "system", "setting_id": "ERPETGEC", "instantiation": "true", "pressure_advance": [ "0.024" ], + "fan_max_speed": [ + "80" + ], + "fan_min_speed": [ + "30" + ], + "filament_density": [ + "1.26" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "nozzle_temperature": [ + "250" + ], + "nozzle_temperature_initial_layer": [ + "250" + ], "compatible_printers": [ + "Elegoo Centauri 0.2 nozzle", "Elegoo Centauri 0.4 nozzle", "Elegoo Centauri 0.6 nozzle", "Elegoo Centauri 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/EC/Elegoo Rapid PLA+ @EC.json b/resources/profiles/Elegoo/filament/EC/Elegoo Rapid PLA+ @EC.json index 2e7c4c9f830..72de3074854 100644 --- a/resources/profiles/Elegoo/filament/EC/Elegoo Rapid PLA+ @EC.json +++ b/resources/profiles/Elegoo/filament/EC/Elegoo Rapid PLA+ @EC.json @@ -2,7 +2,7 @@ "type": "filament", "name": "Elegoo Rapid PLA+ @EC", "renamed_from": "Elegoo RAPID PLA+ @EC", - "inherits": "Elegoo Rapid PLA+ @base", + "inherits": "Elegoo PLA @base", "from": "system", "setting_id": "ERPLAPLUSEC", "instantiation": "true", @@ -15,9 +15,6 @@ "fan_min_speed": [ "60" ], - "filament_max_volumetric_speed": [ - "21" - ], "hot_plate_temp": [ "60" ], @@ -36,10 +33,17 @@ "pressure_advance": [ "0.024" ], + "filament_max_volumetric_speed": [ + "21" + ], + "filament_density": [ + "1.25" + ], "filament_start_gcode": [ "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" ], "compatible_printers": [ + "Elegoo Centauri 0.2 nozzle", "Elegoo Centauri 0.4 nozzle", "Elegoo Centauri 0.6 nozzle", "Elegoo Centauri 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/EC/Elegoo Rapid TPU 95A @EC.json b/resources/profiles/Elegoo/filament/EC/Elegoo Rapid TPU 95A @EC.json new file mode 100644 index 00000000000..18b7416471d --- /dev/null +++ b/resources/profiles/Elegoo/filament/EC/Elegoo Rapid TPU 95A @EC.json @@ -0,0 +1,30 @@ +{ + "type": "filament", + "name": "Elegoo Rapid TPU 95A @EC", + "renamed_from": "Elegoo RAPID TPU 95A @EC", + "inherits": "Elegoo TPU @base", + "from": "system", + "setting_id": "ERTPU95AEC", + "instantiation": "true", + "pressure_advance": [ + "0.024" + ], + "nozzle_temperature": [ + "230" + ], + "nozzle_temperature_initial_layer": [ + "230" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "compatible_printers": [ + "Elegoo Centauri 0.2 nozzle", + "Elegoo Centauri 0.4 nozzle", + "Elegoo Centauri 0.6 nozzle", + "Elegoo Centauri 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EC/Elegoo TPU 95A @EC.json b/resources/profiles/Elegoo/filament/EC/Elegoo TPU 95A @EC.json index 94d5c8c2afb..815b8dbca1f 100644 --- a/resources/profiles/Elegoo/filament/EC/Elegoo TPU 95A @EC.json +++ b/resources/profiles/Elegoo/filament/EC/Elegoo TPU 95A @EC.json @@ -1,7 +1,7 @@ { "type": "filament", "name": "Elegoo TPU 95A @EC", - "inherits": "Elegoo TPU 95A @base", + "inherits": "Elegoo TPU @base", "from": "system", "setting_id": "ETPU95AEC", "instantiation": "true", @@ -12,6 +12,7 @@ "0.024" ], "compatible_printers": [ + "Elegoo Centauri 0.2 nozzle", "Elegoo Centauri 0.4 nozzle", "Elegoo Centauri 0.6 nozzle", "Elegoo Centauri 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/ECC/Elegoo ABS @ECC.json b/resources/profiles/Elegoo/filament/ECC/Elegoo ABS @ECC.json new file mode 100644 index 00000000000..919a4fb9dc3 --- /dev/null +++ b/resources/profiles/Elegoo/filament/ECC/Elegoo ABS @ECC.json @@ -0,0 +1,29 @@ +{ + "type": "filament", + "name": "Elegoo ABS @ECC", + "inherits": "Elegoo ABS @base", + "from": "system", + "setting_id": "EABSECC", + "instantiation": "true", + "fan_max_speed": [ + "40" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "pressure_advance": [ + "0.024" + ], + "nozzle_temperature": [ + "270" + ], + "nozzle_temperature_initial_layer": [ + "270" + ], + "compatible_printers": [ + "Elegoo Centauri Carbon 0.2 nozzle", + "Elegoo Centauri Carbon 0.4 nozzle", + "Elegoo Centauri Carbon 0.6 nozzle", + "Elegoo Centauri Carbon 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/ECC/Elegoo ASA @ECC.json b/resources/profiles/Elegoo/filament/ECC/Elegoo ASA @ECC.json index e12902f24cb..a8d8d6c6026 100644 --- a/resources/profiles/Elegoo/filament/ECC/Elegoo ASA @ECC.json +++ b/resources/profiles/Elegoo/filament/ECC/Elegoo ASA @ECC.json @@ -15,6 +15,7 @@ "270" ], "compatible_printers": [ + "Elegoo Centauri Carbon 0.2 nozzle", "Elegoo Centauri Carbon 0.4 nozzle", "Elegoo Centauri Carbon 0.6 nozzle", "Elegoo Centauri Carbon 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/ECC/Elegoo PAHT-CF @ECC.json b/resources/profiles/Elegoo/filament/ECC/Elegoo PAHT-CF @ECC.json new file mode 100644 index 00000000000..369b51592cd --- /dev/null +++ b/resources/profiles/Elegoo/filament/ECC/Elegoo PAHT-CF @ECC.json @@ -0,0 +1,71 @@ +{ + "type": "filament", + "name": "Elegoo PAHT-CF @ECC", + "inherits": "Elegoo PAHT @base", + "from": "system", + "setting_id": "EPAHTCFECC", + "instantiation": "true", + "close_fan_the_first_x_layers": [ + "3" + ], + "fan_cooling_layer_time": [ + "5" + ], + "fan_max_speed": [ + "30" + ], + "fan_min_speed": [ + "10" + ], + "filament_flow_ratio": [ + "0.96" + ], + "filament_max_volumetric_speed": [ + "8" + ], + "nozzle_temperature": [ + "290" + ], + "nozzle_temperature_initial_layer": [ + "290" + ], + "nozzle_temperature_range_high": [ + "290" + ], + "nozzle_temperature_range_low": [ + "260" + ], + "overhang_fan_speed": [ + "40" + ], + "overhang_fan_threshold": [ + "0%" + ], + "reduce_fan_stop_start_freq": [ + "0" + ], + "slow_down_layer_time": [ + "2" + ], + "slow_down_min_speed": [ + "10" + ], + "textured_plate_temp": [ + "100" + ], + "textured_plate_temp_initial_layer": [ + "100" + ], + "pressure_advance": [ + "0.024" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [ + "Elegoo Centauri Carbon 0.2 nozzle", + "Elegoo Centauri Carbon 0.4 nozzle", + "Elegoo Centauri Carbon 0.6 nozzle", + "Elegoo Centauri Carbon 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/ECC/Elegoo PC @ECC.json b/resources/profiles/Elegoo/filament/ECC/Elegoo PC @ECC.json new file mode 100644 index 00000000000..feb0cbab66b --- /dev/null +++ b/resources/profiles/Elegoo/filament/ECC/Elegoo PC @ECC.json @@ -0,0 +1,56 @@ +{ + "type": "filament", + "name": "Elegoo PC @ECC", + "inherits": "Elegoo PC @base", + "from": "system", + "setting_id": "EPCECC", + "instantiation": "true", + "pressure_advance": [ + "0.024" + ], + "nozzle_temperature": [ + "270" + ], + "nozzle_temperature_initial_layer": [ + "270" + ], + "nozzle_temperature_range_high": [ + "270" + ], + "nozzle_temperature_range_low": [ + "250" + ], + "overhang_fan_threshold": [ + "25%" + ], + "slow_down_layer_time": [ + "6" + ], + "textured_plate_temp": [ + "100" + ], + "textured_plate_temp_initial_layer": [ + "100" + ], + "fan_cooling_layer_time": [ + "30" + ], + "fan_max_speed": [ + "35" + ], + "fan_min_speed": [ + "10" + ], + "filament_max_volumetric_speed": [ + "16" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [ + "Elegoo Centauri Carbon 0.2 nozzle", + "Elegoo Centauri Carbon 0.4 nozzle", + "Elegoo Centauri Carbon 0.6 nozzle", + "Elegoo Centauri Carbon 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/ECC/Elegoo PC-FR @ECC.json b/resources/profiles/Elegoo/filament/ECC/Elegoo PC-FR @ECC.json new file mode 100644 index 00000000000..fff4c522991 --- /dev/null +++ b/resources/profiles/Elegoo/filament/ECC/Elegoo PC-FR @ECC.json @@ -0,0 +1,41 @@ +{ + "type": "filament", + "name": "Elegoo PC-FR @ECC", + "inherits": "Elegoo PC @base", + "from": "system", + "setting_id": "EPCFRSECC", + "instantiation": "true", + "pressure_advance": [ + "0.024" + ], + "nozzle_temperature": [ + "280" + ], + "nozzle_temperature_initial_layer": [ + "280" + ], + "nozzle_temperature_range_high": [ + "290" + ], + "nozzle_temperature_range_low": [ + "260" + ], + "slow_down_layer_time": [ + "10" + ], + "fan_max_speed": [ + "40" + ], + "filament_density": [ + "1.1" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "compatible_printers": [ + "Elegoo Centauri Carbon 0.2 nozzle", + "Elegoo Centauri Carbon 0.4 nozzle", + "Elegoo Centauri Carbon 0.6 nozzle", + "Elegoo Centauri Carbon 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/ECC/Elegoo PETG @ECC.json b/resources/profiles/Elegoo/filament/ECC/Elegoo PETG @ECC.json new file mode 100644 index 00000000000..200d4ffac07 --- /dev/null +++ b/resources/profiles/Elegoo/filament/ECC/Elegoo PETG @ECC.json @@ -0,0 +1,29 @@ +{ + "type": "filament", + "name": "Elegoo PETG @ECC", + "inherits": "Elegoo PETG @base", + "from": "system", + "setting_id": "EPETGECC", + "instantiation": "true", + "pressure_advance": [ + "0.024" + ], + "overhang_fan_threshold": [ + "50%" + ], + "nozzle_temperature": [ + "250" + ], + "nozzle_temperature_initial_layer": [ + "250" + ], + "filament_max_volumetric_speed": [ + "11" + ], + "compatible_printers": [ + "Elegoo Centauri Carbon 0.2 nozzle", + "Elegoo Centauri Carbon 0.4 nozzle", + "Elegoo Centauri Carbon 0.6 nozzle", + "Elegoo Centauri Carbon 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/ECC/Elegoo PETG PRO @ECC.json b/resources/profiles/Elegoo/filament/ECC/Elegoo PETG PRO @ECC.json index 21df199cc9c..64700f002f6 100644 --- a/resources/profiles/Elegoo/filament/ECC/Elegoo PETG PRO @ECC.json +++ b/resources/profiles/Elegoo/filament/ECC/Elegoo PETG PRO @ECC.json @@ -1,14 +1,18 @@ { "type": "filament", "name": "Elegoo PETG PRO @ECC", - "inherits": "Elegoo PETG PRO @base", + "inherits": "Elegoo PETG @base", "from": "system", "setting_id": "EPETGPROECC", "instantiation": "true", "pressure_advance": [ "0.024" ], + "overhang_fan_threshold": [ + "50%" + ], "compatible_printers": [ + "Elegoo Centauri Carbon 0.2 nozzle", "Elegoo Centauri Carbon 0.4 nozzle", "Elegoo Centauri Carbon 0.6 nozzle", "Elegoo Centauri Carbon 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/ECC/Elegoo PETG Translucent @ECC.json b/resources/profiles/Elegoo/filament/ECC/Elegoo PETG Translucent @ECC.json new file mode 100644 index 00000000000..c9d7b2301ac --- /dev/null +++ b/resources/profiles/Elegoo/filament/ECC/Elegoo PETG Translucent @ECC.json @@ -0,0 +1,29 @@ +{ + "type": "filament", + "name": "Elegoo PETG Translucent @ECC", + "inherits": "Elegoo PETG @base", + "from": "system", + "setting_id": "EPETGTRANSECC", + "instantiation": "true", + "pressure_advance": [ + "0.024" + ], + "fan_max_speed": [ + "35" + ], + "filament_max_volumetric_speed": [ + "10" + ], + "nozzle_temperature": [ + "255" + ], + "nozzle_temperature_initial_layer": [ + "255" + ], + "compatible_printers": [ + "Elegoo Centauri Carbon 0.2 nozzle", + "Elegoo Centauri Carbon 0.4 nozzle", + "Elegoo Centauri Carbon 0.6 nozzle", + "Elegoo Centauri Carbon 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/ECC/Elegoo PETG-CF @ECC.json b/resources/profiles/Elegoo/filament/ECC/Elegoo PETG-CF @ECC.json new file mode 100644 index 00000000000..1d046fdcc14 --- /dev/null +++ b/resources/profiles/Elegoo/filament/ECC/Elegoo PETG-CF @ECC.json @@ -0,0 +1,44 @@ +{ + "type": "filament", + "name": "Elegoo PETG-CF @ECC", + "inherits": "Elegoo PETG @base", + "from": "system", + "setting_id": "EPETGCFECC", + "instantiation": "true", + "pressure_advance": [ + "0.024" + ], + "filament_density": [ + "1.26" + ], + "nozzle_temperature": [ + "250" + ], + "nozzle_temperature_initial_layer": [ + "250" + ], + "fan_max_speed": [ + "40" + ], + "fan_min_speed": [ + "5" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "nozzle_temperature_range_low": [ + "240" + ], + "overhang_fan_speed": [ + "100" + ], + "slow_down_layer_time": [ + "6" + ], + "compatible_printers": [ + "Elegoo Centauri Carbon 0.2 nozzle", + "Elegoo Centauri Carbon 0.4 nozzle", + "Elegoo Centauri Carbon 0.6 nozzle", + "Elegoo Centauri Carbon 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/ECC/Elegoo PETG-GF @ECC.json b/resources/profiles/Elegoo/filament/ECC/Elegoo PETG-GF @ECC.json new file mode 100644 index 00000000000..4d9798fa0e1 --- /dev/null +++ b/resources/profiles/Elegoo/filament/ECC/Elegoo PETG-GF @ECC.json @@ -0,0 +1,44 @@ +{ + "type": "filament", + "name": "Elegoo PETG-GF @ECC", + "inherits": "Elegoo PETG @base", + "from": "system", + "setting_id": "EPETGFECC", + "instantiation": "true", + "pressure_advance": [ + "0.024" + ], + "filament_density": [ + "1.26" + ], + "nozzle_temperature": [ + "250" + ], + "nozzle_temperature_initial_layer": [ + "250" + ], + "fan_max_speed": [ + "40" + ], + "fan_min_speed": [ + "5" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "nozzle_temperature_range_low": [ + "240" + ], + "overhang_fan_speed": [ + "100" + ], + "slow_down_layer_time": [ + "6" + ], + "compatible_printers": [ + "Elegoo Centauri Carbon 0.2 nozzle", + "Elegoo Centauri Carbon 0.4 nozzle", + "Elegoo Centauri Carbon 0.6 nozzle", + "Elegoo Centauri Carbon 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/ECC/Elegoo PLA @ECC.json b/resources/profiles/Elegoo/filament/ECC/Elegoo PLA @ECC.json index c9b28a0b16d..d8c24383e50 100644 --- a/resources/profiles/Elegoo/filament/ECC/Elegoo PLA @ECC.json +++ b/resources/profiles/Elegoo/filament/ECC/Elegoo PLA @ECC.json @@ -24,6 +24,7 @@ "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" ], "compatible_printers": [ + "Elegoo Centauri Carbon 0.2 nozzle", "Elegoo Centauri Carbon 0.4 nozzle", "Elegoo Centauri Carbon 0.6 nozzle", "Elegoo Centauri Carbon 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/ECC/Elegoo PLA Basic @ECC.json b/resources/profiles/Elegoo/filament/ECC/Elegoo PLA Basic @ECC.json new file mode 100644 index 00000000000..24f95617d1c --- /dev/null +++ b/resources/profiles/Elegoo/filament/ECC/Elegoo PLA Basic @ECC.json @@ -0,0 +1,35 @@ +{ + "type": "filament", + "name": "Elegoo PLA Basic @ECC", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLABASICECC", + "instantiation": "true", + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "filament_max_volumetric_speed": [ + "21" + ], + "pressure_advance": [ + "0.024" + ], + "slow_down_layer_time": [ + "4" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [ + "Elegoo Centauri Carbon 0.2 nozzle", + "Elegoo Centauri Carbon 0.4 nozzle", + "Elegoo Centauri Carbon 0.6 nozzle", + "Elegoo Centauri Carbon 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/ECC/Elegoo PLA Galaxy @ECC.json b/resources/profiles/Elegoo/filament/ECC/Elegoo PLA Galaxy @ECC.json new file mode 100644 index 00000000000..985b30cc8a3 --- /dev/null +++ b/resources/profiles/Elegoo/filament/ECC/Elegoo PLA Galaxy @ECC.json @@ -0,0 +1,38 @@ +{ + "type": "filament", + "name": "Elegoo PLA Galaxy @ECC", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLAGALAXYECC", + "instantiation": "true", + "fan_min_speed": [ + "80" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature_range_high": [ + "220" + ], + "pressure_advance": [ + "0.024" + ], + "slow_down_layer_time": [ + "4" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [ + "Elegoo Centauri Carbon 0.2 nozzle", + "Elegoo Centauri Carbon 0.4 nozzle", + "Elegoo Centauri Carbon 0.6 nozzle", + "Elegoo Centauri Carbon 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/ECC/Elegoo PLA Marble @ECC.json b/resources/profiles/Elegoo/filament/ECC/Elegoo PLA Marble @ECC.json new file mode 100644 index 00000000000..57987e18481 --- /dev/null +++ b/resources/profiles/Elegoo/filament/ECC/Elegoo PLA Marble @ECC.json @@ -0,0 +1,38 @@ +{ + "type": "filament", + "name": "Elegoo PLA Marble @ECC", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLAMARBLEECC", + "instantiation": "true", + "fan_min_speed": [ + "80" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature_range_high": [ + "220" + ], + "pressure_advance": [ + "0.024" + ], + "slow_down_layer_time": [ + "4" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [ + "Elegoo Centauri Carbon 0.2 nozzle", + "Elegoo Centauri Carbon 0.4 nozzle", + "Elegoo Centauri Carbon 0.6 nozzle", + "Elegoo Centauri Carbon 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/ECC/Elegoo PLA Matte @ECC.json b/resources/profiles/Elegoo/filament/ECC/Elegoo PLA Matte @ECC.json index 7208c685d82..e6c86c3accb 100644 --- a/resources/profiles/Elegoo/filament/ECC/Elegoo PLA Matte @ECC.json +++ b/resources/profiles/Elegoo/filament/ECC/Elegoo PLA Matte @ECC.json @@ -1,7 +1,7 @@ { "type": "filament", "name": "Elegoo PLA Matte @ECC", - "inherits": "Elegoo PLA Matte @base", + "inherits": "Elegoo PLA @base", "from": "system", "setting_id": "EPLAMECC", "instantiation": "true", @@ -35,10 +35,14 @@ "pressure_advance": [ "0.024" ], + "filament_density": [ + "1.25" + ], "filament_start_gcode": [ "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" ], "compatible_printers": [ + "Elegoo Centauri Carbon 0.2 nozzle", "Elegoo Centauri Carbon 0.4 nozzle", "Elegoo Centauri Carbon 0.6 nozzle", "Elegoo Centauri Carbon 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/ECC/Elegoo PLA PRO @ECC.json b/resources/profiles/Elegoo/filament/ECC/Elegoo PLA PRO @ECC.json index 364df460d6f..7748b9ba68a 100644 --- a/resources/profiles/Elegoo/filament/ECC/Elegoo PLA PRO @ECC.json +++ b/resources/profiles/Elegoo/filament/ECC/Elegoo PLA PRO @ECC.json @@ -18,6 +18,7 @@ "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" ], "compatible_printers": [ + "Elegoo Centauri Carbon 0.2 nozzle", "Elegoo Centauri Carbon 0.4 nozzle", "Elegoo Centauri Carbon 0.6 nozzle", "Elegoo Centauri Carbon 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/ECC/Elegoo PLA Silk @ECC.json b/resources/profiles/Elegoo/filament/ECC/Elegoo PLA Silk @ECC.json index 554ad02b38c..632e7becebe 100644 --- a/resources/profiles/Elegoo/filament/ECC/Elegoo PLA Silk @ECC.json +++ b/resources/profiles/Elegoo/filament/ECC/Elegoo PLA Silk @ECC.json @@ -1,7 +1,7 @@ { "type": "filament", "name": "Elegoo PLA Silk @ECC", - "inherits": "Elegoo PLA Silk @base", + "inherits": "Elegoo PLA @base", "from": "system", "setting_id": "EPLASECC", "instantiation": "true", @@ -32,10 +32,20 @@ "pressure_advance": [ "0.024" ], + "filament_density": [ + "1.32" + ], + "nozzle_temperature": [ + "230" + ], + "nozzle_temperature_initial_layer": [ + "230" + ], "filament_start_gcode": [ "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" ], "compatible_printers": [ + "Elegoo Centauri Carbon 0.2 nozzle", "Elegoo Centauri Carbon 0.4 nozzle", "Elegoo Centauri Carbon 0.6 nozzle", "Elegoo Centauri Carbon 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/ECC/Elegoo PLA Sparkle @ECC.json b/resources/profiles/Elegoo/filament/ECC/Elegoo PLA Sparkle @ECC.json new file mode 100644 index 00000000000..10ce75ed7fb --- /dev/null +++ b/resources/profiles/Elegoo/filament/ECC/Elegoo PLA Sparkle @ECC.json @@ -0,0 +1,38 @@ +{ + "type": "filament", + "name": "Elegoo PLA Sparkle @ECC", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLASPARKLEECC", + "instantiation": "true", + "fan_min_speed": [ + "80" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature_range_high": [ + "220" + ], + "pressure_advance": [ + "0.024" + ], + "slow_down_layer_time": [ + "4" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [ + "Elegoo Centauri Carbon 0.2 nozzle", + "Elegoo Centauri Carbon 0.4 nozzle", + "Elegoo Centauri Carbon 0.6 nozzle", + "Elegoo Centauri Carbon 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/ECC/Elegoo PLA Wood @ECC.json b/resources/profiles/Elegoo/filament/ECC/Elegoo PLA Wood @ECC.json new file mode 100644 index 00000000000..5b425257c1e --- /dev/null +++ b/resources/profiles/Elegoo/filament/ECC/Elegoo PLA Wood @ECC.json @@ -0,0 +1,38 @@ +{ + "type": "filament", + "name": "Elegoo PLA Wood @ECC", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLAWOODECC", + "instantiation": "true", + "fan_min_speed": [ + "80" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature_range_low": [ + "200" + ], + "pressure_advance": [ + "0.024" + ], + "slow_down_layer_time": [ + "4" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [ + "Elegoo Centauri Carbon 0.2 nozzle", + "Elegoo Centauri Carbon 0.4 nozzle", + "Elegoo Centauri Carbon 0.6 nozzle", + "Elegoo Centauri Carbon 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/ECC/Elegoo PLA+ @ECC.json b/resources/profiles/Elegoo/filament/ECC/Elegoo PLA+ @ECC.json index b1d24a5ddde..742e5e9b8e1 100644 --- a/resources/profiles/Elegoo/filament/ECC/Elegoo PLA+ @ECC.json +++ b/resources/profiles/Elegoo/filament/ECC/Elegoo PLA+ @ECC.json @@ -18,6 +18,7 @@ "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" ], "compatible_printers": [ + "Elegoo Centauri Carbon 0.2 nozzle", "Elegoo Centauri Carbon 0.4 nozzle", "Elegoo Centauri Carbon 0.6 nozzle", "Elegoo Centauri Carbon 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/ECC/Elegoo PLA-CF @ECC.json b/resources/profiles/Elegoo/filament/ECC/Elegoo PLA-CF @ECC.json index a5ab11334b1..fcde3033331 100644 --- a/resources/profiles/Elegoo/filament/ECC/Elegoo PLA-CF @ECC.json +++ b/resources/profiles/Elegoo/filament/ECC/Elegoo PLA-CF @ECC.json @@ -1,7 +1,7 @@ { "type": "filament", "name": "Elegoo PLA-CF @ECC", - "inherits": "Elegoo PLA-CF @base", + "inherits": "Elegoo PLA @base", "from": "system", "setting_id": "EPLACFECC", "instantiation": "true", @@ -35,10 +35,26 @@ "pressure_advance": [ "0.024" ], + "additional_cooling_fan_speed": [ + "0" + ], + "cool_plate_temp": [ + "45" + ], + "cool_plate_temp_initial_layer": [ + "45" + ], + "filament_density": [ + "1.21" + ], + "required_nozzle_HRC": [ + "40" + ], "filament_start_gcode": [ "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" ], "compatible_printers": [ + "Elegoo Centauri Carbon 0.2 nozzle", "Elegoo Centauri Carbon 0.4 nozzle", "Elegoo Centauri Carbon 0.6 nozzle", "Elegoo Centauri Carbon 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/ECC/Elegoo Rapid PETG @ECC.json b/resources/profiles/Elegoo/filament/ECC/Elegoo Rapid PETG @ECC.json index 9fc44c35636..28a5b9054d2 100644 --- a/resources/profiles/Elegoo/filament/ECC/Elegoo Rapid PETG @ECC.json +++ b/resources/profiles/Elegoo/filament/ECC/Elegoo Rapid PETG @ECC.json @@ -2,14 +2,33 @@ "type": "filament", "name": "Elegoo Rapid PETG @ECC", "renamed_from": "Elegoo RAPID PETG @ECC", - "inherits": "Elegoo Rapid PETG @base", + "inherits": "Elegoo PETG @base", "from": "system", "setting_id": "ERPETGECC", "instantiation": "true", "pressure_advance": [ "0.024" ], + "fan_max_speed": [ + "80" + ], + "fan_min_speed": [ + "30" + ], + "filament_density": [ + "1.26" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "nozzle_temperature": [ + "250" + ], + "nozzle_temperature_initial_layer": [ + "250" + ], "compatible_printers": [ + "Elegoo Centauri Carbon 0.2 nozzle", "Elegoo Centauri Carbon 0.4 nozzle", "Elegoo Centauri Carbon 0.6 nozzle", "Elegoo Centauri Carbon 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/ECC/Elegoo Rapid PLA+ @ECC.json b/resources/profiles/Elegoo/filament/ECC/Elegoo Rapid PLA+ @ECC.json index ae3ad160a09..9d052c69af0 100644 --- a/resources/profiles/Elegoo/filament/ECC/Elegoo Rapid PLA+ @ECC.json +++ b/resources/profiles/Elegoo/filament/ECC/Elegoo Rapid PLA+ @ECC.json @@ -2,7 +2,7 @@ "type": "filament", "name": "Elegoo Rapid PLA+ @ECC", "renamed_from": "Elegoo RAPID PLA+ @ECC", - "inherits": "Elegoo Rapid PLA+ @base", + "inherits": "Elegoo PLA @base", "from": "system", "setting_id": "ERPLAPLUSECC", "instantiation": "true", @@ -15,9 +15,6 @@ "fan_min_speed": [ "60" ], - "filament_max_volumetric_speed": [ - "21" - ], "hot_plate_temp": [ "60" ], @@ -36,10 +33,17 @@ "pressure_advance": [ "0.024" ], + "filament_max_volumetric_speed": [ + "21" + ], + "filament_density": [ + "1.25" + ], "filament_start_gcode": [ "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" ], "compatible_printers": [ + "Elegoo Centauri Carbon 0.2 nozzle", "Elegoo Centauri Carbon 0.4 nozzle", "Elegoo Centauri Carbon 0.6 nozzle", "Elegoo Centauri Carbon 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/ECC/Elegoo Rapid TPU 95A @ECC.json b/resources/profiles/Elegoo/filament/ECC/Elegoo Rapid TPU 95A @ECC.json new file mode 100644 index 00000000000..721646104a0 --- /dev/null +++ b/resources/profiles/Elegoo/filament/ECC/Elegoo Rapid TPU 95A @ECC.json @@ -0,0 +1,30 @@ +{ + "type": "filament", + "name": "Elegoo Rapid TPU 95A @ECC", + "renamed_from": "Elegoo RAPID TPU 95A @ECC", + "inherits": "Elegoo TPU @base", + "from": "system", + "setting_id": "ERTPU95AECC", + "instantiation": "true", + "pressure_advance": [ + "0.024" + ], + "nozzle_temperature": [ + "230" + ], + "nozzle_temperature_initial_layer": [ + "230" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "compatible_printers": [ + "Elegoo Centauri Carbon 0.2 nozzle", + "Elegoo Centauri Carbon 0.4 nozzle", + "Elegoo Centauri Carbon 0.6 nozzle", + "Elegoo Centauri Carbon 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/ECC/Elegoo TPU 95A @ECC.json b/resources/profiles/Elegoo/filament/ECC/Elegoo TPU 95A @ECC.json index 902c335bd94..1591f349de0 100644 --- a/resources/profiles/Elegoo/filament/ECC/Elegoo TPU 95A @ECC.json +++ b/resources/profiles/Elegoo/filament/ECC/Elegoo TPU 95A @ECC.json @@ -1,7 +1,7 @@ { "type": "filament", "name": "Elegoo TPU 95A @ECC", - "inherits": "Elegoo TPU 95A @base", + "inherits": "Elegoo TPU @base", "from": "system", "setting_id": "ETPU95AECC", "instantiation": "true", @@ -12,6 +12,7 @@ "0.024" ], "compatible_printers": [ + "Elegoo Centauri Carbon 0.2 nozzle", "Elegoo Centauri Carbon 0.4 nozzle", "Elegoo Centauri Carbon 0.6 nozzle", "Elegoo Centauri Carbon 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/ECC2/Elegoo ABS @ECC2.json b/resources/profiles/Elegoo/filament/ECC2/Elegoo ABS @ECC2.json index 4fed4b473f3..f1b2d92f849 100644 --- a/resources/profiles/Elegoo/filament/ECC2/Elegoo ABS @ECC2.json +++ b/resources/profiles/Elegoo/filament/ECC2/Elegoo ABS @ECC2.json @@ -12,7 +12,10 @@ "18" ], "pressure_advance": [ - "0.024" + "0.04" + ], + "enable_pressure_advance": [ + "1" ], "nozzle_temperature": [ "270" @@ -21,6 +24,7 @@ "270" ], "compatible_printers": [ + "Elegoo Centauri Carbon 2 0.2 nozzle", "Elegoo Centauri Carbon 2 0.4 nozzle", "Elegoo Centauri Carbon 2 0.6 nozzle", "Elegoo Centauri Carbon 2 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/ECC2/Elegoo ASA @ECC2.json b/resources/profiles/Elegoo/filament/ECC2/Elegoo ASA @ECC2.json index 76be9c79914..16bf2c97836 100644 --- a/resources/profiles/Elegoo/filament/ECC2/Elegoo ASA @ECC2.json +++ b/resources/profiles/Elegoo/filament/ECC2/Elegoo ASA @ECC2.json @@ -6,7 +6,10 @@ "setting_id": "EASAECC2", "instantiation": "true", "pressure_advance": [ - "0.024" + "0.04" + ], + "enable_pressure_advance": [ + "1" ], "nozzle_temperature": [ "270" @@ -15,6 +18,7 @@ "270" ], "compatible_printers": [ + "Elegoo Centauri Carbon 2 0.2 nozzle", "Elegoo Centauri Carbon 2 0.4 nozzle", "Elegoo Centauri Carbon 2 0.6 nozzle", "Elegoo Centauri Carbon 2 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/ECC2/Elegoo ASA-CF @ECC2.json b/resources/profiles/Elegoo/filament/ECC2/Elegoo ASA-CF @ECC2.json new file mode 100644 index 00000000000..70e62631ad2 --- /dev/null +++ b/resources/profiles/Elegoo/filament/ECC2/Elegoo ASA-CF @ECC2.json @@ -0,0 +1,38 @@ +{ + "type": "filament", + "name": "Elegoo ASA-CF @ECC2", + "inherits": "Elegoo ASA @base", + "from": "system", + "setting_id": "EASACFECC2", + "instantiation": "true", + "pressure_advance": [ + "0.04" + ], + "enable_pressure_advance": [ + "1" + ], + "nozzle_temperature": [ + "270" + ], + "nozzle_temperature_initial_layer": [ + "270" + ], + "fan_max_speed": [ + "30" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "textured_plate_temp": [ + "100" + ], + "textured_plate_temp_initial_layer": [ + "100" + ], + "compatible_printers": [ + "Elegoo Centauri Carbon 2 0.2 nozzle", + "Elegoo Centauri Carbon 2 0.4 nozzle", + "Elegoo Centauri Carbon 2 0.6 nozzle", + "Elegoo Centauri Carbon 2 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/ECC2/Elegoo PAHT-CF @ECC2.json b/resources/profiles/Elegoo/filament/ECC2/Elegoo PAHT-CF @ECC2.json index 1505e0c75d7..01f9a78a39d 100644 --- a/resources/profiles/Elegoo/filament/ECC2/Elegoo PAHT-CF @ECC2.json +++ b/resources/profiles/Elegoo/filament/ECC2/Elegoo PAHT-CF @ECC2.json @@ -21,7 +21,7 @@ "0.96" ], "filament_max_volumetric_speed": [ - "8" + "6" ], "nozzle_temperature": [ "290" @@ -57,12 +57,16 @@ "100" ], "pressure_advance": [ - "0.024" + "0.052" + ], + "enable_pressure_advance": [ + "1" ], "filament_start_gcode": [ "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" ], "compatible_printers": [ + "Elegoo Centauri Carbon 2 0.2 nozzle", "Elegoo Centauri Carbon 2 0.4 nozzle", "Elegoo Centauri Carbon 2 0.6 nozzle", "Elegoo Centauri Carbon 2 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/ECC2/Elegoo PC @ECC2.json b/resources/profiles/Elegoo/filament/ECC2/Elegoo PC @ECC2.json index 642343e5a45..121ef6cc236 100644 --- a/resources/profiles/Elegoo/filament/ECC2/Elegoo PC @ECC2.json +++ b/resources/profiles/Elegoo/filament/ECC2/Elegoo PC @ECC2.json @@ -6,7 +6,10 @@ "setting_id": "EPCECC2", "instantiation": "true", "pressure_advance": [ - "0.024" + "0.052" + ], + "enable_pressure_advance": [ + "1" ], "nozzle_temperature": [ "270" @@ -48,6 +51,7 @@ "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" ], "compatible_printers": [ + "Elegoo Centauri Carbon 2 0.2 nozzle", "Elegoo Centauri Carbon 2 0.4 nozzle", "Elegoo Centauri Carbon 2 0.6 nozzle", "Elegoo Centauri Carbon 2 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/ECC2/Elegoo PC-FR @ECC2.json b/resources/profiles/Elegoo/filament/ECC2/Elegoo PC-FR @ECC2.json index ab4d459fe77..b33fa92dd8e 100644 --- a/resources/profiles/Elegoo/filament/ECC2/Elegoo PC-FR @ECC2.json +++ b/resources/profiles/Elegoo/filament/ECC2/Elegoo PC-FR @ECC2.json @@ -6,7 +6,10 @@ "setting_id": "EPCFRECC2", "instantiation": "true", "pressure_advance": [ - "0.024" + "0.05" + ], + "enable_pressure_advance": [ + "1" ], "nozzle_temperature": [ "280" @@ -33,6 +36,7 @@ "18" ], "compatible_printers": [ + "Elegoo Centauri Carbon 2 0.2 nozzle", "Elegoo Centauri Carbon 2 0.4 nozzle", "Elegoo Centauri Carbon 2 0.6 nozzle", "Elegoo Centauri Carbon 2 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/ECC2/Elegoo PET-CF @ECC2.json b/resources/profiles/Elegoo/filament/ECC2/Elegoo PET-CF @ECC2.json new file mode 100644 index 00000000000..a93f92a80c7 --- /dev/null +++ b/resources/profiles/Elegoo/filament/ECC2/Elegoo PET-CF @ECC2.json @@ -0,0 +1,62 @@ +{ + "type": "filament", + "name": "Elegoo PET-CF @ECC2", + "inherits": "Elegoo PETG @base", + "from": "system", + "setting_id": "EPETCFECC2", + "instantiation": "true", + "pressure_advance": [ + "0.05" + ], + "enable_pressure_advance": [ + "1" + ], + "fan_cooling_layer_time": [ + "5" + ], + "filament_max_volumetric_speed": [ + "8" + ], + "nozzle_temperature": [ + "270" + ], + "nozzle_temperature_initial_layer": [ + "270" + ], + "nozzle_temperature_range_high": [ + "290" + ], + "nozzle_temperature_range_low": [ + "260" + ], + "overhang_fan_speed": [ + "40" + ], + "overhang_fan_threshold": [ + "0%" + ], + "reduce_fan_stop_start_freq": [ + "0" + ], + "slow_down_layer_time": [ + "2" + ], + "slow_down_min_speed": [ + "20" + ], + "textured_plate_temp": [ + "100" + ], + "textured_plate_temp_initial_layer": [ + "100" + ], + "filament_type": [ + "PET-CF" + ], + "compatible_printers": [ + "Elegoo Centauri Carbon 2 0.2 nozzle", + "Elegoo Centauri Carbon 2 0.4 nozzle", + "Elegoo Centauri Carbon 2 0.6 nozzle", + "Elegoo Centauri Carbon 2 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/ECC2/Elegoo PETG @ECC2.json b/resources/profiles/Elegoo/filament/ECC2/Elegoo PETG @ECC2.json index fcee6ef7f00..86b59e05f29 100644 --- a/resources/profiles/Elegoo/filament/ECC2/Elegoo PETG @ECC2.json +++ b/resources/profiles/Elegoo/filament/ECC2/Elegoo PETG @ECC2.json @@ -6,7 +6,10 @@ "setting_id": "EPETGECC2", "instantiation": "true", "pressure_advance": [ - "0.024" + "0.05" + ], + "enable_pressure_advance": [ + "1" ], "overhang_fan_threshold": [ "50%" @@ -21,6 +24,7 @@ "11" ], "compatible_printers": [ + "Elegoo Centauri Carbon 2 0.2 nozzle", "Elegoo Centauri Carbon 2 0.4 nozzle", "Elegoo Centauri Carbon 2 0.6 nozzle", "Elegoo Centauri Carbon 2 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/ECC2/Elegoo PETG HF @ECC2.json b/resources/profiles/Elegoo/filament/ECC2/Elegoo PETG HF @ECC2.json new file mode 100644 index 00000000000..8b9a2424c7e --- /dev/null +++ b/resources/profiles/Elegoo/filament/ECC2/Elegoo PETG HF @ECC2.json @@ -0,0 +1,47 @@ +{ + "type": "filament", + "name": "Elegoo PETG HF @ECC2", + "inherits": "Elegoo PETG @base", + "from": "system", + "setting_id": "ERPETGHFECC2", + "instantiation": "true", + "pressure_advance": [ + "0.052" + ], + "enable_pressure_advance": [ + "1" + ], + "filament_flow_ratio": [ + "0.99" + ], + "fan_min_speed": [ + "30" + ], + "filament_density": [ + "1.26" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "fan_max_speed": [ + "50" + ], + "nozzle_temperature": [ + "240" + ], + "nozzle_temperature_initial_layer": [ + "240" + ], + "nozzle_temperature_range_high": [ + "250" + ], + "overhang_fan_speed": [ + "100" + ], + "compatible_printers": [ + "Elegoo Centauri Carbon 2 0.2 nozzle", + "Elegoo Centauri Carbon 2 0.4 nozzle", + "Elegoo Centauri Carbon 2 0.6 nozzle", + "Elegoo Centauri Carbon 2 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/ECC2/Elegoo PETG PRO @ECC2.json b/resources/profiles/Elegoo/filament/ECC2/Elegoo PETG PRO @ECC2.json index 14d43704ec9..870da6bc17c 100644 --- a/resources/profiles/Elegoo/filament/ECC2/Elegoo PETG PRO @ECC2.json +++ b/resources/profiles/Elegoo/filament/ECC2/Elegoo PETG PRO @ECC2.json @@ -6,12 +6,19 @@ "setting_id": "EPETGPROECC2", "instantiation": "true", "pressure_advance": [ - "0.024" + "0.1" ], "overhang_fan_threshold": [ "50%" ], + "enable_pressure_advance": [ + "1" + ], + "filament_max_volumetric_speed": [ + "5" + ], "compatible_printers": [ + "Elegoo Centauri Carbon 2 0.2 nozzle", "Elegoo Centauri Carbon 2 0.4 nozzle", "Elegoo Centauri Carbon 2 0.6 nozzle", "Elegoo Centauri Carbon 2 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/ECC2/Elegoo PETG Translucent @ECC2.json b/resources/profiles/Elegoo/filament/ECC2/Elegoo PETG Translucent @ECC2.json index 5c7f09a55cd..f6e2415659b 100644 --- a/resources/profiles/Elegoo/filament/ECC2/Elegoo PETG Translucent @ECC2.json +++ b/resources/profiles/Elegoo/filament/ECC2/Elegoo PETG Translucent @ECC2.json @@ -6,7 +6,10 @@ "setting_id": "EPETGTRANSECC2", "instantiation": "true", "pressure_advance": [ - "0.024" + "0.052" + ], + "enable_pressure_advance": [ + "1" ], "fan_max_speed": [ "35" @@ -21,6 +24,7 @@ "255" ], "compatible_printers": [ + "Elegoo Centauri Carbon 2 0.2 nozzle", "Elegoo Centauri Carbon 2 0.4 nozzle", "Elegoo Centauri Carbon 2 0.6 nozzle", "Elegoo Centauri Carbon 2 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/ECC2/Elegoo PETG-CF @ECC2.json b/resources/profiles/Elegoo/filament/ECC2/Elegoo PETG-CF @ECC2.json index f7ff32fbbd9..f20bd21e4a1 100644 --- a/resources/profiles/Elegoo/filament/ECC2/Elegoo PETG-CF @ECC2.json +++ b/resources/profiles/Elegoo/filament/ECC2/Elegoo PETG-CF @ECC2.json @@ -6,7 +6,13 @@ "setting_id": "EPETGCFECC2", "instantiation": "true", "pressure_advance": [ - "0.024" + "0.052" + ], + "enable_pressure_advance": [ + "1" + ], + "filament_flow_ratio": [ + "0.99" ], "filament_density": [ "1.26" @@ -24,7 +30,7 @@ "5" ], "filament_max_volumetric_speed": [ - "15" + "12" ], "nozzle_temperature_range_low": [ "240" @@ -36,6 +42,7 @@ "6" ], "compatible_printers": [ + "Elegoo Centauri Carbon 2 0.2 nozzle", "Elegoo Centauri Carbon 2 0.4 nozzle", "Elegoo Centauri Carbon 2 0.6 nozzle", "Elegoo Centauri Carbon 2 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/ECC2/Elegoo PETG-GF @ECC2.json b/resources/profiles/Elegoo/filament/ECC2/Elegoo PETG-GF @ECC2.json index f02df0da7cc..2793ff94771 100644 --- a/resources/profiles/Elegoo/filament/ECC2/Elegoo PETG-GF @ECC2.json +++ b/resources/profiles/Elegoo/filament/ECC2/Elegoo PETG-GF @ECC2.json @@ -6,7 +6,10 @@ "setting_id": "EPETGFECC2", "instantiation": "true", "pressure_advance": [ - "0.024" + "0.052" + ], + "enable_pressure_advance": [ + "1" ], "filament_density": [ "1.26" @@ -24,7 +27,7 @@ "5" ], "filament_max_volumetric_speed": [ - "12" + "10" ], "nozzle_temperature_range_low": [ "240" @@ -36,6 +39,7 @@ "6" ], "compatible_printers": [ + "Elegoo Centauri Carbon 2 0.2 nozzle", "Elegoo Centauri Carbon 2 0.4 nozzle", "Elegoo Centauri Carbon 2 0.6 nozzle", "Elegoo Centauri Carbon 2 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA @ECC2.json b/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA @ECC2.json index 4038f77558a..736498b463c 100644 --- a/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA @ECC2.json +++ b/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA @ECC2.json @@ -15,7 +15,10 @@ "210" ], "pressure_advance": [ - "0.024" + "0.04" + ], + "enable_pressure_advance": [ + "1" ], "slow_down_layer_time": [ "4" @@ -24,6 +27,7 @@ "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" ], "compatible_printers": [ + "Elegoo Centauri Carbon 2 0.2 nozzle", "Elegoo Centauri Carbon 2 0.4 nozzle", "Elegoo Centauri Carbon 2 0.6 nozzle", "Elegoo Centauri Carbon 2 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA Basic @ECC2.json b/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA Basic @ECC2.json index d183be3c8b3..1e76fce7e23 100644 --- a/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA Basic @ECC2.json +++ b/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA Basic @ECC2.json @@ -18,7 +18,10 @@ "21" ], "pressure_advance": [ - "0.024" + "0.04" + ], + "enable_pressure_advance": [ + "1" ], "slow_down_layer_time": [ "4" @@ -27,6 +30,7 @@ "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" ], "compatible_printers": [ + "Elegoo Centauri Carbon 2 0.2 nozzle", "Elegoo Centauri Carbon 2 0.4 nozzle", "Elegoo Centauri Carbon 2 0.6 nozzle", "Elegoo Centauri Carbon 2 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA Galaxy @ECC2.json b/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA Galaxy @ECC2.json index d44860f7d12..cb355299a77 100644 --- a/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA Galaxy @ECC2.json +++ b/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA Galaxy @ECC2.json @@ -21,7 +21,10 @@ "220" ], "pressure_advance": [ - "0.024" + "0.04" + ], + "enable_pressure_advance": [ + "1" ], "slow_down_layer_time": [ "4" @@ -30,6 +33,7 @@ "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" ], "compatible_printers": [ + "Elegoo Centauri Carbon 2 0.2 nozzle", "Elegoo Centauri Carbon 2 0.4 nozzle", "Elegoo Centauri Carbon 2 0.6 nozzle", "Elegoo Centauri Carbon 2 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA Glow @ECC2.json b/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA Glow @ECC2.json new file mode 100644 index 00000000000..682525af9c1 --- /dev/null +++ b/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA Glow @ECC2.json @@ -0,0 +1,41 @@ +{ + "type": "filament", + "name": "Elegoo PLA Glow @ECC2", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLAGLOWECC2", + "instantiation": "true", + "pressure_advance": [ + "0.04" + ], + "enable_pressure_advance": [ + "1" + ], + "slow_down_layer_time": [ + "4" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "fan_min_speed": [ + "100" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "compatible_printers": [ + "Elegoo Centauri Carbon 2 0.2 nozzle", + "Elegoo Centauri Carbon 2 0.4 nozzle", + "Elegoo Centauri Carbon 2 0.6 nozzle", + "Elegoo Centauri Carbon 2 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA Marble @ECC2.json b/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA Marble @ECC2.json index 18983d4300d..52ad79f270e 100644 --- a/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA Marble @ECC2.json +++ b/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA Marble @ECC2.json @@ -21,7 +21,10 @@ "220" ], "pressure_advance": [ - "0.024" + "0.052" + ], + "enable_pressure_advance": [ + "1" ], "slow_down_layer_time": [ "4" @@ -30,6 +33,7 @@ "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" ], "compatible_printers": [ + "Elegoo Centauri Carbon 2 0.2 nozzle", "Elegoo Centauri Carbon 2 0.4 nozzle", "Elegoo Centauri Carbon 2 0.6 nozzle", "Elegoo Centauri Carbon 2 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA Matte @ECC2.json b/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA Matte @ECC2.json index 2180b587468..525deb582e1 100644 --- a/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA Matte @ECC2.json +++ b/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA Matte @ECC2.json @@ -33,10 +33,10 @@ "65" ], "pressure_advance": [ - "0.024" + "0.04" ], - "filament_cost": [ - "0" + "enable_pressure_advance": [ + "1" ], "filament_density": [ "1.25" @@ -45,6 +45,7 @@ "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" ], "compatible_printers": [ + "Elegoo Centauri Carbon 2 0.2 nozzle", "Elegoo Centauri Carbon 2 0.4 nozzle", "Elegoo Centauri Carbon 2 0.6 nozzle", "Elegoo Centauri Carbon 2 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA PRO @ECC2.json b/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA PRO @ECC2.json index 1ac239ac624..bff9ce802f9 100644 --- a/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA PRO @ECC2.json +++ b/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA PRO @ECC2.json @@ -8,8 +8,14 @@ "filament_max_volumetric_speed": [ "20" ], + "enable_pressure_advance": [ + "1" + ], + "filament_flow_ratio": [ + "0.99" + ], "pressure_advance": [ - "0.024" + "0.032" ], "slow_down_layer_time": [ "6" @@ -18,6 +24,7 @@ "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" ], "compatible_printers": [ + "Elegoo Centauri Carbon 2 0.2 nozzle", "Elegoo Centauri Carbon 2 0.4 nozzle", "Elegoo Centauri Carbon 2 0.6 nozzle", "Elegoo Centauri Carbon 2 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA Silk @ECC2.json b/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA Silk @ECC2.json index 4e19036ec49..b56b6580236 100644 --- a/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA Silk @ECC2.json +++ b/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA Silk @ECC2.json @@ -29,8 +29,11 @@ "textured_plate_temp_initial_layer": [ "65" ], + "enable_pressure_advance": [ + "1" + ], "pressure_advance": [ - "0.024" + "0.04" ], "filament_density": [ "1.32" @@ -45,6 +48,7 @@ "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" ], "compatible_printers": [ + "Elegoo Centauri Carbon 2 0.2 nozzle", "Elegoo Centauri Carbon 2 0.4 nozzle", "Elegoo Centauri Carbon 2 0.6 nozzle", "Elegoo Centauri Carbon 2 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA Sparkle @ECC2.json b/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA Sparkle @ECC2.json index 7cd31b7ace7..30aa2989dff 100644 --- a/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA Sparkle @ECC2.json +++ b/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA Sparkle @ECC2.json @@ -21,7 +21,13 @@ "220" ], "pressure_advance": [ - "0.024" + "0.04" + ], + "enable_pressure_advance": [ + "1" + ], + "filament_flow_ratio": [ + "0.99" ], "slow_down_layer_time": [ "4" @@ -30,6 +36,7 @@ "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" ], "compatible_printers": [ + "Elegoo Centauri Carbon 2 0.2 nozzle", "Elegoo Centauri Carbon 2 0.4 nozzle", "Elegoo Centauri Carbon 2 0.6 nozzle", "Elegoo Centauri Carbon 2 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA Translucent2 @ECC2.json b/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA Translucent2 @ECC2.json new file mode 100644 index 00000000000..e36ab37b495 --- /dev/null +++ b/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA Translucent2 @ECC2.json @@ -0,0 +1,44 @@ +{ + "type": "filament", + "name": "Elegoo PLA Translucent2 @ECC2", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLATRA2ECC2", + "instantiation": "true", + "pressure_advance": [ + "0.04" + ], + "enable_pressure_advance": [ + "1" + ], + "fan_min_speed": [ + "100" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "filament_retract_when_changing_layer": [ + "1" + ], + "filament_retraction_length": [ + "0.4" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "slow_down_layer_time": [ + "8" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [ + "Elegoo Centauri Carbon 2 0.2 nozzle", + "Elegoo Centauri Carbon 2 0.4 nozzle", + "Elegoo Centauri Carbon 2 0.6 nozzle", + "Elegoo Centauri Carbon 2 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA Wood @ECC2.json b/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA Wood @ECC2.json index ccdbe6b8d6a..7fc70611772 100644 --- a/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA Wood @ECC2.json +++ b/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA Wood @ECC2.json @@ -9,7 +9,7 @@ "80" ], "filament_max_volumetric_speed": [ - "15" + "10" ], "nozzle_temperature": [ "220" @@ -21,7 +21,10 @@ "200" ], "pressure_advance": [ - "0.024" + "0.052" + ], + "enable_pressure_advance": [ + "1" ], "slow_down_layer_time": [ "4" @@ -30,6 +33,7 @@ "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" ], "compatible_printers": [ + "Elegoo Centauri Carbon 2 0.2 nozzle", "Elegoo Centauri Carbon 2 0.4 nozzle", "Elegoo Centauri Carbon 2 0.6 nozzle", "Elegoo Centauri Carbon 2 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA+ @ECC2.json b/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA+ @ECC2.json index daa54899622..2c5a5e545ee 100644 --- a/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA+ @ECC2.json +++ b/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA+ @ECC2.json @@ -9,7 +9,10 @@ "20" ], "pressure_advance": [ - "0.024" + "0.04" + ], + "enable_pressure_advance": [ + "1" ], "slow_down_layer_time": [ "6" @@ -18,6 +21,7 @@ "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" ], "compatible_printers": [ + "Elegoo Centauri Carbon 2 0.2 nozzle", "Elegoo Centauri Carbon 2 0.4 nozzle", "Elegoo Centauri Carbon 2 0.6 nozzle", "Elegoo Centauri Carbon 2 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA-CF @ECC2.json b/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA-CF @ECC2.json index 8c251ab8d18..1a2e475550a 100644 --- a/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA-CF @ECC2.json +++ b/resources/profiles/Elegoo/filament/ECC2/Elegoo PLA-CF @ECC2.json @@ -15,7 +15,7 @@ "60" ], "filament_max_volumetric_speed": [ - "21" + "16" ], "hot_plate_temp": [ "60" @@ -33,7 +33,10 @@ "65" ], "pressure_advance": [ - "0.024" + "0.032" + ], + "enable_pressure_advance": [ + "1" ], "additional_cooling_fan_speed": [ "0" @@ -54,6 +57,7 @@ "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" ], "compatible_printers": [ + "Elegoo Centauri Carbon 2 0.2 nozzle", "Elegoo Centauri Carbon 2 0.4 nozzle", "Elegoo Centauri Carbon 2 0.6 nozzle", "Elegoo Centauri Carbon 2 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/ECC2/Elegoo Rapid PETG @ECC2.json b/resources/profiles/Elegoo/filament/ECC2/Elegoo Rapid PETG @ECC2.json index 91cbceb2ccd..d6db5dca465 100644 --- a/resources/profiles/Elegoo/filament/ECC2/Elegoo Rapid PETG @ECC2.json +++ b/resources/profiles/Elegoo/filament/ECC2/Elegoo Rapid PETG @ECC2.json @@ -7,7 +7,13 @@ "setting_id": "ERPETGECC2", "instantiation": "true", "pressure_advance": [ - "0.024" + "0.052" + ], + "enable_pressure_advance": [ + "1" + ], + "filament_flow_ratio": [ + "0.99" ], "fan_max_speed": [ "80" @@ -28,6 +34,7 @@ "250" ], "compatible_printers": [ + "Elegoo Centauri Carbon 2 0.2 nozzle", "Elegoo Centauri Carbon 2 0.4 nozzle", "Elegoo Centauri Carbon 2 0.6 nozzle", "Elegoo Centauri Carbon 2 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/ECC2/Elegoo Rapid PLA+ @ECC2.json b/resources/profiles/Elegoo/filament/ECC2/Elegoo Rapid PLA+ @ECC2.json index a41efc1c8e1..8305cd43429 100644 --- a/resources/profiles/Elegoo/filament/ECC2/Elegoo Rapid PLA+ @ECC2.json +++ b/resources/profiles/Elegoo/filament/ECC2/Elegoo Rapid PLA+ @ECC2.json @@ -31,7 +31,10 @@ "60" ], "pressure_advance": [ - "0.024" + "0.04" + ], + "enable_pressure_advance": [ + "1" ], "filament_max_volumetric_speed": [ "21" @@ -43,6 +46,7 @@ "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" ], "compatible_printers": [ + "Elegoo Centauri Carbon 2 0.2 nozzle", "Elegoo Centauri Carbon 2 0.4 nozzle", "Elegoo Centauri Carbon 2 0.6 nozzle", "Elegoo Centauri Carbon 2 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/ECC2/Elegoo Rapid TPU 95A @ECC2.json b/resources/profiles/Elegoo/filament/ECC2/Elegoo Rapid TPU 95A @ECC2.json index c8ea469dd8b..b94440f1b0e 100644 --- a/resources/profiles/Elegoo/filament/ECC2/Elegoo Rapid TPU 95A @ECC2.json +++ b/resources/profiles/Elegoo/filament/ECC2/Elegoo Rapid TPU 95A @ECC2.json @@ -7,7 +7,10 @@ "setting_id": "ERTPU95AECC2", "instantiation": "true", "pressure_advance": [ - "0.024" + "0.1" + ], + "enable_pressure_advance": [ + "1" ], "nozzle_temperature": [ "230" @@ -22,6 +25,7 @@ "12" ], "compatible_printers": [ + "Elegoo Centauri Carbon 2 0.2 nozzle", "Elegoo Centauri Carbon 2 0.4 nozzle", "Elegoo Centauri Carbon 2 0.6 nozzle", "Elegoo Centauri Carbon 2 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/ECC2/Elegoo TPU 95A @ECC2.json b/resources/profiles/Elegoo/filament/ECC2/Elegoo TPU 95A @ECC2.json index 009e50dbeb4..4325247c924 100644 --- a/resources/profiles/Elegoo/filament/ECC2/Elegoo TPU 95A @ECC2.json +++ b/resources/profiles/Elegoo/filament/ECC2/Elegoo TPU 95A @ECC2.json @@ -9,9 +9,13 @@ "3.2" ], "pressure_advance": [ - "0.024" + "0.1" + ], + "enable_pressure_advance": [ + "1" ], "compatible_printers": [ + "Elegoo Centauri Carbon 2 0.2 nozzle", "Elegoo Centauri Carbon 2 0.4 nozzle", "Elegoo Centauri Carbon 2 0.6 nozzle", "Elegoo Centauri Carbon 2 0.8 nozzle" diff --git a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo ASA.json b/resources/profiles/Elegoo/filament/ELEGOO/Elegoo ASA.json deleted file mode 100644 index 210ee1fe308..00000000000 --- a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo ASA.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "type": "filament", - "name": "Elegoo ASA", - "inherits": "Elegoo ASA @base", - "from": "system", - "setting_id": "EASA00", - "instantiation": "true", - "compatible_printers": [ - "Elegoo Neptune 0.4 nozzle", - "Elegoo Neptune X 0.4 nozzle", - "Elegoo Neptune 2 0.4 nozzle", - "Elegoo Neptune 2S 0.4 nozzle", - "Elegoo Neptune 2D 0.4 nozzle", - "Elegoo Neptune 3 0.4 nozzle", - "Elegoo Neptune 3 Pro 0.4 nozzle", - "Elegoo Neptune 3 Plus 0.4 nozzle", - "Elegoo Neptune 3 Max 0.4 nozzle", - "Elegoo Neptune 4 (0.2 nozzle)", - "Elegoo Neptune 4 (0.4 nozzle)", - "Elegoo Neptune 4 (0.6 nozzle)", - "Elegoo Neptune 4 (0.8 nozzle)", - "Elegoo Neptune 4 Max (0.2 nozzle)", - "Elegoo Neptune 4 Max (0.4 nozzle)", - "Elegoo Neptune 4 Max (0.6 nozzle)", - "Elegoo Neptune 4 Max (0.8 nozzle)", - "Elegoo Neptune 4 Plus (0.2 nozzle)", - "Elegoo Neptune 4 Plus (0.4 nozzle)", - "Elegoo Neptune 4 Plus (0.6 nozzle)", - "Elegoo Neptune 4 Plus (0.8 nozzle)", - "Elegoo Neptune 4 Pro (0.2 nozzle)", - "Elegoo Neptune 4 Pro (0.4 nozzle)", - "Elegoo Neptune 4 Pro (0.6 nozzle)", - "Elegoo Neptune 4 Pro (0.8 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PETG PRO.json b/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PETG PRO.json deleted file mode 100644 index 19b22659baf..00000000000 --- a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PETG PRO.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "type": "filament", - "name": "Elegoo PETG PRO", - "inherits": "Elegoo PETG PRO @base", - "from": "system", - "setting_id": "EPETGPRO00", - "instantiation": "true", - "compatible_printers": [ - "Elegoo Neptune 0.4 nozzle", - "Elegoo Neptune X 0.4 nozzle", - "Elegoo Neptune 2 0.4 nozzle", - "Elegoo Neptune 2S 0.4 nozzle", - "Elegoo Neptune 2D 0.4 nozzle", - "Elegoo Neptune 3 0.4 nozzle", - "Elegoo Neptune 3 Pro 0.4 nozzle", - "Elegoo Neptune 3 Plus 0.4 nozzle", - "Elegoo Neptune 3 Max 0.4 nozzle", - "Elegoo Neptune 4 (0.2 nozzle)", - "Elegoo Neptune 4 (0.4 nozzle)", - "Elegoo Neptune 4 (0.6 nozzle)", - "Elegoo Neptune 4 (0.8 nozzle)", - "Elegoo Neptune 4 Max (0.2 nozzle)", - "Elegoo Neptune 4 Max (0.4 nozzle)", - "Elegoo Neptune 4 Max (0.6 nozzle)", - "Elegoo Neptune 4 Max (0.8 nozzle)", - "Elegoo Neptune 4 Plus (0.2 nozzle)", - "Elegoo Neptune 4 Plus (0.4 nozzle)", - "Elegoo Neptune 4 Plus (0.6 nozzle)", - "Elegoo Neptune 4 Plus (0.8 nozzle)", - "Elegoo Neptune 4 Pro (0.2 nozzle)", - "Elegoo Neptune 4 Pro (0.4 nozzle)", - "Elegoo Neptune 4 Pro (0.6 nozzle)", - "Elegoo Neptune 4 Pro (0.8 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PLA Matte.json b/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PLA Matte.json deleted file mode 100644 index d22d17e1cb0..00000000000 --- a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PLA Matte.json +++ /dev/null @@ -1,62 +0,0 @@ -{ - "type": "filament", - "name": "Elegoo PLA Matte", - "inherits": "Elegoo PLA Matte @base", - "from": "system", - "setting_id": "EPLAM00", - "instantiation": "true", - "fan_cooling_layer_time": [ - "80" - ], - "fan_max_speed": [ - "80" - ], - "fan_min_speed": [ - "60" - ], - "filament_max_volumetric_speed": [ - "16" - ], - "hot_plate_temp": [ - "60" - ], - "hot_plate_temp_initial_layer": [ - "60" - ], - "slow_down_layer_time": [ - "6" - ], - "textured_plate_temp": [ - "60" - ], - "textured_plate_temp_initial_layer": [ - "60" - ], - "compatible_printers": [ - "Elegoo Neptune 0.4 nozzle", - "Elegoo Neptune X 0.4 nozzle", - "Elegoo Neptune 2 0.4 nozzle", - "Elegoo Neptune 2S 0.4 nozzle", - "Elegoo Neptune 2D 0.4 nozzle", - "Elegoo Neptune 3 0.4 nozzle", - "Elegoo Neptune 3 Pro 0.4 nozzle", - "Elegoo Neptune 3 Plus 0.4 nozzle", - "Elegoo Neptune 3 Max 0.4 nozzle", - "Elegoo Neptune 4 (0.2 nozzle)", - "Elegoo Neptune 4 (0.4 nozzle)", - "Elegoo Neptune 4 (0.6 nozzle)", - "Elegoo Neptune 4 (0.8 nozzle)", - "Elegoo Neptune 4 Max (0.2 nozzle)", - "Elegoo Neptune 4 Max (0.4 nozzle)", - "Elegoo Neptune 4 Max (0.6 nozzle)", - "Elegoo Neptune 4 Max (0.8 nozzle)", - "Elegoo Neptune 4 Plus (0.2 nozzle)", - "Elegoo Neptune 4 Plus (0.4 nozzle)", - "Elegoo Neptune 4 Plus (0.6 nozzle)", - "Elegoo Neptune 4 Plus (0.8 nozzle)", - "Elegoo Neptune 4 Pro (0.2 nozzle)", - "Elegoo Neptune 4 Pro (0.4 nozzle)", - "Elegoo Neptune 4 Pro (0.6 nozzle)", - "Elegoo Neptune 4 Pro (0.8 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PLA PRO.json b/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PLA PRO.json deleted file mode 100644 index 35609d661b4..00000000000 --- a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PLA PRO.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "type": "filament", - "name": "Elegoo PLA PRO", - "inherits": "Elegoo PLA @base", - "from": "system", - "setting_id": "EPLAPRO00", - "instantiation": "true", - "filament_max_volumetric_speed": [ - "16" - ], - "compatible_printers": [ - "Elegoo Neptune 0.4 nozzle", - "Elegoo Neptune X 0.4 nozzle", - "Elegoo Neptune 2 0.4 nozzle", - "Elegoo Neptune 2S 0.4 nozzle", - "Elegoo Neptune 2D 0.4 nozzle", - "Elegoo Neptune 3 0.4 nozzle", - "Elegoo Neptune 3 Pro 0.4 nozzle", - "Elegoo Neptune 3 Plus 0.4 nozzle", - "Elegoo Neptune 3 Max 0.4 nozzle", - "Elegoo Neptune 4 (0.2 nozzle)", - "Elegoo Neptune 4 (0.4 nozzle)", - "Elegoo Neptune 4 (0.6 nozzle)", - "Elegoo Neptune 4 (0.8 nozzle)", - "Elegoo Neptune 4 Max (0.2 nozzle)", - "Elegoo Neptune 4 Max (0.4 nozzle)", - "Elegoo Neptune 4 Max (0.6 nozzle)", - "Elegoo Neptune 4 Max (0.8 nozzle)", - "Elegoo Neptune 4 Plus (0.2 nozzle)", - "Elegoo Neptune 4 Plus (0.4 nozzle)", - "Elegoo Neptune 4 Plus (0.6 nozzle)", - "Elegoo Neptune 4 Plus (0.8 nozzle)", - "Elegoo Neptune 4 Pro (0.2 nozzle)", - "Elegoo Neptune 4 Pro (0.4 nozzle)", - "Elegoo Neptune 4 Pro (0.6 nozzle)", - "Elegoo Neptune 4 Pro (0.8 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PLA Silk.json b/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PLA Silk.json deleted file mode 100644 index cb47704ad35..00000000000 --- a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PLA Silk.json +++ /dev/null @@ -1,59 +0,0 @@ -{ - "type": "filament", - "name": "Elegoo PLA Silk", - "inherits": "Elegoo PLA Silk @base", - "from": "system", - "setting_id": "EPLAS00", - "instantiation": "true", - "fan_cooling_layer_time": [ - "80" - ], - "fan_max_speed": [ - "80" - ], - "fan_min_speed": [ - "60" - ], - "hot_plate_temp": [ - "60" - ], - "hot_plate_temp_initial_layer": [ - "60" - ], - "slow_down_layer_time": [ - "8" - ], - "textured_plate_temp": [ - "60" - ], - "textured_plate_temp_initial_layer": [ - "60" - ], - "compatible_printers": [ - "Elegoo Neptune 0.4 nozzle", - "Elegoo Neptune X 0.4 nozzle", - "Elegoo Neptune 2 0.4 nozzle", - "Elegoo Neptune 2S 0.4 nozzle", - "Elegoo Neptune 2D 0.4 nozzle", - "Elegoo Neptune 3 0.4 nozzle", - "Elegoo Neptune 3 Pro 0.4 nozzle", - "Elegoo Neptune 3 Plus 0.4 nozzle", - "Elegoo Neptune 3 Max 0.4 nozzle", - "Elegoo Neptune 4 (0.2 nozzle)", - "Elegoo Neptune 4 (0.4 nozzle)", - "Elegoo Neptune 4 (0.6 nozzle)", - "Elegoo Neptune 4 (0.8 nozzle)", - "Elegoo Neptune 4 Max (0.2 nozzle)", - "Elegoo Neptune 4 Max (0.4 nozzle)", - "Elegoo Neptune 4 Max (0.6 nozzle)", - "Elegoo Neptune 4 Max (0.8 nozzle)", - "Elegoo Neptune 4 Plus (0.2 nozzle)", - "Elegoo Neptune 4 Plus (0.4 nozzle)", - "Elegoo Neptune 4 Plus (0.6 nozzle)", - "Elegoo Neptune 4 Plus (0.8 nozzle)", - "Elegoo Neptune 4 Pro (0.2 nozzle)", - "Elegoo Neptune 4 Pro (0.4 nozzle)", - "Elegoo Neptune 4 Pro (0.6 nozzle)", - "Elegoo Neptune 4 Pro (0.8 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PLA+.json b/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PLA+.json deleted file mode 100644 index d76577dba5f..00000000000 --- a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PLA+.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "type": "filament", - "name": "Elegoo PLA+", - "inherits": "Elegoo PLA @base", - "from": "system", - "setting_id": "EPLAPLUS00", - "instantiation": "true", - "filament_max_volumetric_speed": [ - "16" - ], - "compatible_printers": [ - "Elegoo Neptune 0.4 nozzle", - "Elegoo Neptune X 0.4 nozzle", - "Elegoo Neptune 2 0.4 nozzle", - "Elegoo Neptune 2S 0.4 nozzle", - "Elegoo Neptune 2D 0.4 nozzle", - "Elegoo Neptune 3 0.4 nozzle", - "Elegoo Neptune 3 Pro 0.4 nozzle", - "Elegoo Neptune 3 Plus 0.4 nozzle", - "Elegoo Neptune 3 Max 0.4 nozzle", - "Elegoo Neptune 4 (0.2 nozzle)", - "Elegoo Neptune 4 (0.4 nozzle)", - "Elegoo Neptune 4 (0.6 nozzle)", - "Elegoo Neptune 4 (0.8 nozzle)", - "Elegoo Neptune 4 Max (0.2 nozzle)", - "Elegoo Neptune 4 Max (0.4 nozzle)", - "Elegoo Neptune 4 Max (0.6 nozzle)", - "Elegoo Neptune 4 Max (0.8 nozzle)", - "Elegoo Neptune 4 Plus (0.2 nozzle)", - "Elegoo Neptune 4 Plus (0.4 nozzle)", - "Elegoo Neptune 4 Plus (0.6 nozzle)", - "Elegoo Neptune 4 Plus (0.8 nozzle)", - "Elegoo Neptune 4 Pro (0.2 nozzle)", - "Elegoo Neptune 4 Pro (0.4 nozzle)", - "Elegoo Neptune 4 Pro (0.6 nozzle)", - "Elegoo Neptune 4 Pro (0.8 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PLA-CF.json b/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PLA-CF.json deleted file mode 100644 index 74423784f5a..00000000000 --- a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PLA-CF.json +++ /dev/null @@ -1,62 +0,0 @@ -{ - "type": "filament", - "name": "Elegoo PLA-CF", - "inherits": "Elegoo PLA-CF @base", - "from": "system", - "setting_id": "EPLACF00", - "instantiation": "true", - "fan_cooling_layer_time": [ - "80" - ], - "fan_max_speed": [ - "100" - ], - "fan_min_speed": [ - "60" - ], - "filament_max_volumetric_speed": [ - "12" - ], - "hot_plate_temp": [ - "60" - ], - "hot_plate_temp_initial_layer": [ - "60" - ], - "slow_down_layer_time": [ - "6" - ], - "textured_plate_temp": [ - "65" - ], - "textured_plate_temp_initial_layer": [ - "65" - ], - "compatible_printers": [ - "Elegoo Neptune 0.4 nozzle", - "Elegoo Neptune X 0.4 nozzle", - "Elegoo Neptune 2 0.4 nozzle", - "Elegoo Neptune 2S 0.4 nozzle", - "Elegoo Neptune 2D 0.4 nozzle", - "Elegoo Neptune 3 0.4 nozzle", - "Elegoo Neptune 3 Pro 0.4 nozzle", - "Elegoo Neptune 3 Plus 0.4 nozzle", - "Elegoo Neptune 3 Max 0.4 nozzle", - "Elegoo Neptune 4 (0.2 nozzle)", - "Elegoo Neptune 4 (0.4 nozzle)", - "Elegoo Neptune 4 (0.6 nozzle)", - "Elegoo Neptune 4 (0.8 nozzle)", - "Elegoo Neptune 4 Max (0.2 nozzle)", - "Elegoo Neptune 4 Max (0.4 nozzle)", - "Elegoo Neptune 4 Max (0.6 nozzle)", - "Elegoo Neptune 4 Max (0.8 nozzle)", - "Elegoo Neptune 4 Plus (0.2 nozzle)", - "Elegoo Neptune 4 Plus (0.4 nozzle)", - "Elegoo Neptune 4 Plus (0.6 nozzle)", - "Elegoo Neptune 4 Plus (0.8 nozzle)", - "Elegoo Neptune 4 Pro (0.2 nozzle)", - "Elegoo Neptune 4 Pro (0.4 nozzle)", - "Elegoo Neptune 4 Pro (0.6 nozzle)", - "Elegoo Neptune 4 Pro (0.8 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PLA.json b/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PLA.json deleted file mode 100644 index c4c802ce81b..00000000000 --- a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PLA.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "type": "filament", - "name": "Elegoo PLA", - "inherits": "Elegoo PLA @base", - "from": "system", - "setting_id": "EPLA00", - "instantiation": "true", - "filament_max_volumetric_speed": [ - "15" - ], - "compatible_printers": [ - "Elegoo Neptune 0.4 nozzle", - "Elegoo Neptune X 0.4 nozzle", - "Elegoo Neptune 2 0.4 nozzle", - "Elegoo Neptune 2S 0.4 nozzle", - "Elegoo Neptune 2D 0.4 nozzle", - "Elegoo Neptune 3 0.4 nozzle", - "Elegoo Neptune 3 Pro 0.4 nozzle", - "Elegoo Neptune 3 Plus 0.4 nozzle", - "Elegoo Neptune 3 Max 0.4 nozzle", - "Elegoo Neptune 4 (0.2 nozzle)", - "Elegoo Neptune 4 (0.4 nozzle)", - "Elegoo Neptune 4 (0.6 nozzle)", - "Elegoo Neptune 4 (0.8 nozzle)", - "Elegoo Neptune 4 Max (0.2 nozzle)", - "Elegoo Neptune 4 Max (0.4 nozzle)", - "Elegoo Neptune 4 Max (0.6 nozzle)", - "Elegoo Neptune 4 Max (0.8 nozzle)", - "Elegoo Neptune 4 Plus (0.2 nozzle)", - "Elegoo Neptune 4 Plus (0.4 nozzle)", - "Elegoo Neptune 4 Plus (0.6 nozzle)", - "Elegoo Neptune 4 Plus (0.8 nozzle)", - "Elegoo Neptune 4 Pro (0.2 nozzle)", - "Elegoo Neptune 4 Pro (0.4 nozzle)", - "Elegoo Neptune 4 Pro (0.6 nozzle)", - "Elegoo Neptune 4 Pro (0.8 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo Rapid PETG+.json b/resources/profiles/Elegoo/filament/ELEGOO/Elegoo Rapid PETG+.json deleted file mode 100644 index 608abcc7af0..00000000000 --- a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo Rapid PETG+.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "type": "filament", - "name": "Elegoo Rapid PETG+", - "renamed_from": "Elegoo RAPID PETG+", - "inherits": "Elegoo Rapid PETG @base", - "from": "system", - "setting_id": "ERPETGPLUS00", - "instantiation": "true", - "compatible_printers": [ - "Elegoo Neptune 0.4 nozzle", - "Elegoo Neptune X 0.4 nozzle", - "Elegoo Neptune 2 0.4 nozzle", - "Elegoo Neptune 2S 0.4 nozzle", - "Elegoo Neptune 2D 0.4 nozzle", - "Elegoo Neptune 3 0.4 nozzle", - "Elegoo Neptune 3 Pro 0.4 nozzle", - "Elegoo Neptune 3 Plus 0.4 nozzle", - "Elegoo Neptune 3 Max 0.4 nozzle", - "Elegoo Neptune 4 (0.2 nozzle)", - "Elegoo Neptune 4 (0.4 nozzle)", - "Elegoo Neptune 4 (0.6 nozzle)", - "Elegoo Neptune 4 (0.8 nozzle)", - "Elegoo Neptune 4 Max (0.2 nozzle)", - "Elegoo Neptune 4 Max (0.4 nozzle)", - "Elegoo Neptune 4 Max (0.6 nozzle)", - "Elegoo Neptune 4 Max (0.8 nozzle)", - "Elegoo Neptune 4 Plus (0.2 nozzle)", - "Elegoo Neptune 4 Plus (0.4 nozzle)", - "Elegoo Neptune 4 Plus (0.6 nozzle)", - "Elegoo Neptune 4 Plus (0.8 nozzle)", - "Elegoo Neptune 4 Pro (0.2 nozzle)", - "Elegoo Neptune 4 Pro (0.4 nozzle)", - "Elegoo Neptune 4 Pro (0.6 nozzle)", - "Elegoo Neptune 4 Pro (0.8 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo Rapid PETG.json b/resources/profiles/Elegoo/filament/ELEGOO/Elegoo Rapid PETG.json deleted file mode 100644 index a8d2fdc67ba..00000000000 --- a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo Rapid PETG.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "type": "filament", - "name": "Elegoo Rapid PETG", - "renamed_from": "Elegoo RAPID PETG", - "inherits": "Elegoo Rapid PETG @base", - "from": "system", - "setting_id": "ERPETG00", - "instantiation": "true", - "compatible_printers": [ - "Elegoo Neptune 0.4 nozzle", - "Elegoo Neptune X 0.4 nozzle", - "Elegoo Neptune 2 0.4 nozzle", - "Elegoo Neptune 2S 0.4 nozzle", - "Elegoo Neptune 2D 0.4 nozzle", - "Elegoo Neptune 3 0.4 nozzle", - "Elegoo Neptune 3 Pro 0.4 nozzle", - "Elegoo Neptune 3 Plus 0.4 nozzle", - "Elegoo Neptune 3 Max 0.4 nozzle", - "Elegoo Neptune 4 (0.2 nozzle)", - "Elegoo Neptune 4 (0.4 nozzle)", - "Elegoo Neptune 4 (0.6 nozzle)", - "Elegoo Neptune 4 (0.8 nozzle)", - "Elegoo Neptune 4 Max (0.2 nozzle)", - "Elegoo Neptune 4 Max (0.4 nozzle)", - "Elegoo Neptune 4 Max (0.6 nozzle)", - "Elegoo Neptune 4 Max (0.8 nozzle)", - "Elegoo Neptune 4 Plus (0.2 nozzle)", - "Elegoo Neptune 4 Plus (0.4 nozzle)", - "Elegoo Neptune 4 Plus (0.6 nozzle)", - "Elegoo Neptune 4 Plus (0.8 nozzle)", - "Elegoo Neptune 4 Pro (0.2 nozzle)", - "Elegoo Neptune 4 Pro (0.4 nozzle)", - "Elegoo Neptune 4 Pro (0.6 nozzle)", - "Elegoo Neptune 4 Pro (0.8 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo Rapid PLA+.json b/resources/profiles/Elegoo/filament/ELEGOO/Elegoo Rapid PLA+.json deleted file mode 100644 index 59b5f3f7680..00000000000 --- a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo Rapid PLA+.json +++ /dev/null @@ -1,63 +0,0 @@ -{ - "type": "filament", - "name": "Elegoo Rapid PLA+", - "renamed_from": "Elegoo RAPID PLA+", - "inherits": "Elegoo Rapid PLA+ @base", - "from": "system", - "setting_id": "ERPLAPLUS00", - "instantiation": "true", - "fan_cooling_layer_time": [ - "80" - ], - "fan_max_speed": [ - "100" - ], - "fan_min_speed": [ - "60" - ], - "filament_max_volumetric_speed": [ - "21" - ], - "hot_plate_temp": [ - "60" - ], - "hot_plate_temp_initial_layer": [ - "60" - ], - "slow_down_layer_time": [ - "6" - ], - "textured_plate_temp": [ - "60" - ], - "textured_plate_temp_initial_layer": [ - "60" - ], - "compatible_printers": [ - "Elegoo Neptune 0.4 nozzle", - "Elegoo Neptune X 0.4 nozzle", - "Elegoo Neptune 2 0.4 nozzle", - "Elegoo Neptune 2S 0.4 nozzle", - "Elegoo Neptune 2D 0.4 nozzle", - "Elegoo Neptune 3 0.4 nozzle", - "Elegoo Neptune 3 Pro 0.4 nozzle", - "Elegoo Neptune 3 Plus 0.4 nozzle", - "Elegoo Neptune 3 Max 0.4 nozzle", - "Elegoo Neptune 4 (0.2 nozzle)", - "Elegoo Neptune 4 (0.4 nozzle)", - "Elegoo Neptune 4 (0.6 nozzle)", - "Elegoo Neptune 4 (0.8 nozzle)", - "Elegoo Neptune 4 Max (0.2 nozzle)", - "Elegoo Neptune 4 Max (0.4 nozzle)", - "Elegoo Neptune 4 Max (0.6 nozzle)", - "Elegoo Neptune 4 Max (0.8 nozzle)", - "Elegoo Neptune 4 Plus (0.2 nozzle)", - "Elegoo Neptune 4 Plus (0.4 nozzle)", - "Elegoo Neptune 4 Plus (0.6 nozzle)", - "Elegoo Neptune 4 Plus (0.8 nozzle)", - "Elegoo Neptune 4 Pro (0.2 nozzle)", - "Elegoo Neptune 4 Pro (0.4 nozzle)", - "Elegoo Neptune 4 Pro (0.6 nozzle)", - "Elegoo Neptune 4 Pro (0.8 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/filament/ELEGOO/fdm_elegoo_filament_common.json b/resources/profiles/Elegoo/filament/ELEGOO/fdm_elegoo_filament_common.json deleted file mode 100644 index 23c6055155c..00000000000 --- a/resources/profiles/Elegoo/filament/ELEGOO/fdm_elegoo_filament_common.json +++ /dev/null @@ -1,160 +0,0 @@ -{ - "type": "filament", - "name": "fdm_elegoo_filament_common", - "from": "system", - "instantiation": "false", - "activate_air_filtration": [ - "0" - ], - "chamber_temperatures": [ - "0" - ], - "close_fan_the_first_x_layers": [ - "3" - ], - "complete_print_exhaust_fan_speed": [ - "70" - ], - "cool_plate_temp": [ - "60" - ], - "cool_plate_temp_initial_layer": [ - "60" - ], - "during_print_exhaust_fan_speed": [ - "70" - ], - "eng_plate_temp": [ - "60" - ], - "eng_plate_temp_initial_layer": [ - "60" - ], - "fan_cooling_layer_time": [ - "60" - ], - "fan_max_speed": [ - "100" - ], - "fan_min_speed": [ - "35" - ], - "filament_cost": [ - "0" - ], - "filament_density": [ - "0" - ], - "filament_deretraction_speed": [ - "nil" - ], - "filament_diameter": [ - "1.75" - ], - "filament_flow_ratio": [ - "0.98" - ], - "filament_is_support": [ - "0" - ], - "filament_max_volumetric_speed": [ - "1" - ], - "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_type": [ - "PLA" - ], - "filament_vendor": [ - "Elegoo" - ], - "filament_wipe": [ - "nil" - ], - "filament_wipe_distance": [ - "nil" - ], - "filament_z_hop": [ - "nil" - ], - "filament_z_hop_types": [ - "nil" - ], - "full_fan_speed_layer": [ - "0" - ], - "hot_plate_temp": [ - "60" - ], - "hot_plate_temp_initial_layer": [ - "60" - ], - "nozzle_temperature": [ - "200" - ], - "nozzle_temperature_initial_layer": [ - "200" - ], - "overhang_fan_speed": [ - "100" - ], - "overhang_fan_threshold": [ - "95%" - ], - "reduce_fan_stop_start_freq": [ - "0" - ], - "required_nozzle_HRC": [ - "3" - ], - "slow_down_for_layer_cooling": [ - "1" - ], - "slow_down_layer_time": [ - "8" - ], - "slow_down_min_speed": [ - "10" - ], - "temperature_vitrification": [ - "100" - ], - "textured_plate_temp": [ - "60" - ], - "textured_plate_temp_initial_layer": [ - "60" - ], - "compatible_printers": [], - "filament_start_gcode": [ - "; Filament start gcode\n" - ], - "filament_end_gcode": [ - "; filament end gcode \n" - ] -} diff --git a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo ABS @0.2 nozzle.json b/resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo ABS @0.2 nozzle.json similarity index 85% rename from resources/profiles/Elegoo/filament/ELEGOO/Elegoo ABS @0.2 nozzle.json rename to resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo ABS @0.2 nozzle.json index 4711fdef0a7..30e9e2e6a8c 100644 --- a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo ABS @0.2 nozzle.json +++ b/resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo ABS @0.2 nozzle.json @@ -21,9 +21,6 @@ "270" ], "compatible_printers": [ - "Elegoo Centauri 0.2 nozzle", - "Elegoo Centauri Carbon 0.2 nozzle", - "Elegoo Centauri Carbon 2 0.2 nozzle", "Elegoo Neptune 4 0.2 nozzle", "Elegoo Neptune 4 Pro 0.2 nozzle", "Elegoo Neptune 4 Plus 0.2 nozzle", diff --git a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo ASA @0.2 nozzle.json b/resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo ASA @0.2 nozzle.json similarity index 81% rename from resources/profiles/Elegoo/filament/ELEGOO/Elegoo ASA @0.2 nozzle.json rename to resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo ASA @0.2 nozzle.json index 79f3f1d5ce9..44e4e04e3c8 100644 --- a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo ASA @0.2 nozzle.json +++ b/resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo ASA @0.2 nozzle.json @@ -9,9 +9,6 @@ "3.2" ], "compatible_printers": [ - "Elegoo Centauri 0.2 nozzle", - "Elegoo Centauri Carbon 0.2 nozzle", - "Elegoo Centauri Carbon 2 0.2 nozzle", "Elegoo Neptune 4 0.2 nozzle", "Elegoo Neptune 4 Pro 0.2 nozzle", "Elegoo Neptune 4 Plus 0.2 nozzle", diff --git a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PC @0.2 nozzle.json b/resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo PC @0.2 nozzle.json similarity index 93% rename from resources/profiles/Elegoo/filament/ELEGOO/Elegoo PC @0.2 nozzle.json rename to resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo PC @0.2 nozzle.json index f8504aa5f3b..61352cbe959 100644 --- a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PC @0.2 nozzle.json +++ b/resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo PC @0.2 nozzle.json @@ -48,9 +48,6 @@ "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" ], "compatible_printers": [ - "Elegoo Centauri 0.2 nozzle", - "Elegoo Centauri Carbon 0.2 nozzle", - "Elegoo Centauri Carbon 2 0.2 nozzle", "Elegoo Neptune 4 0.2 nozzle", "Elegoo Neptune 4 Pro 0.2 nozzle", "Elegoo Neptune 4 Plus 0.2 nozzle", diff --git a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PC-FR @0.2 nozzle.json b/resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo PC-FR @0.2 nozzle.json similarity index 88% rename from resources/profiles/Elegoo/filament/ELEGOO/Elegoo PC-FR @0.2 nozzle.json rename to resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo PC-FR @0.2 nozzle.json index 87be6e537a0..fa46890a507 100644 --- a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PC-FR @0.2 nozzle.json +++ b/resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo PC-FR @0.2 nozzle.json @@ -33,9 +33,6 @@ "18" ], "compatible_printers": [ - "Elegoo Centauri 0.2 nozzle", - "Elegoo Centauri Carbon 0.2 nozzle", - "Elegoo Centauri Carbon 2 0.2 nozzle", "Elegoo Neptune 4 0.2 nozzle", "Elegoo Neptune 4 Pro 0.2 nozzle", "Elegoo Neptune 4 Plus 0.2 nozzle", diff --git a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PETG @0.2 nozzle.json b/resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo PETG @0.2 nozzle.json similarity index 85% rename from resources/profiles/Elegoo/filament/ELEGOO/Elegoo PETG @0.2 nozzle.json rename to resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo PETG @0.2 nozzle.json index 4873edc9b20..156463b35eb 100644 --- a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PETG @0.2 nozzle.json +++ b/resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo PETG @0.2 nozzle.json @@ -21,9 +21,6 @@ "11" ], "compatible_printers": [ - "Elegoo Centauri 0.2 nozzle", - "Elegoo Centauri Carbon 0.2 nozzle", - "Elegoo Centauri Carbon 2 0.2 nozzle", "Elegoo Neptune 4 0.2 nozzle", "Elegoo Neptune 4 Pro 0.2 nozzle", "Elegoo Neptune 4 Plus 0.2 nozzle", diff --git a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PETG PRO @0.2 nozzle.json b/resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo PETG PRO @0.2 nozzle.json similarity index 71% rename from resources/profiles/Elegoo/filament/ELEGOO/Elegoo PETG PRO @0.2 nozzle.json rename to resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo PETG PRO @0.2 nozzle.json index c5acc3b949b..d3494d30809 100644 --- a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PETG PRO @0.2 nozzle.json +++ b/resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo PETG PRO @0.2 nozzle.json @@ -1,17 +1,14 @@ { "type": "filament", "name": "Elegoo PETG PRO @0.2 nozzle", - "inherits": "Elegoo PETG PRO @base", + "inherits": "Elegoo PETG @base", "from": "system", - "setting_id": "EGPETG00020", + "setting_id": "EPETGPRO00020", "instantiation": "true", "filament_max_volumetric_speed": [ "1" ], "compatible_printers": [ - "Elegoo Centauri 0.2 nozzle", - "Elegoo Centauri Carbon 0.2 nozzle", - "Elegoo Centauri Carbon 2 0.2 nozzle", "Elegoo Neptune 4 0.2 nozzle", "Elegoo Neptune 4 Pro 0.2 nozzle", "Elegoo Neptune 4 Plus 0.2 nozzle", diff --git a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PETG Translucent @0.2 nozzle.json b/resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo PETG Translucent @0.2 nozzle.json similarity index 85% rename from resources/profiles/Elegoo/filament/ELEGOO/Elegoo PETG Translucent @0.2 nozzle.json rename to resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo PETG Translucent @0.2 nozzle.json index 56f76c5a226..6890ddb9a98 100644 --- a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PETG Translucent @0.2 nozzle.json +++ b/resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo PETG Translucent @0.2 nozzle.json @@ -21,9 +21,6 @@ "255" ], "compatible_printers": [ - "Elegoo Centauri 0.2 nozzle", - "Elegoo Centauri Carbon 0.2 nozzle", - "Elegoo Centauri Carbon 2 0.2 nozzle", "Elegoo Neptune 4 0.2 nozzle", "Elegoo Neptune 4 Pro 0.2 nozzle", "Elegoo Neptune 4 Plus 0.2 nozzle", diff --git a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PLA @0.2 nozzle.json b/resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo PLA @0.2 nozzle.json similarity index 81% rename from resources/profiles/Elegoo/filament/ELEGOO/Elegoo PLA @0.2 nozzle.json rename to resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo PLA @0.2 nozzle.json index 9a9d0a7a4f8..bed4e50ce79 100644 --- a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PLA @0.2 nozzle.json +++ b/resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo PLA @0.2 nozzle.json @@ -1,17 +1,14 @@ { "type": "filament", "name": "Elegoo PLA @0.2 nozzle", - "inherits": "Elegoo PLA @base", "from": "system", "setting_id": "EPLA00020", "instantiation": "true", + "inherits": "Elegoo PLA @base", "filament_max_volumetric_speed": [ "3.2" ], "compatible_printers": [ - "Elegoo Centauri 0.2 nozzle", - "Elegoo Centauri Carbon 0.2 nozzle", - "Elegoo Centauri Carbon 2 0.2 nozzle", "Elegoo Neptune 4 0.2 nozzle", "Elegoo Neptune 4 Pro 0.2 nozzle", "Elegoo Neptune 4 Plus 0.2 nozzle", diff --git a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PLA Basic @0.2 nozzle.json b/resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo PLA Basic @0.2 nozzle.json similarity index 91% rename from resources/profiles/Elegoo/filament/ELEGOO/Elegoo PLA Basic @0.2 nozzle.json rename to resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo PLA Basic @0.2 nozzle.json index 0bc42c3cf90..cfa1d70b64e 100644 --- a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PLA Basic @0.2 nozzle.json +++ b/resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo PLA Basic @0.2 nozzle.json @@ -27,9 +27,6 @@ "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" ], "compatible_printers": [ - "Elegoo Centauri 0.2 nozzle", - "Elegoo Centauri Carbon 0.2 nozzle", - "Elegoo Centauri Carbon 2 0.2 nozzle", "Elegoo Neptune 4 0.2 nozzle", "Elegoo Neptune 4 Pro 0.2 nozzle", "Elegoo Neptune 4 Plus 0.2 nozzle", diff --git a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PLA Matte @0.2 nozzle.json b/resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo PLA Matte @0.2 nozzle.json similarity index 83% rename from resources/profiles/Elegoo/filament/ELEGOO/Elegoo PLA Matte @0.2 nozzle.json rename to resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo PLA Matte @0.2 nozzle.json index ff1b59c1870..04fb166a671 100644 --- a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PLA Matte @0.2 nozzle.json +++ b/resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo PLA Matte @0.2 nozzle.json @@ -1,7 +1,7 @@ { "type": "filament", "name": "Elegoo PLA Matte @0.2 nozzle", - "inherits": "Elegoo PLA Matte @base", + "inherits": "Elegoo PLA @base", "from": "system", "setting_id": "EPLAM00020", "instantiation": "true", @@ -32,10 +32,10 @@ "textured_plate_temp_initial_layer": [ "65" ], + "filament_density": [ + "1.25" + ], "compatible_printers": [ - "Elegoo Centauri 0.2 nozzle", - "Elegoo Centauri Carbon 0.2 nozzle", - "Elegoo Centauri Carbon 2 0.2 nozzle", "Elegoo Neptune 4 0.2 nozzle", "Elegoo Neptune 4 Pro 0.2 nozzle", "Elegoo Neptune 4 Plus 0.2 nozzle", diff --git a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PLA PRO @0.2 nozzle.json b/resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo PLA PRO @0.2 nozzle.json similarity index 81% rename from resources/profiles/Elegoo/filament/ELEGOO/Elegoo PLA PRO @0.2 nozzle.json rename to resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo PLA PRO @0.2 nozzle.json index b3a5baba186..7cda893c0a3 100644 --- a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PLA PRO @0.2 nozzle.json +++ b/resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo PLA PRO @0.2 nozzle.json @@ -9,9 +9,6 @@ "3.2" ], "compatible_printers": [ - "Elegoo Centauri 0.2 nozzle", - "Elegoo Centauri Carbon 0.2 nozzle", - "Elegoo Centauri Carbon 2 0.2 nozzle", "Elegoo Neptune 4 0.2 nozzle", "Elegoo Neptune 4 Pro 0.2 nozzle", "Elegoo Neptune 4 Plus 0.2 nozzle", diff --git a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PLA Silk @0.2 nozzle.json b/resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo PLA Silk @0.2 nozzle.json similarity index 83% rename from resources/profiles/Elegoo/filament/ELEGOO/Elegoo PLA Silk @0.2 nozzle.json rename to resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo PLA Silk @0.2 nozzle.json index 7ba7132d4f5..bf907a05c7d 100644 --- a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PLA Silk @0.2 nozzle.json +++ b/resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo PLA Silk @0.2 nozzle.json @@ -1,7 +1,7 @@ { "type": "filament", "name": "Elegoo PLA Silk @0.2 nozzle", - "inherits": "Elegoo PLA Silk @base", + "inherits": "Elegoo PLA @base", "from": "system", "setting_id": "EPLAS00020", "instantiation": "true", @@ -32,10 +32,16 @@ "textured_plate_temp_initial_layer": [ "60" ], + "filament_density": [ + "1.32" + ], + "nozzle_temperature": [ + "230" + ], + "nozzle_temperature_initial_layer": [ + "230" + ], "compatible_printers": [ - "Elegoo Centauri 0.2 nozzle", - "Elegoo Centauri Carbon 0.2 nozzle", - "Elegoo Centauri Carbon 2 0.2 nozzle", "Elegoo Neptune 4 0.2 nozzle", "Elegoo Neptune 4 Pro 0.2 nozzle", "Elegoo Neptune 4 Plus 0.2 nozzle", diff --git a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PLA+ @0.2 nozzle.json b/resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo PLA+ @0.2 nozzle.json similarity index 81% rename from resources/profiles/Elegoo/filament/ELEGOO/Elegoo PLA+ @0.2 nozzle.json rename to resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo PLA+ @0.2 nozzle.json index 6499f4afffd..11989fcb151 100644 --- a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo PLA+ @0.2 nozzle.json +++ b/resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo PLA+ @0.2 nozzle.json @@ -9,9 +9,6 @@ "3.2" ], "compatible_printers": [ - "Elegoo Centauri 0.2 nozzle", - "Elegoo Centauri Carbon 0.2 nozzle", - "Elegoo Centauri Carbon 2 0.2 nozzle", "Elegoo Neptune 4 0.2 nozzle", "Elegoo Neptune 4 Pro 0.2 nozzle", "Elegoo Neptune 4 Plus 0.2 nozzle", diff --git a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo Rapid PETG @0.2 nozzle.json b/resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo Rapid PETG @0.2 nozzle.json similarity index 70% rename from resources/profiles/Elegoo/filament/ELEGOO/Elegoo Rapid PETG @0.2 nozzle.json rename to resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo Rapid PETG @0.2 nozzle.json index 03a6468556d..ed9d38cd906 100644 --- a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo Rapid PETG @0.2 nozzle.json +++ b/resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo Rapid PETG @0.2 nozzle.json @@ -2,17 +2,29 @@ "type": "filament", "name": "Elegoo Rapid PETG @0.2 nozzle", "renamed_from": "Elegoo RAPID PETG @0.2 nozzle", - "inherits": "Elegoo Rapid PETG @base", + "inherits": "Elegoo PETG @base", "from": "system", "setting_id": "ERPETG00020", "instantiation": "true", "filament_max_volumetric_speed": [ "1" ], + "fan_max_speed": [ + "80" + ], + "fan_min_speed": [ + "30" + ], + "filament_density": [ + "1.26" + ], + "nozzle_temperature": [ + "250" + ], + "nozzle_temperature_initial_layer": [ + "250" + ], "compatible_printers": [ - "Elegoo Centauri 0.2 nozzle", - "Elegoo Centauri Carbon 0.2 nozzle", - "Elegoo Centauri Carbon 2 0.2 nozzle", "Elegoo Neptune 4 0.2 nozzle", "Elegoo Neptune 4 Pro 0.2 nozzle", "Elegoo Neptune 4 Plus 0.2 nozzle", diff --git a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo Rapid PLA+ @0.2 nozzle.json b/resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo Rapid PLA+ @0.2 nozzle.json similarity index 77% rename from resources/profiles/Elegoo/filament/ELEGOO/Elegoo Rapid PLA+ @0.2 nozzle.json rename to resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo Rapid PLA+ @0.2 nozzle.json index 14e6e1c8cb9..b031e6a3bb0 100644 --- a/resources/profiles/Elegoo/filament/ELEGOO/Elegoo Rapid PLA+ @0.2 nozzle.json +++ b/resources/profiles/Elegoo/filament/ELEGOO_02_NOZZLE/Elegoo Rapid PLA+ @0.2 nozzle.json @@ -2,17 +2,17 @@ "type": "filament", "name": "Elegoo Rapid PLA+ @0.2 nozzle", "renamed_from": "Elegoo RAPID PLA+ @0.2 nozzle", - "inherits": "Elegoo Rapid PLA+ @base", + "inherits": "Elegoo PLA @base", "from": "system", "setting_id": "ERPLAPLUS00020", "instantiation": "true", "filament_max_volumetric_speed": [ "3.2" ], + "filament_density": [ + "1.25" + ], "compatible_printers": [ - "Elegoo Centauri 0.2 nozzle", - "Elegoo Centauri Carbon 0.2 nozzle", - "Elegoo Centauri Carbon 2 0.2 nozzle", "Elegoo Neptune 4 0.2 nozzle", "Elegoo Neptune 4 Pro 0.2 nozzle", "Elegoo Neptune 4 Plus 0.2 nozzle", diff --git a/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo ASA @EN2 Series.json b/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo ASA @EN2 Series.json new file mode 100644 index 00000000000..fbc0cd346e0 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo ASA @EN2 Series.json @@ -0,0 +1,34 @@ +{ + "type": "filament", + "name": "Elegoo ASA @EN2 Series", + "inherits": "Elegoo ASA @base", + "from": "system", + "setting_id": "EASAEN2", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "8" + ], + "fan_max_speed": [ + "100" + ], + "compatible_printers": [ + "Elegoo Neptune 0.4 nozzle", + "Elegoo Neptune 0.6 nozzle", + "Elegoo Neptune 0.8 nozzle", + "Elegoo Neptune 2 0.4 nozzle", + "Elegoo Neptune 2 0.6 nozzle", + "Elegoo Neptune 2 0.8 nozzle", + "Elegoo Neptune 2S 0.4 nozzle", + "Elegoo Neptune 2S 0.6 nozzle", + "Elegoo Neptune 2S 0.8 nozzle", + "Elegoo Neptune 2D 0.4 nozzle", + "Elegoo Neptune 2D 0.6 nozzle", + "Elegoo Neptune 2D 0.8 nozzle", + "Elegoo Neptune X 0.4 nozzle", + "Elegoo Neptune X 0.6 nozzle", + "Elegoo Neptune X 0.8 nozzle", + "Elegoo Neptune 3 0.4 nozzle", + "Elegoo Neptune 3 0.6 nozzle", + "Elegoo Neptune 3 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PETG @EN2 Series.json b/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PETG @EN2 Series.json new file mode 100644 index 00000000000..de9093ed441 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PETG @EN2 Series.json @@ -0,0 +1,43 @@ +{ + "type": "filament", + "name": "Elegoo PETG @EN2 Series", + "inherits": "Elegoo PETG @base", + "from": "system", + "setting_id": "EPETGEN2", + "instantiation": "true", + "pressure_advance": [ + "0.024" + ], + "overhang_fan_threshold": [ + "50%" + ], + "nozzle_temperature": [ + "250" + ], + "nozzle_temperature_initial_layer": [ + "250" + ], + "filament_max_volumetric_speed": [ + "11" + ], + "compatible_printers": [ + "Elegoo Neptune 0.4 nozzle", + "Elegoo Neptune 0.6 nozzle", + "Elegoo Neptune 0.8 nozzle", + "Elegoo Neptune 2 0.4 nozzle", + "Elegoo Neptune 2 0.6 nozzle", + "Elegoo Neptune 2 0.8 nozzle", + "Elegoo Neptune 2S 0.4 nozzle", + "Elegoo Neptune 2S 0.6 nozzle", + "Elegoo Neptune 2S 0.8 nozzle", + "Elegoo Neptune 2D 0.4 nozzle", + "Elegoo Neptune 2D 0.6 nozzle", + "Elegoo Neptune 2D 0.8 nozzle", + "Elegoo Neptune X 0.4 nozzle", + "Elegoo Neptune X 0.6 nozzle", + "Elegoo Neptune X 0.8 nozzle", + "Elegoo Neptune 3 0.4 nozzle", + "Elegoo Neptune 3 0.6 nozzle", + "Elegoo Neptune 3 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PETG PRO @EN2 Series.json b/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PETG PRO @EN2 Series.json new file mode 100644 index 00000000000..3d9f9868119 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PETG PRO @EN2 Series.json @@ -0,0 +1,43 @@ +{ + "type": "filament", + "name": "Elegoo PETG PRO @EN2 Series", + "inherits": "Elegoo PETG @base", + "from": "system", + "setting_id": "EPETGPROEN2", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "8" + ], + "nozzle_temperature": [ + "230" + ], + "nozzle_temperature_initial_layer": [ + "230" + ], + "fan_max_speed": [ + "100" + ], + "fan_min_speed": [ + "50" + ], + "compatible_printers": [ + "Elegoo Neptune 0.4 nozzle", + "Elegoo Neptune 0.6 nozzle", + "Elegoo Neptune 0.8 nozzle", + "Elegoo Neptune 2 0.4 nozzle", + "Elegoo Neptune 2 0.6 nozzle", + "Elegoo Neptune 2 0.8 nozzle", + "Elegoo Neptune 2S 0.4 nozzle", + "Elegoo Neptune 2S 0.6 nozzle", + "Elegoo Neptune 2S 0.8 nozzle", + "Elegoo Neptune 2D 0.4 nozzle", + "Elegoo Neptune 2D 0.6 nozzle", + "Elegoo Neptune 2D 0.8 nozzle", + "Elegoo Neptune X 0.4 nozzle", + "Elegoo Neptune X 0.6 nozzle", + "Elegoo Neptune X 0.8 nozzle", + "Elegoo Neptune 3 0.4 nozzle", + "Elegoo Neptune 3 0.6 nozzle", + "Elegoo Neptune 3 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PETG Translucent @EN2 Series.json b/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PETG Translucent @EN2 Series.json new file mode 100644 index 00000000000..2dd00796035 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PETG Translucent @EN2 Series.json @@ -0,0 +1,43 @@ +{ + "type": "filament", + "name": "Elegoo PETG Translucent @EN2 Series", + "inherits": "Elegoo PETG @base", + "from": "system", + "setting_id": "EPETGTRANSEN2", + "instantiation": "true", + "pressure_advance": [ + "0.024" + ], + "fan_max_speed": [ + "35" + ], + "filament_max_volumetric_speed": [ + "10" + ], + "nozzle_temperature": [ + "255" + ], + "nozzle_temperature_initial_layer": [ + "255" + ], + "compatible_printers": [ + "Elegoo Neptune 0.4 nozzle", + "Elegoo Neptune 0.6 nozzle", + "Elegoo Neptune 0.8 nozzle", + "Elegoo Neptune 2 0.4 nozzle", + "Elegoo Neptune 2 0.6 nozzle", + "Elegoo Neptune 2 0.8 nozzle", + "Elegoo Neptune 2S 0.4 nozzle", + "Elegoo Neptune 2S 0.6 nozzle", + "Elegoo Neptune 2S 0.8 nozzle", + "Elegoo Neptune 2D 0.4 nozzle", + "Elegoo Neptune 2D 0.6 nozzle", + "Elegoo Neptune 2D 0.8 nozzle", + "Elegoo Neptune X 0.4 nozzle", + "Elegoo Neptune X 0.6 nozzle", + "Elegoo Neptune X 0.8 nozzle", + "Elegoo Neptune 3 0.4 nozzle", + "Elegoo Neptune 3 0.6 nozzle", + "Elegoo Neptune 3 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PETG-CF @EN2 Series.json b/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PETG-CF @EN2 Series.json new file mode 100644 index 00000000000..eb61024e9d5 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PETG-CF @EN2 Series.json @@ -0,0 +1,58 @@ +{ + "type": "filament", + "name": "Elegoo PETG-CF @EN2 Series", + "inherits": "Elegoo PETG @base", + "from": "system", + "setting_id": "EPETGCFEN2", + "instantiation": "true", + "pressure_advance": [ + "0.024" + ], + "filament_density": [ + "1.26" + ], + "nozzle_temperature": [ + "250" + ], + "nozzle_temperature_initial_layer": [ + "250" + ], + "fan_max_speed": [ + "40" + ], + "fan_min_speed": [ + "5" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "nozzle_temperature_range_low": [ + "240" + ], + "overhang_fan_speed": [ + "100" + ], + "slow_down_layer_time": [ + "6" + ], + "compatible_printers": [ + "Elegoo Neptune 0.4 nozzle", + "Elegoo Neptune 0.6 nozzle", + "Elegoo Neptune 0.8 nozzle", + "Elegoo Neptune 2 0.4 nozzle", + "Elegoo Neptune 2 0.6 nozzle", + "Elegoo Neptune 2 0.8 nozzle", + "Elegoo Neptune 2S 0.4 nozzle", + "Elegoo Neptune 2S 0.6 nozzle", + "Elegoo Neptune 2S 0.8 nozzle", + "Elegoo Neptune 2D 0.4 nozzle", + "Elegoo Neptune 2D 0.6 nozzle", + "Elegoo Neptune 2D 0.8 nozzle", + "Elegoo Neptune X 0.4 nozzle", + "Elegoo Neptune X 0.6 nozzle", + "Elegoo Neptune X 0.8 nozzle", + "Elegoo Neptune 3 0.4 nozzle", + "Elegoo Neptune 3 0.6 nozzle", + "Elegoo Neptune 3 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PETG-GF @EN2 Series.json b/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PETG-GF @EN2 Series.json new file mode 100644 index 00000000000..471d0bb72fe --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PETG-GF @EN2 Series.json @@ -0,0 +1,58 @@ +{ + "type": "filament", + "name": "Elegoo PETG-GF @EN2 Series", + "inherits": "Elegoo PETG @base", + "from": "system", + "setting_id": "EPETGFEN2", + "instantiation": "true", + "pressure_advance": [ + "0.024" + ], + "filament_density": [ + "1.26" + ], + "nozzle_temperature": [ + "250" + ], + "nozzle_temperature_initial_layer": [ + "250" + ], + "fan_max_speed": [ + "40" + ], + "fan_min_speed": [ + "5" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "nozzle_temperature_range_low": [ + "240" + ], + "overhang_fan_speed": [ + "100" + ], + "slow_down_layer_time": [ + "6" + ], + "compatible_printers": [ + "Elegoo Neptune 0.4 nozzle", + "Elegoo Neptune 0.6 nozzle", + "Elegoo Neptune 0.8 nozzle", + "Elegoo Neptune 2 0.4 nozzle", + "Elegoo Neptune 2 0.6 nozzle", + "Elegoo Neptune 2 0.8 nozzle", + "Elegoo Neptune 2S 0.4 nozzle", + "Elegoo Neptune 2S 0.6 nozzle", + "Elegoo Neptune 2S 0.8 nozzle", + "Elegoo Neptune 2D 0.4 nozzle", + "Elegoo Neptune 2D 0.6 nozzle", + "Elegoo Neptune 2D 0.8 nozzle", + "Elegoo Neptune X 0.4 nozzle", + "Elegoo Neptune X 0.6 nozzle", + "Elegoo Neptune X 0.8 nozzle", + "Elegoo Neptune 3 0.4 nozzle", + "Elegoo Neptune 3 0.6 nozzle", + "Elegoo Neptune 3 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PLA @EN2 Series.json b/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PLA @EN2 Series.json new file mode 100644 index 00000000000..1043b0ecca7 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PLA @EN2 Series.json @@ -0,0 +1,46 @@ +{ + "type": "filament", + "name": "Elegoo PLA @EN2 Series", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLAEN2", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "9" + ], + "fan_min_speed": [ + "80" + ], + "nozzle_temperature": [ + "210" + ], + "nozzle_temperature_initial_layer": [ + "210" + ], + "overhang_fan_threshold": [ + "75%" + ], + "slow_down_min_speed": [ + "10" + ], + "compatible_printers": [ + "Elegoo Neptune 0.4 nozzle", + "Elegoo Neptune 0.6 nozzle", + "Elegoo Neptune 0.8 nozzle", + "Elegoo Neptune 2 0.4 nozzle", + "Elegoo Neptune 2 0.6 nozzle", + "Elegoo Neptune 2 0.8 nozzle", + "Elegoo Neptune 2S 0.4 nozzle", + "Elegoo Neptune 2S 0.6 nozzle", + "Elegoo Neptune 2S 0.8 nozzle", + "Elegoo Neptune 2D 0.4 nozzle", + "Elegoo Neptune 2D 0.6 nozzle", + "Elegoo Neptune 2D 0.8 nozzle", + "Elegoo Neptune X 0.4 nozzle", + "Elegoo Neptune X 0.6 nozzle", + "Elegoo Neptune X 0.8 nozzle", + "Elegoo Neptune 3 0.4 nozzle", + "Elegoo Neptune 3 0.6 nozzle", + "Elegoo Neptune 3 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PLA Basic @EN2 Series.json b/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PLA Basic @EN2 Series.json new file mode 100644 index 00000000000..ab1a33a57c1 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PLA Basic @EN2 Series.json @@ -0,0 +1,49 @@ +{ + "type": "filament", + "name": "Elegoo PLA Basic @EN2 Series", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLABASICEN2", + "instantiation": "true", + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "filament_max_volumetric_speed": [ + "21" + ], + "pressure_advance": [ + "0.024" + ], + "slow_down_layer_time": [ + "4" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [ + "Elegoo Neptune 0.4 nozzle", + "Elegoo Neptune 0.6 nozzle", + "Elegoo Neptune 0.8 nozzle", + "Elegoo Neptune 2 0.4 nozzle", + "Elegoo Neptune 2 0.6 nozzle", + "Elegoo Neptune 2 0.8 nozzle", + "Elegoo Neptune 2S 0.4 nozzle", + "Elegoo Neptune 2S 0.6 nozzle", + "Elegoo Neptune 2S 0.8 nozzle", + "Elegoo Neptune 2D 0.4 nozzle", + "Elegoo Neptune 2D 0.6 nozzle", + "Elegoo Neptune 2D 0.8 nozzle", + "Elegoo Neptune X 0.4 nozzle", + "Elegoo Neptune X 0.6 nozzle", + "Elegoo Neptune X 0.8 nozzle", + "Elegoo Neptune 3 0.4 nozzle", + "Elegoo Neptune 3 0.6 nozzle", + "Elegoo Neptune 3 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PLA Galaxy @EN2 Series.json b/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PLA Galaxy @EN2 Series.json new file mode 100644 index 00000000000..1f42e7c028c --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PLA Galaxy @EN2 Series.json @@ -0,0 +1,52 @@ +{ + "type": "filament", + "name": "Elegoo PLA Galaxy @EN2 Series", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLAGALAXYEN2", + "instantiation": "true", + "fan_min_speed": [ + "80" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature_range_high": [ + "220" + ], + "pressure_advance": [ + "0.024" + ], + "slow_down_layer_time": [ + "4" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [ + "Elegoo Neptune 0.4 nozzle", + "Elegoo Neptune 0.6 nozzle", + "Elegoo Neptune 0.8 nozzle", + "Elegoo Neptune 2 0.4 nozzle", + "Elegoo Neptune 2 0.6 nozzle", + "Elegoo Neptune 2 0.8 nozzle", + "Elegoo Neptune 2S 0.4 nozzle", + "Elegoo Neptune 2S 0.6 nozzle", + "Elegoo Neptune 2S 0.8 nozzle", + "Elegoo Neptune 2D 0.4 nozzle", + "Elegoo Neptune 2D 0.6 nozzle", + "Elegoo Neptune 2D 0.8 nozzle", + "Elegoo Neptune X 0.4 nozzle", + "Elegoo Neptune X 0.6 nozzle", + "Elegoo Neptune X 0.8 nozzle", + "Elegoo Neptune 3 0.4 nozzle", + "Elegoo Neptune 3 0.6 nozzle", + "Elegoo Neptune 3 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PLA Marble @EN2 Series.json b/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PLA Marble @EN2 Series.json new file mode 100644 index 00000000000..a2f3e55a16e --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PLA Marble @EN2 Series.json @@ -0,0 +1,52 @@ +{ + "type": "filament", + "name": "Elegoo PLA Marble @EN2 Series", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLAMARBLEEN2", + "instantiation": "true", + "fan_min_speed": [ + "80" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature_range_high": [ + "220" + ], + "pressure_advance": [ + "0.024" + ], + "slow_down_layer_time": [ + "4" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [ + "Elegoo Neptune 0.4 nozzle", + "Elegoo Neptune 0.6 nozzle", + "Elegoo Neptune 0.8 nozzle", + "Elegoo Neptune 2 0.4 nozzle", + "Elegoo Neptune 2 0.6 nozzle", + "Elegoo Neptune 2 0.8 nozzle", + "Elegoo Neptune 2S 0.4 nozzle", + "Elegoo Neptune 2S 0.6 nozzle", + "Elegoo Neptune 2S 0.8 nozzle", + "Elegoo Neptune 2D 0.4 nozzle", + "Elegoo Neptune 2D 0.6 nozzle", + "Elegoo Neptune 2D 0.8 nozzle", + "Elegoo Neptune X 0.4 nozzle", + "Elegoo Neptune X 0.6 nozzle", + "Elegoo Neptune X 0.8 nozzle", + "Elegoo Neptune 3 0.4 nozzle", + "Elegoo Neptune 3 0.6 nozzle", + "Elegoo Neptune 3 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PLA Matte @EN2 Series.json b/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PLA Matte @EN2 Series.json new file mode 100644 index 00000000000..799e8181e4c --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PLA Matte @EN2 Series.json @@ -0,0 +1,61 @@ +{ + "type": "filament", + "name": "Elegoo PLA Matte @EN2 Series", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLAMEN2", + "instantiation": "true", + "fan_cooling_layer_time": [ + "80" + ], + "fan_max_speed": [ + "100" + ], + "filament_max_volumetric_speed": [ + "9" + ], + "hot_plate_temp": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "slow_down_layer_time": [ + "6" + ], + "fan_min_speed": [ + "80" + ], + "nozzle_temperature": [ + "210" + ], + "nozzle_temperature_initial_layer": [ + "210" + ], + "overhang_fan_threshold": [ + "75%" + ], + "slow_down_min_speed": [ + "10" + ], + "compatible_printers": [ + "Elegoo Neptune 0.4 nozzle", + "Elegoo Neptune 0.6 nozzle", + "Elegoo Neptune 0.8 nozzle", + "Elegoo Neptune 2 0.4 nozzle", + "Elegoo Neptune 2 0.6 nozzle", + "Elegoo Neptune 2 0.8 nozzle", + "Elegoo Neptune 2S 0.4 nozzle", + "Elegoo Neptune 2S 0.6 nozzle", + "Elegoo Neptune 2S 0.8 nozzle", + "Elegoo Neptune 2D 0.4 nozzle", + "Elegoo Neptune 2D 0.6 nozzle", + "Elegoo Neptune 2D 0.8 nozzle", + "Elegoo Neptune X 0.4 nozzle", + "Elegoo Neptune X 0.6 nozzle", + "Elegoo Neptune X 0.8 nozzle", + "Elegoo Neptune 3 0.4 nozzle", + "Elegoo Neptune 3 0.6 nozzle", + "Elegoo Neptune 3 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PLA PRO @EN2 Series.json b/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PLA PRO @EN2 Series.json new file mode 100644 index 00000000000..9e9e95e770f --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PLA PRO @EN2 Series.json @@ -0,0 +1,46 @@ +{ + "type": "filament", + "name": "Elegoo PLA PRO @EN2 Series", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLAPROEN2", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "12" + ], + "fan_min_speed": [ + "80" + ], + "nozzle_temperature": [ + "210" + ], + "nozzle_temperature_initial_layer": [ + "210" + ], + "overhang_fan_threshold": [ + "75%" + ], + "slow_down_min_speed": [ + "10" + ], + "compatible_printers": [ + "Elegoo Neptune 0.4 nozzle", + "Elegoo Neptune 0.6 nozzle", + "Elegoo Neptune 0.8 nozzle", + "Elegoo Neptune 2 0.4 nozzle", + "Elegoo Neptune 2 0.6 nozzle", + "Elegoo Neptune 2 0.8 nozzle", + "Elegoo Neptune 2S 0.4 nozzle", + "Elegoo Neptune 2S 0.6 nozzle", + "Elegoo Neptune 2S 0.8 nozzle", + "Elegoo Neptune 2D 0.4 nozzle", + "Elegoo Neptune 2D 0.6 nozzle", + "Elegoo Neptune 2D 0.8 nozzle", + "Elegoo Neptune X 0.4 nozzle", + "Elegoo Neptune X 0.6 nozzle", + "Elegoo Neptune X 0.8 nozzle", + "Elegoo Neptune 3 0.4 nozzle", + "Elegoo Neptune 3 0.6 nozzle", + "Elegoo Neptune 3 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PLA Silk @EN2 Series.json b/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PLA Silk @EN2 Series.json new file mode 100644 index 00000000000..f7319a958d1 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PLA Silk @EN2 Series.json @@ -0,0 +1,70 @@ +{ + "type": "filament", + "name": "Elegoo PLA Silk @EN2 Series", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLASEN2", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "9" + ], + "fan_cooling_layer_time": [ + "80" + ], + "fan_max_speed": [ + "100" + ], + "hot_plate_temp": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "slow_down_layer_time": [ + "8" + ], + "textured_plate_temp": [ + "65" + ], + "textured_plate_temp_initial_layer": [ + "65" + ], + "fan_min_speed": [ + "80" + ], + "nozzle_temperature": [ + "210" + ], + "nozzle_temperature_initial_layer": [ + "210" + ], + "overhang_fan_threshold": [ + "75%" + ], + "slow_down_min_speed": [ + "10" + ], + "filament_density": [ + "1.32" + ], + "compatible_printers": [ + "Elegoo Neptune 0.4 nozzle", + "Elegoo Neptune 0.6 nozzle", + "Elegoo Neptune 0.8 nozzle", + "Elegoo Neptune 2 0.4 nozzle", + "Elegoo Neptune 2 0.6 nozzle", + "Elegoo Neptune 2 0.8 nozzle", + "Elegoo Neptune 2S 0.4 nozzle", + "Elegoo Neptune 2S 0.6 nozzle", + "Elegoo Neptune 2S 0.8 nozzle", + "Elegoo Neptune 2D 0.4 nozzle", + "Elegoo Neptune 2D 0.6 nozzle", + "Elegoo Neptune 2D 0.8 nozzle", + "Elegoo Neptune X 0.4 nozzle", + "Elegoo Neptune X 0.6 nozzle", + "Elegoo Neptune X 0.8 nozzle", + "Elegoo Neptune 3 0.4 nozzle", + "Elegoo Neptune 3 0.6 nozzle", + "Elegoo Neptune 3 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PLA Sparkle @EN2 Series.json b/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PLA Sparkle @EN2 Series.json new file mode 100644 index 00000000000..7fa37edb940 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PLA Sparkle @EN2 Series.json @@ -0,0 +1,52 @@ +{ + "type": "filament", + "name": "Elegoo PLA Sparkle @EN2 Series", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLASPARKLEEN2", + "instantiation": "true", + "fan_min_speed": [ + "80" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature_range_high": [ + "220" + ], + "pressure_advance": [ + "0.024" + ], + "slow_down_layer_time": [ + "4" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [ + "Elegoo Neptune 0.4 nozzle", + "Elegoo Neptune 0.6 nozzle", + "Elegoo Neptune 0.8 nozzle", + "Elegoo Neptune 2 0.4 nozzle", + "Elegoo Neptune 2 0.6 nozzle", + "Elegoo Neptune 2 0.8 nozzle", + "Elegoo Neptune 2S 0.4 nozzle", + "Elegoo Neptune 2S 0.6 nozzle", + "Elegoo Neptune 2S 0.8 nozzle", + "Elegoo Neptune 2D 0.4 nozzle", + "Elegoo Neptune 2D 0.6 nozzle", + "Elegoo Neptune 2D 0.8 nozzle", + "Elegoo Neptune X 0.4 nozzle", + "Elegoo Neptune X 0.6 nozzle", + "Elegoo Neptune X 0.8 nozzle", + "Elegoo Neptune 3 0.4 nozzle", + "Elegoo Neptune 3 0.6 nozzle", + "Elegoo Neptune 3 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PLA Wood @EN2 Series.json b/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PLA Wood @EN2 Series.json new file mode 100644 index 00000000000..4c9153155a6 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PLA Wood @EN2 Series.json @@ -0,0 +1,52 @@ +{ + "type": "filament", + "name": "Elegoo PLA Wood @EN2 Series", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLAWOODEN2", + "instantiation": "true", + "fan_min_speed": [ + "80" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature_range_low": [ + "200" + ], + "pressure_advance": [ + "0.024" + ], + "slow_down_layer_time": [ + "4" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [ + "Elegoo Neptune 0.4 nozzle", + "Elegoo Neptune 0.6 nozzle", + "Elegoo Neptune 0.8 nozzle", + "Elegoo Neptune 2 0.4 nozzle", + "Elegoo Neptune 2 0.6 nozzle", + "Elegoo Neptune 2 0.8 nozzle", + "Elegoo Neptune 2S 0.4 nozzle", + "Elegoo Neptune 2S 0.6 nozzle", + "Elegoo Neptune 2S 0.8 nozzle", + "Elegoo Neptune 2D 0.4 nozzle", + "Elegoo Neptune 2D 0.6 nozzle", + "Elegoo Neptune 2D 0.8 nozzle", + "Elegoo Neptune X 0.4 nozzle", + "Elegoo Neptune X 0.6 nozzle", + "Elegoo Neptune X 0.8 nozzle", + "Elegoo Neptune 3 0.4 nozzle", + "Elegoo Neptune 3 0.6 nozzle", + "Elegoo Neptune 3 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PLA+ @EN2 Series.json b/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PLA+ @EN2 Series.json new file mode 100644 index 00000000000..e3f5a23d483 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PLA+ @EN2 Series.json @@ -0,0 +1,46 @@ +{ + "type": "filament", + "name": "Elegoo PLA+ @EN2 Series", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLAPLUSEN2", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "12" + ], + "fan_min_speed": [ + "80" + ], + "nozzle_temperature": [ + "210" + ], + "nozzle_temperature_initial_layer": [ + "210" + ], + "overhang_fan_threshold": [ + "75%" + ], + "slow_down_min_speed": [ + "10" + ], + "compatible_printers": [ + "Elegoo Neptune 0.4 nozzle", + "Elegoo Neptune 0.6 nozzle", + "Elegoo Neptune 0.8 nozzle", + "Elegoo Neptune 2 0.4 nozzle", + "Elegoo Neptune 2 0.6 nozzle", + "Elegoo Neptune 2 0.8 nozzle", + "Elegoo Neptune 2S 0.4 nozzle", + "Elegoo Neptune 2S 0.6 nozzle", + "Elegoo Neptune 2S 0.8 nozzle", + "Elegoo Neptune 2D 0.4 nozzle", + "Elegoo Neptune 2D 0.6 nozzle", + "Elegoo Neptune 2D 0.8 nozzle", + "Elegoo Neptune X 0.4 nozzle", + "Elegoo Neptune X 0.6 nozzle", + "Elegoo Neptune X 0.8 nozzle", + "Elegoo Neptune 3 0.4 nozzle", + "Elegoo Neptune 3 0.6 nozzle", + "Elegoo Neptune 3 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PLA-CF @EN2 Series.json b/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PLA-CF @EN2 Series.json new file mode 100644 index 00000000000..902ef1c5d65 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo PLA-CF @EN2 Series.json @@ -0,0 +1,76 @@ +{ + "type": "filament", + "name": "Elegoo PLA-CF @EN2 Series", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLACFEN2", + "instantiation": "true", + "fan_cooling_layer_time": [ + "80" + ], + "fan_max_speed": [ + "100" + ], + "filament_max_volumetric_speed": [ + "8" + ], + "hot_plate_temp": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "slow_down_layer_time": [ + "6" + ], + "fan_min_speed": [ + "80" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "overhang_fan_threshold": [ + "75%" + ], + "slow_down_min_speed": [ + "10" + ], + "additional_cooling_fan_speed": [ + "0" + ], + "cool_plate_temp": [ + "45" + ], + "cool_plate_temp_initial_layer": [ + "45" + ], + "filament_density": [ + "1.21" + ], + "required_nozzle_HRC": [ + "40" + ], + "compatible_printers": [ + "Elegoo Neptune 0.4 nozzle", + "Elegoo Neptune 0.6 nozzle", + "Elegoo Neptune 0.8 nozzle", + "Elegoo Neptune 2 0.4 nozzle", + "Elegoo Neptune 2 0.6 nozzle", + "Elegoo Neptune 2 0.8 nozzle", + "Elegoo Neptune 2S 0.4 nozzle", + "Elegoo Neptune 2S 0.6 nozzle", + "Elegoo Neptune 2S 0.8 nozzle", + "Elegoo Neptune 2D 0.4 nozzle", + "Elegoo Neptune 2D 0.6 nozzle", + "Elegoo Neptune 2D 0.8 nozzle", + "Elegoo Neptune X 0.4 nozzle", + "Elegoo Neptune X 0.6 nozzle", + "Elegoo Neptune X 0.8 nozzle", + "Elegoo Neptune 3 0.4 nozzle", + "Elegoo Neptune 3 0.6 nozzle", + "Elegoo Neptune 3 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo Rapid PETG @EN2 Series.json b/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo Rapid PETG @EN2 Series.json new file mode 100644 index 00000000000..41d095cf509 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo Rapid PETG @EN2 Series.json @@ -0,0 +1,47 @@ +{ + "type": "filament", + "name": "Elegoo Rapid PETG @EN2 Series", + "renamed_from": "Elegoo RAPID PETG @EN2 Series", + "inherits": "Elegoo PETG @base", + "from": "system", + "setting_id": "ERPETGEN2", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "10" + ], + "nozzle_temperature": [ + "230" + ], + "nozzle_temperature_initial_layer": [ + "230" + ], + "fan_max_speed": [ + "100" + ], + "fan_min_speed": [ + "50" + ], + "filament_density": [ + "1.26" + ], + "compatible_printers": [ + "Elegoo Neptune 0.4 nozzle", + "Elegoo Neptune 0.6 nozzle", + "Elegoo Neptune 0.8 nozzle", + "Elegoo Neptune 2 0.4 nozzle", + "Elegoo Neptune 2 0.6 nozzle", + "Elegoo Neptune 2 0.8 nozzle", + "Elegoo Neptune 2S 0.4 nozzle", + "Elegoo Neptune 2S 0.6 nozzle", + "Elegoo Neptune 2S 0.8 nozzle", + "Elegoo Neptune 2D 0.4 nozzle", + "Elegoo Neptune 2D 0.6 nozzle", + "Elegoo Neptune 2D 0.8 nozzle", + "Elegoo Neptune X 0.4 nozzle", + "Elegoo Neptune X 0.6 nozzle", + "Elegoo Neptune X 0.8 nozzle", + "Elegoo Neptune 3 0.4 nozzle", + "Elegoo Neptune 3 0.6 nozzle", + "Elegoo Neptune 3 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo Rapid PLA+ @EN2 Series.json b/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo Rapid PLA+ @EN2 Series.json new file mode 100644 index 00000000000..382ce0d8d5f --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo Rapid PLA+ @EN2 Series.json @@ -0,0 +1,71 @@ +{ + "type": "filament", + "name": "Elegoo Rapid PLA+ @EN2 Series", + "renamed_from": "Elegoo RAPID PLA+ @EN2 Series", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "ERPLAPLUSEN2", + "instantiation": "true", + "fan_cooling_layer_time": [ + "80" + ], + "fan_max_speed": [ + "100" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "hot_plate_temp": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "slow_down_layer_time": [ + "6" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "fan_min_speed": [ + "80" + ], + "nozzle_temperature": [ + "210" + ], + "nozzle_temperature_initial_layer": [ + "210" + ], + "overhang_fan_threshold": [ + "75%" + ], + "slow_down_min_speed": [ + "10" + ], + "filament_density": [ + "1.25" + ], + "compatible_printers": [ + "Elegoo Neptune 0.4 nozzle", + "Elegoo Neptune 0.6 nozzle", + "Elegoo Neptune 0.8 nozzle", + "Elegoo Neptune 2 0.4 nozzle", + "Elegoo Neptune 2 0.6 nozzle", + "Elegoo Neptune 2 0.8 nozzle", + "Elegoo Neptune 2S 0.4 nozzle", + "Elegoo Neptune 2S 0.6 nozzle", + "Elegoo Neptune 2S 0.8 nozzle", + "Elegoo Neptune 2D 0.4 nozzle", + "Elegoo Neptune 2D 0.6 nozzle", + "Elegoo Neptune 2D 0.8 nozzle", + "Elegoo Neptune X 0.4 nozzle", + "Elegoo Neptune X 0.6 nozzle", + "Elegoo Neptune X 0.8 nozzle", + "Elegoo Neptune 3 0.4 nozzle", + "Elegoo Neptune 3 0.6 nozzle", + "Elegoo Neptune 3 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo Rapid TPU 95A @EN2 Series.json b/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo Rapid TPU 95A @EN2 Series.json new file mode 100644 index 00000000000..fd4d6e96522 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN2SERIES/Elegoo Rapid TPU 95A @EN2 Series.json @@ -0,0 +1,44 @@ +{ + "type": "filament", + "name": "Elegoo Rapid TPU 95A @EN2 Series", + "renamed_from": "Elegoo RAPID TPU 95A @EN2 Series", + "inherits": "Elegoo TPU @base", + "from": "system", + "setting_id": "ERTPU95AEN2", + "instantiation": "true", + "pressure_advance": [ + "0.024" + ], + "nozzle_temperature": [ + "230" + ], + "nozzle_temperature_initial_layer": [ + "230" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "compatible_printers": [ + "Elegoo Neptune 0.4 nozzle", + "Elegoo Neptune 0.6 nozzle", + "Elegoo Neptune 0.8 nozzle", + "Elegoo Neptune 2 0.4 nozzle", + "Elegoo Neptune 2 0.6 nozzle", + "Elegoo Neptune 2 0.8 nozzle", + "Elegoo Neptune 2S 0.4 nozzle", + "Elegoo Neptune 2S 0.6 nozzle", + "Elegoo Neptune 2S 0.8 nozzle", + "Elegoo Neptune 2D 0.4 nozzle", + "Elegoo Neptune 2D 0.6 nozzle", + "Elegoo Neptune 2D 0.8 nozzle", + "Elegoo Neptune X 0.4 nozzle", + "Elegoo Neptune X 0.6 nozzle", + "Elegoo Neptune X 0.8 nozzle", + "Elegoo Neptune 3 0.4 nozzle", + "Elegoo Neptune 3 0.6 nozzle", + "Elegoo Neptune 3 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo ASA @EN3 Series.json b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo ASA @EN3 Series.json new file mode 100644 index 00000000000..5de869a6589 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo ASA @EN3 Series.json @@ -0,0 +1,28 @@ +{ + "type": "filament", + "name": "Elegoo ASA @EN3 Series", + "inherits": "Elegoo ASA @base", + "from": "system", + "setting_id": "EASAEN3", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "8" + ], + "fan_max_speed": [ + "100" + ], + "compatible_printers": [ + "Elegoo Neptune 3 Pro 0.4 nozzle", + "Elegoo Neptune 3 Pro 0.6 nozzle", + "Elegoo Neptune 3 Pro 0.8 nozzle", + "Elegoo Neptune 3 Pro 1.0 nozzle", + "Elegoo Neptune 3 Plus 0.4 nozzle", + "Elegoo Neptune 3 Plus 0.6 nozzle", + "Elegoo Neptune 3 Plus 0.8 nozzle", + "Elegoo Neptune 3 Plus 1.0 nozzle", + "Elegoo Neptune 3 Max 0.4 nozzle", + "Elegoo Neptune 3 Max 0.6 nozzle", + "Elegoo Neptune 3 Max 0.8 nozzle", + "Elegoo Neptune 3 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PETG @EN3 Series.json b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PETG @EN3 Series.json new file mode 100644 index 00000000000..781b808133a --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PETG @EN3 Series.json @@ -0,0 +1,37 @@ +{ + "type": "filament", + "name": "Elegoo PETG @EN3 Series", + "inherits": "Elegoo PETG @base", + "from": "system", + "setting_id": "EPETGEN3", + "instantiation": "true", + "pressure_advance": [ + "0.024" + ], + "overhang_fan_threshold": [ + "50%" + ], + "nozzle_temperature": [ + "250" + ], + "nozzle_temperature_initial_layer": [ + "250" + ], + "filament_max_volumetric_speed": [ + "11" + ], + "compatible_printers": [ + "Elegoo Neptune 3 Pro 0.4 nozzle", + "Elegoo Neptune 3 Pro 0.6 nozzle", + "Elegoo Neptune 3 Pro 0.8 nozzle", + "Elegoo Neptune 3 Pro 1.0 nozzle", + "Elegoo Neptune 3 Plus 0.4 nozzle", + "Elegoo Neptune 3 Plus 0.6 nozzle", + "Elegoo Neptune 3 Plus 0.8 nozzle", + "Elegoo Neptune 3 Plus 1.0 nozzle", + "Elegoo Neptune 3 Max 0.4 nozzle", + "Elegoo Neptune 3 Max 0.6 nozzle", + "Elegoo Neptune 3 Max 0.8 nozzle", + "Elegoo Neptune 3 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PETG PRO @EN3 Series.json b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PETG PRO @EN3 Series.json new file mode 100644 index 00000000000..c498f1e5987 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PETG PRO @EN3 Series.json @@ -0,0 +1,40 @@ +{ + "type": "filament", + "name": "Elegoo PETG PRO @EN3 Series", + "inherits": "Elegoo PETG @base", + "from": "system", + "setting_id": "EPETGPROEN3", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "8" + ], + "nozzle_temperature": [ + "230" + ], + "nozzle_temperature_initial_layer": [ + "230" + ], + "fan_max_speed": [ + "100" + ], + "fan_min_speed": [ + "50" + ], + "overhang_fan_threshold": [ + "50%" + ], + "compatible_printers": [ + "Elegoo Neptune 3 Pro 0.4 nozzle", + "Elegoo Neptune 3 Pro 0.6 nozzle", + "Elegoo Neptune 3 Pro 0.8 nozzle", + "Elegoo Neptune 3 Pro 1.0 nozzle", + "Elegoo Neptune 3 Plus 0.4 nozzle", + "Elegoo Neptune 3 Plus 0.6 nozzle", + "Elegoo Neptune 3 Plus 0.8 nozzle", + "Elegoo Neptune 3 Plus 1.0 nozzle", + "Elegoo Neptune 3 Max 0.4 nozzle", + "Elegoo Neptune 3 Max 0.6 nozzle", + "Elegoo Neptune 3 Max 0.8 nozzle", + "Elegoo Neptune 3 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PETG Translucent @EN3 Series.json b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PETG Translucent @EN3 Series.json new file mode 100644 index 00000000000..971d53656eb --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PETG Translucent @EN3 Series.json @@ -0,0 +1,37 @@ +{ + "type": "filament", + "name": "Elegoo PETG Translucent @EN3 Series", + "inherits": "Elegoo PETG @base", + "from": "system", + "setting_id": "EPETGTRANSEN3", + "instantiation": "true", + "pressure_advance": [ + "0.024" + ], + "fan_max_speed": [ + "35" + ], + "filament_max_volumetric_speed": [ + "10" + ], + "nozzle_temperature": [ + "255" + ], + "nozzle_temperature_initial_layer": [ + "255" + ], + "compatible_printers": [ + "Elegoo Neptune 3 Pro 0.4 nozzle", + "Elegoo Neptune 3 Pro 0.6 nozzle", + "Elegoo Neptune 3 Pro 0.8 nozzle", + "Elegoo Neptune 3 Pro 1.0 nozzle", + "Elegoo Neptune 3 Plus 0.4 nozzle", + "Elegoo Neptune 3 Plus 0.6 nozzle", + "Elegoo Neptune 3 Plus 0.8 nozzle", + "Elegoo Neptune 3 Plus 1.0 nozzle", + "Elegoo Neptune 3 Max 0.4 nozzle", + "Elegoo Neptune 3 Max 0.6 nozzle", + "Elegoo Neptune 3 Max 0.8 nozzle", + "Elegoo Neptune 3 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PETG-CF @EN3 Series.json b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PETG-CF @EN3 Series.json new file mode 100644 index 00000000000..f98b403cdbb --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PETG-CF @EN3 Series.json @@ -0,0 +1,52 @@ +{ + "type": "filament", + "name": "Elegoo PETG-CF @EN3 Series", + "inherits": "Elegoo PETG @base", + "from": "system", + "setting_id": "EPETGCFEN3", + "instantiation": "true", + "pressure_advance": [ + "0.024" + ], + "filament_density": [ + "1.26" + ], + "nozzle_temperature": [ + "250" + ], + "nozzle_temperature_initial_layer": [ + "250" + ], + "fan_max_speed": [ + "40" + ], + "fan_min_speed": [ + "5" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "nozzle_temperature_range_low": [ + "240" + ], + "overhang_fan_speed": [ + "100" + ], + "slow_down_layer_time": [ + "6" + ], + "compatible_printers": [ + "Elegoo Neptune 3 Pro 0.4 nozzle", + "Elegoo Neptune 3 Pro 0.6 nozzle", + "Elegoo Neptune 3 Pro 0.8 nozzle", + "Elegoo Neptune 3 Pro 1.0 nozzle", + "Elegoo Neptune 3 Plus 0.4 nozzle", + "Elegoo Neptune 3 Plus 0.6 nozzle", + "Elegoo Neptune 3 Plus 0.8 nozzle", + "Elegoo Neptune 3 Plus 1.0 nozzle", + "Elegoo Neptune 3 Max 0.4 nozzle", + "Elegoo Neptune 3 Max 0.6 nozzle", + "Elegoo Neptune 3 Max 0.8 nozzle", + "Elegoo Neptune 3 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PETG-GF @EN3 Series.json b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PETG-GF @EN3 Series.json new file mode 100644 index 00000000000..ac76ce31470 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PETG-GF @EN3 Series.json @@ -0,0 +1,52 @@ +{ + "type": "filament", + "name": "Elegoo PETG-GF @EN3 Series", + "inherits": "Elegoo PETG @base", + "from": "system", + "setting_id": "EPETGFEN3", + "instantiation": "true", + "pressure_advance": [ + "0.024" + ], + "filament_density": [ + "1.26" + ], + "nozzle_temperature": [ + "250" + ], + "nozzle_temperature_initial_layer": [ + "250" + ], + "fan_max_speed": [ + "40" + ], + "fan_min_speed": [ + "5" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "nozzle_temperature_range_low": [ + "240" + ], + "overhang_fan_speed": [ + "100" + ], + "slow_down_layer_time": [ + "6" + ], + "compatible_printers": [ + "Elegoo Neptune 3 Pro 0.4 nozzle", + "Elegoo Neptune 3 Pro 0.6 nozzle", + "Elegoo Neptune 3 Pro 0.8 nozzle", + "Elegoo Neptune 3 Pro 1.0 nozzle", + "Elegoo Neptune 3 Plus 0.4 nozzle", + "Elegoo Neptune 3 Plus 0.6 nozzle", + "Elegoo Neptune 3 Plus 0.8 nozzle", + "Elegoo Neptune 3 Plus 1.0 nozzle", + "Elegoo Neptune 3 Max 0.4 nozzle", + "Elegoo Neptune 3 Max 0.6 nozzle", + "Elegoo Neptune 3 Max 0.8 nozzle", + "Elegoo Neptune 3 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PLA @EN3 Series.json b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PLA @EN3 Series.json new file mode 100644 index 00000000000..18c3eaf3ec1 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PLA @EN3 Series.json @@ -0,0 +1,40 @@ +{ + "type": "filament", + "name": "Elegoo PLA @EN3 Series", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLAEN3", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "9" + ], + "fan_min_speed": [ + "80" + ], + "nozzle_temperature": [ + "210" + ], + "nozzle_temperature_initial_layer": [ + "210" + ], + "overhang_fan_threshold": [ + "75%" + ], + "slow_down_min_speed": [ + "10" + ], + "compatible_printers": [ + "Elegoo Neptune 3 Pro 0.4 nozzle", + "Elegoo Neptune 3 Pro 0.6 nozzle", + "Elegoo Neptune 3 Pro 0.8 nozzle", + "Elegoo Neptune 3 Pro 1.0 nozzle", + "Elegoo Neptune 3 Plus 0.4 nozzle", + "Elegoo Neptune 3 Plus 0.6 nozzle", + "Elegoo Neptune 3 Plus 0.8 nozzle", + "Elegoo Neptune 3 Plus 1.0 nozzle", + "Elegoo Neptune 3 Max 0.4 nozzle", + "Elegoo Neptune 3 Max 0.6 nozzle", + "Elegoo Neptune 3 Max 0.8 nozzle", + "Elegoo Neptune 3 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PLA Basic @EN3 Series.json b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PLA Basic @EN3 Series.json new file mode 100644 index 00000000000..143f339938f --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PLA Basic @EN3 Series.json @@ -0,0 +1,43 @@ +{ + "type": "filament", + "name": "Elegoo PLA Basic @EN3 Series", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLABASICEN3", + "instantiation": "true", + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "filament_max_volumetric_speed": [ + "21" + ], + "pressure_advance": [ + "0.024" + ], + "slow_down_layer_time": [ + "4" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [ + "Elegoo Neptune 3 Pro 0.4 nozzle", + "Elegoo Neptune 3 Pro 0.6 nozzle", + "Elegoo Neptune 3 Pro 0.8 nozzle", + "Elegoo Neptune 3 Pro 1.0 nozzle", + "Elegoo Neptune 3 Plus 0.4 nozzle", + "Elegoo Neptune 3 Plus 0.6 nozzle", + "Elegoo Neptune 3 Plus 0.8 nozzle", + "Elegoo Neptune 3 Plus 1.0 nozzle", + "Elegoo Neptune 3 Max 0.4 nozzle", + "Elegoo Neptune 3 Max 0.6 nozzle", + "Elegoo Neptune 3 Max 0.8 nozzle", + "Elegoo Neptune 3 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PLA Galaxy @EN3 Series.json b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PLA Galaxy @EN3 Series.json new file mode 100644 index 00000000000..fbc88fdbf42 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PLA Galaxy @EN3 Series.json @@ -0,0 +1,46 @@ +{ + "type": "filament", + "name": "Elegoo PLA Galaxy @EN3 Series", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLAGALAXYEN3", + "instantiation": "true", + "fan_min_speed": [ + "80" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature_range_high": [ + "220" + ], + "pressure_advance": [ + "0.024" + ], + "slow_down_layer_time": [ + "4" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [ + "Elegoo Neptune 3 Pro 0.4 nozzle", + "Elegoo Neptune 3 Pro 0.6 nozzle", + "Elegoo Neptune 3 Pro 0.8 nozzle", + "Elegoo Neptune 3 Pro 1.0 nozzle", + "Elegoo Neptune 3 Plus 0.4 nozzle", + "Elegoo Neptune 3 Plus 0.6 nozzle", + "Elegoo Neptune 3 Plus 0.8 nozzle", + "Elegoo Neptune 3 Plus 1.0 nozzle", + "Elegoo Neptune 3 Max 0.4 nozzle", + "Elegoo Neptune 3 Max 0.6 nozzle", + "Elegoo Neptune 3 Max 0.8 nozzle", + "Elegoo Neptune 3 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PLA Marble @EN3 Series.json b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PLA Marble @EN3 Series.json new file mode 100644 index 00000000000..62a101c2682 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PLA Marble @EN3 Series.json @@ -0,0 +1,46 @@ +{ + "type": "filament", + "name": "Elegoo PLA Marble @EN3 Series", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLAMARBLEEN3", + "instantiation": "true", + "fan_min_speed": [ + "80" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature_range_high": [ + "220" + ], + "pressure_advance": [ + "0.024" + ], + "slow_down_layer_time": [ + "4" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [ + "Elegoo Neptune 3 Pro 0.4 nozzle", + "Elegoo Neptune 3 Pro 0.6 nozzle", + "Elegoo Neptune 3 Pro 0.8 nozzle", + "Elegoo Neptune 3 Pro 1.0 nozzle", + "Elegoo Neptune 3 Plus 0.4 nozzle", + "Elegoo Neptune 3 Plus 0.6 nozzle", + "Elegoo Neptune 3 Plus 0.8 nozzle", + "Elegoo Neptune 3 Plus 1.0 nozzle", + "Elegoo Neptune 3 Max 0.4 nozzle", + "Elegoo Neptune 3 Max 0.6 nozzle", + "Elegoo Neptune 3 Max 0.8 nozzle", + "Elegoo Neptune 3 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PLA Matte @EN3 Series.json b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PLA Matte @EN3 Series.json new file mode 100644 index 00000000000..b67e97045de --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PLA Matte @EN3 Series.json @@ -0,0 +1,55 @@ +{ + "type": "filament", + "name": "Elegoo PLA Matte @EN3 Series", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLAMEN3", + "instantiation": "true", + "fan_cooling_layer_time": [ + "80" + ], + "fan_max_speed": [ + "100" + ], + "filament_max_volumetric_speed": [ + "9" + ], + "hot_plate_temp": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "slow_down_layer_time": [ + "6" + ], + "fan_min_speed": [ + "80" + ], + "nozzle_temperature": [ + "210" + ], + "nozzle_temperature_initial_layer": [ + "210" + ], + "overhang_fan_threshold": [ + "75%" + ], + "slow_down_min_speed": [ + "10" + ], + "compatible_printers": [ + "Elegoo Neptune 3 Pro 0.4 nozzle", + "Elegoo Neptune 3 Pro 0.6 nozzle", + "Elegoo Neptune 3 Pro 0.8 nozzle", + "Elegoo Neptune 3 Pro 1.0 nozzle", + "Elegoo Neptune 3 Plus 0.4 nozzle", + "Elegoo Neptune 3 Plus 0.6 nozzle", + "Elegoo Neptune 3 Plus 0.8 nozzle", + "Elegoo Neptune 3 Plus 1.0 nozzle", + "Elegoo Neptune 3 Max 0.4 nozzle", + "Elegoo Neptune 3 Max 0.6 nozzle", + "Elegoo Neptune 3 Max 0.8 nozzle", + "Elegoo Neptune 3 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PLA PRO @EN3 Series.json b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PLA PRO @EN3 Series.json new file mode 100644 index 00000000000..499675593ea --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PLA PRO @EN3 Series.json @@ -0,0 +1,40 @@ +{ + "type": "filament", + "name": "Elegoo PLA PRO @EN3 Series", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLAPROEN3", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "12" + ], + "fan_min_speed": [ + "80" + ], + "nozzle_temperature": [ + "210" + ], + "nozzle_temperature_initial_layer": [ + "210" + ], + "overhang_fan_threshold": [ + "75%" + ], + "slow_down_min_speed": [ + "10" + ], + "compatible_printers": [ + "Elegoo Neptune 3 Pro 0.4 nozzle", + "Elegoo Neptune 3 Pro 0.6 nozzle", + "Elegoo Neptune 3 Pro 0.8 nozzle", + "Elegoo Neptune 3 Pro 1.0 nozzle", + "Elegoo Neptune 3 Plus 0.4 nozzle", + "Elegoo Neptune 3 Plus 0.6 nozzle", + "Elegoo Neptune 3 Plus 0.8 nozzle", + "Elegoo Neptune 3 Plus 1.0 nozzle", + "Elegoo Neptune 3 Max 0.4 nozzle", + "Elegoo Neptune 3 Max 0.6 nozzle", + "Elegoo Neptune 3 Max 0.8 nozzle", + "Elegoo Neptune 3 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PLA Silk @EN3 Series.json b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PLA Silk @EN3 Series.json new file mode 100644 index 00000000000..eee7f8f0961 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PLA Silk @EN3 Series.json @@ -0,0 +1,64 @@ +{ + "type": "filament", + "name": "Elegoo PLA Silk @EN3 Series", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLASEN3", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "9" + ], + "fan_cooling_layer_time": [ + "80" + ], + "fan_max_speed": [ + "100" + ], + "hot_plate_temp": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "slow_down_layer_time": [ + "8" + ], + "textured_plate_temp": [ + "65" + ], + "textured_plate_temp_initial_layer": [ + "65" + ], + "fan_min_speed": [ + "80" + ], + "nozzle_temperature": [ + "210" + ], + "nozzle_temperature_initial_layer": [ + "210" + ], + "overhang_fan_threshold": [ + "75%" + ], + "slow_down_min_speed": [ + "10" + ], + "filament_density": [ + "1.32" + ], + "compatible_printers": [ + "Elegoo Neptune 3 Pro 0.4 nozzle", + "Elegoo Neptune 3 Pro 0.6 nozzle", + "Elegoo Neptune 3 Pro 0.8 nozzle", + "Elegoo Neptune 3 Pro 1.0 nozzle", + "Elegoo Neptune 3 Plus 0.4 nozzle", + "Elegoo Neptune 3 Plus 0.6 nozzle", + "Elegoo Neptune 3 Plus 0.8 nozzle", + "Elegoo Neptune 3 Plus 1.0 nozzle", + "Elegoo Neptune 3 Max 0.4 nozzle", + "Elegoo Neptune 3 Max 0.6 nozzle", + "Elegoo Neptune 3 Max 0.8 nozzle", + "Elegoo Neptune 3 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PLA Sparkle @EN3 Series.json b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PLA Sparkle @EN3 Series.json new file mode 100644 index 00000000000..1e1cdb862d8 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PLA Sparkle @EN3 Series.json @@ -0,0 +1,46 @@ +{ + "type": "filament", + "name": "Elegoo PLA Sparkle @EN3 Series", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLASPARKLEEN3", + "instantiation": "true", + "fan_min_speed": [ + "80" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature_range_high": [ + "220" + ], + "pressure_advance": [ + "0.024" + ], + "slow_down_layer_time": [ + "4" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [ + "Elegoo Neptune 3 Pro 0.4 nozzle", + "Elegoo Neptune 3 Pro 0.6 nozzle", + "Elegoo Neptune 3 Pro 0.8 nozzle", + "Elegoo Neptune 3 Pro 1.0 nozzle", + "Elegoo Neptune 3 Plus 0.4 nozzle", + "Elegoo Neptune 3 Plus 0.6 nozzle", + "Elegoo Neptune 3 Plus 0.8 nozzle", + "Elegoo Neptune 3 Plus 1.0 nozzle", + "Elegoo Neptune 3 Max 0.4 nozzle", + "Elegoo Neptune 3 Max 0.6 nozzle", + "Elegoo Neptune 3 Max 0.8 nozzle", + "Elegoo Neptune 3 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PLA Wood @EN3 Series.json b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PLA Wood @EN3 Series.json new file mode 100644 index 00000000000..9726bfddafd --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PLA Wood @EN3 Series.json @@ -0,0 +1,46 @@ +{ + "type": "filament", + "name": "Elegoo PLA Wood @EN3 Series", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLAWOODEN3", + "instantiation": "true", + "fan_min_speed": [ + "80" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature_range_low": [ + "200" + ], + "pressure_advance": [ + "0.024" + ], + "slow_down_layer_time": [ + "4" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [ + "Elegoo Neptune 3 Pro 0.4 nozzle", + "Elegoo Neptune 3 Pro 0.6 nozzle", + "Elegoo Neptune 3 Pro 0.8 nozzle", + "Elegoo Neptune 3 Pro 1.0 nozzle", + "Elegoo Neptune 3 Plus 0.4 nozzle", + "Elegoo Neptune 3 Plus 0.6 nozzle", + "Elegoo Neptune 3 Plus 0.8 nozzle", + "Elegoo Neptune 3 Plus 1.0 nozzle", + "Elegoo Neptune 3 Max 0.4 nozzle", + "Elegoo Neptune 3 Max 0.6 nozzle", + "Elegoo Neptune 3 Max 0.8 nozzle", + "Elegoo Neptune 3 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PLA+ @EN3 Series.json b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PLA+ @EN3 Series.json new file mode 100644 index 00000000000..d0b49cf32c8 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PLA+ @EN3 Series.json @@ -0,0 +1,40 @@ +{ + "type": "filament", + "name": "Elegoo PLA+ @EN3 Series", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLAPLUSEN3", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "12" + ], + "fan_min_speed": [ + "80" + ], + "nozzle_temperature": [ + "210" + ], + "nozzle_temperature_initial_layer": [ + "210" + ], + "overhang_fan_threshold": [ + "75%" + ], + "slow_down_min_speed": [ + "10" + ], + "compatible_printers": [ + "Elegoo Neptune 3 Pro 0.4 nozzle", + "Elegoo Neptune 3 Pro 0.6 nozzle", + "Elegoo Neptune 3 Pro 0.8 nozzle", + "Elegoo Neptune 3 Pro 1.0 nozzle", + "Elegoo Neptune 3 Plus 0.4 nozzle", + "Elegoo Neptune 3 Plus 0.6 nozzle", + "Elegoo Neptune 3 Plus 0.8 nozzle", + "Elegoo Neptune 3 Plus 1.0 nozzle", + "Elegoo Neptune 3 Max 0.4 nozzle", + "Elegoo Neptune 3 Max 0.6 nozzle", + "Elegoo Neptune 3 Max 0.8 nozzle", + "Elegoo Neptune 3 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PLA-CF @EN3 Series.json b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PLA-CF @EN3 Series.json new file mode 100644 index 00000000000..d363ea70388 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo PLA-CF @EN3 Series.json @@ -0,0 +1,70 @@ +{ + "type": "filament", + "name": "Elegoo PLA-CF @EN3 Series", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLACFEN3", + "instantiation": "true", + "fan_cooling_layer_time": [ + "80" + ], + "fan_max_speed": [ + "100" + ], + "filament_max_volumetric_speed": [ + "8" + ], + "hot_plate_temp": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "slow_down_layer_time": [ + "6" + ], + "fan_min_speed": [ + "80" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "overhang_fan_threshold": [ + "75%" + ], + "slow_down_min_speed": [ + "10" + ], + "additional_cooling_fan_speed": [ + "0" + ], + "cool_plate_temp": [ + "45" + ], + "cool_plate_temp_initial_layer": [ + "45" + ], + "filament_density": [ + "1.21" + ], + "required_nozzle_HRC": [ + "40" + ], + "compatible_printers": [ + "Elegoo Neptune 3 Pro 0.4 nozzle", + "Elegoo Neptune 3 Pro 0.6 nozzle", + "Elegoo Neptune 3 Pro 0.8 nozzle", + "Elegoo Neptune 3 Pro 1.0 nozzle", + "Elegoo Neptune 3 Plus 0.4 nozzle", + "Elegoo Neptune 3 Plus 0.6 nozzle", + "Elegoo Neptune 3 Plus 0.8 nozzle", + "Elegoo Neptune 3 Plus 1.0 nozzle", + "Elegoo Neptune 3 Max 0.4 nozzle", + "Elegoo Neptune 3 Max 0.6 nozzle", + "Elegoo Neptune 3 Max 0.8 nozzle", + "Elegoo Neptune 3 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo Rapid PETG @EN3 Series.json b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo Rapid PETG @EN3 Series.json new file mode 100644 index 00000000000..485e9099300 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo Rapid PETG @EN3 Series.json @@ -0,0 +1,41 @@ +{ + "type": "filament", + "name": "Elegoo Rapid PETG @EN3 Series", + "renamed_from": "Elegoo RAPID PETG @EN3 Series", + "inherits": "Elegoo PETG @base", + "from": "system", + "setting_id": "ERPETGEN3", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "10" + ], + "nozzle_temperature": [ + "230" + ], + "nozzle_temperature_initial_layer": [ + "230" + ], + "fan_max_speed": [ + "100" + ], + "fan_min_speed": [ + "50" + ], + "filament_density": [ + "1.26" + ], + "compatible_printers": [ + "Elegoo Neptune 3 Pro 0.4 nozzle", + "Elegoo Neptune 3 Pro 0.6 nozzle", + "Elegoo Neptune 3 Pro 0.8 nozzle", + "Elegoo Neptune 3 Pro 1.0 nozzle", + "Elegoo Neptune 3 Plus 0.4 nozzle", + "Elegoo Neptune 3 Plus 0.6 nozzle", + "Elegoo Neptune 3 Plus 0.8 nozzle", + "Elegoo Neptune 3 Plus 1.0 nozzle", + "Elegoo Neptune 3 Max 0.4 nozzle", + "Elegoo Neptune 3 Max 0.6 nozzle", + "Elegoo Neptune 3 Max 0.8 nozzle", + "Elegoo Neptune 3 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo Rapid PLA+ @EN3 Series.json b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo Rapid PLA+ @EN3 Series.json new file mode 100644 index 00000000000..0f85ec1c3ee --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo Rapid PLA+ @EN3 Series.json @@ -0,0 +1,65 @@ +{ + "type": "filament", + "name": "Elegoo Rapid PLA+ @EN3 Series", + "renamed_from": "Elegoo RAPID PLA+ @EN3 Series", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "ERPLAPLUSEN3", + "instantiation": "true", + "fan_cooling_layer_time": [ + "80" + ], + "fan_max_speed": [ + "100" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "hot_plate_temp": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "slow_down_layer_time": [ + "6" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "fan_min_speed": [ + "80" + ], + "nozzle_temperature": [ + "210" + ], + "nozzle_temperature_initial_layer": [ + "210" + ], + "overhang_fan_threshold": [ + "75%" + ], + "slow_down_min_speed": [ + "10" + ], + "filament_density": [ + "1.25" + ], + "compatible_printers": [ + "Elegoo Neptune 3 Pro 0.4 nozzle", + "Elegoo Neptune 3 Pro 0.6 nozzle", + "Elegoo Neptune 3 Pro 0.8 nozzle", + "Elegoo Neptune 3 Pro 1.0 nozzle", + "Elegoo Neptune 3 Plus 0.4 nozzle", + "Elegoo Neptune 3 Plus 0.6 nozzle", + "Elegoo Neptune 3 Plus 0.8 nozzle", + "Elegoo Neptune 3 Plus 1.0 nozzle", + "Elegoo Neptune 3 Max 0.4 nozzle", + "Elegoo Neptune 3 Max 0.6 nozzle", + "Elegoo Neptune 3 Max 0.8 nozzle", + "Elegoo Neptune 3 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo Rapid TPU 95A @EN3 Series.json b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo Rapid TPU 95A @EN3 Series.json new file mode 100644 index 00000000000..8d6a32d069d --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo Rapid TPU 95A @EN3 Series.json @@ -0,0 +1,38 @@ +{ + "type": "filament", + "name": "Elegoo Rapid TPU 95A @EN3 Series", + "renamed_from": "Elegoo RAPID TPU 95A @EN3 Series", + "inherits": "Elegoo TPU @base", + "from": "system", + "setting_id": "ERTPU95AEN3", + "instantiation": "true", + "pressure_advance": [ + "0.024" + ], + "nozzle_temperature": [ + "230" + ], + "nozzle_temperature_initial_layer": [ + "230" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "compatible_printers": [ + "Elegoo Neptune 3 Pro 0.4 nozzle", + "Elegoo Neptune 3 Pro 0.6 nozzle", + "Elegoo Neptune 3 Pro 0.8 nozzle", + "Elegoo Neptune 3 Pro 1.0 nozzle", + "Elegoo Neptune 3 Plus 0.4 nozzle", + "Elegoo Neptune 3 Plus 0.6 nozzle", + "Elegoo Neptune 3 Plus 0.8 nozzle", + "Elegoo Neptune 3 Plus 1.0 nozzle", + "Elegoo Neptune 3 Max 0.4 nozzle", + "Elegoo Neptune 3 Max 0.6 nozzle", + "Elegoo Neptune 3 Max 0.8 nozzle", + "Elegoo Neptune 3 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo TPU 95A @EN3 Series.json b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo TPU 95A @EN3 Series.json new file mode 100644 index 00000000000..6167f883898 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN3SERIES/Elegoo TPU 95A @EN3 Series.json @@ -0,0 +1,40 @@ +{ + "type": "filament", + "name": "Elegoo TPU 95A @EN3 Series", + "inherits": "Elegoo TPU @base", + "from": "system", + "setting_id": "ETPU95AEN3", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "3.2" + ], + "fan_min_speed": [ + "80" + ], + "nozzle_temperature": [ + "210" + ], + "nozzle_temperature_initial_layer": [ + "210" + ], + "overhang_fan_threshold": [ + "75%" + ], + "slow_down_min_speed": [ + "10" + ], + "compatible_printers": [ + "Elegoo Neptune 3 Pro 0.4 nozzle", + "Elegoo Neptune 3 Pro 0.6 nozzle", + "Elegoo Neptune 3 Pro 0.8 nozzle", + "Elegoo Neptune 3 Pro 1.0 nozzle", + "Elegoo Neptune 3 Plus 0.4 nozzle", + "Elegoo Neptune 3 Plus 0.6 nozzle", + "Elegoo Neptune 3 Plus 0.8 nozzle", + "Elegoo Neptune 3 Plus 1.0 nozzle", + "Elegoo Neptune 3 Max 0.4 nozzle", + "Elegoo Neptune 3 Max 0.6 nozzle", + "Elegoo Neptune 3 Max 0.8 nozzle", + "Elegoo Neptune 3 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo ASA @EN4 Series.json b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo ASA @EN4 Series.json new file mode 100644 index 00000000000..957e1ba7877 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo ASA @EN4 Series.json @@ -0,0 +1,32 @@ +{ + "type": "filament", + "name": "Elegoo ASA @EN4 Series", + "inherits": "Elegoo ASA @base", + "from": "system", + "setting_id": "EASAEN4", + "instantiation": "true", + "nozzle_temperature": [ + "270" + ], + "nozzle_temperature_initial_layer": [ + "270" + ], + "compatible_printers": [ + "Elegoo Neptune 4 0.4 nozzle", + "Elegoo Neptune 4 0.6 nozzle", + "Elegoo Neptune 4 0.8 nozzle", + "Elegoo Neptune 4 1.0 nozzle", + "Elegoo Neptune 4 Pro 0.4 nozzle", + "Elegoo Neptune 4 Pro 0.6 nozzle", + "Elegoo Neptune 4 Pro 0.8 nozzle", + "Elegoo Neptune 4 Pro 1.0 nozzle", + "Elegoo Neptune 4 Plus 0.4 nozzle", + "Elegoo Neptune 4 Plus 0.6 nozzle", + "Elegoo Neptune 4 Plus 0.8 nozzle", + "Elegoo Neptune 4 Plus 1.0 nozzle", + "Elegoo Neptune 4 Max 0.4 nozzle", + "Elegoo Neptune 4 Max 0.6 nozzle", + "Elegoo Neptune 4 Max 0.8 nozzle", + "Elegoo Neptune 4 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PETG @EN4 Series.json b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PETG @EN4 Series.json new file mode 100644 index 00000000000..e604194970e --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PETG @EN4 Series.json @@ -0,0 +1,41 @@ +{ + "type": "filament", + "name": "Elegoo PETG @EN4 Series", + "inherits": "Elegoo PETG @base", + "from": "system", + "setting_id": "EPETGEN4", + "instantiation": "true", + "pressure_advance": [ + "0.024" + ], + "overhang_fan_threshold": [ + "50%" + ], + "nozzle_temperature": [ + "250" + ], + "nozzle_temperature_initial_layer": [ + "250" + ], + "filament_max_volumetric_speed": [ + "11" + ], + "compatible_printers": [ + "Elegoo Neptune 4 0.4 nozzle", + "Elegoo Neptune 4 0.6 nozzle", + "Elegoo Neptune 4 0.8 nozzle", + "Elegoo Neptune 4 1.0 nozzle", + "Elegoo Neptune 4 Pro 0.4 nozzle", + "Elegoo Neptune 4 Pro 0.6 nozzle", + "Elegoo Neptune 4 Pro 0.8 nozzle", + "Elegoo Neptune 4 Pro 1.0 nozzle", + "Elegoo Neptune 4 Plus 0.4 nozzle", + "Elegoo Neptune 4 Plus 0.6 nozzle", + "Elegoo Neptune 4 Plus 0.8 nozzle", + "Elegoo Neptune 4 Plus 1.0 nozzle", + "Elegoo Neptune 4 Max 0.4 nozzle", + "Elegoo Neptune 4 Max 0.6 nozzle", + "Elegoo Neptune 4 Max 0.8 nozzle", + "Elegoo Neptune 4 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PETG PRO @EN4 Series.json b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PETG PRO @EN4 Series.json new file mode 100644 index 00000000000..397889ae25b --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PETG PRO @EN4 Series.json @@ -0,0 +1,26 @@ +{ + "type": "filament", + "name": "Elegoo PETG PRO @EN4 Series", + "inherits": "Elegoo PETG @base", + "from": "system", + "setting_id": "EPETGPROEN4", + "instantiation": "true", + "compatible_printers": [ + "Elegoo Neptune 4 0.4 nozzle", + "Elegoo Neptune 4 0.6 nozzle", + "Elegoo Neptune 4 0.8 nozzle", + "Elegoo Neptune 4 1.0 nozzle", + "Elegoo Neptune 4 Pro 0.4 nozzle", + "Elegoo Neptune 4 Pro 0.6 nozzle", + "Elegoo Neptune 4 Pro 0.8 nozzle", + "Elegoo Neptune 4 Pro 1.0 nozzle", + "Elegoo Neptune 4 Plus 0.4 nozzle", + "Elegoo Neptune 4 Plus 0.6 nozzle", + "Elegoo Neptune 4 Plus 0.8 nozzle", + "Elegoo Neptune 4 Plus 1.0 nozzle", + "Elegoo Neptune 4 Max 0.4 nozzle", + "Elegoo Neptune 4 Max 0.6 nozzle", + "Elegoo Neptune 4 Max 0.8 nozzle", + "Elegoo Neptune 4 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PETG Translucent @EN4 Series.json b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PETG Translucent @EN4 Series.json new file mode 100644 index 00000000000..02eb8b44891 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PETG Translucent @EN4 Series.json @@ -0,0 +1,41 @@ +{ + "type": "filament", + "name": "Elegoo PETG Translucent @EN4 Series", + "inherits": "Elegoo PETG @base", + "from": "system", + "setting_id": "EPETGTRANSEN4", + "instantiation": "true", + "pressure_advance": [ + "0.024" + ], + "fan_max_speed": [ + "35" + ], + "filament_max_volumetric_speed": [ + "10" + ], + "nozzle_temperature": [ + "255" + ], + "nozzle_temperature_initial_layer": [ + "255" + ], + "compatible_printers": [ + "Elegoo Neptune 4 0.4 nozzle", + "Elegoo Neptune 4 0.6 nozzle", + "Elegoo Neptune 4 0.8 nozzle", + "Elegoo Neptune 4 1.0 nozzle", + "Elegoo Neptune 4 Pro 0.4 nozzle", + "Elegoo Neptune 4 Pro 0.6 nozzle", + "Elegoo Neptune 4 Pro 0.8 nozzle", + "Elegoo Neptune 4 Pro 1.0 nozzle", + "Elegoo Neptune 4 Plus 0.4 nozzle", + "Elegoo Neptune 4 Plus 0.6 nozzle", + "Elegoo Neptune 4 Plus 0.8 nozzle", + "Elegoo Neptune 4 Plus 1.0 nozzle", + "Elegoo Neptune 4 Max 0.4 nozzle", + "Elegoo Neptune 4 Max 0.6 nozzle", + "Elegoo Neptune 4 Max 0.8 nozzle", + "Elegoo Neptune 4 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PETG-CF @EN4 Series.json b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PETG-CF @EN4 Series.json new file mode 100644 index 00000000000..fb99debce7f --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PETG-CF @EN4 Series.json @@ -0,0 +1,56 @@ +{ + "type": "filament", + "name": "Elegoo PETG-CF @EN4 Series", + "inherits": "Elegoo PETG @base", + "from": "system", + "setting_id": "EPETGCFEN4", + "instantiation": "true", + "pressure_advance": [ + "0.024" + ], + "filament_density": [ + "1.26" + ], + "nozzle_temperature": [ + "250" + ], + "nozzle_temperature_initial_layer": [ + "250" + ], + "fan_max_speed": [ + "40" + ], + "fan_min_speed": [ + "5" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "nozzle_temperature_range_low": [ + "240" + ], + "overhang_fan_speed": [ + "100" + ], + "slow_down_layer_time": [ + "6" + ], + "compatible_printers": [ + "Elegoo Neptune 4 0.4 nozzle", + "Elegoo Neptune 4 0.6 nozzle", + "Elegoo Neptune 4 0.8 nozzle", + "Elegoo Neptune 4 1.0 nozzle", + "Elegoo Neptune 4 Pro 0.4 nozzle", + "Elegoo Neptune 4 Pro 0.6 nozzle", + "Elegoo Neptune 4 Pro 0.8 nozzle", + "Elegoo Neptune 4 Pro 1.0 nozzle", + "Elegoo Neptune 4 Plus 0.4 nozzle", + "Elegoo Neptune 4 Plus 0.6 nozzle", + "Elegoo Neptune 4 Plus 0.8 nozzle", + "Elegoo Neptune 4 Plus 1.0 nozzle", + "Elegoo Neptune 4 Max 0.4 nozzle", + "Elegoo Neptune 4 Max 0.6 nozzle", + "Elegoo Neptune 4 Max 0.8 nozzle", + "Elegoo Neptune 4 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PETG-GF @EN4 Series.json b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PETG-GF @EN4 Series.json new file mode 100644 index 00000000000..aa58c3fa8f7 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PETG-GF @EN4 Series.json @@ -0,0 +1,56 @@ +{ + "type": "filament", + "name": "Elegoo PETG-GF @EN4 Series", + "inherits": "Elegoo PETG @base", + "from": "system", + "setting_id": "EPETGFEN4", + "instantiation": "true", + "pressure_advance": [ + "0.024" + ], + "filament_density": [ + "1.26" + ], + "nozzle_temperature": [ + "250" + ], + "nozzle_temperature_initial_layer": [ + "250" + ], + "fan_max_speed": [ + "40" + ], + "fan_min_speed": [ + "5" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "nozzle_temperature_range_low": [ + "240" + ], + "overhang_fan_speed": [ + "100" + ], + "slow_down_layer_time": [ + "6" + ], + "compatible_printers": [ + "Elegoo Neptune 4 0.4 nozzle", + "Elegoo Neptune 4 0.6 nozzle", + "Elegoo Neptune 4 0.8 nozzle", + "Elegoo Neptune 4 1.0 nozzle", + "Elegoo Neptune 4 Pro 0.4 nozzle", + "Elegoo Neptune 4 Pro 0.6 nozzle", + "Elegoo Neptune 4 Pro 0.8 nozzle", + "Elegoo Neptune 4 Pro 1.0 nozzle", + "Elegoo Neptune 4 Plus 0.4 nozzle", + "Elegoo Neptune 4 Plus 0.6 nozzle", + "Elegoo Neptune 4 Plus 0.8 nozzle", + "Elegoo Neptune 4 Plus 1.0 nozzle", + "Elegoo Neptune 4 Max 0.4 nozzle", + "Elegoo Neptune 4 Max 0.6 nozzle", + "Elegoo Neptune 4 Max 0.8 nozzle", + "Elegoo Neptune 4 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PLA @EN4 Series.json b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PLA @EN4 Series.json new file mode 100644 index 00000000000..7534fbb94ce --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PLA @EN4 Series.json @@ -0,0 +1,35 @@ +{ + "type": "filament", + "name": "Elegoo PLA @EN4 Series", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLAEN4", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "16" + ], + "overhang_fan_threshold": [ + "25%" + ], + "fan_min_speed": [ + "100" + ], + "compatible_printers": [ + "Elegoo Neptune 4 0.4 nozzle", + "Elegoo Neptune 4 0.6 nozzle", + "Elegoo Neptune 4 0.8 nozzle", + "Elegoo Neptune 4 1.0 nozzle", + "Elegoo Neptune 4 Pro 0.4 nozzle", + "Elegoo Neptune 4 Pro 0.6 nozzle", + "Elegoo Neptune 4 Pro 0.8 nozzle", + "Elegoo Neptune 4 Pro 1.0 nozzle", + "Elegoo Neptune 4 Plus 0.4 nozzle", + "Elegoo Neptune 4 Plus 0.6 nozzle", + "Elegoo Neptune 4 Plus 0.8 nozzle", + "Elegoo Neptune 4 Plus 1.0 nozzle", + "Elegoo Neptune 4 Max 0.4 nozzle", + "Elegoo Neptune 4 Max 0.6 nozzle", + "Elegoo Neptune 4 Max 0.8 nozzle", + "Elegoo Neptune 4 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PLA Basic @EN4 Series.json b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PLA Basic @EN4 Series.json new file mode 100644 index 00000000000..4567b161ad3 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PLA Basic @EN4 Series.json @@ -0,0 +1,47 @@ +{ + "type": "filament", + "name": "Elegoo PLA Basic @EN4 Series", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLABASICEN4", + "instantiation": "true", + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "filament_max_volumetric_speed": [ + "21" + ], + "pressure_advance": [ + "0.024" + ], + "slow_down_layer_time": [ + "4" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [ + "Elegoo Neptune 4 0.4 nozzle", + "Elegoo Neptune 4 0.6 nozzle", + "Elegoo Neptune 4 0.8 nozzle", + "Elegoo Neptune 4 1.0 nozzle", + "Elegoo Neptune 4 Pro 0.4 nozzle", + "Elegoo Neptune 4 Pro 0.6 nozzle", + "Elegoo Neptune 4 Pro 0.8 nozzle", + "Elegoo Neptune 4 Pro 1.0 nozzle", + "Elegoo Neptune 4 Plus 0.4 nozzle", + "Elegoo Neptune 4 Plus 0.6 nozzle", + "Elegoo Neptune 4 Plus 0.8 nozzle", + "Elegoo Neptune 4 Plus 1.0 nozzle", + "Elegoo Neptune 4 Max 0.4 nozzle", + "Elegoo Neptune 4 Max 0.6 nozzle", + "Elegoo Neptune 4 Max 0.8 nozzle", + "Elegoo Neptune 4 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PLA Galaxy @EN4 Series.json b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PLA Galaxy @EN4 Series.json new file mode 100644 index 00000000000..69484ece9c6 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PLA Galaxy @EN4 Series.json @@ -0,0 +1,50 @@ +{ + "type": "filament", + "name": "Elegoo PLA Galaxy @EN4 Series", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLAGALAXYEN4", + "instantiation": "true", + "fan_min_speed": [ + "80" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature_range_high": [ + "220" + ], + "pressure_advance": [ + "0.024" + ], + "slow_down_layer_time": [ + "4" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [ + "Elegoo Neptune 4 0.4 nozzle", + "Elegoo Neptune 4 0.6 nozzle", + "Elegoo Neptune 4 0.8 nozzle", + "Elegoo Neptune 4 1.0 nozzle", + "Elegoo Neptune 4 Pro 0.4 nozzle", + "Elegoo Neptune 4 Pro 0.6 nozzle", + "Elegoo Neptune 4 Pro 0.8 nozzle", + "Elegoo Neptune 4 Pro 1.0 nozzle", + "Elegoo Neptune 4 Plus 0.4 nozzle", + "Elegoo Neptune 4 Plus 0.6 nozzle", + "Elegoo Neptune 4 Plus 0.8 nozzle", + "Elegoo Neptune 4 Plus 1.0 nozzle", + "Elegoo Neptune 4 Max 0.4 nozzle", + "Elegoo Neptune 4 Max 0.6 nozzle", + "Elegoo Neptune 4 Max 0.8 nozzle", + "Elegoo Neptune 4 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PLA Marble @EN4 Series.json b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PLA Marble @EN4 Series.json new file mode 100644 index 00000000000..d344d74cde6 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PLA Marble @EN4 Series.json @@ -0,0 +1,50 @@ +{ + "type": "filament", + "name": "Elegoo PLA Marble @EN4 Series", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLAMARBLEEN4", + "instantiation": "true", + "fan_min_speed": [ + "80" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature_range_high": [ + "220" + ], + "pressure_advance": [ + "0.024" + ], + "slow_down_layer_time": [ + "4" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [ + "Elegoo Neptune 4 0.4 nozzle", + "Elegoo Neptune 4 0.6 nozzle", + "Elegoo Neptune 4 0.8 nozzle", + "Elegoo Neptune 4 1.0 nozzle", + "Elegoo Neptune 4 Pro 0.4 nozzle", + "Elegoo Neptune 4 Pro 0.6 nozzle", + "Elegoo Neptune 4 Pro 0.8 nozzle", + "Elegoo Neptune 4 Pro 1.0 nozzle", + "Elegoo Neptune 4 Plus 0.4 nozzle", + "Elegoo Neptune 4 Plus 0.6 nozzle", + "Elegoo Neptune 4 Plus 0.8 nozzle", + "Elegoo Neptune 4 Plus 1.0 nozzle", + "Elegoo Neptune 4 Max 0.4 nozzle", + "Elegoo Neptune 4 Max 0.6 nozzle", + "Elegoo Neptune 4 Max 0.8 nozzle", + "Elegoo Neptune 4 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PLA Matte @EN4 Series.json b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PLA Matte @EN4 Series.json new file mode 100644 index 00000000000..cf5145f8bac --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PLA Matte @EN4 Series.json @@ -0,0 +1,53 @@ +{ + "type": "filament", + "name": "Elegoo PLA Matte @EN4 Series", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLAMEN4", + "instantiation": "true", + "fan_cooling_layer_time": [ + "80" + ], + "fan_max_speed": [ + "80" + ], + "fan_min_speed": [ + "60" + ], + "filament_max_volumetric_speed": [ + "16" + ], + "hot_plate_temp": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "slow_down_layer_time": [ + "6" + ], + "textured_plate_temp": [ + "65" + ], + "textured_plate_temp_initial_layer": [ + "65" + ], + "compatible_printers": [ + "Elegoo Neptune 4 0.4 nozzle", + "Elegoo Neptune 4 0.6 nozzle", + "Elegoo Neptune 4 0.8 nozzle", + "Elegoo Neptune 4 1.0 nozzle", + "Elegoo Neptune 4 Pro 0.4 nozzle", + "Elegoo Neptune 4 Pro 0.6 nozzle", + "Elegoo Neptune 4 Pro 0.8 nozzle", + "Elegoo Neptune 4 Pro 1.0 nozzle", + "Elegoo Neptune 4 Plus 0.4 nozzle", + "Elegoo Neptune 4 Plus 0.6 nozzle", + "Elegoo Neptune 4 Plus 0.8 nozzle", + "Elegoo Neptune 4 Plus 1.0 nozzle", + "Elegoo Neptune 4 Max 0.4 nozzle", + "Elegoo Neptune 4 Max 0.6 nozzle", + "Elegoo Neptune 4 Max 0.8 nozzle", + "Elegoo Neptune 4 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PLA PRO @EN4 Series.json b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PLA PRO @EN4 Series.json new file mode 100644 index 00000000000..bdf43eced65 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PLA PRO @EN4 Series.json @@ -0,0 +1,29 @@ +{ + "type": "filament", + "name": "Elegoo PLA PRO @EN4 Series", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLAPROEN4", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "20" + ], + "compatible_printers": [ + "Elegoo Neptune 4 0.4 nozzle", + "Elegoo Neptune 4 0.6 nozzle", + "Elegoo Neptune 4 0.8 nozzle", + "Elegoo Neptune 4 1.0 nozzle", + "Elegoo Neptune 4 Pro 0.4 nozzle", + "Elegoo Neptune 4 Pro 0.6 nozzle", + "Elegoo Neptune 4 Pro 0.8 nozzle", + "Elegoo Neptune 4 Pro 1.0 nozzle", + "Elegoo Neptune 4 Plus 0.4 nozzle", + "Elegoo Neptune 4 Plus 0.6 nozzle", + "Elegoo Neptune 4 Plus 0.8 nozzle", + "Elegoo Neptune 4 Plus 1.0 nozzle", + "Elegoo Neptune 4 Max 0.4 nozzle", + "Elegoo Neptune 4 Max 0.6 nozzle", + "Elegoo Neptune 4 Max 0.8 nozzle", + "Elegoo Neptune 4 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PLA Silk @EN4 Series.json b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PLA Silk @EN4 Series.json new file mode 100644 index 00000000000..45d08957df5 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PLA Silk @EN4 Series.json @@ -0,0 +1,59 @@ +{ + "type": "filament", + "name": "Elegoo PLA Silk @EN4 Series", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLASEN4", + "instantiation": "true", + "fan_cooling_layer_time": [ + "80" + ], + "fan_max_speed": [ + "80" + ], + "fan_min_speed": [ + "60" + ], + "hot_plate_temp": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "slow_down_layer_time": [ + "8" + ], + "textured_plate_temp": [ + "65" + ], + "textured_plate_temp_initial_layer": [ + "65" + ], + "filament_density": [ + "1.32" + ], + "nozzle_temperature": [ + "230" + ], + "nozzle_temperature_initial_layer": [ + "230" + ], + "compatible_printers": [ + "Elegoo Neptune 4 0.4 nozzle", + "Elegoo Neptune 4 0.6 nozzle", + "Elegoo Neptune 4 0.8 nozzle", + "Elegoo Neptune 4 1.0 nozzle", + "Elegoo Neptune 4 Pro 0.4 nozzle", + "Elegoo Neptune 4 Pro 0.6 nozzle", + "Elegoo Neptune 4 Pro 0.8 nozzle", + "Elegoo Neptune 4 Pro 1.0 nozzle", + "Elegoo Neptune 4 Plus 0.4 nozzle", + "Elegoo Neptune 4 Plus 0.6 nozzle", + "Elegoo Neptune 4 Plus 0.8 nozzle", + "Elegoo Neptune 4 Plus 1.0 nozzle", + "Elegoo Neptune 4 Max 0.4 nozzle", + "Elegoo Neptune 4 Max 0.6 nozzle", + "Elegoo Neptune 4 Max 0.8 nozzle", + "Elegoo Neptune 4 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PLA Sparkle @EN4 Series.json b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PLA Sparkle @EN4 Series.json new file mode 100644 index 00000000000..4e53eb86081 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PLA Sparkle @EN4 Series.json @@ -0,0 +1,50 @@ +{ + "type": "filament", + "name": "Elegoo PLA Sparkle @EN4 Series", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLASPARKLEEN4", + "instantiation": "true", + "fan_min_speed": [ + "80" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature_range_high": [ + "220" + ], + "pressure_advance": [ + "0.024" + ], + "slow_down_layer_time": [ + "4" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [ + "Elegoo Neptune 4 0.4 nozzle", + "Elegoo Neptune 4 0.6 nozzle", + "Elegoo Neptune 4 0.8 nozzle", + "Elegoo Neptune 4 1.0 nozzle", + "Elegoo Neptune 4 Pro 0.4 nozzle", + "Elegoo Neptune 4 Pro 0.6 nozzle", + "Elegoo Neptune 4 Pro 0.8 nozzle", + "Elegoo Neptune 4 Pro 1.0 nozzle", + "Elegoo Neptune 4 Plus 0.4 nozzle", + "Elegoo Neptune 4 Plus 0.6 nozzle", + "Elegoo Neptune 4 Plus 0.8 nozzle", + "Elegoo Neptune 4 Plus 1.0 nozzle", + "Elegoo Neptune 4 Max 0.4 nozzle", + "Elegoo Neptune 4 Max 0.6 nozzle", + "Elegoo Neptune 4 Max 0.8 nozzle", + "Elegoo Neptune 4 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PLA Wood @EN4 Series.json b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PLA Wood @EN4 Series.json new file mode 100644 index 00000000000..9c604c79e5a --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PLA Wood @EN4 Series.json @@ -0,0 +1,50 @@ +{ + "type": "filament", + "name": "Elegoo PLA Wood @EN4 Series", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLAWOODEN4", + "instantiation": "true", + "fan_min_speed": [ + "80" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature_range_low": [ + "200" + ], + "pressure_advance": [ + "0.024" + ], + "slow_down_layer_time": [ + "4" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [ + "Elegoo Neptune 4 0.4 nozzle", + "Elegoo Neptune 4 0.6 nozzle", + "Elegoo Neptune 4 0.8 nozzle", + "Elegoo Neptune 4 1.0 nozzle", + "Elegoo Neptune 4 Pro 0.4 nozzle", + "Elegoo Neptune 4 Pro 0.6 nozzle", + "Elegoo Neptune 4 Pro 0.8 nozzle", + "Elegoo Neptune 4 Pro 1.0 nozzle", + "Elegoo Neptune 4 Plus 0.4 nozzle", + "Elegoo Neptune 4 Plus 0.6 nozzle", + "Elegoo Neptune 4 Plus 0.8 nozzle", + "Elegoo Neptune 4 Plus 1.0 nozzle", + "Elegoo Neptune 4 Max 0.4 nozzle", + "Elegoo Neptune 4 Max 0.6 nozzle", + "Elegoo Neptune 4 Max 0.8 nozzle", + "Elegoo Neptune 4 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PLA+ @EN4 Series.json b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PLA+ @EN4 Series.json new file mode 100644 index 00000000000..2c666907927 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PLA+ @EN4 Series.json @@ -0,0 +1,35 @@ +{ + "type": "filament", + "name": "Elegoo PLA+ @EN4 Series", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLAPLUSEN4", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "20" + ], + "fan_min_speed": [ + "100" + ], + "overhang_fan_threshold": [ + "25%" + ], + "compatible_printers": [ + "Elegoo Neptune 4 0.4 nozzle", + "Elegoo Neptune 4 0.6 nozzle", + "Elegoo Neptune 4 0.8 nozzle", + "Elegoo Neptune 4 1.0 nozzle", + "Elegoo Neptune 4 Pro 0.4 nozzle", + "Elegoo Neptune 4 Pro 0.6 nozzle", + "Elegoo Neptune 4 Pro 0.8 nozzle", + "Elegoo Neptune 4 Pro 1.0 nozzle", + "Elegoo Neptune 4 Plus 0.4 nozzle", + "Elegoo Neptune 4 Plus 0.6 nozzle", + "Elegoo Neptune 4 Plus 0.8 nozzle", + "Elegoo Neptune 4 Plus 1.0 nozzle", + "Elegoo Neptune 4 Max 0.4 nozzle", + "Elegoo Neptune 4 Max 0.6 nozzle", + "Elegoo Neptune 4 Max 0.8 nozzle", + "Elegoo Neptune 4 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PLA-CF @EN4 Series.json b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PLA-CF @EN4 Series.json new file mode 100644 index 00000000000..f352877bd35 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo PLA-CF @EN4 Series.json @@ -0,0 +1,68 @@ +{ + "type": "filament", + "name": "Elegoo PLA-CF @EN4 Series", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLACFEN4", + "instantiation": "true", + "fan_cooling_layer_time": [ + "80" + ], + "fan_max_speed": [ + "80" + ], + "fan_min_speed": [ + "60" + ], + "filament_max_volumetric_speed": [ + "21" + ], + "hot_plate_temp": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "slow_down_layer_time": [ + "6" + ], + "textured_plate_temp": [ + "65" + ], + "textured_plate_temp_initial_layer": [ + "65" + ], + "additional_cooling_fan_speed": [ + "0" + ], + "cool_plate_temp": [ + "45" + ], + "cool_plate_temp_initial_layer": [ + "45" + ], + "filament_density": [ + "1.21" + ], + "required_nozzle_HRC": [ + "40" + ], + "compatible_printers": [ + "Elegoo Neptune 4 0.4 nozzle", + "Elegoo Neptune 4 0.6 nozzle", + "Elegoo Neptune 4 0.8 nozzle", + "Elegoo Neptune 4 1.0 nozzle", + "Elegoo Neptune 4 Pro 0.4 nozzle", + "Elegoo Neptune 4 Pro 0.6 nozzle", + "Elegoo Neptune 4 Pro 0.8 nozzle", + "Elegoo Neptune 4 Pro 1.0 nozzle", + "Elegoo Neptune 4 Plus 0.4 nozzle", + "Elegoo Neptune 4 Plus 0.6 nozzle", + "Elegoo Neptune 4 Plus 0.8 nozzle", + "Elegoo Neptune 4 Plus 1.0 nozzle", + "Elegoo Neptune 4 Max 0.4 nozzle", + "Elegoo Neptune 4 Max 0.6 nozzle", + "Elegoo Neptune 4 Max 0.8 nozzle", + "Elegoo Neptune 4 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo Rapid PETG @EN4 Series.json b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo Rapid PETG @EN4 Series.json new file mode 100644 index 00000000000..3c58bc9f219 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo Rapid PETG @EN4 Series.json @@ -0,0 +1,45 @@ +{ + "type": "filament", + "name": "Elegoo Rapid PETG @EN4 Series", + "renamed_from": "Elegoo RAPID PETG @EN4 Series", + "inherits": "Elegoo PETG @base", + "from": "system", + "setting_id": "ERPETGEN4", + "instantiation": "true", + "fan_max_speed": [ + "80" + ], + "fan_min_speed": [ + "30" + ], + "filament_density": [ + "1.26" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "nozzle_temperature": [ + "250" + ], + "nozzle_temperature_initial_layer": [ + "250" + ], + "compatible_printers": [ + "Elegoo Neptune 4 0.4 nozzle", + "Elegoo Neptune 4 0.6 nozzle", + "Elegoo Neptune 4 0.8 nozzle", + "Elegoo Neptune 4 1.0 nozzle", + "Elegoo Neptune 4 Pro 0.4 nozzle", + "Elegoo Neptune 4 Pro 0.6 nozzle", + "Elegoo Neptune 4 Pro 0.8 nozzle", + "Elegoo Neptune 4 Pro 1.0 nozzle", + "Elegoo Neptune 4 Plus 0.4 nozzle", + "Elegoo Neptune 4 Plus 0.6 nozzle", + "Elegoo Neptune 4 Plus 0.8 nozzle", + "Elegoo Neptune 4 Plus 1.0 nozzle", + "Elegoo Neptune 4 Max 0.4 nozzle", + "Elegoo Neptune 4 Max 0.6 nozzle", + "Elegoo Neptune 4 Max 0.8 nozzle", + "Elegoo Neptune 4 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo Rapid PLA+ @EN4 Series.json b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo Rapid PLA+ @EN4 Series.json new file mode 100644 index 00000000000..b12b80cd453 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo Rapid PLA+ @EN4 Series.json @@ -0,0 +1,60 @@ +{ + "type": "filament", + "name": "Elegoo Rapid PLA+ @EN4 Series", + "renamed_from": "Elegoo RAPID PLA+ @EN4 Series", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "ERPLAPLUSEN4", + "instantiation": "true", + "fan_cooling_layer_time": [ + "80" + ], + "fan_max_speed": [ + "100" + ], + "fan_min_speed": [ + "100" + ], + "overhang_fan_threshold": [ + "25%" + ], + "filament_max_volumetric_speed": [ + "21" + ], + "hot_plate_temp": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "slow_down_layer_time": [ + "6" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "filament_density": [ + "1.25" + ], + "compatible_printers": [ + "Elegoo Neptune 4 0.4 nozzle", + "Elegoo Neptune 4 0.6 nozzle", + "Elegoo Neptune 4 0.8 nozzle", + "Elegoo Neptune 4 1.0 nozzle", + "Elegoo Neptune 4 Pro 0.4 nozzle", + "Elegoo Neptune 4 Pro 0.6 nozzle", + "Elegoo Neptune 4 Pro 0.8 nozzle", + "Elegoo Neptune 4 Pro 1.0 nozzle", + "Elegoo Neptune 4 Plus 0.4 nozzle", + "Elegoo Neptune 4 Plus 0.6 nozzle", + "Elegoo Neptune 4 Plus 0.8 nozzle", + "Elegoo Neptune 4 Plus 1.0 nozzle", + "Elegoo Neptune 4 Max 0.4 nozzle", + "Elegoo Neptune 4 Max 0.6 nozzle", + "Elegoo Neptune 4 Max 0.8 nozzle", + "Elegoo Neptune 4 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo Rapid TPU 95A @EN4 Series.json b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo Rapid TPU 95A @EN4 Series.json new file mode 100644 index 00000000000..663b8fd0904 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo Rapid TPU 95A @EN4 Series.json @@ -0,0 +1,42 @@ +{ + "type": "filament", + "name": "Elegoo Rapid TPU 95A @EN4 Series", + "renamed_from": "Elegoo RAPID TPU 95A @EN4 Series", + "inherits": "Elegoo TPU @base", + "from": "system", + "setting_id": "ERTPU95AEN4", + "instantiation": "true", + "pressure_advance": [ + "0.024" + ], + "nozzle_temperature": [ + "230" + ], + "nozzle_temperature_initial_layer": [ + "230" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "compatible_printers": [ + "Elegoo Neptune 4 0.4 nozzle", + "Elegoo Neptune 4 0.6 nozzle", + "Elegoo Neptune 4 0.8 nozzle", + "Elegoo Neptune 4 1.0 nozzle", + "Elegoo Neptune 4 Pro 0.4 nozzle", + "Elegoo Neptune 4 Pro 0.6 nozzle", + "Elegoo Neptune 4 Pro 0.8 nozzle", + "Elegoo Neptune 4 Pro 1.0 nozzle", + "Elegoo Neptune 4 Plus 0.4 nozzle", + "Elegoo Neptune 4 Plus 0.6 nozzle", + "Elegoo Neptune 4 Plus 0.8 nozzle", + "Elegoo Neptune 4 Plus 1.0 nozzle", + "Elegoo Neptune 4 Max 0.4 nozzle", + "Elegoo Neptune 4 Max 0.6 nozzle", + "Elegoo Neptune 4 Max 0.8 nozzle", + "Elegoo Neptune 4 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo TPU 95A @EN4 Series.json b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo TPU 95A @EN4 Series.json new file mode 100644 index 00000000000..c141a0a8260 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EN4SERIES/Elegoo TPU 95A @EN4 Series.json @@ -0,0 +1,29 @@ +{ + "type": "filament", + "name": "Elegoo TPU 95A @EN4 Series", + "inherits": "Elegoo TPU @base", + "from": "system", + "setting_id": "ETPU95AEN4", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "3.2" + ], + "compatible_printers": [ + "Elegoo Neptune 4 0.4 nozzle", + "Elegoo Neptune 4 0.6 nozzle", + "Elegoo Neptune 4 0.8 nozzle", + "Elegoo Neptune 4 1.0 nozzle", + "Elegoo Neptune 4 Pro 0.4 nozzle", + "Elegoo Neptune 4 Pro 0.6 nozzle", + "Elegoo Neptune 4 Pro 0.8 nozzle", + "Elegoo Neptune 4 Pro 1.0 nozzle", + "Elegoo Neptune 4 Plus 0.4 nozzle", + "Elegoo Neptune 4 Plus 0.6 nozzle", + "Elegoo Neptune 4 Plus 0.8 nozzle", + "Elegoo Neptune 4 Plus 1.0 nozzle", + "Elegoo Neptune 4 Max 0.4 nozzle", + "Elegoo Neptune 4 Max 0.6 nozzle", + "Elegoo Neptune 4 Max 0.8 nozzle", + "Elegoo Neptune 4 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo ASA @Elegoo Giga.json b/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo ASA @Elegoo Giga.json index 14241f46a5a..3573c791700 100644 --- a/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo ASA @Elegoo Giga.json +++ b/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo ASA @Elegoo Giga.json @@ -1,10 +1,9 @@ { "type": "filament", "name": "Elegoo ASA @Elegoo Giga", - "inherits": "Generic ASA @Elegoo", + "inherits": "Elegoo ASA @base", "from": "system", - "setting_id": "GFSA04", - "filament_id": "GFB98", + "setting_id": "EASAEOSG00", "instantiation": "true", "filament_max_volumetric_speed": [ "30" @@ -20,5 +19,6 @@ "Elegoo OrangeStorm Giga 0.6 nozzle", "Elegoo OrangeStorm Giga 0.8 nozzle", "Elegoo OrangeStorm Giga 1.0 nozzle" - ] + ], + "renamed_from": "Elegoo ASA @EOS Giga" } diff --git a/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo PETG @Elegoo Giga.json b/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo PETG @Elegoo Giga.json new file mode 100644 index 00000000000..51b98600e9e --- /dev/null +++ b/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo PETG @Elegoo Giga.json @@ -0,0 +1,30 @@ +{ + "type": "filament", + "name": "Elegoo PETG @Elegoo Giga", + "inherits": "Elegoo PETG @base", + "from": "system", + "setting_id": "EPETGEOSG00", + "instantiation": "true", + "pressure_advance": [ + "0.024" + ], + "overhang_fan_threshold": [ + "50%" + ], + "nozzle_temperature": [ + "250" + ], + "nozzle_temperature_initial_layer": [ + "250" + ], + "filament_max_volumetric_speed": [ + "11" + ], + "compatible_printers": [ + "Elegoo OrangeStorm Giga 0.4 nozzle", + "Elegoo OrangeStorm Giga 0.6 nozzle", + "Elegoo OrangeStorm Giga 0.8 nozzle", + "Elegoo OrangeStorm Giga 1.0 nozzle" + ], + "renamed_from": "Elegoo PETG @EOS Giga" +} diff --git a/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo PETG PRO @Elegoo Giga.json b/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo PETG PRO @Elegoo Giga.json index da0388abc47..cf29643e77e 100644 --- a/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo PETG PRO @Elegoo Giga.json +++ b/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo PETG PRO @Elegoo Giga.json @@ -1,10 +1,9 @@ { "type": "filament", "name": "Elegoo PETG PRO @Elegoo Giga", - "inherits": "Generic PETG PRO @Elegoo", + "inherits": "Elegoo PETG @base", "from": "system", - "setting_id": "GFSG99", - "filament_id": "GFG99", + "setting_id": "EPETGPROEOSG00", "instantiation": "true", "filament_max_volumetric_speed": [ "21" @@ -14,5 +13,6 @@ "Elegoo OrangeStorm Giga 0.6 nozzle", "Elegoo OrangeStorm Giga 0.8 nozzle", "Elegoo OrangeStorm Giga 1.0 nozzle" - ] + ], + "renamed_from": "Elegoo PETG PRO @EOS Giga" } diff --git a/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo PETG Translucent @Elegoo Giga.json b/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo PETG Translucent @Elegoo Giga.json new file mode 100644 index 00000000000..6270895584f --- /dev/null +++ b/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo PETG Translucent @Elegoo Giga.json @@ -0,0 +1,30 @@ +{ + "type": "filament", + "name": "Elegoo PETG Translucent @Elegoo Giga", + "inherits": "Elegoo PETG @base", + "from": "system", + "setting_id": "EPETGTRANSEOSG00", + "instantiation": "true", + "pressure_advance": [ + "0.024" + ], + "fan_max_speed": [ + "35" + ], + "filament_max_volumetric_speed": [ + "10" + ], + "nozzle_temperature": [ + "255" + ], + "nozzle_temperature_initial_layer": [ + "255" + ], + "compatible_printers": [ + "Elegoo OrangeStorm Giga 0.4 nozzle", + "Elegoo OrangeStorm Giga 0.6 nozzle", + "Elegoo OrangeStorm Giga 0.8 nozzle", + "Elegoo OrangeStorm Giga 1.0 nozzle" + ], + "renamed_from": "Elegoo PETG Translucent @EOS Giga" +} diff --git a/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo PETG-CF @Elegoo Giga.json b/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo PETG-CF @Elegoo Giga.json new file mode 100644 index 00000000000..a7abae476e2 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo PETG-CF @Elegoo Giga.json @@ -0,0 +1,45 @@ +{ + "type": "filament", + "name": "Elegoo PETG-CF @Elegoo Giga", + "inherits": "Elegoo PETG @base", + "from": "system", + "setting_id": "EPETGCFEOSG00", + "instantiation": "true", + "pressure_advance": [ + "0.024" + ], + "filament_density": [ + "1.26" + ], + "nozzle_temperature": [ + "250" + ], + "nozzle_temperature_initial_layer": [ + "250" + ], + "fan_max_speed": [ + "40" + ], + "fan_min_speed": [ + "5" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "nozzle_temperature_range_low": [ + "240" + ], + "overhang_fan_speed": [ + "100" + ], + "slow_down_layer_time": [ + "6" + ], + "compatible_printers": [ + "Elegoo OrangeStorm Giga 0.4 nozzle", + "Elegoo OrangeStorm Giga 0.6 nozzle", + "Elegoo OrangeStorm Giga 0.8 nozzle", + "Elegoo OrangeStorm Giga 1.0 nozzle" + ], + "renamed_from": "Elegoo PETG-CF @EOS Giga" +} diff --git a/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo PETG-GF @Elegoo Giga.json b/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo PETG-GF @Elegoo Giga.json new file mode 100644 index 00000000000..acea7ef222e --- /dev/null +++ b/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo PETG-GF @Elegoo Giga.json @@ -0,0 +1,45 @@ +{ + "type": "filament", + "name": "Elegoo PETG-GF @Elegoo Giga", + "inherits": "Elegoo PETG @base", + "from": "system", + "setting_id": "EPETGFEOSG00", + "instantiation": "true", + "pressure_advance": [ + "0.024" + ], + "filament_density": [ + "1.26" + ], + "nozzle_temperature": [ + "250" + ], + "nozzle_temperature_initial_layer": [ + "250" + ], + "fan_max_speed": [ + "40" + ], + "fan_min_speed": [ + "5" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "nozzle_temperature_range_low": [ + "240" + ], + "overhang_fan_speed": [ + "100" + ], + "slow_down_layer_time": [ + "6" + ], + "compatible_printers": [ + "Elegoo OrangeStorm Giga 0.4 nozzle", + "Elegoo OrangeStorm Giga 0.6 nozzle", + "Elegoo OrangeStorm Giga 0.8 nozzle", + "Elegoo OrangeStorm Giga 1.0 nozzle" + ], + "renamed_from": "Elegoo PETG-GF @EOS Giga" +} diff --git a/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo PLA @Elegoo Giga.json b/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo PLA @Elegoo Giga.json index e3e5e029b8f..a8349531469 100644 --- a/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo PLA @Elegoo Giga.json +++ b/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo PLA @Elegoo Giga.json @@ -1,10 +1,9 @@ { "type": "filament", "name": "Elegoo PLA @Elegoo Giga", - "inherits": "Generic PLA @Elegoo", + "inherits": "Elegoo PLA @base", "from": "system", - "setting_id": "GFSL99", - "filament_id": "GFL99", + "setting_id": "EPLAEOSG00", "instantiation": "true", "filament_max_volumetric_speed": [ "30" @@ -14,5 +13,6 @@ "Elegoo OrangeStorm Giga 0.6 nozzle", "Elegoo OrangeStorm Giga 0.8 nozzle", "Elegoo OrangeStorm Giga 1.0 nozzle" - ] + ], + "renamed_from": "Elegoo PLA @EOS Giga" } diff --git a/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo PLA Basic @Elegoo Giga.json b/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo PLA Basic @Elegoo Giga.json new file mode 100644 index 00000000000..dd33bb73cb8 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo PLA Basic @Elegoo Giga.json @@ -0,0 +1,33 @@ +{ + "type": "filament", + "name": "Elegoo PLA Basic @Elegoo Giga", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLABASICEOSG00", + "instantiation": "true", + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "filament_max_volumetric_speed": [ + "21" + ], + "pressure_advance": [ + "0.024" + ], + "slow_down_layer_time": [ + "4" + ], + "compatible_printers": [ + "Elegoo OrangeStorm Giga 0.4 nozzle", + "Elegoo OrangeStorm Giga 0.6 nozzle", + "Elegoo OrangeStorm Giga 0.8 nozzle", + "Elegoo OrangeStorm Giga 1.0 nozzle" + ], + "renamed_from": "Elegoo PLA Basic @EOS Giga" +} diff --git a/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo PLA Galaxy @Elegoo Giga.json b/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo PLA Galaxy @Elegoo Giga.json new file mode 100644 index 00000000000..0355d60abfc --- /dev/null +++ b/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo PLA Galaxy @Elegoo Giga.json @@ -0,0 +1,36 @@ +{ + "type": "filament", + "name": "Elegoo PLA Galaxy @Elegoo Giga", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLAGALAXYEOSG00", + "instantiation": "true", + "fan_min_speed": [ + "80" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature_range_high": [ + "220" + ], + "pressure_advance": [ + "0.024" + ], + "slow_down_layer_time": [ + "4" + ], + "compatible_printers": [ + "Elegoo OrangeStorm Giga 0.4 nozzle", + "Elegoo OrangeStorm Giga 0.6 nozzle", + "Elegoo OrangeStorm Giga 0.8 nozzle", + "Elegoo OrangeStorm Giga 1.0 nozzle" + ], + "renamed_from": "Elegoo PLA Galaxy @EOS Giga" +} diff --git a/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo PLA Marble @Elegoo Giga.json b/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo PLA Marble @Elegoo Giga.json new file mode 100644 index 00000000000..3e65b89ee27 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo PLA Marble @Elegoo Giga.json @@ -0,0 +1,36 @@ +{ + "type": "filament", + "name": "Elegoo PLA Marble @Elegoo Giga", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLAMARBLEEOSG00", + "instantiation": "true", + "fan_min_speed": [ + "80" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature_range_high": [ + "220" + ], + "pressure_advance": [ + "0.024" + ], + "slow_down_layer_time": [ + "4" + ], + "compatible_printers": [ + "Elegoo OrangeStorm Giga 0.4 nozzle", + "Elegoo OrangeStorm Giga 0.6 nozzle", + "Elegoo OrangeStorm Giga 0.8 nozzle", + "Elegoo OrangeStorm Giga 1.0 nozzle" + ], + "renamed_from": "Elegoo PLA Marble @EOS Giga" +} diff --git a/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo PLA Matte @Elegoo Giga.json b/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo PLA Matte @Elegoo Giga.json index 91ad87bbe8a..aa47d8b1f82 100644 --- a/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo PLA Matte @Elegoo Giga.json +++ b/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo PLA Matte @Elegoo Giga.json @@ -1,10 +1,9 @@ { "type": "filament", "name": "Elegoo PLA Matte @Elegoo Giga", - "inherits": "Generic PLA Matte @Elegoo", + "inherits": "Elegoo PLA @base", "from": "system", - "setting_id": "GFSL99", - "filament_id": "GFL99", + "setting_id": "EPLAMEOSG00", "instantiation": "true", "fan_cooling_layer_time": [ "80" @@ -38,5 +37,6 @@ "Elegoo OrangeStorm Giga 0.6 nozzle", "Elegoo OrangeStorm Giga 0.8 nozzle", "Elegoo OrangeStorm Giga 1.0 nozzle" - ] + ], + "renamed_from": "Elegoo PLA Matte @EOS Giga" } diff --git a/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo PLA Sparkle @Elegoo Giga.json b/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo PLA Sparkle @Elegoo Giga.json new file mode 100644 index 00000000000..a05cdbfc97d --- /dev/null +++ b/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo PLA Sparkle @Elegoo Giga.json @@ -0,0 +1,36 @@ +{ + "type": "filament", + "name": "Elegoo PLA Sparkle @Elegoo Giga", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLASPARKLEEOSG00", + "instantiation": "true", + "fan_min_speed": [ + "80" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature_range_high": [ + "220" + ], + "pressure_advance": [ + "0.024" + ], + "slow_down_layer_time": [ + "4" + ], + "compatible_printers": [ + "Elegoo OrangeStorm Giga 0.4 nozzle", + "Elegoo OrangeStorm Giga 0.6 nozzle", + "Elegoo OrangeStorm Giga 0.8 nozzle", + "Elegoo OrangeStorm Giga 1.0 nozzle" + ], + "renamed_from": "Elegoo PLA Sparkle @EOS Giga" +} diff --git a/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo PLA Wood @Elegoo Giga.json b/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo PLA Wood @Elegoo Giga.json new file mode 100644 index 00000000000..ebb837679c8 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo PLA Wood @Elegoo Giga.json @@ -0,0 +1,36 @@ +{ + "type": "filament", + "name": "Elegoo PLA Wood @Elegoo Giga", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "EPLAWOODEOSG00", + "instantiation": "true", + "fan_min_speed": [ + "80" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature_range_low": [ + "200" + ], + "pressure_advance": [ + "0.024" + ], + "slow_down_layer_time": [ + "4" + ], + "compatible_printers": [ + "Elegoo OrangeStorm Giga 0.4 nozzle", + "Elegoo OrangeStorm Giga 0.6 nozzle", + "Elegoo OrangeStorm Giga 0.8 nozzle", + "Elegoo OrangeStorm Giga 1.0 nozzle" + ], + "renamed_from": "Elegoo PLA Wood @EOS Giga" +} diff --git a/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo Rapid PETG @Elegoo Giga.json b/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo Rapid PETG @Elegoo Giga.json new file mode 100644 index 00000000000..245d6b0cdf9 --- /dev/null +++ b/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo Rapid PETG @Elegoo Giga.json @@ -0,0 +1,42 @@ +{ + "type": "filament", + "name": "Elegoo Rapid PETG @Elegoo Giga", + "renamed_from": "Elegoo RAPID PETG @Elegoo Giga;Elegoo Rapid PETG @EOS Giga", + "inherits": "Elegoo PETG @base", + "from": "system", + "setting_id": "ERPETGEOSG00", + "instantiation": "true", + "enable_pressure_advance": [ + "1" + ], + "fan_max_speed": [ + "60" + ], + "fan_min_speed": [ + "30" + ], + "filament_flow_ratio": [ + "1.17" + ], + "filament_max_volumetric_speed": [ + "34" + ], + "nozzle_temperature": [ + "235" + ], + "nozzle_temperature_initial_layer": [ + "235" + ], + "pressure_advance": [ + "0.035" + ], + "filament_density": [ + "1.26" + ], + "compatible_printers": [ + "Elegoo OrangeStorm Giga 0.4 nozzle", + "Elegoo OrangeStorm Giga 0.6 nozzle", + "Elegoo OrangeStorm Giga 0.8 nozzle", + "Elegoo OrangeStorm Giga 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo Rapid PLA+ @Elegoo Giga.json b/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo Rapid PLA+ @Elegoo Giga.json new file mode 100644 index 00000000000..b2c5318bddf --- /dev/null +++ b/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo Rapid PLA+ @Elegoo Giga.json @@ -0,0 +1,36 @@ +{ + "type": "filament", + "name": "Elegoo Rapid PLA+ @Elegoo Giga", + "renamed_from": "Elegoo RAPID PLA+ @Elegoo Giga;Elegoo Rapid PLA+ @EOS Giga", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "ERPLAEOSG00", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "30" + ], + "fan_min_speed": [ + "100" + ], + "filament_flow_ratio": [ + "1.12" + ], + "nozzle_temperature": [ + "210" + ], + "nozzle_temperature_initial_layer": [ + "210" + ], + "overhang_fan_threshold": [ + "25%" + ], + "filament_density": [ + "1.25" + ], + "compatible_printers": [ + "Elegoo OrangeStorm Giga 0.4 nozzle", + "Elegoo OrangeStorm Giga 0.6 nozzle", + "Elegoo OrangeStorm Giga 0.8 nozzle", + "Elegoo OrangeStorm Giga 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo Rapid TPU 95A @Elegoo Giga.json b/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo Rapid TPU 95A @Elegoo Giga.json new file mode 100644 index 00000000000..42657eb4aeb --- /dev/null +++ b/resources/profiles/Elegoo/filament/EOSGIGA/Elegoo Rapid TPU 95A @Elegoo Giga.json @@ -0,0 +1,30 @@ +{ + "type": "filament", + "name": "Elegoo Rapid TPU 95A @Elegoo Giga", + "renamed_from": "Elegoo RAPID TPU 95A @Elegoo Giga;Elegoo Rapid TPU 95A @EOS Giga", + "inherits": "Elegoo TPU @base", + "from": "system", + "setting_id": "ERTPU95AEOSG00", + "instantiation": "true", + "pressure_advance": [ + "0.024" + ], + "nozzle_temperature": [ + "230" + ], + "nozzle_temperature_initial_layer": [ + "230" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "compatible_printers": [ + "Elegoo OrangeStorm Giga 0.4 nozzle", + "Elegoo OrangeStorm Giga 0.6 nozzle", + "Elegoo OrangeStorm Giga 0.8 nozzle", + "Elegoo OrangeStorm Giga 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/Generic/Generic ABS @Elegoo Centauri.json b/resources/profiles/Elegoo/filament/Generic/Generic ABS @Elegoo Centauri.json new file mode 100644 index 00000000000..15394203330 --- /dev/null +++ b/resources/profiles/Elegoo/filament/Generic/Generic ABS @Elegoo Centauri.json @@ -0,0 +1,19 @@ +{ + "type": "filament", + "name": "Generic ABS @Elegoo Centauri", + "inherits": "Generic ABS @base", + "from": "system", + "setting_id": "GABS00", + "instantiation": "true", + "compatible_printers": [ + "Elegoo Centauri 0.4 nozzle", + "Elegoo Centauri 0.6 nozzle", + "Elegoo Centauri 0.8 nozzle", + "Elegoo Centauri Carbon 0.4 nozzle", + "Elegoo Centauri Carbon 0.6 nozzle", + "Elegoo Centauri Carbon 0.8 nozzle", + "Elegoo Centauri Carbon 2 0.4 nozzle", + "Elegoo Centauri Carbon 2 0.6 nozzle", + "Elegoo Centauri Carbon 2 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/Generic/Generic ABS @Elegoo.json b/resources/profiles/Elegoo/filament/Generic/Generic ABS @Elegoo.json index 4fac75ed3ff..5ca4dbc7d55 100644 --- a/resources/profiles/Elegoo/filament/Generic/Generic ABS @Elegoo.json +++ b/resources/profiles/Elegoo/filament/Generic/Generic ABS @Elegoo.json @@ -1,45 +1,204 @@ { "type": "filament", - "name": "Generic ABS @Elegoo", - "inherits": "fdm_filament_abs", - "from": "system", "setting_id": "GFSA04", - "filament_id": "GFB99", + "name": "Generic ABS @Elegoo", + "from": "system", "instantiation": "true", + "inherits": "Generic ABS @base", + "cool_plate_temp": [ + "100" + ], + "eng_plate_temp": [ + "100" + ], + "hot_plate_temp": [ + "100" + ], + "textured_plate_temp": [ + "100" + ], + "cool_plate_temp_initial_layer": [ + "100" + ], + "eng_plate_temp_initial_layer": [ + "100" + ], + "hot_plate_temp_initial_layer": [ + "100" + ], + "textured_plate_temp_initial_layer": [ + "100" + ], + "overhang_fan_threshold": [ + "25%" + ], + "overhang_fan_speed": [ + "30" + ], + "slow_down_for_layer_cooling": [ + "1" + ], + "close_fan_the_first_x_layers": [ + "3" + ], + "filament_end_gcode": [ + "; filament end gcode \n" + ], "filament_flow_ratio": [ "0.926" ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "fan_cooling_layer_time": [ + "30" + ], + "filament_cost": [ + "20" + ], + "filament_density": [ + "1.04" + ], + "filament_deretraction_speed": [ + "nil" + ], + "filament_diameter": [ + "1.75" + ], "filament_max_volumetric_speed": [ "12" ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ], + "filament_retraction_minimum_travel": [ + "nil" + ], + "filament_retract_before_wipe": [ + "nil" + ], + "filament_retract_when_changing_layer": [ + "nil" + ], + "filament_retraction_length": [ + "nil" + ], + "filament_z_hop": [ + "nil" + ], + "filament_z_hop_types": [ + "nil" + ], + "filament_retract_restart_extra": [ + "nil" + ], + "filament_retraction_speed": [ + "nil" + ], + "filament_settings_id": [ + "" + ], + "filament_soluble": [ + "0" + ], + "filament_type": [ + "ABS" + ], + "filament_vendor": [ + "Generic" + ], + "filament_wipe": [ + "nil" + ], + "filament_wipe_distance": [ + "nil" + ], + "bed_type": [ + "Cool Plate" + ], "nozzle_temperature_initial_layer": [ "245" ], + "full_fan_speed_layer": [ + "0" + ], + "fan_max_speed": [ + "0" + ], + "fan_min_speed": [ + "0" + ], + "slow_down_min_speed": [ + "10" + ], + "slow_down_layer_time": [ + "3" + ], + "filament_start_gcode": [ + "; Filament gcode\n" + ], + "nozzle_temperature": [ + "245" + ], + "temperature_vitrification": [ + "110" + ], + "nozzle_temperature_range_low": [ + "240" + ], + "nozzle_temperature_range_high": [ + "245" + ], "compatible_printers": [ "Elegoo Neptune 0.4 nozzle", - "Elegoo Neptune X 0.4 nozzle", + "Elegoo Neptune 0.6 nozzle", + "Elegoo Neptune 0.8 nozzle", "Elegoo Neptune 2 0.4 nozzle", + "Elegoo Neptune 2 0.6 nozzle", + "Elegoo Neptune 2 0.8 nozzle", "Elegoo Neptune 2S 0.4 nozzle", + "Elegoo Neptune 2S 0.6 nozzle", + "Elegoo Neptune 2S 0.8 nozzle", "Elegoo Neptune 2D 0.4 nozzle", + "Elegoo Neptune 2D 0.6 nozzle", + "Elegoo Neptune 2D 0.8 nozzle", + "Elegoo Neptune X 0.4 nozzle", + "Elegoo Neptune X 0.6 nozzle", + "Elegoo Neptune X 0.8 nozzle", "Elegoo Neptune 3 0.4 nozzle", + "Elegoo Neptune 3 0.6 nozzle", + "Elegoo Neptune 3 0.8 nozzle", "Elegoo Neptune 3 Pro 0.4 nozzle", + "Elegoo Neptune 3 Pro 0.6 nozzle", + "Elegoo Neptune 3 Pro 0.8 nozzle", + "Elegoo Neptune 3 Pro 1.0 nozzle", "Elegoo Neptune 3 Plus 0.4 nozzle", + "Elegoo Neptune 3 Plus 0.6 nozzle", + "Elegoo Neptune 3 Plus 0.8 nozzle", + "Elegoo Neptune 3 Plus 1.0 nozzle", "Elegoo Neptune 3 Max 0.4 nozzle", - "Elegoo Neptune 4 (0.2 nozzle)", - "Elegoo Neptune 4 (0.4 nozzle)", - "Elegoo Neptune 4 (0.6 nozzle)", - "Elegoo Neptune 4 (0.8 nozzle)", - "Elegoo Neptune 4 Max (0.2 nozzle)", - "Elegoo Neptune 4 Max (0.4 nozzle)", - "Elegoo Neptune 4 Max (0.6 nozzle)", - "Elegoo Neptune 4 Max (0.8 nozzle)", - "Elegoo Neptune 4 Plus (0.2 nozzle)", - "Elegoo Neptune 4 Plus (0.4 nozzle)", - "Elegoo Neptune 4 Plus (0.6 nozzle)", - "Elegoo Neptune 4 Plus (0.8 nozzle)", - "Elegoo Neptune 4 Pro (0.2 nozzle)", - "Elegoo Neptune 4 Pro (0.4 nozzle)", - "Elegoo Neptune 4 Pro (0.6 nozzle)", - "Elegoo Neptune 4 Pro (0.8 nozzle)" + "Elegoo Neptune 3 Max 0.6 nozzle", + "Elegoo Neptune 3 Max 0.8 nozzle", + "Elegoo Neptune 3 Max 1.0 nozzle", + "Elegoo Neptune 4 0.2 nozzle", + "Elegoo Neptune 4 0.4 nozzle", + "Elegoo Neptune 4 0.6 nozzle", + "Elegoo Neptune 4 0.8 nozzle", + "Elegoo Neptune 4 1.0 nozzle", + "Elegoo Neptune 4 Max 0.2 nozzle", + "Elegoo Neptune 4 Pro 0.4 nozzle", + "Elegoo Neptune 4 Pro 0.6 nozzle", + "Elegoo Neptune 4 Pro 0.8 nozzle", + "Elegoo Neptune 4 Pro 1.0 nozzle", + "Elegoo Neptune 4 Plus 0.2 nozzle", + "Elegoo Neptune 4 Plus 0.4 nozzle", + "Elegoo Neptune 4 Plus 0.6 nozzle", + "Elegoo Neptune 4 Plus 0.8 nozzle", + "Elegoo Neptune 4 Plus 1.0 nozzle", + "Elegoo Neptune 4 Pro 0.2 nozzle", + "Elegoo Neptune 4 Max 0.4 nozzle", + "Elegoo Neptune 4 Max 0.6 nozzle", + "Elegoo Neptune 4 Max 0.8 nozzle", + "Elegoo Neptune 4 Max 1.0 nozzle" ] } diff --git a/resources/profiles/Elegoo/filament/Generic/Generic ABS-CF @Elegoo Centauri.json b/resources/profiles/Elegoo/filament/Generic/Generic ABS-CF @Elegoo Centauri.json new file mode 100644 index 00000000000..00baf4dd4a7 --- /dev/null +++ b/resources/profiles/Elegoo/filament/Generic/Generic ABS-CF @Elegoo Centauri.json @@ -0,0 +1,43 @@ +{ + "type": "filament", + "name": "Generic ABS-CF @Elegoo Centauri", + "inherits": "Generic ABS @base", + "from": "system", + "setting_id": "GABSCF00", + "instantiation": "true", + "nozzle_temperature": [ + "260" + ], + "nozzle_temperature_initial_layer": [ + "250" + ], + "overhang_fan_speed": [ + "90" + ], + "overhang_fan_threshold": [ + "10%" + ], + "slow_down_layer_time": [ + "4" + ], + "fan_cooling_layer_time": [ + "10" + ], + "fan_max_speed": [ + "30" + ], + "filament_type": [ + "ABS-CF" + ], + "compatible_printers": [ + "Elegoo Centauri 0.4 nozzle", + "Elegoo Centauri 0.6 nozzle", + "Elegoo Centauri 0.8 nozzle", + "Elegoo Centauri Carbon 0.4 nozzle", + "Elegoo Centauri Carbon 0.6 nozzle", + "Elegoo Centauri Carbon 0.8 nozzle", + "Elegoo Centauri Carbon 2 0.4 nozzle", + "Elegoo Centauri Carbon 2 0.6 nozzle", + "Elegoo Centauri Carbon 2 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/Generic/Generic ASA @Elegoo.json b/resources/profiles/Elegoo/filament/Generic/Generic ASA @Elegoo.json index 7260f49aaf1..6aea31620fa 100644 --- a/resources/profiles/Elegoo/filament/Generic/Generic ASA @Elegoo.json +++ b/resources/profiles/Elegoo/filament/Generic/Generic ASA @Elegoo.json @@ -1,45 +1,201 @@ { "type": "filament", - "name": "Generic ASA @Elegoo", - "inherits": "fdm_filament_asa", - "from": "system", "setting_id": "GFSA04", - "filament_id": "GFB98", + "name": "Generic ASA @Elegoo", + "from": "system", "instantiation": "true", - "filament_vendor": [ - "Elegoo" + "inherits": "Generic ASA @base", + "cool_plate_temp": [ + "0" + ], + "eng_plate_temp": [ + "90" + ], + "hot_plate_temp": [ + "90" + ], + "textured_plate_temp": [ + "90" + ], + "cool_plate_temp_initial_layer": [ + "0" + ], + "eng_plate_temp_initial_layer": [ + "90" + ], + "hot_plate_temp_initial_layer": [ + "90" + ], + "textured_plate_temp_initial_layer": [ + "90" + ], + "overhang_fan_threshold": [ + "25%" + ], + "overhang_fan_speed": [ + "80" + ], + "slow_down_for_layer_cooling": [ + "1" + ], + "close_fan_the_first_x_layers": [ + "3" + ], + "filament_end_gcode": [ + "; filament end gcode \n" + ], + "filament_flow_ratio": [ + "1" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "fan_cooling_layer_time": [ + "35" ], "filament_density": [ "1.1" ], + "filament_deretraction_speed": [ + "nil" + ], + "filament_diameter": [ + "1.75" + ], "filament_max_volumetric_speed": [ "12" ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ], + "filament_retraction_minimum_travel": [ + "nil" + ], + "filament_retract_before_wipe": [ + "nil" + ], + "filament_retract_when_changing_layer": [ + "nil" + ], + "filament_retraction_length": [ + "nil" + ], + "filament_z_hop": [ + "nil" + ], + "filament_z_hop_types": [ + "nil" + ], + "filament_retract_restart_extra": [ + "nil" + ], + "filament_retraction_speed": [ + "nil" + ], + "filament_settings_id": [ + "" + ], + "filament_soluble": [ + "0" + ], + "filament_type": [ + "ASA" + ], + "filament_wipe": [ + "nil" + ], + "filament_wipe_distance": [ + "nil" + ], + "bed_type": [ + "Cool Plate" + ], + "nozzle_temperature_initial_layer": [ + "260" + ], + "full_fan_speed_layer": [ + "0" + ], + "fan_max_speed": [ + "80" + ], + "fan_min_speed": [ + "10" + ], + "slow_down_min_speed": [ + "20" + ], + "slow_down_layer_time": [ + "3" + ], + "filament_start_gcode": [ + "; Filament gcode\n" + ], + "nozzle_temperature": [ + "260" + ], + "temperature_vitrification": [ + "100" + ], + "activate_air_filtration": [ + "1" + ], + "nozzle_temperature_range_high": [ + "280" + ], + "nozzle_temperature_range_low": [ + "240" + ], "compatible_printers": [ "Elegoo Neptune 0.4 nozzle", - "Elegoo Neptune X 0.4 nozzle", + "Elegoo Neptune 0.6 nozzle", + "Elegoo Neptune 0.8 nozzle", "Elegoo Neptune 2 0.4 nozzle", + "Elegoo Neptune 2 0.6 nozzle", + "Elegoo Neptune 2 0.8 nozzle", "Elegoo Neptune 2S 0.4 nozzle", + "Elegoo Neptune 2S 0.6 nozzle", + "Elegoo Neptune 2S 0.8 nozzle", "Elegoo Neptune 2D 0.4 nozzle", + "Elegoo Neptune 2D 0.6 nozzle", + "Elegoo Neptune 2D 0.8 nozzle", + "Elegoo Neptune X 0.4 nozzle", + "Elegoo Neptune X 0.6 nozzle", + "Elegoo Neptune X 0.8 nozzle", "Elegoo Neptune 3 0.4 nozzle", + "Elegoo Neptune 3 0.6 nozzle", + "Elegoo Neptune 3 0.8 nozzle", "Elegoo Neptune 3 Pro 0.4 nozzle", + "Elegoo Neptune 3 Pro 0.6 nozzle", + "Elegoo Neptune 3 Pro 0.8 nozzle", + "Elegoo Neptune 3 Pro 1.0 nozzle", "Elegoo Neptune 3 Plus 0.4 nozzle", + "Elegoo Neptune 3 Plus 0.6 nozzle", + "Elegoo Neptune 3 Plus 0.8 nozzle", + "Elegoo Neptune 3 Plus 1.0 nozzle", "Elegoo Neptune 3 Max 0.4 nozzle", - "Elegoo Neptune 4 (0.2 nozzle)", - "Elegoo Neptune 4 (0.4 nozzle)", - "Elegoo Neptune 4 (0.6 nozzle)", - "Elegoo Neptune 4 (0.8 nozzle)", - "Elegoo Neptune 4 Max (0.2 nozzle)", - "Elegoo Neptune 4 Max (0.4 nozzle)", - "Elegoo Neptune 4 Max (0.6 nozzle)", - "Elegoo Neptune 4 Max (0.8 nozzle)", - "Elegoo Neptune 4 Plus (0.2 nozzle)", - "Elegoo Neptune 4 Plus (0.4 nozzle)", - "Elegoo Neptune 4 Plus (0.6 nozzle)", - "Elegoo Neptune 4 Plus (0.8 nozzle)", - "Elegoo Neptune 4 Pro (0.2 nozzle)", - "Elegoo Neptune 4 Pro (0.4 nozzle)", - "Elegoo Neptune 4 Pro (0.6 nozzle)", - "Elegoo Neptune 4 Pro (0.8 nozzle)" + "Elegoo Neptune 3 Max 0.6 nozzle", + "Elegoo Neptune 3 Max 0.8 nozzle", + "Elegoo Neptune 3 Max 1.0 nozzle", + "Elegoo Neptune 4 0.2 nozzle", + "Elegoo Neptune 4 0.4 nozzle", + "Elegoo Neptune 4 0.6 nozzle", + "Elegoo Neptune 4 0.8 nozzle", + "Elegoo Neptune 4 1.0 nozzle", + "Elegoo Neptune 4 Max 0.2 nozzle", + "Elegoo Neptune 4 Pro 0.4 nozzle", + "Elegoo Neptune 4 Pro 0.6 nozzle", + "Elegoo Neptune 4 Pro 0.8 nozzle", + "Elegoo Neptune 4 Pro 1.0 nozzle", + "Elegoo Neptune 4 Plus 0.2 nozzle", + "Elegoo Neptune 4 Plus 0.4 nozzle", + "Elegoo Neptune 4 Plus 0.6 nozzle", + "Elegoo Neptune 4 Plus 0.8 nozzle", + "Elegoo Neptune 4 Plus 1.0 nozzle", + "Elegoo Neptune 4 Pro 0.2 nozzle", + "Elegoo Neptune 4 Max 0.4 nozzle", + "Elegoo Neptune 4 Max 0.6 nozzle", + "Elegoo Neptune 4 Max 0.8 nozzle", + "Elegoo Neptune 4 Max 1.0 nozzle" ] } diff --git a/resources/profiles/Elegoo/filament/Generic/Generic ASA-CF @Elegoo Centauri.json b/resources/profiles/Elegoo/filament/Generic/Generic ASA-CF @Elegoo Centauri.json new file mode 100644 index 00000000000..9dd8d483d39 --- /dev/null +++ b/resources/profiles/Elegoo/filament/Generic/Generic ASA-CF @Elegoo Centauri.json @@ -0,0 +1,31 @@ +{ + "type": "filament", + "name": "Generic ASA-CF @Elegoo Centauri", + "inherits": "Generic ASA @base", + "from": "system", + "setting_id": "GASACF00", + "instantiation": "true", + "filament_type": [ + "ASA-CF" + ], + "fan_cooling_layer_time": [ + "25" + ], + "fan_max_speed": [ + "60" + ], + "slow_down_layer_time": [ + "4" + ], + "compatible_printers": [ + "Elegoo Centauri 0.4 nozzle", + "Elegoo Centauri 0.6 nozzle", + "Elegoo Centauri 0.8 nozzle", + "Elegoo Centauri Carbon 0.4 nozzle", + "Elegoo Centauri Carbon 0.6 nozzle", + "Elegoo Centauri Carbon 0.8 nozzle", + "Elegoo Centauri Carbon 2 0.4 nozzle", + "Elegoo Centauri Carbon 2 0.6 nozzle", + "Elegoo Centauri Carbon 2 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/Generic/Generic PA @Elegoo.json b/resources/profiles/Elegoo/filament/Generic/Generic PA @Elegoo.json new file mode 100644 index 00000000000..285c7f4f3ce --- /dev/null +++ b/resources/profiles/Elegoo/filament/Generic/Generic PA @Elegoo.json @@ -0,0 +1,78 @@ +{ + "type": "filament", + "name": "Generic PA @Elegoo", + "inherits": "Generic PA @base", + "from": "system", + "setting_id": "GPA00", + "instantiation": "true", + "activate_air_filtration": [ + "0" + ], + "close_fan_the_first_x_layers": [ + "5" + ], + "fan_cooling_layer_time": [ + "60" + ], + "fan_max_speed": [ + "100" + ], + "fan_min_speed": [ + "80" + ], + "filament_flow_ratio": [ + "0.98" + ], + "nozzle_temperature": [ + "250" + ], + "nozzle_temperature_initial_layer": [ + "250" + ], + "nozzle_temperature_range_high": [ + "290" + ], + "overhang_fan_speed": [ + "100" + ], + "overhang_fan_threshold": [ + "0%" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "slow_down_layer_time": [ + "12" + ], + "compatible_printers": [ + "Elegoo Neptune 4 0.4 nozzle", + "Elegoo Neptune 4 0.6 nozzle", + "Elegoo Neptune 4 0.8 nozzle", + "Elegoo Neptune 4 1.0 nozzle", + "Elegoo Neptune 4 Max 0.4 nozzle", + "Elegoo Neptune 4 Max 0.6 nozzle", + "Elegoo Neptune 4 Max 0.8 nozzle", + "Elegoo Neptune 4 Max 1.0 nozzle", + "Elegoo Neptune 4 Plus 0.4 nozzle", + "Elegoo Neptune 4 Plus 0.6 nozzle", + "Elegoo Neptune 4 Plus 0.8 nozzle", + "Elegoo Neptune 4 Plus 1.0 nozzle", + "Elegoo Neptune 4 Pro 0.4 nozzle", + "Elegoo Neptune 4 Pro 0.6 nozzle", + "Elegoo Neptune 4 Pro 0.8 nozzle", + "Elegoo Neptune 4 Pro 1.0 nozzle", + "Elegoo Centauri 0.4 nozzle", + "Elegoo Centauri 0.6 nozzle", + "Elegoo Centauri 0.8 nozzle", + "Elegoo Centauri Carbon 0.4 nozzle", + "Elegoo Centauri Carbon 0.6 nozzle", + "Elegoo Centauri Carbon 0.8 nozzle", + "Elegoo Centauri Carbon 2 0.4 nozzle", + "Elegoo Centauri Carbon 2 0.6 nozzle", + "Elegoo Centauri Carbon 2 0.8 nozzle", + "Elegoo OrangeStorm Giga 0.4 nozzle", + "Elegoo OrangeStorm Giga 0.6 nozzle", + "Elegoo OrangeStorm Giga 0.8 nozzle", + "Elegoo OrangeStorm Giga 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/Generic/Generic PA6-CF @Elegoo.json b/resources/profiles/Elegoo/filament/Generic/Generic PA6-CF @Elegoo.json new file mode 100644 index 00000000000..d85cfeb65bd --- /dev/null +++ b/resources/profiles/Elegoo/filament/Generic/Generic PA6-CF @Elegoo.json @@ -0,0 +1,84 @@ +{ + "type": "filament", + "name": "Generic PA6-CF @Elegoo", + "inherits": "Generic PA @base", + "from": "system", + "setting_id": "GPA6CF00", + "instantiation": "true", + "fan_min_speed": [ + "10" + ], + "filament_type": [ + "PA6-CF" + ], + "full_fan_speed_layer": [ + "2" + ], + "temperature_vitrification": [ + "170" + ], + "activate_air_filtration": [ + "0" + ], + "fan_cooling_layer_time": [ + "8" + ], + "fan_max_speed": [ + "60" + ], + "filament_flow_ratio": [ + "0.95" + ], + "nozzle_temperature": [ + "280" + ], + "nozzle_temperature_initial_layer": [ + "280" + ], + "nozzle_temperature_range_high": [ + "300" + ], + "nozzle_temperature_range_low": [ + "260" + ], + "overhang_fan_speed": [ + "100" + ], + "overhang_fan_threshold": [ + "10%" + ], + "slow_down_layer_time": [ + "3" + ], + "compatible_printers": [ + "Elegoo Neptune 4 0.4 nozzle", + "Elegoo Neptune 4 0.6 nozzle", + "Elegoo Neptune 4 0.8 nozzle", + "Elegoo Neptune 4 1.0 nozzle", + "Elegoo Neptune 4 Max 0.4 nozzle", + "Elegoo Neptune 4 Max 0.6 nozzle", + "Elegoo Neptune 4 Max 0.8 nozzle", + "Elegoo Neptune 4 Max 1.0 nozzle", + "Elegoo Neptune 4 Plus 0.4 nozzle", + "Elegoo Neptune 4 Plus 0.6 nozzle", + "Elegoo Neptune 4 Plus 0.8 nozzle", + "Elegoo Neptune 4 Plus 1.0 nozzle", + "Elegoo Neptune 4 Pro 0.4 nozzle", + "Elegoo Neptune 4 Pro 0.6 nozzle", + "Elegoo Neptune 4 Pro 0.8 nozzle", + "Elegoo Neptune 4 Pro 1.0 nozzle", + "Elegoo Centauri 0.4 nozzle", + "Elegoo Centauri 0.6 nozzle", + "Elegoo Centauri 0.8 nozzle", + "Elegoo Centauri Carbon 0.4 nozzle", + "Elegoo Centauri Carbon 0.6 nozzle", + "Elegoo Centauri Carbon 0.8 nozzle", + "Elegoo Centauri Carbon 2 0.4 nozzle", + "Elegoo Centauri Carbon 2 0.6 nozzle", + "Elegoo Centauri Carbon 2 0.8 nozzle", + "Elegoo OrangeStorm Giga 0.4 nozzle", + "Elegoo OrangeStorm Giga 0.6 nozzle", + "Elegoo OrangeStorm Giga 0.8 nozzle", + "Elegoo OrangeStorm Giga 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/Generic/Generic PC @Elegoo.json b/resources/profiles/Elegoo/filament/Generic/Generic PC @Elegoo.json new file mode 100644 index 00000000000..0ec151c97ff --- /dev/null +++ b/resources/profiles/Elegoo/filament/Generic/Generic PC @Elegoo.json @@ -0,0 +1,63 @@ +{ + "type": "filament", + "name": "Generic PC @Elegoo", + "inherits": "Generic PC @base", + "from": "system", + "setting_id": "GPC00", + "instantiation": "true", + "fan_cooling_layer_time": [ + "35" + ], + "fan_min_speed": [ + "20" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "nozzle_temperature": [ + "270" + ], + "nozzle_temperature_range_low": [ + "240" + ], + "overhang_fan_speed": [ + "50" + ], + "slow_down_layer_time": [ + "6" + ], + "compatible_printers": [ + "Elegoo Neptune 3 Pro 0.4 nozzle", + "Elegoo Neptune 3 Plus 0.4 nozzle", + "Elegoo Neptune 3 Max 0.4 nozzle", + "Elegoo Neptune 4 0.4 nozzle", + "Elegoo Neptune 4 0.6 nozzle", + "Elegoo Neptune 4 0.8 nozzle", + "Elegoo Neptune 4 1.0 nozzle", + "Elegoo Neptune 4 Max 0.4 nozzle", + "Elegoo Neptune 4 Max 0.6 nozzle", + "Elegoo Neptune 4 Max 0.8 nozzle", + "Elegoo Neptune 4 Max 1.0 nozzle", + "Elegoo Neptune 4 Plus 0.4 nozzle", + "Elegoo Neptune 4 Plus 0.6 nozzle", + "Elegoo Neptune 4 Plus 0.8 nozzle", + "Elegoo Neptune 4 Plus 1.0 nozzle", + "Elegoo Neptune 4 Pro 0.4 nozzle", + "Elegoo Neptune 4 Pro 0.6 nozzle", + "Elegoo Neptune 4 Pro 0.8 nozzle", + "Elegoo Neptune 4 Pro 1.0 nozzle", + "Elegoo Centauri 0.4 nozzle", + "Elegoo Centauri 0.6 nozzle", + "Elegoo Centauri 0.8 nozzle", + "Elegoo Centauri Carbon 0.4 nozzle", + "Elegoo Centauri Carbon 0.6 nozzle", + "Elegoo Centauri Carbon 0.8 nozzle", + "Elegoo Centauri Carbon 2 0.4 nozzle", + "Elegoo Centauri Carbon 2 0.6 nozzle", + "Elegoo Centauri Carbon 2 0.8 nozzle", + "Elegoo OrangeStorm Giga 0.4 nozzle", + "Elegoo OrangeStorm Giga 0.6 nozzle", + "Elegoo OrangeStorm Giga 0.8 nozzle", + "Elegoo OrangeStorm Giga 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/Generic/Generic PC-CF @Elegoo.json b/resources/profiles/Elegoo/filament/Generic/Generic PC-CF @Elegoo.json new file mode 100644 index 00000000000..5778e9a5731 --- /dev/null +++ b/resources/profiles/Elegoo/filament/Generic/Generic PC-CF @Elegoo.json @@ -0,0 +1,84 @@ +{ + "type": "filament", + "name": "Generic PC-CF @Elegoo", + "inherits": "Generic PC @base", + "from": "system", + "setting_id": "GPCCF00", + "instantiation": "true", + "filament_type": [ + "PC-CF" + ], + "eng_plate_temp": [ + "90" + ], + "eng_plate_temp_initial_layer": [ + "90" + ], + "fan_cooling_layer_time": [ + "35" + ], + "fan_min_speed": [ + "20" + ], + "hot_plate_temp": [ + "90" + ], + "hot_plate_temp_initial_layer": [ + "90" + ], + "nozzle_temperature": [ + "260" + ], + "nozzle_temperature_initial_layer": [ + "260" + ], + "nozzle_temperature_range_low": [ + "240" + ], + "overhang_fan_speed": [ + "100" + ], + "slow_down_layer_time": [ + "6" + ], + "textured_plate_temp": [ + "90" + ], + "textured_plate_temp_initial_layer": [ + "90" + ], + "compatible_printers": [ + "Elegoo Neptune 3 Pro 0.4 nozzle", + "Elegoo Neptune 3 Plus 0.4 nozzle", + "Elegoo Neptune 3 Max 0.4 nozzle", + "Elegoo Neptune 4 0.4 nozzle", + "Elegoo Neptune 4 0.6 nozzle", + "Elegoo Neptune 4 0.8 nozzle", + "Elegoo Neptune 4 1.0 nozzle", + "Elegoo Neptune 4 Max 0.4 nozzle", + "Elegoo Neptune 4 Max 0.6 nozzle", + "Elegoo Neptune 4 Max 0.8 nozzle", + "Elegoo Neptune 4 Max 1.0 nozzle", + "Elegoo Neptune 4 Plus 0.4 nozzle", + "Elegoo Neptune 4 Plus 0.6 nozzle", + "Elegoo Neptune 4 Plus 0.8 nozzle", + "Elegoo Neptune 4 Plus 1.0 nozzle", + "Elegoo Neptune 4 Pro 0.4 nozzle", + "Elegoo Neptune 4 Pro 0.6 nozzle", + "Elegoo Neptune 4 Pro 0.8 nozzle", + "Elegoo Neptune 4 Pro 1.0 nozzle", + "Elegoo Centauri 0.4 nozzle", + "Elegoo Centauri 0.6 nozzle", + "Elegoo Centauri 0.8 nozzle", + "Elegoo Centauri Carbon 0.4 nozzle", + "Elegoo Centauri Carbon 0.6 nozzle", + "Elegoo Centauri Carbon 0.8 nozzle", + "Elegoo Centauri Carbon 2 0.4 nozzle", + "Elegoo Centauri Carbon 2 0.6 nozzle", + "Elegoo Centauri Carbon 2 0.8 nozzle", + "Elegoo OrangeStorm Giga 0.4 nozzle", + "Elegoo OrangeStorm Giga 0.6 nozzle", + "Elegoo OrangeStorm Giga 0.8 nozzle", + "Elegoo OrangeStorm Giga 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/Generic/Generic PET @Elegoo Centauri.json b/resources/profiles/Elegoo/filament/Generic/Generic PET @Elegoo Centauri.json new file mode 100644 index 00000000000..b119f96e133 --- /dev/null +++ b/resources/profiles/Elegoo/filament/Generic/Generic PET @Elegoo Centauri.json @@ -0,0 +1,61 @@ +{ + "type": "filament", + "name": "Generic PET @Elegoo Centauri", + "inherits": "Generic PET @base", + "from": "system", + "setting_id": "GPET00", + "instantiation": "true", + "fan_cooling_layer_time": [ + "8" + ], + "fan_max_speed": [ + "60" + ], + "fan_min_speed": [ + "20" + ], + "filament_flow_ratio": [ + "1" + ], + "hot_plate_temp": [ + "90" + ], + "hot_plate_temp_initial_layer": [ + "90" + ], + "nozzle_temperature": [ + "270" + ], + "nozzle_temperature_initial_layer": [ + "270" + ], + "nozzle_temperature_range_high": [ + "280" + ], + "nozzle_temperature_range_low": [ + "250" + ], + "overhang_fan_threshold": [ + "25%" + ], + "slow_down_layer_time": [ + "4" + ], + "textured_plate_temp": [ + "90" + ], + "textured_plate_temp_initial_layer": [ + "90" + ], + "compatible_printers": [ + "Elegoo Centauri 0.4 nozzle", + "Elegoo Centauri 0.6 nozzle", + "Elegoo Centauri 0.8 nozzle", + "Elegoo Centauri Carbon 0.4 nozzle", + "Elegoo Centauri Carbon 0.6 nozzle", + "Elegoo Centauri Carbon 0.8 nozzle", + "Elegoo Centauri Carbon 2 0.4 nozzle", + "Elegoo Centauri Carbon 2 0.6 nozzle", + "Elegoo Centauri Carbon 2 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/Generic/Generic PET-CF @Elegoo Centauri.json b/resources/profiles/Elegoo/filament/Generic/Generic PET-CF @Elegoo Centauri.json new file mode 100644 index 00000000000..4f8870e2595 --- /dev/null +++ b/resources/profiles/Elegoo/filament/Generic/Generic PET-CF @Elegoo Centauri.json @@ -0,0 +1,88 @@ +{ + "type": "filament", + "name": "Generic PET-CF @Elegoo Centauri", + "inherits": "Generic PET @base", + "from": "system", + "setting_id": "GPETCF00", + "instantiation": "true", + "filament_type": [ + "PET-CF" + ], + "fan_cooling_layer_time": [ + "10" + ], + "fan_max_speed": [ + "60" + ], + "fan_min_speed": [ + "30" + ], + "filament_max_volumetric_speed": [ + "8" + ], + "hot_plate_temp": [ + "90" + ], + "hot_plate_temp_initial_layer": [ + "90" + ], + "nozzle_temperature": [ + "280" + ], + "nozzle_temperature_initial_layer": [ + "280" + ], + "nozzle_temperature_range_high": [ + "290" + ], + "overhang_fan_speed": [ + "100" + ], + "overhang_fan_threshold": [ + "25%" + ], + "slow_down_layer_time": [ + "4" + ], + "textured_plate_temp": [ + "90" + ], + "textured_plate_temp_initial_layer": [ + "90" + ], + "cool_plate_temp": [ + "0" + ], + "cool_plate_temp_initial_layer": [ + "0" + ], + "eng_plate_temp": [ + "70" + ], + "eng_plate_temp_initial_layer": [ + "70" + ], + "filament_density": [ + "1.25" + ], + "nozzle_temperature_range_low": [ + "240" + ], + "required_nozzle_HRC": [ + "40" + ], + "temperature_vitrification": [ + "70" + ], + "compatible_printers": [ + "Elegoo Centauri 0.4 nozzle", + "Elegoo Centauri 0.6 nozzle", + "Elegoo Centauri 0.8 nozzle", + "Elegoo Centauri Carbon 0.4 nozzle", + "Elegoo Centauri Carbon 0.6 nozzle", + "Elegoo Centauri Carbon 0.8 nozzle", + "Elegoo Centauri Carbon 2 0.4 nozzle", + "Elegoo Centauri Carbon 2 0.6 nozzle", + "Elegoo Centauri Carbon 2 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/Generic/Generic PETG @Elegoo.json b/resources/profiles/Elegoo/filament/Generic/Generic PETG @Elegoo.json index 43492fd3c52..5fdd3b1e661 100644 --- a/resources/profiles/Elegoo/filament/Generic/Generic PETG @Elegoo.json +++ b/resources/profiles/Elegoo/filament/Generic/Generic PETG @Elegoo.json @@ -1,29 +1,124 @@ { "type": "filament", - "name": "Generic PETG @Elegoo", - "inherits": "fdm_filament_pet", - "from": "system", "setting_id": "GFSG99", - "filament_id": "GFG99", + "name": "Generic PETG @Elegoo", + "from": "system", "instantiation": "true", - "reduce_fan_stop_start_freq": [ - "1" + "inherits": "Generic PETG @base", + "cool_plate_temp": [ + "60" + ], + "eng_plate_temp": [ + "0" + ], + "hot_plate_temp": [ + "80" + ], + "textured_plate_temp": [ + "80" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "0" + ], + "hot_plate_temp_initial_layer": [ + "80" + ], + "textured_plate_temp_initial_layer": [ + "80" + ], + "overhang_fan_threshold": [ + "25%" + ], + "overhang_fan_speed": [ + "90" ], "slow_down_for_layer_cooling": [ "1" ], + "close_fan_the_first_x_layers": [ + "3" + ], + "filament_end_gcode": [ + "; filament end gcode \n" + ], + "filament_flow_ratio": [ + "0.95" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], "fan_cooling_layer_time": [ "30" ], - "overhang_fan_speed": [ - "90" + "filament_density": [ + "1.27" ], - "overhang_fan_threshold": [ - "25%" + "filament_deretraction_speed": [ + "nil" + ], + "filament_diameter": [ + "1.75" + ], + "filament_max_volumetric_speed": [ + "10" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ], + "filament_retraction_minimum_travel": [ + "nil" + ], + "filament_retract_before_wipe": [ + "nil" + ], + "filament_retract_when_changing_layer": [ + "nil" + ], + "filament_retraction_length": [ + "nil" + ], + "filament_z_hop": [ + "nil" + ], + "filament_z_hop_types": [ + "nil" + ], + "filament_retract_restart_extra": [ + "nil" + ], + "filament_retraction_speed": [ + "nil" + ], + "filament_settings_id": [ + "" + ], + "filament_soluble": [ + "0" + ], + "filament_type": [ + "PETG" + ], + "filament_vendor": [ + "Generic" + ], + "filament_wipe": [ + "nil" + ], + "filament_wipe_distance": [ + "nil" + ], + "bed_type": [ + "Cool Plate" ], "nozzle_temperature_initial_layer": [ "240" ], + "full_fan_speed_layer": [ + "0" + ], "fan_max_speed": [ "50" ], @@ -36,40 +131,71 @@ "slow_down_layer_time": [ "8" ], - "filament_flow_ratio": [ - "0.95" - ], - "filament_max_volumetric_speed": [ - "10" - ], "filament_start_gcode": [ "; filament start gcode\n" ], + "nozzle_temperature": [ + "240" + ], + "temperature_vitrification": [ + "70" + ], + "nozzle_temperature_range_high": [ + "260" + ], + "nozzle_temperature_range_low": [ + "220" + ], "compatible_printers": [ "Elegoo Neptune 0.4 nozzle", - "Elegoo Neptune X 0.4 nozzle", + "Elegoo Neptune 0.6 nozzle", + "Elegoo Neptune 0.8 nozzle", "Elegoo Neptune 2 0.4 nozzle", + "Elegoo Neptune 2 0.6 nozzle", + "Elegoo Neptune 2 0.8 nozzle", "Elegoo Neptune 2S 0.4 nozzle", + "Elegoo Neptune 2S 0.6 nozzle", + "Elegoo Neptune 2S 0.8 nozzle", "Elegoo Neptune 2D 0.4 nozzle", + "Elegoo Neptune 2D 0.6 nozzle", + "Elegoo Neptune 2D 0.8 nozzle", + "Elegoo Neptune X 0.4 nozzle", + "Elegoo Neptune X 0.6 nozzle", + "Elegoo Neptune X 0.8 nozzle", "Elegoo Neptune 3 0.4 nozzle", + "Elegoo Neptune 3 0.6 nozzle", + "Elegoo Neptune 3 0.8 nozzle", "Elegoo Neptune 3 Pro 0.4 nozzle", + "Elegoo Neptune 3 Pro 0.6 nozzle", + "Elegoo Neptune 3 Pro 0.8 nozzle", + "Elegoo Neptune 3 Pro 1.0 nozzle", "Elegoo Neptune 3 Plus 0.4 nozzle", + "Elegoo Neptune 3 Plus 0.6 nozzle", + "Elegoo Neptune 3 Plus 0.8 nozzle", + "Elegoo Neptune 3 Plus 1.0 nozzle", "Elegoo Neptune 3 Max 0.4 nozzle", - "Elegoo Neptune 4 (0.2 nozzle)", - "Elegoo Neptune 4 (0.4 nozzle)", - "Elegoo Neptune 4 (0.6 nozzle)", - "Elegoo Neptune 4 (0.8 nozzle)", - "Elegoo Neptune 4 Max (0.2 nozzle)", - "Elegoo Neptune 4 Max (0.4 nozzle)", - "Elegoo Neptune 4 Max (0.6 nozzle)", - "Elegoo Neptune 4 Max (0.8 nozzle)", - "Elegoo Neptune 4 Plus (0.2 nozzle)", - "Elegoo Neptune 4 Plus (0.4 nozzle)", - "Elegoo Neptune 4 Plus (0.6 nozzle)", - "Elegoo Neptune 4 Plus (0.8 nozzle)", - "Elegoo Neptune 4 Pro (0.2 nozzle)", - "Elegoo Neptune 4 Pro (0.4 nozzle)", - "Elegoo Neptune 4 Pro (0.6 nozzle)", - "Elegoo Neptune 4 Pro (0.8 nozzle)" + "Elegoo Neptune 3 Max 0.6 nozzle", + "Elegoo Neptune 3 Max 0.8 nozzle", + "Elegoo Neptune 3 Max 1.0 nozzle", + "Elegoo Neptune 4 0.2 nozzle", + "Elegoo Neptune 4 0.4 nozzle", + "Elegoo Neptune 4 0.6 nozzle", + "Elegoo Neptune 4 0.8 nozzle", + "Elegoo Neptune 4 1.0 nozzle", + "Elegoo Neptune 4 Max 0.2 nozzle", + "Elegoo Neptune 4 Pro 0.4 nozzle", + "Elegoo Neptune 4 Pro 0.6 nozzle", + "Elegoo Neptune 4 Pro 0.8 nozzle", + "Elegoo Neptune 4 Pro 1.0 nozzle", + "Elegoo Neptune 4 Plus 0.2 nozzle", + "Elegoo Neptune 4 Plus 0.4 nozzle", + "Elegoo Neptune 4 Plus 0.6 nozzle", + "Elegoo Neptune 4 Plus 0.8 nozzle", + "Elegoo Neptune 4 Plus 1.0 nozzle", + "Elegoo Neptune 4 Pro 0.2 nozzle", + "Elegoo Neptune 4 Max 0.4 nozzle", + "Elegoo Neptune 4 Max 0.6 nozzle", + "Elegoo Neptune 4 Max 0.8 nozzle", + "Elegoo Neptune 4 Max 1.0 nozzle" ] } diff --git a/resources/profiles/Elegoo/filament/Generic/Generic PETG PRO @Elegoo.json b/resources/profiles/Elegoo/filament/Generic/Generic PETG PRO @Elegoo.json index 83b42f1ee51..0943c9a4cb8 100644 --- a/resources/profiles/Elegoo/filament/Generic/Generic PETG PRO @Elegoo.json +++ b/resources/profiles/Elegoo/filament/Generic/Generic PETG PRO @Elegoo.json @@ -1,48 +1,140 @@ { "type": "filament", - "name": "Generic PETG PRO @Elegoo", - "inherits": "fdm_filament_pet", - "from": "system", "setting_id": "GFSG99", - "filament_id": "GFG99", + "name": "Generic PETG PRO @Elegoo", + "from": "system", "instantiation": "true", + "inherits": "Generic PETG @base", "cool_plate_temp": [ "0" ], - "cool_plate_temp_initial_layer": [ - "0" - ], "eng_plate_temp": [ "70" ], + "hot_plate_temp": [ + "70" + ], + "textured_plate_temp": [ + "70" + ], + "cool_plate_temp_initial_layer": [ + "0" + ], "eng_plate_temp_initial_layer": [ "70" ], + "hot_plate_temp_initial_layer": [ + "70" + ], + "textured_plate_temp_initial_layer": [ + "70" + ], + "overhang_fan_threshold": [ + "10%" + ], + "overhang_fan_speed": [ + "90" + ], + "slow_down_for_layer_cooling": [ + "1" + ], + "close_fan_the_first_x_layers": [ + "3" + ], + "filament_end_gcode": [ + "; filament end gcode \n" + ], + "filament_flow_ratio": [ + "1" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], "fan_cooling_layer_time": [ "30" ], + "filament_density": [ + "1.25" + ], + "filament_deretraction_speed": [ + "nil" + ], + "filament_diameter": [ + "1.75" + ], + "filament_max_volumetric_speed": [ + "8" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ], + "filament_retraction_minimum_travel": [ + "nil" + ], + "filament_retract_before_wipe": [ + "nil" + ], + "filament_retract_when_changing_layer": [ + "nil" + ], + "filament_retraction_length": [ + "nil" + ], + "filament_z_hop": [ + "nil" + ], + "filament_z_hop_types": [ + "nil" + ], + "filament_retract_restart_extra": [ + "nil" + ], + "filament_retraction_speed": [ + "nil" + ], + "filament_settings_id": [ + "" + ], + "filament_soluble": [ + "0" + ], + "filament_type": [ + "PETG" + ], + "filament_wipe": [ + "nil" + ], + "filament_wipe_distance": [ + "nil" + ], + "bed_type": [ + "Cool Plate" + ], + "nozzle_temperature_initial_layer": [ + "240" + ], + "full_fan_speed_layer": [ + "0" + ], "fan_max_speed": [ "40" ], "fan_min_speed": [ "10" ], - "filament_cost": [ - "0" + "slow_down_min_speed": [ + "10" ], - "filament_density": [ - "1.25" + "slow_down_layer_time": [ + "12" ], - "filament_max_volumetric_speed": [ - "8" + "filament_start_gcode": [ + "; Filament start gcode\n" ], - "filament_vendor": [ - "Elegoo" + "nozzle_temperature": [ + "240" ], - "hot_plate_temp": [ - "70" - ], - "hot_plate_temp_initial_layer": [ + "temperature_vitrification": [ "70" ], "nozzle_temperature_range_high": [ @@ -51,58 +143,56 @@ "nozzle_temperature_range_low": [ "230" ], - "nozzle_temperature": [ - "240" - ], - "nozzle_temperature_initial_layer": [ - "240" - ], - "overhang_fan_speed": [ - "90" - ], - "overhang_fan_threshold": [ - "10%" - ], - "slow_down_layer_time": [ - "12" - ], - "textured_plate_temp": [ - "70" - ], - "textured_plate_temp_initial_layer": [ - "70" - ], - "filament_start_gcode": [ - "; Filament start gcode\n" - ], - "filament_end_gcode": [ - "; filament end gcode \n" - ], "compatible_printers": [ "Elegoo Neptune 0.4 nozzle", - "Elegoo Neptune X 0.4 nozzle", + "Elegoo Neptune 0.6 nozzle", + "Elegoo Neptune 0.8 nozzle", "Elegoo Neptune 2 0.4 nozzle", + "Elegoo Neptune 2 0.6 nozzle", + "Elegoo Neptune 2 0.8 nozzle", "Elegoo Neptune 2S 0.4 nozzle", + "Elegoo Neptune 2S 0.6 nozzle", + "Elegoo Neptune 2S 0.8 nozzle", "Elegoo Neptune 2D 0.4 nozzle", + "Elegoo Neptune 2D 0.6 nozzle", + "Elegoo Neptune 2D 0.8 nozzle", + "Elegoo Neptune X 0.4 nozzle", + "Elegoo Neptune X 0.6 nozzle", + "Elegoo Neptune X 0.8 nozzle", "Elegoo Neptune 3 0.4 nozzle", + "Elegoo Neptune 3 0.6 nozzle", + "Elegoo Neptune 3 0.8 nozzle", "Elegoo Neptune 3 Pro 0.4 nozzle", + "Elegoo Neptune 3 Pro 0.6 nozzle", + "Elegoo Neptune 3 Pro 0.8 nozzle", + "Elegoo Neptune 3 Pro 1.0 nozzle", "Elegoo Neptune 3 Plus 0.4 nozzle", + "Elegoo Neptune 3 Plus 0.6 nozzle", + "Elegoo Neptune 3 Plus 0.8 nozzle", + "Elegoo Neptune 3 Plus 1.0 nozzle", "Elegoo Neptune 3 Max 0.4 nozzle", - "Elegoo Neptune 4 (0.2 nozzle)", - "Elegoo Neptune 4 (0.4 nozzle)", - "Elegoo Neptune 4 (0.6 nozzle)", - "Elegoo Neptune 4 (0.8 nozzle)", - "Elegoo Neptune 4 Max (0.2 nozzle)", - "Elegoo Neptune 4 Max (0.4 nozzle)", - "Elegoo Neptune 4 Max (0.6 nozzle)", - "Elegoo Neptune 4 Max (0.8 nozzle)", - "Elegoo Neptune 4 Plus (0.2 nozzle)", - "Elegoo Neptune 4 Plus (0.4 nozzle)", - "Elegoo Neptune 4 Plus (0.6 nozzle)", - "Elegoo Neptune 4 Plus (0.8 nozzle)", - "Elegoo Neptune 4 Pro (0.2 nozzle)", - "Elegoo Neptune 4 Pro (0.4 nozzle)", - "Elegoo Neptune 4 Pro (0.6 nozzle)", - "Elegoo Neptune 4 Pro (0.8 nozzle)" + "Elegoo Neptune 3 Max 0.6 nozzle", + "Elegoo Neptune 3 Max 0.8 nozzle", + "Elegoo Neptune 3 Max 1.0 nozzle", + "Elegoo Neptune 4 0.2 nozzle", + "Elegoo Neptune 4 0.4 nozzle", + "Elegoo Neptune 4 0.6 nozzle", + "Elegoo Neptune 4 0.8 nozzle", + "Elegoo Neptune 4 1.0 nozzle", + "Elegoo Neptune 4 Max 0.2 nozzle", + "Elegoo Neptune 4 Pro 0.4 nozzle", + "Elegoo Neptune 4 Pro 0.6 nozzle", + "Elegoo Neptune 4 Pro 0.8 nozzle", + "Elegoo Neptune 4 Pro 1.0 nozzle", + "Elegoo Neptune 4 Plus 0.2 nozzle", + "Elegoo Neptune 4 Plus 0.4 nozzle", + "Elegoo Neptune 4 Plus 0.6 nozzle", + "Elegoo Neptune 4 Plus 0.8 nozzle", + "Elegoo Neptune 4 Plus 1.0 nozzle", + "Elegoo Neptune 4 Pro 0.2 nozzle", + "Elegoo Neptune 4 Max 0.4 nozzle", + "Elegoo Neptune 4 Max 0.6 nozzle", + "Elegoo Neptune 4 Max 0.8 nozzle", + "Elegoo Neptune 4 Max 1.0 nozzle" ] } diff --git a/resources/profiles/Elegoo/filament/Generic/Generic PETG-CF @Elegoo Centauri.json b/resources/profiles/Elegoo/filament/Generic/Generic PETG-CF @Elegoo Centauri.json new file mode 100644 index 00000000000..6bd37edb40b --- /dev/null +++ b/resources/profiles/Elegoo/filament/Generic/Generic PETG-CF @Elegoo Centauri.json @@ -0,0 +1,88 @@ +{ + "type": "filament", + "name": "Generic PETG-CF @Elegoo Centauri", + "inherits": "Generic PETG @base", + "from": "system", + "setting_id": "GPETGCF00", + "instantiation": "true", + "filament_type": [ + "PETG-CF" + ], + "fan_cooling_layer_time": [ + "30" + ], + "fan_max_speed": [ + "60" + ], + "fan_min_speed": [ + "20" + ], + "nozzle_temperature": [ + "240" + ], + "nozzle_temperature_initial_layer": [ + "240" + ], + "nozzle_temperature_range_high": [ + "260" + ], + "nozzle_temperature_range_low": [ + "230" + ], + "overhang_fan_speed": [ + "100" + ], + "cool_plate_temp": [ + "0" + ], + "cool_plate_temp_initial_layer": [ + "0" + ], + "eng_plate_temp": [ + "70" + ], + "eng_plate_temp_initial_layer": [ + "70" + ], + "filament_density": [ + "1.25" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "hot_plate_temp": [ + "70" + ], + "hot_plate_temp_initial_layer": [ + "70" + ], + "overhang_fan_threshold": [ + "10%" + ], + "required_nozzle_HRC": [ + "40" + ], + "slow_down_layer_time": [ + "6" + ], + "temperature_vitrification": [ + "70" + ], + "textured_plate_temp": [ + "70" + ], + "textured_plate_temp_initial_layer": [ + "70" + ], + "compatible_printers": [ + "Elegoo Centauri 0.4 nozzle", + "Elegoo Centauri 0.6 nozzle", + "Elegoo Centauri 0.8 nozzle", + "Elegoo Centauri Carbon 0.4 nozzle", + "Elegoo Centauri Carbon 0.6 nozzle", + "Elegoo Centauri Carbon 0.8 nozzle", + "Elegoo Centauri Carbon 2 0.4 nozzle", + "Elegoo Centauri Carbon 2 0.6 nozzle", + "Elegoo Centauri Carbon 2 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/Generic/Generic PLA @Elegoo Centauri.json b/resources/profiles/Elegoo/filament/Generic/Generic PLA @Elegoo Centauri.json new file mode 100644 index 00000000000..6fd7df7a4c2 --- /dev/null +++ b/resources/profiles/Elegoo/filament/Generic/Generic PLA @Elegoo Centauri.json @@ -0,0 +1,37 @@ +{ + "type": "filament", + "name": "Generic PLA @Elegoo Centauri", + "inherits": "Generic PLA @base", + "from": "system", + "setting_id": "GPLA00", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "21" + ], + "nozzle_temperature_initial_layer": [ + "210" + ], + "nozzle_temperature": [ + "210" + ], + "pressure_advance": [ + "0.024" + ], + "slow_down_layer_time": [ + "4" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [ + "Elegoo Centauri 0.4 nozzle", + "Elegoo Centauri 0.6 nozzle", + "Elegoo Centauri 0.8 nozzle", + "Elegoo Centauri Carbon 0.4 nozzle", + "Elegoo Centauri Carbon 0.6 nozzle", + "Elegoo Centauri Carbon 0.8 nozzle", + "Elegoo Centauri Carbon 2 0.4 nozzle", + "Elegoo Centauri Carbon 2 0.6 nozzle", + "Elegoo Centauri Carbon 2 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/filament/Generic/Generic PLA @Elegoo.json b/resources/profiles/Elegoo/filament/Generic/Generic PLA @Elegoo.json index 44dd635a59a..ca3e23847af 100644 --- a/resources/profiles/Elegoo/filament/Generic/Generic PLA @Elegoo.json +++ b/resources/profiles/Elegoo/filament/Generic/Generic PLA @Elegoo.json @@ -1,48 +1,207 @@ { "type": "filament", - "name": "Generic PLA @Elegoo", - "inherits": "fdm_filament_pla", - "from": "system", "setting_id": "GFSL99", - "filament_id": "GFL99", + "name": "Generic PLA @Elegoo", + "from": "system", "instantiation": "true", + "inherits": "Generic PLA @base", + "cool_plate_temp": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "hot_plate_temp": [ + "60" + ], + "textured_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_threshold": [ + "50%" + ], + "overhang_fan_speed": [ + "100" + ], + "slow_down_for_layer_cooling": [ + "1" + ], + "close_fan_the_first_x_layers": [ + "1" + ], + "filament_end_gcode": [ + "; filament end gcode \n" + ], "filament_flow_ratio": [ "0.98" ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "fan_cooling_layer_time": [ + "100" + ], + "filament_cost": [ + "20" + ], + "filament_density": [ + "1.24" + ], + "filament_deretraction_speed": [ + "nil" + ], + "filament_diameter": [ + "1.75" + ], "filament_max_volumetric_speed": [ "15" ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ], + "filament_retraction_minimum_travel": [ + "nil" + ], + "filament_retract_before_wipe": [ + "nil" + ], + "filament_retract_when_changing_layer": [ + "nil" + ], + "filament_retraction_length": [ + "nil" + ], + "filament_z_hop": [ + "nil" + ], + "filament_z_hop_types": [ + "nil" + ], + "filament_retract_restart_extra": [ + "nil" + ], + "filament_retraction_speed": [ + "nil" + ], + "filament_settings_id": [ + "" + ], + "filament_soluble": [ + "0" + ], + "filament_type": [ + "PLA" + ], + "filament_vendor": [ + "Generic" + ], + "filament_wipe": [ + "nil" + ], + "filament_wipe_distance": [ + "nil" + ], + "bed_type": [ + "Cool Plate" + ], "nozzle_temperature_initial_layer": [ "210" ], + "full_fan_speed_layer": [ + "0" + ], + "fan_max_speed": [ + "100" + ], + "fan_min_speed": [ + "100" + ], + "slow_down_min_speed": [ + "10" + ], "slow_down_layer_time": [ "8" ], + "filament_start_gcode": [ + "; filament start gcode\n" + ], + "nozzle_temperature": [ + "205" + ], + "temperature_vitrification": [ + "60" + ], + "nozzle_temperature_range_low": [ + "205" + ], + "nozzle_temperature_range_high": [ + "210" + ], + "additional_cooling_fan_speed": [ + "70" + ], "compatible_printers": [ "Elegoo Neptune 0.4 nozzle", - "Elegoo Neptune X 0.4 nozzle", + "Elegoo Neptune 0.6 nozzle", + "Elegoo Neptune 0.8 nozzle", "Elegoo Neptune 2 0.4 nozzle", + "Elegoo Neptune 2 0.6 nozzle", + "Elegoo Neptune 2 0.8 nozzle", "Elegoo Neptune 2S 0.4 nozzle", + "Elegoo Neptune 2S 0.6 nozzle", + "Elegoo Neptune 2S 0.8 nozzle", "Elegoo Neptune 2D 0.4 nozzle", + "Elegoo Neptune 2D 0.6 nozzle", + "Elegoo Neptune 2D 0.8 nozzle", + "Elegoo Neptune X 0.4 nozzle", + "Elegoo Neptune X 0.6 nozzle", + "Elegoo Neptune X 0.8 nozzle", "Elegoo Neptune 3 0.4 nozzle", + "Elegoo Neptune 3 0.6 nozzle", + "Elegoo Neptune 3 0.8 nozzle", "Elegoo Neptune 3 Pro 0.4 nozzle", + "Elegoo Neptune 3 Pro 0.6 nozzle", + "Elegoo Neptune 3 Pro 0.8 nozzle", + "Elegoo Neptune 3 Pro 1.0 nozzle", "Elegoo Neptune 3 Plus 0.4 nozzle", + "Elegoo Neptune 3 Plus 0.6 nozzle", + "Elegoo Neptune 3 Plus 0.8 nozzle", + "Elegoo Neptune 3 Plus 1.0 nozzle", "Elegoo Neptune 3 Max 0.4 nozzle", - "Elegoo Neptune 4 (0.2 nozzle)", - "Elegoo Neptune 4 (0.4 nozzle)", - "Elegoo Neptune 4 (0.6 nozzle)", - "Elegoo Neptune 4 (0.8 nozzle)", - "Elegoo Neptune 4 Max (0.2 nozzle)", - "Elegoo Neptune 4 Max (0.4 nozzle)", - "Elegoo Neptune 4 Max (0.6 nozzle)", - "Elegoo Neptune 4 Max (0.8 nozzle)", - "Elegoo Neptune 4 Plus (0.2 nozzle)", - "Elegoo Neptune 4 Plus (0.4 nozzle)", - "Elegoo Neptune 4 Plus (0.6 nozzle)", - "Elegoo Neptune 4 Plus (0.8 nozzle)", - "Elegoo Neptune 4 Pro (0.2 nozzle)", - "Elegoo Neptune 4 Pro (0.4 nozzle)", - "Elegoo Neptune 4 Pro (0.6 nozzle)", - "Elegoo Neptune 4 Pro (0.8 nozzle)" + "Elegoo Neptune 3 Max 0.6 nozzle", + "Elegoo Neptune 3 Max 0.8 nozzle", + "Elegoo Neptune 3 Max 1.0 nozzle", + "Elegoo Neptune 4 0.2 nozzle", + "Elegoo Neptune 4 0.4 nozzle", + "Elegoo Neptune 4 0.6 nozzle", + "Elegoo Neptune 4 0.8 nozzle", + "Elegoo Neptune 4 1.0 nozzle", + "Elegoo Neptune 4 Max 0.2 nozzle", + "Elegoo Neptune 4 Pro 0.4 nozzle", + "Elegoo Neptune 4 Pro 0.6 nozzle", + "Elegoo Neptune 4 Pro 0.8 nozzle", + "Elegoo Neptune 4 Pro 1.0 nozzle", + "Elegoo Neptune 4 Plus 0.2 nozzle", + "Elegoo Neptune 4 Plus 0.4 nozzle", + "Elegoo Neptune 4 Plus 0.6 nozzle", + "Elegoo Neptune 4 Plus 0.8 nozzle", + "Elegoo Neptune 4 Plus 1.0 nozzle", + "Elegoo Neptune 4 Pro 0.2 nozzle", + "Elegoo Neptune 4 Max 0.4 nozzle", + "Elegoo Neptune 4 Max 0.6 nozzle", + "Elegoo Neptune 4 Max 0.8 nozzle", + "Elegoo Neptune 4 Max 1.0 nozzle" ] } diff --git a/resources/profiles/Elegoo/filament/Generic/Generic PLA Matte @Elegoo.json b/resources/profiles/Elegoo/filament/Generic/Generic PLA Matte @Elegoo.json index 268e21b90bd..6292e28bc51 100644 --- a/resources/profiles/Elegoo/filament/Generic/Generic PLA Matte @Elegoo.json +++ b/resources/profiles/Elegoo/filament/Generic/Generic PLA Matte @Elegoo.json @@ -1,48 +1,201 @@ { "type": "filament", - "name": "Generic PLA Matte @Elegoo", - "inherits": "fdm_filament_pla", - "from": "system", "setting_id": "GFSL99", - "filament_id": "GFL99", + "name": "Generic PLA Matte @Elegoo", + "from": "system", "instantiation": "true", - "filament_cost": [ - "0" + "inherits": "Generic PLA @base", + "cool_plate_temp": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "hot_plate_temp": [ + "60" + ], + "textured_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "overhang_fan_threshold": [ + "50%" + ], + "overhang_fan_speed": [ + "100" + ], + "slow_down_for_layer_cooling": [ + "1" + ], + "close_fan_the_first_x_layers": [ + "1" + ], + "filament_end_gcode": [ + "; filament end gcode \n" + ], + "filament_flow_ratio": [ + "1" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "fan_cooling_layer_time": [ + "100" ], "filament_density": [ "1.25" ], - "filament_vendor": [ - "Elegoo" + "filament_deretraction_speed": [ + "nil" + ], + "filament_diameter": [ + "1.75" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ], + "filament_retraction_minimum_travel": [ + "nil" + ], + "filament_retract_before_wipe": [ + "nil" + ], + "filament_retract_when_changing_layer": [ + "nil" + ], + "filament_retraction_length": [ + "nil" + ], + "filament_z_hop": [ + "nil" + ], + "filament_z_hop_types": [ + "nil" + ], + "filament_retract_restart_extra": [ + "nil" + ], + "filament_retraction_speed": [ + "nil" + ], + "filament_settings_id": [ + "" + ], + "filament_soluble": [ + "0" + ], + "filament_type": [ + "PLA" + ], + "filament_wipe": [ + "nil" + ], + "filament_wipe_distance": [ + "nil" + ], + "bed_type": [ + "Cool Plate" + ], + "nozzle_temperature_initial_layer": [ + "215" + ], + "full_fan_speed_layer": [ + "0" + ], + "fan_max_speed": [ + "100" + ], + "fan_min_speed": [ + "100" + ], + "slow_down_min_speed": [ + "10" + ], + "slow_down_layer_time": [ + "4" ], "filament_start_gcode": [ "; filament start gcode\n" ], + "nozzle_temperature": [ + "215" + ], + "temperature_vitrification": [ + "60" + ], + "nozzle_temperature_range_low": [ + "205" + ], + "nozzle_temperature_range_high": [ + "215" + ], + "additional_cooling_fan_speed": [ + "70" + ], "compatible_printers": [ "Elegoo Neptune 0.4 nozzle", - "Elegoo Neptune X 0.4 nozzle", + "Elegoo Neptune 0.6 nozzle", + "Elegoo Neptune 0.8 nozzle", "Elegoo Neptune 2 0.4 nozzle", + "Elegoo Neptune 2 0.6 nozzle", + "Elegoo Neptune 2 0.8 nozzle", "Elegoo Neptune 2S 0.4 nozzle", + "Elegoo Neptune 2S 0.6 nozzle", + "Elegoo Neptune 2S 0.8 nozzle", "Elegoo Neptune 2D 0.4 nozzle", + "Elegoo Neptune 2D 0.6 nozzle", + "Elegoo Neptune 2D 0.8 nozzle", + "Elegoo Neptune X 0.4 nozzle", + "Elegoo Neptune X 0.6 nozzle", + "Elegoo Neptune X 0.8 nozzle", "Elegoo Neptune 3 0.4 nozzle", + "Elegoo Neptune 3 0.6 nozzle", + "Elegoo Neptune 3 0.8 nozzle", "Elegoo Neptune 3 Pro 0.4 nozzle", + "Elegoo Neptune 3 Pro 0.6 nozzle", + "Elegoo Neptune 3 Pro 0.8 nozzle", + "Elegoo Neptune 3 Pro 1.0 nozzle", "Elegoo Neptune 3 Plus 0.4 nozzle", + "Elegoo Neptune 3 Plus 0.6 nozzle", + "Elegoo Neptune 3 Plus 0.8 nozzle", + "Elegoo Neptune 3 Plus 1.0 nozzle", "Elegoo Neptune 3 Max 0.4 nozzle", - "Elegoo Neptune 4 (0.2 nozzle)", - "Elegoo Neptune 4 (0.4 nozzle)", - "Elegoo Neptune 4 (0.6 nozzle)", - "Elegoo Neptune 4 (0.8 nozzle)", - "Elegoo Neptune 4 Max (0.2 nozzle)", - "Elegoo Neptune 4 Max (0.4 nozzle)", - "Elegoo Neptune 4 Max (0.6 nozzle)", - "Elegoo Neptune 4 Max (0.8 nozzle)", - "Elegoo Neptune 4 Plus (0.2 nozzle)", - "Elegoo Neptune 4 Plus (0.4 nozzle)", - "Elegoo Neptune 4 Plus (0.6 nozzle)", - "Elegoo Neptune 4 Plus (0.8 nozzle)", - "Elegoo Neptune 4 Pro (0.2 nozzle)", - "Elegoo Neptune 4 Pro (0.4 nozzle)", - "Elegoo Neptune 4 Pro (0.6 nozzle)", - "Elegoo Neptune 4 Pro (0.8 nozzle)" + "Elegoo Neptune 3 Max 0.6 nozzle", + "Elegoo Neptune 3 Max 0.8 nozzle", + "Elegoo Neptune 3 Max 1.0 nozzle", + "Elegoo Neptune 4 0.2 nozzle", + "Elegoo Neptune 4 0.4 nozzle", + "Elegoo Neptune 4 0.6 nozzle", + "Elegoo Neptune 4 0.8 nozzle", + "Elegoo Neptune 4 1.0 nozzle", + "Elegoo Neptune 4 Max 0.2 nozzle", + "Elegoo Neptune 4 Pro 0.4 nozzle", + "Elegoo Neptune 4 Pro 0.6 nozzle", + "Elegoo Neptune 4 Pro 0.8 nozzle", + "Elegoo Neptune 4 Pro 1.0 nozzle", + "Elegoo Neptune 4 Plus 0.2 nozzle", + "Elegoo Neptune 4 Plus 0.4 nozzle", + "Elegoo Neptune 4 Plus 0.6 nozzle", + "Elegoo Neptune 4 Plus 0.8 nozzle", + "Elegoo Neptune 4 Plus 1.0 nozzle", + "Elegoo Neptune 4 Pro 0.2 nozzle", + "Elegoo Neptune 4 Max 0.4 nozzle", + "Elegoo Neptune 4 Max 0.6 nozzle", + "Elegoo Neptune 4 Max 0.8 nozzle", + "Elegoo Neptune 4 Max 1.0 nozzle" ] } diff --git a/resources/profiles/Elegoo/filament/fdm_filament_abs.json b/resources/profiles/Elegoo/filament/fdm_filament_abs.json index cd5484920a9..facb0e9ab25 100644 --- a/resources/profiles/Elegoo/filament/fdm_filament_abs.json +++ b/resources/profiles/Elegoo/filament/fdm_filament_abs.json @@ -4,85 +4,82 @@ "inherits": "fdm_filament_common", "from": "system", "instantiation": "false", + "activate_air_filtration": [ + "0" + ], "cool_plate_temp": [ - "100" - ], - "eng_plate_temp": [ - "100" - ], - "hot_plate_temp": [ - "100" - ], - "textured_plate_temp": [ - "100" + "0" ], "cool_plate_temp_initial_layer": [ - "100" + "0" + ], + "eng_plate_temp": [ + "90" ], "eng_plate_temp_initial_layer": [ - "100" - ], - "hot_plate_temp_initial_layer": [ - "100" - ], - "textured_plate_temp_initial_layer": [ - "100" - ], - "slow_down_for_layer_cooling": [ - "1" - ], - "close_fan_the_first_x_layers": [ - "3" + "90" ], "fan_cooling_layer_time": [ "30" ], - "filament_max_volumetric_speed": [ - "11" + "fan_max_speed": [ + "80" ], - "filament_type": [ - "ABS" - ], - "filament_density": [ - "1.04" + "fan_min_speed": [ + "10" ], "filament_cost": [ "20" ], - "nozzle_temperature_initial_layer": [ - "180" + "filament_density": [ + "1.04" ], - "reduce_fan_stop_start_freq": [ - "1" + "filament_max_volumetric_speed": [ + "16" ], - "fan_max_speed": [ - "0" + "filament_type": [ + "ABS" ], - "fan_min_speed": [ - "0" + "hot_plate_temp": [ + "90" ], - "overhang_fan_threshold": [ - "25%" - ], - "overhang_fan_speed": [ - "30" + "hot_plate_temp_initial_layer": [ + "90" ], "nozzle_temperature": [ - "245" + "270" ], - "temperature_vitrification": [ - "110" + "nozzle_temperature_initial_layer": [ + "260" + ], + "nozzle_temperature_range_high": [ + "280" ], "nozzle_temperature_range_low": [ "240" ], - "nozzle_temperature_range_high": [ - "245" + "overhang_fan_speed": [ + "80" ], - "slow_down_min_speed": [ - "10" + "overhang_fan_threshold": [ + "25%" + ], + "reduce_fan_stop_start_freq": [ + "1" ], "slow_down_layer_time": [ "3" + ], + "slow_down_min_speed": [ + "20" + ], + "textured_plate_temp": [ + "90" + ], + "textured_plate_temp_initial_layer": [ + "90" + ], + "filament_vendor": [ + "Generic" ] } diff --git a/resources/profiles/Elegoo/filament/fdm_filament_asa.json b/resources/profiles/Elegoo/filament/fdm_filament_asa.json index 1863a18d849..593d20682f0 100644 --- a/resources/profiles/Elegoo/filament/fdm_filament_asa.json +++ b/resources/profiles/Elegoo/filament/fdm_filament_asa.json @@ -5,7 +5,7 @@ "from": "system", "instantiation": "false", "activate_air_filtration": [ - "1" + "0" ], "cool_plate_temp": [ "0" @@ -29,7 +29,7 @@ "10" ], "filament_cost": [ - "0" + "20" ], "filament_density": [ "1.04" @@ -78,5 +78,8 @@ ], "textured_plate_temp_initial_layer": [ "90" + ], + "filament_vendor": [ + "Generic" ] } diff --git a/resources/profiles/Elegoo/filament/fdm_filament_common.json b/resources/profiles/Elegoo/filament/fdm_filament_common.json index 9294e67f0f8..2e9cde04068 100644 --- a/resources/profiles/Elegoo/filament/fdm_filament_common.json +++ b/resources/profiles/Elegoo/filament/fdm_filament_common.json @@ -3,54 +3,42 @@ "name": "fdm_filament_common", "from": "system", "instantiation": "false", + "activate_air_filtration": [ + "0" + ], + "chamber_temperatures": [ + "0" + ], + "close_fan_the_first_x_layers": [ + "3" + ], + "complete_print_exhaust_fan_speed": [ + "70" + ], "cool_plate_temp": [ "60" ], - "eng_plate_temp": [ - "60" - ], - "hot_plate_temp": [ - "60" - ], - "textured_plate_temp": [ - "60" - ], "cool_plate_temp_initial_layer": [ "60" ], + "during_print_exhaust_fan_speed": [ + "70" + ], + "eng_plate_temp": [ + "60" + ], "eng_plate_temp_initial_layer": [ "60" ], - "hot_plate_temp_initial_layer": [ - "60" - ], - "textured_plate_temp_initial_layer": [ - "60" - ], - "overhang_fan_threshold": [ - "95%" - ], - "overhang_fan_speed": [ - "100" - ], - "slow_down_for_layer_cooling": [ - "1" - ], - "close_fan_the_first_x_layers": [ - "3" - ], - "filament_end_gcode": [ - "; filament end gcode \n" - ], - "filament_flow_ratio": [ - "1" - ], - "reduce_fan_stop_start_freq": [ - "0" - ], "fan_cooling_layer_time": [ "60" ], + "fan_max_speed": [ + "100" + ], + "fan_min_speed": [ + "35" + ], "filament_cost": [ "0" ], @@ -63,16 +51,22 @@ "filament_diameter": [ "1.75" ], + "filament_flow_ratio": [ + "0.98" + ], + "filament_is_support": [ + "0" + ], "filament_max_volumetric_speed": [ "12" ], "filament_minimal_purge_on_wipe_tower": [ "15" ], - "filament_retraction_minimum_travel": [ + "filament_retract_before_wipe": [ "nil" ], - "filament_retract_before_wipe": [ + "filament_retract_restart_extra": [ "nil" ], "filament_retract_when_changing_layer": [ @@ -81,13 +75,7 @@ "filament_retraction_length": [ "nil" ], - "filament_z_hop": [ - "nil" - ], - "filament_z_hop_types": [ - "nil" - ], - "filament_retract_restart_extra": [ + "filament_retraction_minimum_travel": [ "nil" ], "filament_retraction_speed": [ @@ -111,34 +99,62 @@ "filament_wipe_distance": [ "nil" ], - "bed_type": [ - "Cool Plate" + "filament_z_hop": [ + "nil" ], - "nozzle_temperature_initial_layer": [ - "200" + "filament_z_hop_types": [ + "nil" ], "full_fan_speed_layer": [ "0" ], - "fan_max_speed": [ - "100" + "hot_plate_temp": [ + "60" ], - "fan_min_speed": [ - "35" - ], - "slow_down_min_speed": [ - "10" - ], - "slow_down_layer_time": [ - "8" - ], - "filament_start_gcode": [ - "; Filament gcode\n" + "hot_plate_temp_initial_layer": [ + "60" ], "nozzle_temperature": [ "200" ], + "nozzle_temperature_initial_layer": [ + "200" + ], + "overhang_fan_speed": [ + "100" + ], + "overhang_fan_threshold": [ + "95%" + ], + "reduce_fan_stop_start_freq": [ + "0" + ], + "required_nozzle_HRC": [ + "3" + ], + "slow_down_for_layer_cooling": [ + "1" + ], + "slow_down_layer_time": [ + "8" + ], + "slow_down_min_speed": [ + "10" + ], "temperature_vitrification": [ "100" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "compatible_printers": [], + "filament_start_gcode": [ + "; Filament start gcode\n" + ], + "filament_end_gcode": [ + "; filament end gcode \n" ] } diff --git a/resources/profiles/Elegoo/filament/ELEGOO/fdm_elegoo_filament_asa.json b/resources/profiles/Elegoo/filament/fdm_filament_hips.json similarity index 80% rename from resources/profiles/Elegoo/filament/ELEGOO/fdm_elegoo_filament_asa.json rename to resources/profiles/Elegoo/filament/fdm_filament_hips.json index 093da2e0f6e..c6740f3b41d 100644 --- a/resources/profiles/Elegoo/filament/ELEGOO/fdm_elegoo_filament_asa.json +++ b/resources/profiles/Elegoo/filament/fdm_filament_hips.json @@ -1,82 +1,82 @@ { "type": "filament", - "name": "fdm_elegoo_filament_asa", - "inherits": "fdm_elegoo_filament_common", + "name": "fdm_filament_hips", + "inherits": "fdm_filament_common", "from": "system", "instantiation": "false", - "activate_air_filtration": [ - "0" - ], "cool_plate_temp": [ "0" ], - "cool_plate_temp_initial_layer": [ - "0" - ], "eng_plate_temp": [ "90" ], - "eng_plate_temp_initial_layer": [ + "hot_plate_temp": [ "90" ], - "fan_cooling_layer_time": [ - "35" + "textured_plate_temp": [ + "90" ], - "fan_max_speed": [ - "80" - ], - "fan_min_speed": [ - "10" - ], - "filament_cost": [ + "cool_plate_temp_initial_layer": [ "0" ], - "filament_density": [ - "1.04" - ], - "filament_max_volumetric_speed": [ - "16" - ], - "filament_type": [ - "ASA" - ], - "hot_plate_temp": [ + "eng_plate_temp_initial_layer": [ "90" ], "hot_plate_temp_initial_layer": [ "90" ], - "nozzle_temperature": [ - "260" + "textured_plate_temp_initial_layer": [ + "90" + ], + "fan_cooling_layer_time": [ + "10" + ], + "filament_max_volumetric_speed": [ + "8" + ], + "filament_type": [ + "HIPS" + ], + "filament_density": [ + "1.06" + ], + "filament_cost": [ + "22.99" ], "nozzle_temperature_initial_layer": [ - "260" - ], - "nozzle_temperature_range_high": [ - "280" - ], - "nozzle_temperature_range_low": [ "240" ], - "overhang_fan_speed": [ - "80" + "fan_max_speed": [ + "60" + ], + "fan_min_speed": [ + "0" ], "overhang_fan_threshold": [ "25%" ], - "reduce_fan_stop_start_freq": [ - "1" + "overhang_fan_speed": [ + "80" ], - "slow_down_layer_time": [ - "3" + "nozzle_temperature": [ + "240" + ], + "nozzle_temperature_range_low": [ + "220" + ], + "nozzle_temperature_range_high": [ + "270" ], "slow_down_min_speed": [ "20" ], - "textured_plate_temp": [ - "90" + "slow_down_layer_time": [ + "6" ], - "textured_plate_temp_initial_layer": [ - "90" + "additional_cooling_fan_speed": [ + "0" + ], + "filament_vendor": [ + "Generic" ] } diff --git a/resources/profiles/Elegoo/filament/fdm_filament_pa.json b/resources/profiles/Elegoo/filament/fdm_filament_pa.json new file mode 100644 index 00000000000..b8df8158a0d --- /dev/null +++ b/resources/profiles/Elegoo/filament/fdm_filament_pa.json @@ -0,0 +1,88 @@ +{ + "type": "filament", + "name": "fdm_filament_pa", + "inherits": "fdm_filament_common", + "from": "system", + "instantiation": "false", + "filament_flow_ratio": [ + "0.96" + ], + "activate_air_filtration": [ + "1" + ], + "cool_plate_temp": [ + "0" + ], + "cool_plate_temp_initial_layer": [ + "0" + ], + "eng_plate_temp": [ + "100" + ], + "eng_plate_temp_initial_layer": [ + "100" + ], + "fan_cooling_layer_time": [ + "4" + ], + "fan_max_speed": [ + "60" + ], + "fan_min_speed": [ + "0" + ], + "filament_cost": [ + "20" + ], + "filament_density": [ + "1.04" + ], + "filament_max_volumetric_speed": [ + "8" + ], + "filament_type": [ + "PA" + ], + "hot_plate_temp": [ + "100" + ], + "hot_plate_temp_initial_layer": [ + "100" + ], + "nozzle_temperature": [ + "290" + ], + "nozzle_temperature_initial_layer": [ + "290" + ], + "nozzle_temperature_range_high": [ + "300" + ], + "nozzle_temperature_range_low": [ + "260" + ], + "overhang_fan_speed": [ + "30" + ], + "required_nozzle_HRC": [ + "40" + ], + "slow_down_layer_time": [ + "2" + ], + "slow_down_min_speed": [ + "20" + ], + "temperature_vitrification": [ + "108" + ], + "textured_plate_temp": [ + "100" + ], + "textured_plate_temp_initial_layer": [ + "100" + ], + "filament_vendor": [ + "Generic" + ] +} diff --git a/resources/profiles/Elegoo/filament/fdm_filament_pc.json b/resources/profiles/Elegoo/filament/fdm_filament_pc.json new file mode 100644 index 00000000000..84571e32c79 --- /dev/null +++ b/resources/profiles/Elegoo/filament/fdm_filament_pc.json @@ -0,0 +1,85 @@ +{ + "type": "filament", + "name": "fdm_filament_pc", + "inherits": "fdm_filament_common", + "from": "system", + "instantiation": "false", + "cool_plate_temp": [ + "0" + ], + "eng_plate_temp": [ + "110" + ], + "hot_plate_temp": [ + "110" + ], + "textured_plate_temp": [ + "110" + ], + "cool_plate_temp_initial_layer": [ + "0" + ], + "eng_plate_temp_initial_layer": [ + "110" + ], + "hot_plate_temp_initial_layer": [ + "110" + ], + "textured_plate_temp_initial_layer": [ + "110" + ], + "fan_cooling_layer_time": [ + "30" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "filament_type": [ + "PC" + ], + "filament_vendor": [ + "Generic" + ], + "filament_density": [ + "1.04" + ], + "filament_cost": [ + "20" + ], + "nozzle_temperature_initial_layer": [ + "270" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "fan_max_speed": [ + "60" + ], + "fan_min_speed": [ + "10" + ], + "overhang_fan_threshold": [ + "25%" + ], + "overhang_fan_speed": [ + "60" + ], + "nozzle_temperature": [ + "280" + ], + "temperature_vitrification": [ + "120" + ], + "nozzle_temperature_range_low": [ + "260" + ], + "nozzle_temperature_range_high": [ + "290" + ], + "slow_down_min_speed": [ + "20" + ], + "slow_down_layer_time": [ + "2" + ] +} diff --git a/resources/profiles/Elegoo/filament/fdm_filament_pet.json b/resources/profiles/Elegoo/filament/fdm_filament_pet.json index 67cf076aa58..45c6bf446cd 100644 --- a/resources/profiles/Elegoo/filament/fdm_filament_pet.json +++ b/resources/profiles/Elegoo/filament/fdm_filament_pet.json @@ -17,7 +17,7 @@ "20" ], "filament_cost": [ - "0" + "30" ], "filament_density": [ "1.27" @@ -26,7 +26,7 @@ "12" ], "filament_type": [ - "PETG" + "PET" ], "hot_plate_temp": [ "80" @@ -63,5 +63,8 @@ ], "filament_end_gcode": [ "; filament end gcode \n" + ], + "filament_vendor": [ + "Generic" ] } diff --git a/resources/profiles/Elegoo/filament/fdm_filament_pla.json b/resources/profiles/Elegoo/filament/fdm_filament_pla.json index 50d263ac3a1..c5f2ce54d0f 100644 --- a/resources/profiles/Elegoo/filament/fdm_filament_pla.json +++ b/resources/profiles/Elegoo/filament/fdm_filament_pla.json @@ -4,11 +4,8 @@ "inherits": "fdm_filament_common", "from": "system", "instantiation": "false", - "fan_cooling_layer_time": [ - "100" - ], "filament_max_volumetric_speed": [ - "15" + "12" ], "filament_type": [ "PLA" @@ -20,47 +17,29 @@ "20" ], "cool_plate_temp": [ - "60" + "35" ], "eng_plate_temp": [ - "60" - ], - "hot_plate_temp": [ - "60" + "0" ], "textured_plate_temp": [ "60" ], "cool_plate_temp_initial_layer": [ - "60" + "35" ], "eng_plate_temp_initial_layer": [ - "60" - ], - "hot_plate_temp_initial_layer": [ - "60" + "0" ], "textured_plate_temp_initial_layer": [ "60" ], "nozzle_temperature_initial_layer": [ - "210" + "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%" ], @@ -68,27 +47,45 @@ "1" ], "nozzle_temperature": [ - "205" + "220" ], "temperature_vitrification": [ - "60" + "45" ], "nozzle_temperature_range_low": [ - "205" + "190" ], "nozzle_temperature_range_high": [ - "210" + "240" ], "slow_down_min_speed": [ - "10" - ], - "slow_down_layer_time": [ - "4" + "20" ], "additional_cooling_fan_speed": [ - "70" + "0" + ], + "fan_cooling_layer_time": [ + "80" + ], + "fan_min_speed": [ + "50" + ], + "hot_plate_temp": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "slow_down_layer_time": [ + "8" ], "filament_start_gcode": [ - "; filament start gcode\n" + "; Filament start gcode\n" + ], + "filament_end_gcode": [ + "; filament end gcode \n" + ], + "filament_vendor": [ + "Generic" ] } diff --git a/resources/profiles/Elegoo/filament/fdm_filament_ppa.json b/resources/profiles/Elegoo/filament/fdm_filament_ppa.json new file mode 100644 index 00000000000..929f63906d3 --- /dev/null +++ b/resources/profiles/Elegoo/filament/fdm_filament_ppa.json @@ -0,0 +1,88 @@ +{ + "type": "filament", + "name": "fdm_filament_ppa", + "inherits": "fdm_filament_common", + "from": "system", + "instantiation": "false", + "activate_air_filtration": [ + "1" + ], + "cool_plate_temp": [ + "0" + ], + "cool_plate_temp_initial_layer": [ + "0" + ], + "eng_plate_temp": [ + "100" + ], + "eng_plate_temp_initial_layer": [ + "100" + ], + "fan_cooling_layer_time": [ + "5" + ], + "fan_max_speed": [ + "30" + ], + "fan_min_speed": [ + "10" + ], + "filament_cost": [ + "20" + ], + "filament_density": [ + "1.17" + ], + "filament_max_volumetric_speed": [ + "8" + ], + "filament_type": [ + "PPA" + ], + "hot_plate_temp": [ + "100" + ], + "hot_plate_temp_initial_layer": [ + "100" + ], + "nozzle_temperature": [ + "290" + ], + "nozzle_temperature_initial_layer": [ + "290" + ], + "nozzle_temperature_range_high": [ + "320" + ], + "nozzle_temperature_range_low": [ + "280" + ], + "overhang_fan_speed": [ + "40" + ], + "overhang_fan_threshold": [ + "0%" + ], + "required_nozzle_HRC": [ + "40" + ], + "slow_down_layer_time": [ + "2" + ], + "slow_down_min_speed": [ + "20" + ], + "temperature_vitrification": [ + "210" + ], + "textured_plate_temp": [ + "100" + ], + "textured_plate_temp_initial_layer": [ + "100" + ], + "filament_vendor": [ + "Generic" + ] +} diff --git a/resources/profiles/Elegoo/filament/fdm_filament_pps.json b/resources/profiles/Elegoo/filament/fdm_filament_pps.json new file mode 100644 index 00000000000..7dbc998b1fb --- /dev/null +++ b/resources/profiles/Elegoo/filament/fdm_filament_pps.json @@ -0,0 +1,79 @@ +{ + "type": "filament", + "name": "fdm_filament_pps", + "inherits": "fdm_filament_common", + "from": "system", + "instantiation": "false", + "chamber_temperatures": [ + "60" + ], + "cool_plate_temp": [ + "0" + ], + "cool_plate_temp_initial_layer": [ + "0" + ], + "eng_plate_temp": [ + "110" + ], + "eng_plate_temp_initial_layer": [ + "110" + ], + "fan_cooling_layer_time": [ + "5" + ], + "fan_max_speed": [ + "50" + ], + "fan_min_speed": [ + "0" + ], + "filament_density": [ + "1.36" + ], + "filament_max_volumetric_speed": [ + "4" + ], + "filament_type": [ + "PPS" + ], + "hot_plate_temp": [ + "110" + ], + "hot_plate_temp_initial_layer": [ + "110" + ], + "nozzle_temperature": [ + "320" + ], + "nozzle_temperature_initial_layer": [ + "320" + ], + "nozzle_temperature_range_high": [ + "340" + ], + "nozzle_temperature_range_low": [ + "300" + ], + "overhang_fan_speed": [ + "30" + ], + "overhang_fan_threshold": [ + "0%" + ], + "slow_down_layer_time": [ + "2" + ], + "temperature_vitrification": [ + "125" + ], + "textured_plate_temp": [ + "110" + ], + "textured_plate_temp_initial_layer": [ + "110" + ], + "filament_vendor": [ + "Generic" + ] +} diff --git a/resources/profiles/re3D/filament/fdm_filament_abs.json b/resources/profiles/Elegoo/filament/fdm_filament_pva.json similarity index 78% rename from resources/profiles/re3D/filament/fdm_filament_abs.json rename to resources/profiles/Elegoo/filament/fdm_filament_pva.json index 9154848f93b..c098c247604 100644 --- a/resources/profiles/re3D/filament/fdm_filament_abs.json +++ b/resources/profiles/Elegoo/filament/fdm_filament_pva.json @@ -1,94 +1,97 @@ { "type": "filament", - "name": "fdm_filament_abs", + "name": "fdm_filament_pva", + "inherits": "fdm_filament_common", "from": "system", "instantiation": "false", - "inherits": "fdm_filament_common", - "fan_cooling_layer_time": [ - "100" + "additional_cooling_fan_speed": [ + "70" ], - "filament_max_volumetric_speed": [ - "12" - ], - "filament_type": [ - "ABS" - ], - "filament_density": [ - "1.24" - ], - "filament_cost": [ - "20" + "close_fan_the_first_x_layers": [ + "1" ], "cool_plate_temp": [ - "60" - ], - "eng_plate_temp": [ - "60" - ], - "hot_plate_temp": [ - "60" - ], - "textured_plate_temp": [ - "60" + "45" ], "cool_plate_temp_initial_layer": [ - "60" + "45" + ], + "eng_plate_temp": [ + "0" ], "eng_plate_temp_initial_layer": [ - "60" + "0" ], - "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": [ + "fan_cooling_layer_time": [ "100" ], "fan_min_speed": [ "100" ], - "overhang_fan_speed": [ - "100" + "filament_cost": [ + "20" ], - "overhang_fan_threshold": [ - "50%" + "filament_density": [ + "1.24" ], - "close_fan_the_first_x_layers": [ + "filament_is_support": [ "1" ], + "filament_max_volumetric_speed": [ + "15" + ], + "filament_soluble": [ + "1" + ], + "filament_type": [ + "PVA" + ], + "hot_plate_temp": [ + "55" + ], + "hot_plate_temp_initial_layer": [ + "55" + ], "nozzle_temperature": [ "220" ], - "temperature_vitrification": [ - "60" + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature_range_high": [ + "240" ], "nozzle_temperature_range_low": [ "190" ], - "nozzle_temperature_range_high": [ - "230" + "overhang_fan_threshold": [ + "50%" ], - "slow_down_min_speed": [ - "10" + "reduce_fan_stop_start_freq": [ + "1" ], "slow_down_layer_time": [ "4" ], - "additional_cooling_fan_speed": [ - "70" + "slow_down_min_speed": [ + "50" + ], + "temperature_vitrification": [ + "45" + ], + "textured_plate_temp": [ + "55" + ], + "textured_plate_temp_initial_layer": [ + "55" ], "filament_start_gcode": [ - "; filament start gcode\n" + "; Filament start gcode\n" + ], + "filament_end_gcode": [ + "; filament end gcode \n" + ], + "filament_vendor": [ + "Generic" ] } diff --git a/resources/profiles/Elegoo/filament/ELEGOO/fdm_elegoo_filament_tpu.json b/resources/profiles/Elegoo/filament/fdm_filament_tpu.json similarity index 91% rename from resources/profiles/Elegoo/filament/ELEGOO/fdm_elegoo_filament_tpu.json rename to resources/profiles/Elegoo/filament/fdm_filament_tpu.json index cb70511505b..7c40075fef5 100644 --- a/resources/profiles/Elegoo/filament/ELEGOO/fdm_elegoo_filament_tpu.json +++ b/resources/profiles/Elegoo/filament/fdm_filament_tpu.json @@ -1,7 +1,7 @@ { "type": "filament", - "name": "fdm_elegoo_filament_tpu", - "inherits": "fdm_elegoo_filament_common", + "name": "fdm_filament_tpu", + "inherits": "fdm_filament_common", "from": "system", "instantiation": "false", "filament_flow_ratio": [ @@ -32,7 +32,7 @@ "100" ], "filament_cost": [ - "0" + "20" ], "filament_density": [ "1.24" @@ -81,5 +81,8 @@ ], "filament_end_gcode": [ "; filament end gcode \n" + ], + "filament_vendor": [ + "Generic" ] } diff --git a/resources/profiles/Elegoo/machine/EC/Elegoo Centauri 0.4 nozzle.json b/resources/profiles/Elegoo/machine/EC/Elegoo Centauri 0.4 nozzle.json index a304b9bb315..c98a5ecfb9e 100644 --- a/resources/profiles/Elegoo/machine/EC/Elegoo Centauri 0.4 nozzle.json +++ b/resources/profiles/Elegoo/machine/EC/Elegoo Centauri 0.4 nozzle.json @@ -1,23 +1,24 @@ { "type": "machine", "name": "Elegoo Centauri 0.4 nozzle", - "inherits": "fdm_machine_ecc", + "inherits": "fdm_elegoo_3dp_001_common", "from": "system", "setting_id": "EC04", "instantiation": "true", "nozzle_diameter": [ "0.4" ], + "host_type": "elegoolink", "printer_model": "Elegoo Centauri", "printer_variant": "0.4", "auxiliary_fan": "1", "printable_area": [ "0x0", - "257x0", - "257x257", - "0x257" + "256x0", + "256x256", + "0x256" ], - "printable_height": "257", + "printable_height": "256", "retract_lift_below": [ "255" ], @@ -27,6 +28,12 @@ "256x20", "246x20" ], + "bed_texture_area": [ + "0x-10", + "256x-10", + "256x256", + "0x256" + ], "thumbnails": [ "144x144" ], @@ -49,10 +56,13 @@ "support_air_filtration": "1", "default_bed_type": "4", "upward_compatible_machine": [], + "manual_filament_change": "0", + "purge_in_prime_tower": "0", "gcode_flavor": "klipper", - "change_filament_gcode": "M600", - "layer_change_gcode": "SET_PRINT_STATS_INFO CURRENT_LAYER={layer_num + 1}", + "change_filament_gcode": "", "machine_pause_gcode": "M600", - "machine_start_gcode": ";;===== date: 20240520 =====================\n;printer_model:[printer_model]\n;initial_filament:{filament_type[initial_extruder]}\n;curr_bed_type:{curr_bed_type}\nM400 ; wait for buffer to clear\nM220 S100 ;Set the feed speed to 100%\nM221 S100 ;Set the flow rate to 100%\nM104 S140\nM140 S[bed_temperature_initial_layer_single]\nG90\nG28 ;home\nM729 ;Clean Nozzle\nM106 P2 S255\nM190 S[bed_temperature_initial_layer_single]\nM106 P2 S0\n\n\n;=============turn on fans to prevent PLA jamming=================\n{if filament_type[initial_no_support_extruder]==\"PLA\"}\n {if (bed_temperature[initial_no_support_extruder] >50)||(bed_temperature_initial_layer[initial_no_support_extruder] >50)}\n M106 P3 S255\n {elsif (bed_temperature[initial_no_support_extruder] >45)||(bed_temperature_initial_layer[initial_no_support_extruder] >45)}\n M106 P3 S180\n {endif};Prevent PLA from jamming\n{endif}\n\n;enable_pressure_advance:{enable_pressure_advance[initial_extruder]}\n;This value is called if pressure advance is enabled\n{if enable_pressure_advance[initial_extruder] == \"true\"}\nSET_PRESSURE_ADVANCE ADVANCE=[pressure_advance] ;\nM400\n{endif}\nM204 S{min(20000,max(1000,outer_wall_acceleration))} ;Call exterior wall print acceleration\n\n\nG1 X{print_bed_max[0]*0.5} Y-1.2 F20000\nG1 Z0.3 F900\nM109 S[nozzle_temperature_initial_layer]\nM83\nG92 E0 ;Reset Extruder\nG1 F{min(6000, max(900, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X-1.2 E10.156 ;Draw the first line\nG1 Y98.8 E7.934\nG1 X-0.5 Y100 E0.1\nG1 Y-0.3 E7.934\nG1 X{print_bed_max[0]*0.5-50} E6.284\nG1 F{0.2*min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X{print_bed_max[0]*0.5-30} E2\nG1 F{min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X{print_bed_max[0]*0.5-10} E2\nG1 F{0.2*min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X{print_bed_max[0]*0.5+10} E2\nG1 F{min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X{print_bed_max[0]*0.5+30} E2\nG1 F{min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X{print_bed_max[0]*0.5+50} E2\n;End PA test.\n\n\nG3 I-1 J0 Z0.6 F1200.0 ;Move to side a little\nG1 F20000\nG92 E0 ;Reset Extruder\nSET_PRINT_STATS_INFO TOTAL_LAYER=[total_layer_count]\n;LAYER_COUNT:[total_layer_count]\n;LAYER:0", - "machine_end_gcode": ";===== date: 20250109 =====================\nM400 ; wait for buffer to clear\nM140 S0 ;Turn-off bed\nM106 S255 ;Cooling nozzle\nM83\nG92 E0 ; zero the extruder\nG2 I1 J0 Z{max_layer_z+0.5} E-1 F3000 ; lower z a little\nG90\n{if max_layer_z > 50}G1 Z{min(max_layer_z+50, printable_height+0.5)} F20000{else}G1 Z100 F20000 {endif}; Move print head up \nM204 S5000\nM400\nM83\nG1 X202 F20000\nM400\nG1 Y250 F20000\nG1 Y264.5 F1200\nM400\nG92 E0\nM104 S0 ;Turn-off hotend\nM140 S0 ;Turn-off bed\nM106 S0 ; turn off fan\nM106 P2 S0 ; turn off remote part cooling fan\nM106 P3 S0 ; turn off chamber cooling fan\nM84 ;Disable all steppers" + "support_multi_filament": "0", + "layer_change_gcode": "SET_PRINT_STATS_INFO CURRENT_LAYER={layer_num + 1}", + "machine_start_gcode": ";;===== date: 20251011 =====================\n;printer_model:[printer_model]\n;initial_filament:{filament_type[initial_extruder]}\n;curr_bed_type:{curr_bed_type}\n;bed_level_temp:[bed_temperature_initial_layer_single]\nM400 ; wait for buffer to clear\nM220 S100 ;Set the feed speed to 100%\nM221 S100 ;Set the flow rate to 100%\nM104 S140\nM140 S[bed_temperature_initial_layer_single]\nG90\nG28 ;home\nM729 ;Clean Nozzle\nM190 S[bed_temperature_initial_layer_single]\n\n\n;=============turn on fans to prevent PLA jamming=================\n{if filament_type[initial_no_support_extruder]==\"PLA\"}\n {if (bed_temperature[initial_no_support_extruder] >50)||(bed_temperature_initial_layer[initial_no_support_extruder] >50)}\n M106 P3 S255\n {elsif (bed_temperature[initial_no_support_extruder] >45)||(bed_temperature_initial_layer[initial_no_support_extruder] >45)}\n M106 P3 S180\n {endif};Prevent PLA from jamming\n{endif}\n\n;enable_pressure_advance:{enable_pressure_advance[initial_extruder]}\n;This value is called if pressure advance is enabled\n{if enable_pressure_advance[initial_extruder] == \"true\"}\nSET_PRESSURE_ADVANCE ADVANCE=[pressure_advance] ;\nM400\n{endif}\nM204 S{min(20000,max(1000,outer_wall_acceleration))} ;Call exterior wall print acceleration\n\n\nG1 X{print_bed_max[0]*0.5} Y-1.2 F20000\nG1 Z0.3 F900\nM109 S[nozzle_temperature_initial_layer]\nM83\nG92 E0 ;Reset Extruder\nG1 F{min(6000, max(900, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X-1.2 E10.156 ;Draw the first line\nG1 Y98.8 E7.934\nG1 X-0.5 Y100 E0.1\nG1 Y-0.3 E7.934\nG1 X{print_bed_max[0]*0.5-50} E6.284\nG1 F{0.2*min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X{print_bed_max[0]*0.5-30} E2\nG1 F{min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X{print_bed_max[0]*0.5-10} E2\nG1 F{0.2*min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X{print_bed_max[0]*0.5+10} E2\nG1 F{min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X{print_bed_max[0]*0.5+30} E2\nG1 F{min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X{print_bed_max[0]*0.5+50} E2\n;End PA test.\n\n\nG3 I-1 J0 Z0.6 F1200.0 ;Move to side a little\nG1 F20000\nG92 E0 ;Reset Extruder\nSET_PRINT_STATS_INFO TOTAL_LAYER=[total_layer_count]\n;LAYER_COUNT:[total_layer_count]\n;LAYER:0", + "machine_end_gcode": ";===== date: 20250603 =====================\nM400 ; wait for buffer to clear\nM140 S0 ;Turn-off bed\nM106 S255 ;Cooling nozzle\nM83\nG92 E0 ; zero the extruder\nG1 E-0.8 F1800\nG2 I1 J0 Z{max_layer_z+0.5} F3000 ; lower z a little\nG90\n{if max_layer_z > 100}G1 Z{min(max_layer_z+50, printable_height+0.5)} F20000{else}G1 Z100 F20000 {endif}; Move print head up \nM204 S5000\nM400\nM83\nG1 X202 F20000\nM400\nG1 Y250 F20000\nG1 Y264.5 F1200\nM400\nG92 E0\nM104 S0 ;Turn-off hotend\nM140 S0 ;Turn-off bed\nM106 S0 ; turn off fan\nM106 P2 S0 ; turn off remote part cooling fan\nM106 P3 S0 ; turn off chamber cooling fan\nM84 ;Disable all steppers" } diff --git a/resources/profiles/Elegoo/machine/EC/Elegoo Centauri.json b/resources/profiles/Elegoo/machine/EC/Elegoo Centauri.json index 9f4ca8a27af..4cf9db3163a 100644 --- a/resources/profiles/Elegoo/machine/EC/Elegoo Centauri.json +++ b/resources/profiles/Elegoo/machine/EC/Elegoo Centauri.json @@ -8,5 +8,5 @@ "bed_model": "elegoo_centuri_buildplate_model.stl", "bed_texture": "elegoo_centuri_buildplate_texture.svg", "hotend_model": "", - "default_materials": "Elegoo ASA @0.2 nozzle;Elegoo ASA @EC;Elegoo PETG PRO @0.2 nozzle;Elegoo PETG PRO @EC;Elegoo PLA @0.2 nozzle;Elegoo PLA Matte @0.2 nozzle;Elegoo PLA Matte @EC;Elegoo PLA PRO @0.2 nozzle;Elegoo PLA PRO @EC;Elegoo PLA Silk @0.2 nozzle;Elegoo PLA Silk @EC;Elegoo PLA @EC;Elegoo PLA+ @0.2 nozzle;Elegoo PLA+ @EC;Elegoo Rapid PETG @0.2 nozzle;Elegoo Rapid PETG @EC;Elegoo Rapid PETG+;;Elegoo Rapid PLA+ @EC;Elegoo Rapid PLA+ @0.2 nozzle;Elegoo Rapid PLA+ @EC;Elegoo TPU 95A @EC" + "default_materials": "Elegoo ASA @0.2 nozzle;Elegoo ASA @EC;Elegoo PETG @0.2 nozzle;Elegoo PETG @EC;Elegoo PETG PRO @0.2 nozzle;Elegoo PETG PRO @EC;Elegoo PLA @0.2 nozzle;Elegoo PLA Matte @0.2 nozzle;Elegoo PLA Matte @EC;Elegoo PLA PRO @0.2 nozzle;Elegoo PLA PRO @EC;Elegoo PLA Silk @0.2 nozzle;Elegoo PLA Silk @EC;Elegoo PLA @EC;Elegoo PLA+ @0.2 nozzle;Elegoo PLA+ @EC;Elegoo Rapid PETG @0.2 nozzle;Elegoo Rapid PETG @EC;Elegoo Rapid PLA+ @0.2 nozzle;Elegoo Rapid PLA+ @EC;Elegoo TPU 95A @EC;Elegoo PLA Basic @0.2 nozzle;Elegoo PLA Basic @EC;Elegoo PLA Galaxy @EC;Elegoo PLA Marble @EC;Elegoo PLA Sparkle @EC;Elegoo PLA Wood @EC;Elegoo Rapid TPU 95A @EC;Elegoo ABS @0.2 nozzle;Elegoo ABS @EC;Elegoo PAHT-CF @EC;Elegoo PC @0.2 nozzle;Elegoo PC @EC;Elegoo PC-FR @0.2 nozzle;Elegoo PC-FR @EC;Elegoo PETG-CF @EC;Elegoo PETG-GF @EC;Elegoo PETG Translucent @0.2 nozzle;Elegoo PETG Translucent @EC" } diff --git a/resources/profiles/Elegoo/machine/ECC/Elegoo Centauri Carbon 0.4 nozzle.json b/resources/profiles/Elegoo/machine/ECC/Elegoo Centauri Carbon 0.4 nozzle.json index 7958cec019f..a354e51d6f0 100644 --- a/resources/profiles/Elegoo/machine/ECC/Elegoo Centauri Carbon 0.4 nozzle.json +++ b/resources/profiles/Elegoo/machine/ECC/Elegoo Centauri Carbon 0.4 nozzle.json @@ -1,23 +1,24 @@ { "type": "machine", "name": "Elegoo Centauri Carbon 0.4 nozzle", - "inherits": "fdm_machine_ecc", + "inherits": "fdm_elegoo_3dp_001_common", "from": "system", "setting_id": "ECC04", "instantiation": "true", "nozzle_diameter": [ "0.4" ], + "host_type": "elegoolink", "printer_model": "Elegoo Centauri Carbon", "printer_variant": "0.4", "auxiliary_fan": "1", "printable_area": [ "0x0", - "257x0", - "257x257", - "0x257" + "256x0", + "256x256", + "0x256" ], - "printable_height": "257", + "printable_height": "256", "retract_lift_below": [ "255" ], @@ -27,6 +28,12 @@ "256x20", "246x20" ], + "bed_texture_area": [ + "0x-10", + "256x-10", + "256x256", + "0x256" + ], "thumbnails": [ "144x144" ], @@ -41,7 +48,11 @@ "extruder_offset": [ "0x0" ], + "retract_length_toolchange": [ + "0" + ], "default_bed_type": "4", + "auto_toolchange_command": "0", "fan_speedup_time": "0.5", "machine_load_filament_time": "29", "machine_unload_filament_time": "28", @@ -49,10 +60,13 @@ "scan_first_layer": "1", "support_air_filtration": "1", "upward_compatible_machine": [], + "manual_filament_change": "0", + "purge_in_prime_tower": "0", "gcode_flavor": "klipper", - "change_filament_gcode": "M600", - "layer_change_gcode": "SET_PRINT_STATS_INFO CURRENT_LAYER={layer_num + 1}", + "change_filament_gcode": "\n;==========CC_CHANGE_FILAMENT_GCODE_CCB==========\n;===== date: 2025-12-04-001 =====================\nM106 S0\nM106 P2 S0\nG1 Z{min(max_layer_z+3, printable_height+0.5)} F1200\nM6211 T[next_extruder] L[flush_length] M{old_filament_e_feedrate} N{new_filament_e_feedrate} Q[old_filament_temp] R[nozzle_temperature_range_high] S[new_filament_temp]\nT[next_extruder]\n;==========CC_CHANGE_FILAMENT_GCODE_CCE==========", "machine_pause_gcode": "M600", - "machine_start_gcode": ";;===== date: 20240520 =====================\n;printer_model:[printer_model]\n;initial_filament:{filament_type[initial_extruder]}\n;curr_bed_type:{curr_bed_type}\nM400 ; wait for buffer to clear\nM220 S100 ;Set the feed speed to 100%\nM221 S100 ;Set the flow rate to 100%\nM104 S140\nM140 S[bed_temperature_initial_layer_single]\nG90\nG28 ;home\nM729 ;Clean Nozzle\nM106 P2 S255\nM190 S[bed_temperature_initial_layer_single]\nM106 P2 S0\n\n\n;=============turn on fans to prevent PLA jamming=================\n{if filament_type[initial_no_support_extruder]==\"PLA\"}\n {if (bed_temperature[initial_no_support_extruder] >50)||(bed_temperature_initial_layer[initial_no_support_extruder] >50)}\n M106 P3 S255\n {elsif (bed_temperature[initial_no_support_extruder] >45)||(bed_temperature_initial_layer[initial_no_support_extruder] >45)}\n M106 P3 S180\n {endif};Prevent PLA from jamming\n{endif}\n\n;enable_pressure_advance:{enable_pressure_advance[initial_extruder]}\n;This value is called if pressure advance is enabled\n{if enable_pressure_advance[initial_extruder] == \"true\"}\nSET_PRESSURE_ADVANCE ADVANCE=[pressure_advance] ;\nM400\n{endif}\nM204 S{min(20000,max(1000,outer_wall_acceleration))} ;Call exterior wall print acceleration\n\n\nG1 X{print_bed_max[0]*0.5} Y-1.2 F20000\nG1 Z0.3 F900\nM109 S[nozzle_temperature_initial_layer]\nM83\nG92 E0 ;Reset Extruder\nG1 F{min(6000, max(900, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X-1.2 E10.156 ;Draw the first line\nG1 Y98.8 E7.934\nG1 X-0.5 Y100 E0.1\nG1 Y-0.3 E7.934\nG1 X{print_bed_max[0]*0.5-50} E6.284\nG1 F{0.2*min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X{print_bed_max[0]*0.5-30} E2\nG1 F{min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X{print_bed_max[0]*0.5-10} E2\nG1 F{0.2*min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X{print_bed_max[0]*0.5+10} E2\nG1 F{min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X{print_bed_max[0]*0.5+30} E2\nG1 F{min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X{print_bed_max[0]*0.5+50} E2\n;End PA test.\n\n\nG3 I-1 J0 Z0.6 F1200.0 ;Move to side a little\nG1 F20000\nG92 E0 ;Reset Extruder\nSET_PRINT_STATS_INFO TOTAL_LAYER=[total_layer_count]\n;LAYER_COUNT:[total_layer_count]\n;LAYER:0", - "machine_end_gcode": ";===== date: 20250109 =====================\nM400 ; wait for buffer to clear\nM140 S0 ;Turn-off bed\nM106 S255 ;Cooling nozzle\nM83\nG92 E0 ; zero the extruder\nG2 I1 J0 Z{max_layer_z+0.5} E-1 F3000 ; lower z a little\nG90\n{if max_layer_z > 50}G1 Z{min(max_layer_z+50, printable_height+0.5)} F20000{else}G1 Z100 F20000 {endif}; Move print head up \nM204 S5000\nM400\nM83\nG1 X202 F20000\nM400\nG1 Y250 F20000\nG1 Y264.5 F1200\nM400\nG92 E0\nM104 S0 ;Turn-off hotend\nM140 S0 ;Turn-off bed\nM106 S0 ; turn off fan\nM106 P2 S0 ; turn off remote part cooling fan\nM106 P3 S0 ; turn off chamber cooling fan\nM84 ;Disable all steppers" + "support_multi_filament": "1", + "layer_change_gcode": "SET_PRINT_STATS_INFO CURRENT_LAYER={layer_num + 1}", + "machine_start_gcode": ";===== CC_START_GCODE ================\n;===== date: 2026-04-28-001 =====================\n;printer_model:[printer_model]\n;initial_filament:{filament_type[initial_extruder]}\n;curr_bed_type:{curr_bed_type}\n;bed_level_temp:[bed_temperature_initial_layer_single]\nM400 ; wait for buffer to clear\nM220 S100 ;Set the feed speed to 100%\nM221 S100 ;Set the flow rate to 100%\nM104 S140\nM140 S[bed_temperature_initial_layer_single]\nG90\nM83\nG28 ;home\nM729 ;Clean Nozzle\nM190 S[bed_temperature_initial_layer_single]\n\nM109 S[nozzle_temperature_initial_layer]\nM6211 A1 L200 T[initial_no_support_extruder] Q[nozzle_temperature_initial_layer] R[nozzle_temperature_initial_layer] S[nozzle_temperature_initial_layer]\nT[initial_no_support_extruder]\n\n;=============turn on fans to prevent PLA jamming=================\n{if filament_type[initial_no_support_extruder]==\"PLA\"}\n {if (bed_temperature[initial_no_support_extruder] >50)||(bed_temperature_initial_layer[initial_no_support_extruder] >50)}\n M106 P3 S255\n {elsif (bed_temperature[initial_no_support_extruder] >45)||(bed_temperature_initial_layer[initial_no_support_extruder] >45)}\n M106 P3 S180\n {endif};Prevent PLA from jamming\n{endif}\n\n;enable_pressure_advance:{enable_pressure_advance[initial_extruder]}\n;This value is called if pressure advance is enabled\n{if enable_pressure_advance[initial_extruder] == \"true\"}\nSET_PRESSURE_ADVANCE ADVANCE=[pressure_advance] ;\nM400\n{endif}\nM204 S{min(20000,max(1000,outer_wall_acceleration))} ;Call exterior wall print acceleration\n\n\nG1 X{print_bed_max[0]*0.5} Y-1.2 F20000\nG1 Z0.3 F900\n\n\nG90\nM83\nG92 E0 ;Reset Extruder\nG1 F{min(6000, max(900, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X0 E10.156 ;Draw the first line\nG1 Y98.8 E7.934\nG1 X0.9 Y100 E0.1\nG1 Y-0.3 E7.934\nG1 X{print_bed_max[0]*0.5-50} E6.284\nG1 F{0.2*min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X{print_bed_max[0]*0.5-30} E2\nG1 F{min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X{print_bed_max[0]*0.5-10} E2\nG1 F{0.2*min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X{print_bed_max[0]*0.5+10} E2\nG1 F{min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X{print_bed_max[0]*0.5+30} E2\nG1 F{min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]/0.5/0.3*60))} \nG1 X{print_bed_max[0]*0.5+50} E2\n;End PA test.\n\n\nG3 I-1 J0 Z0.6 F1200.0 ;Move to side a little\nG1 F20000\nG92 E0 ;Reset Extruder\nSET_PRINT_STATS_INFO TOTAL_LAYER=[total_layer_count]\n;LAYER_COUNT:[total_layer_count]\n;LAYER:0", + "machine_end_gcode": ";===== CC_END_GCODE ================\n;===== date: 2025-12-04-001 =====================\nM400 ; wait for buffer to clear\nM140 S0 ;Turn-off bed\nM106 S255 ;Cooling nozzle\nM83\nG92 E0 ; zero the extruder\nG1 E-0.8 F1800\nG2 I1 J0 Z{max_layer_z+0.5} F3000 ; lower z a little\nG90\n{if max_layer_z > 100}G1 Z{min(max_layer_z+50, printable_height+0.5)} F20000{else}G1 Z100 F20000 {endif}; Move print head up \nM204 S5000\nM749\nM204 S5000\nM400\nM83\nG1 X202 F20000\nM400\nG1 Y250 F20000\nG1 Y264.5 F1200\nM400\nG92 E0\nM104 S0 ;Turn-off hotend\nM140 S0 ;Turn-off bed\nM106 S0 ; turn off fan\nM106 P2 S0 ; turn off remote part cooling fan\nM106 P3 S0 ; turn off chamber cooling fan\nM84 ;Disable all steppers" } diff --git a/resources/profiles/Elegoo/machine/ECC/Elegoo Centauri Carbon.json b/resources/profiles/Elegoo/machine/ECC/Elegoo Centauri Carbon.json index 3a0ba38a7dc..1b626bfa078 100644 --- a/resources/profiles/Elegoo/machine/ECC/Elegoo Centauri Carbon.json +++ b/resources/profiles/Elegoo/machine/ECC/Elegoo Centauri Carbon.json @@ -8,5 +8,5 @@ "bed_model": "elegoo_centuri_carbon_buildplate_model.stl", "bed_texture": "elegoo_centuri_carbon_buildplate_texture.svg", "hotend_model": "", - "default_materials": "Elegoo ASA @0.2 nozzle;Elegoo ASA @ECC;Elegoo PETG PRO @0.2 nozzle;Elegoo PETG PRO @ECC;Elegoo PLA @0.2 nozzle;Elegoo PLA Matte @0.2 nozzle;Elegoo PLA Matte @ECC;Elegoo PLA PRO @0.2 nozzle;Elegoo PLA PRO @ECC;Elegoo PLA Silk @0.2 nozzle;Elegoo PLA Silk @ECC;Elegoo PLA-CF @ECC;Elegoo PLA @ECC;Elegoo PLA+ @0.2 nozzle;Elegoo PLA+ @ECC;Elegoo Rapid PETG @0.2 nozzle;Elegoo Rapid PETG @ECC;Elegoo Rapid PETG+;Elegoo Rapid PLA+ @0.2 nozzle;Elegoo Rapid PLA+ @ECC;Elegoo TPU 95A @ECC" + "default_materials": "Elegoo ASA @0.2 nozzle;Elegoo ASA @ECC;Elegoo PETG @0.2 nozzle;Elegoo PETG @ECC;Elegoo PETG PRO @0.2 nozzle;Elegoo PETG PRO @ECC;Elegoo PLA @0.2 nozzle;Elegoo PLA Matte @0.2 nozzle;Elegoo PLA Matte @ECC;Elegoo PLA PRO @0.2 nozzle;Elegoo PLA PRO @ECC;Elegoo PLA Silk @0.2 nozzle;Elegoo PLA Silk @ECC;Elegoo PLA-CF @ECC;Elegoo PLA @ECC;Elegoo PLA+ @0.2 nozzle;Elegoo PLA+ @ECC;Elegoo Rapid PETG @0.2 nozzle;Elegoo Rapid PETG @ECC;Elegoo Rapid PLA+ @0.2 nozzle;Elegoo Rapid PLA+ @ECC;Elegoo TPU 95A @ECC;Elegoo PLA Basic @0.2 nozzle;Elegoo PLA Basic @ECC;Elegoo PLA Galaxy @ECC;Elegoo PLA Marble @ECC;Elegoo PLA Sparkle @ECC;Elegoo PLA Wood @ECC;Elegoo Rapid TPU 95A @ECC;Elegoo ABS @0.2 nozzle;Elegoo ABS @ECC;Elegoo PAHT-CF @ECC;Elegoo PC @0.2 nozzle;Elegoo PC @ECC;Elegoo PC-FR @0.2 nozzle;Elegoo PC-FR @ECC;Elegoo PETG-CF @ECC;Elegoo PETG-GF @ECC;Elegoo PETG Translucent @0.2 nozzle;Elegoo PETG Translucent @ECC" } diff --git a/resources/profiles/Elegoo/machine/ECC/fdm_machine_ecc.json b/resources/profiles/Elegoo/machine/ECC/fdm_machine_ecc.json deleted file mode 100644 index 17096c96460..00000000000 --- a/resources/profiles/Elegoo/machine/ECC/fdm_machine_ecc.json +++ /dev/null @@ -1,142 +0,0 @@ -{ - "type": "machine", - "name": "fdm_machine_ecc", - "inherits": "fdm_machine_ecc_common", - "from": "system", - "instantiation": "false", - "nozzle_diameter": [ - "0.4" - ], - "printer_variant": "0.4", - "printable_area": [ - "0x0", - "256x0", - "256x256", - "0x256" - ], - "auxiliary_fan": "1", - "bed_exclude_area": [ - "0x0" - ], - "default_filament_profile": [ - "Elegoo PLA" - ], - "default_print_profile": "0.20mm Standard @Elegoo CC 0.4 nozzle", - "extruder_colour": [ - "#018001" - ], - "machine_max_acceleration_e": [ - "5000", - "5000" - ], - "machine_max_acceleration_extruding": [ - "20000", - "20000" - ], - "machine_max_acceleration_retracting": [ - "5000", - "5000" - ], - "machine_max_acceleration_travel": [ - "9000", - "9000" - ], - "machine_max_acceleration_x": [ - "20000", - "20000" - ], - "machine_max_acceleration_y": [ - "20000", - "20000" - ], - "machine_max_acceleration_z": [ - "500", - "200" - ], - "machine_max_speed_e": [ - "30", - "30" - ], - "machine_max_speed_x": [ - "500", - "200" - ], - "machine_max_speed_y": [ - "500", - "200" - ], - "machine_max_speed_z": [ - "20", - "20" - ], - "machine_max_jerk_e": [ - "2.5", - "2.5" - ], - "machine_max_jerk_x": [ - "9", - "9" - ], - "machine_max_jerk_y": [ - "9", - "9" - ], - "machine_max_jerk_z": [ - "3", - "3" - ], - "machine_min_extruding_rate": [ - "0", - "0" - ], - "machine_min_travel_rate": [ - "0", - "0" - ], - "retract_lift_below": [ - "249" - ], - "extruder_clearance_max_radius": "68", - "extruder_clearance_height_to_lid": "90", - "nozzle_volume": "107", - "printer_structure": "corexy", - "best_object_pos": "0.5x0.5", - "retraction_minimum_travel": [ - "0.8" - ], - "retract_before_wipe": [ - "0%" - ], - "wipe_distance": [ - "1.2" - ], - "retraction_length": [ - "0.8" - ], - "retract_length_toolchange": [ - "2" - ], - "z_hop": [ - "0.4" - ], - "retraction_speed": [ - "30" - ], - "deretraction_speed": [ - "30" - ], - "z_hop_types": [ - "Auto Lift" - ], - "thumbnails": [ - "320x320", - "160x160" - ], - "thumbnails_format": "PNG", - "nozzle_type": "brass", - "single_extruder_multi_material": "1", - "machine_end_gcode": ";===== date: 20240510 =====================\nM400 ; wait for buffer to clear\nG92 E0 ; zero the extruder\nG1 E-0.8 F1800 ; retract\nG1 Z{max_layer_z + 0.5} F900 ; lower z a little\nG1 X65 Y245 F12000 ; move to safe pos \nG1 Y245 F3000\n\nG1 X65 Y245 F12000\nG1 Y245 F3000\nM140 S0 ; turn off bed\nM106 S0 ; turn off fan\nM106 P2 S0 ; turn off remote part cooling fan\nM106 P3 S0 ; turn off chamber cooling fan\n", - "layer_change_gcode": ";LAYER:{layer_num+1}\n", - "change_filament_gcode": "", - "machine_pause_gcode": "M600" -} diff --git a/resources/profiles/Elegoo/machine/ECC/fdm_machine_ecc_common.json b/resources/profiles/Elegoo/machine/ECC/fdm_machine_ecc_common.json deleted file mode 100644 index 8a79e8a07cd..00000000000 --- a/resources/profiles/Elegoo/machine/ECC/fdm_machine_ecc_common.json +++ /dev/null @@ -1,130 +0,0 @@ -{ - "type": "machine", - "name": "fdm_machine_ecc_common", - "from": "system", - "instantiation": "false", - "nozzle_diameter": [ - "0.4" - ], - "printer_variant": "0.4", - "support_chamber_temp_control": "0", - "printer_technology": "FFF", - "printer_notes": "", - "deretraction_speed": [ - "40" - ], - "extruder_colour": [ - "#FCE94F" - ], - "extruder_offset": [ - "0x0" - ], - "gcode_flavor": "marlin", - "silent_mode": "0", - "machine_max_acceleration_e": [ - "5000" - ], - "machine_max_acceleration_extruding": [ - "10000" - ], - "machine_max_acceleration_retracting": [ - "1000" - ], - "machine_max_acceleration_x": [ - "10000" - ], - "machine_max_acceleration_y": [ - "10000" - ], - "machine_max_acceleration_z": [ - "100" - ], - "machine_max_speed_e": [ - "60" - ], - "machine_max_speed_x": [ - "500" - ], - "machine_max_speed_y": [ - "500" - ], - "machine_max_speed_z": [ - "10" - ], - "machine_max_jerk_e": [ - "5" - ], - "machine_max_jerk_x": [ - "8" - ], - "machine_max_jerk_y": [ - "8" - ], - "machine_max_jerk_z": [ - "3" - ], - "machine_min_extruding_rate": [ - "0" - ], - "machine_min_travel_rate": [ - "0" - ], - "max_layer_height": [ - "0.28" - ], - "min_layer_height": [ - "0.08" - ], - "printable_height": "250", - "extruder_clearance_radius": "65", - "extruder_clearance_height_to_rod": "36", - "extruder_clearance_height_to_lid": "140", - "printer_settings_id": "Elegoo", - "disable_m73": "1", - "retraction_minimum_travel": [ - "2" - ], - "retract_before_wipe": [ - "70%" - ], - "retract_when_changing_layer": [ - "1" - ], - "retraction_length": [ - "5" - ], - "retract_length_toolchange": [ - "1" - ], - "z_hop": [ - "0" - ], - "retract_restart_extra": [ - "0" - ], - "retract_restart_extra_toolchange": [ - "0" - ], - "retraction_speed": [ - "60" - ], - "cooling_tube_retraction": "90", - "parking_pos_retraction": "90", - "single_extruder_multi_material": "1", - "support_air_filtration": "0", - "wipe": [ - "1" - ], - "z_hop_types": [ - "Auto Lift" - ], - "default_filament_profile": [], - "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\nG92 E0\n", - "layer_change_gcode": "", - "machine_start_gcode": "", - "machine_end_gcode": "", - "change_filament_gcode": "", - "purge_in_prime_tower": "0", - "manual_filament_change": "1", - "enable_filament_ramming": "0" -} diff --git a/resources/profiles/Elegoo/machine/ECC2/Elegoo Centauri Carbon 2 0.4 nozzle.json b/resources/profiles/Elegoo/machine/ECC2/Elegoo Centauri Carbon 2 0.4 nozzle.json index c75d4a18f89..a190c292c3f 100644 --- a/resources/profiles/Elegoo/machine/ECC2/Elegoo Centauri Carbon 2 0.4 nozzle.json +++ b/resources/profiles/Elegoo/machine/ECC2/Elegoo Centauri Carbon 2 0.4 nozzle.json @@ -65,18 +65,30 @@ "bed_mesh_min": "10,10", "bed_mesh_probe_distance": "22,22", "disable_m73": "0", + "machine_max_acceleration_extruding": [ + "20000", + "20000" + ], + "machine_max_acceleration_z": [ + "500", + "500" + ], + "machine_max_jerk_e": [ + "1", + "1" + ], "machine_max_jerk_x": [ - "20", + "9", "9" ], "machine_max_jerk_y": [ - "20", + "9", "9" ], - "change_filament_gcode": "\n;==========CC2_CHANGE_FILAMENT_GCODE==========\n;===== date: 2025-10-16-001 =====================\nM106 S0\nM106 P2 S0\nG1 Z{min(max_layer_z+3, printable_height+0.5)} F1200\nM6211 T[next_extruder] L[flush_length] M{old_filament_e_feedrate} N{new_filament_e_feedrate} Q[old_filament_temp] R[nozzle_temperature_range_high] S[new_filament_temp]\nT[next_extruder]\n", - "layer_change_gcode": "M73 L{layer_num+1}\n;LAYER:{layer_num+1}\n", - "machine_end_gcode": ";===== CC&CC2_END_GCODE ================\n;===== date: 2025-10-16-001 =====================\n\nM104 S0\nM140 S0 ;Turn-off bed\nM83\nG92 E0 ; zero the extruder\nG1 E-1.5 F1800\nG2 I0 J1 Z{max_layer_z+0.5} F3000 ; lower z a little\nM106 S0\nM106 P2 S0\nG90\n{if max_layer_z > 75}G1 Z{min(max_layer_z+5, printable_height+0.5)} F20000{else}G1 Z80 F20000 {endif}; Move print head up \nG180 S9\nM84\n", - "machine_start_gcode": ";===== CC2_START_GCODE ================\n;===== date: 2025-11-06-001 =====================\n\nG90\nM104 S140\nM140 S[bed_temperature_initial_layer_single]\nM190 S[bed_temperature_initial_layer_single] A\nM106 S0\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 FROM_SLICER=1\nM204 S{min(20000,max(1000,outer_wall_acceleration))} ;Call exterior wall print acceleration\nG28\nM109 S[nozzle_temperature_initial_layer]\nM6211 A1 L200 T[initial_no_support_extruder] Q[nozzle_temperature_initial_layer] R[nozzle_temperature_initial_layer] S[nozzle_temperature_initial_layer]\nT[initial_no_support_extruder]\n\n{if first_layer_print_min[1] > 0.5}\nG180 S7\nG1 X{print_bed_max[0]*0.5-1} Y-1.2 F20000\nG1 Z0.5 F900\nM109 S[nozzle_temperature_initial_layer]\nM83\nG92 E0 ;Reset Extruder\nG1 E6 F{min(1200, max(120, filament_max_volumetric_speed[initial_no_support_extruder]*60/2/2.5043))} \nM106 S200\nG1 X{print_bed_max[0]*0.5-41} E20 F{min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]*60/2/2.5043))} \nG1 F6000\nG1 X{print_bed_max[0]*0.5-46} E0.8\n{else}\nG1 E30 F{min(1200, max(120, filament_max_volumetric_speed[initial_no_support_extruder]*60/2/2.5043))}\n{endif}\nM106 S0\nG180 S8\nG1 F20000\nG92 E0 ;Reset Extruder\n;LAYER_COUNT:[total_layer_count]\n;LAYER:0", + "change_filament_gcode": "\n;==========CC2_CHANGE_FILAMENT_GCODE==========\n;===== date: 2026-01-16-001 =====================\nM106 S0\nM106 P2 S0\nG1 Z{min(max_layer_z+3, printable_height+0.5)} F1200\nM6211 T[next_extruder] L[flush_length] M{old_filament_e_feedrate} N{new_filament_e_feedrate} Q[old_filament_temp] R[nozzle_temperature_range_high] S[new_filament_temp]\nT[next_extruder]\n", + "layer_change_gcode": "M73 L{layer_num+1}\n;LAYER:{layer_num+1}\nSET_PRINT_STATS_INFO CURRENT_LAYER={layer_num + 1}", + "machine_end_gcode": ";===== CC2_END_GCODE ================\n;===== date: 2026-01-16-001 =====================\n\n\nM140 S0 ;Turn-off bed\nM83\nG92 E0 ; zero the extruder\nG1 E-1.5 F1800\nG2 I0 J1 Z{max_layer_z+0.5} F3000 ; lower z a little\nM106 S0\nM106 P2 S0\nG90\n{if max_layer_z > 75}G1 Z{min(max_layer_z+5, printable_height+0.5)} F20000{else}G1 Z80 F20000 {endif}; Move print head up \nG180 S9\nM104 S0\nM84\n", + "machine_start_gcode": ";===== CC2_START_GCODE ================\n;===== date: 2026-01-16-001 =====================\n\nG90\nM104 S140\nM140 S[bed_temperature_initial_layer_single]\nM190 S[bed_temperature_initial_layer_single] A\nM106 S0\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 FROM_SLICER=1\nM204 S{min(20000,max(1000,outer_wall_acceleration))} ;Call exterior wall print acceleration\nG28\nM109 S[nozzle_temperature_initial_layer]\nM6211 A1 L200 T[initial_no_support_extruder] Q[nozzle_temperature_initial_layer] R[nozzle_temperature_initial_layer] S[nozzle_temperature_initial_layer]\nT[initial_no_support_extruder]\n\n{if first_layer_print_min[1] > 0.5}\nG180 S7\nG1 X{print_bed_max[0]*0.5-1} Y-1.2 F20000\nG1 Z0.5 F900\nM109 S[nozzle_temperature_initial_layer]\nM83\nG92 E0 ;Reset Extruder\nG1 E6 F{min(1200, max(120, filament_max_volumetric_speed[initial_no_support_extruder]*60/2/2.5043))} \nM106 S200\nG1 X{print_bed_max[0]*0.5-41} E20 F{min(12000, max(1200, filament_max_volumetric_speed[initial_no_support_extruder]*60/2/2.5043))} \nG1 F6000\nG1 X{print_bed_max[0]*0.5-46} E0.8\n{else}\nG1 E30 F{min(1200, max(120, filament_max_volumetric_speed[initial_no_support_extruder]*60/2/2.5043))}\n{endif}\nM106 S0\nG180 S8\nG1 F20000\nG92 E0 ;Reset Extruder\nSET_PRINT_STATS_INFO TOTAL_LAYER=[total_layer_count]\n;LAYER_COUNT:[total_layer_count]\n;LAYER:0", "retract_restart_extra_toolchange": [ "0.5" ] diff --git a/resources/profiles/Elegoo/machine/ECC2/Elegoo Centauri Carbon 2.json b/resources/profiles/Elegoo/machine/ECC2/Elegoo Centauri Carbon 2.json index d2424257990..c31863032f1 100644 --- a/resources/profiles/Elegoo/machine/ECC2/Elegoo Centauri Carbon 2.json +++ b/resources/profiles/Elegoo/machine/ECC2/Elegoo Centauri Carbon 2.json @@ -8,5 +8,5 @@ "bed_model": "elegoo_centuri_carbon_buildplate_model.stl", "bed_texture": "elegoo_centuri_carbon_buildplate_texture.svg", "hotend_model": "", - "default_materials": "Elegoo ASA @0.2 nozzle;Elegoo ASA @ECC2;Elegoo PETG @0.2 nozzle;Elegoo PETG @ECC2;Elegoo PETG PRO @0.2 nozzle;Elegoo PETG PRO @ECC2;Elegoo PLA @0.2 nozzle;Elegoo PLA Matte @0.2 nozzle;Elegoo PLA Matte @ECC2;Elegoo PLA PRO @0.2 nozzle;Elegoo PLA PRO @ECC2;Elegoo PLA Silk @0.2 nozzle;Elegoo PLA Silk @ECC2;Elegoo PLA-CF @ECC2;Elegoo PLA @ECC2;Elegoo PLA+ @0.2 nozzle;Elegoo PLA+ @ECC2;Elegoo Rapid PETG @0.2 nozzle;Elegoo Rapid PETG @ECC2;Elegoo Rapid PLA+ @0.2 nozzle;Elegoo Rapid PLA+ @ECC2;Elegoo TPU 95A @ECC2;Elegoo PLA Basic @0.2 nozzle;Elegoo PLA Basic @ECC2;Elegoo PLA Galaxy @ECC2;Elegoo PLA Marble @ECC2; Elegoo PLA Sparkle @ECC2;Elegoo PLA Wood @ECC2;Elegoo Rapid TPU 95A @ECC2;Elegoo ABS @0.2 nozzle;Elegoo ABS @ECC2;Elegoo PAHT-CF @ECC2;Elegoo PC @0.2 nozzle;Elegoo PC @ECC2;Elegoo PC-FR @0.2 nozzle;Elegoo PC-FR @ECC2;Elegoo PETG-CF @ECC2;Elegoo PETG-GF @ECC2;Elegoo PETG Translucent @0.2 nozzle;Elegoo PETG Translucent @ECC2" + "default_materials": "Elegoo ASA @0.2 nozzle;Elegoo ASA @ECC2;Elegoo PETG @0.2 nozzle;Elegoo PETG @ECC2;Elegoo PETG PRO @0.2 nozzle;Elegoo PETG PRO @ECC2;Elegoo PLA @0.2 nozzle;Elegoo PLA Matte @0.2 nozzle;Elegoo PLA Matte @ECC2;Elegoo PLA PRO @0.2 nozzle;Elegoo PLA PRO @ECC2;Elegoo PLA Silk @0.2 nozzle;Elegoo PLA Silk @ECC2;Elegoo PLA-CF @ECC2;Elegoo PLA @ECC2;Elegoo PLA+ @0.2 nozzle;Elegoo PLA+ @ECC2;Elegoo Rapid PETG @0.2 nozzle;Elegoo Rapid PETG @ECC2;Elegoo Rapid PLA+ @0.2 nozzle;Elegoo Rapid PLA+ @ECC2;Elegoo TPU 95A @ECC2;Elegoo PLA Basic @0.2 nozzle;Elegoo PLA Basic @ECC2;Elegoo PLA Galaxy @ECC2;Elegoo PLA Marble @ECC2;Elegoo PLA Sparkle @ECC2;Elegoo PLA Wood @ECC2;Elegoo Rapid TPU 95A @ECC2;Elegoo ABS @0.2 nozzle;Elegoo ABS @ECC2;Elegoo PAHT-CF @ECC2;Elegoo PC @0.2 nozzle;Elegoo PC @ECC2;Elegoo PC-FR @0.2 nozzle;Elegoo PC-FR @ECC2;Elegoo PETG-CF @ECC2;Elegoo PETG-GF @ECC2;Elegoo PETG Translucent @0.2 nozzle;Elegoo PETG Translucent @ECC2;Elegoo ASA-CF @ECC2;Elegoo PET-CF @ECC2;Elegoo PETG HF @ECC2;Elegoo PLA Glow @ECC2;Elegoo PLA Translucent2 @ECC2" } diff --git a/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 0.4 nozzle.json b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 0.4 nozzle.json index cc262b980e0..0cc544c1b3a 100644 --- a/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 0.4 nozzle.json +++ b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 0.4 nozzle.json @@ -1,12 +1,13 @@ { "type": "machine", + "setting_id": "EN104", "name": "Elegoo Neptune 0.4 nozzle", - "inherits": "fdm_elegoo_common", "from": "system", - "setting_id": "GM001", "instantiation": "true", + "inherits": "Elegoo Neptune 2 0.4 nozzle", + "host_type": "elegoolink", "printer_model": "Elegoo Neptune", - "default_print_profile": "0.20mm Standard @Elegoo Neptune", + "default_print_profile": "0.20mm Standard @Elegoo Neptune 0.4 nozzle", "nozzle_diameter": [ "0.4" ], @@ -16,99 +17,5 @@ "210x210", "0x210" ], - "printable_height": "200", - "nozzle_type": "hardened_steel", - "auxiliary_fan": "0", - "machine_max_acceleration_extruding": [ - "500", - "500" - ], - "machine_max_acceleration_retracting": [ - "1000", - "1000" - ], - "machine_max_acceleration_travel": [ - "500", - "500" - ], - "machine_max_acceleration_x": [ - "500", - "500" - ], - "machine_max_acceleration_y": [ - "500", - "500" - ], - "machine_max_acceleration_z": [ - "100", - "100" - ], - "machine_max_speed_e": [ - "60", - "60" - ], - "machine_max_speed_x": [ - "500", - "500" - ], - "machine_max_speed_y": [ - "500", - "500" - ], - "machine_max_speed_z": [ - "10", - "10" - ], - "machine_max_jerk_e": [ - "5", - "5" - ], - "machine_max_jerk_x": [ - "8", - "8" - ], - "machine_max_jerk_y": [ - "8", - "8" - ], - "machine_max_jerk_z": [ - "0.4", - "0.4" - ], - "max_layer_height": [ - "0.32" - ], - "min_layer_height": [ - "0.08" - ], - "printer_settings_id": "Elegoo", - "retraction_minimum_travel": [ - "2" - ], - "retract_before_wipe": [ - "70%" - ], - "retraction_length": [ - "2.5" - ], - "retraction_speed": [ - "60" - ], - "retract_length_toolchange": [ - "1" - ], - "deretraction_speed": [ - "40" - ], - "single_extruder_multi_material": "1", - "change_filament_gcode": "", - "machine_pause_gcode": "M0", - "default_filament_profile": [ - "Generic PLA @Elegoo" - ], - "machine_start_gcode": "M413 S0 ; disable Power Loss Recovery\nG90 ; use absolute coordinates\nM83 ; extruder relative mode\nM104 S120 ; set temporary nozzle temp to prevent oozing during homing and auto bed leveling\nM140 S[bed_temperature_initial_layer_single] ; set final bed temp\nG4 S10 ; allow partial nozzle warmup\nG28 ; home all axis\n;G29 ; run abl mesh\nM420 S1 ; load mesh\nG1 Z50 F240\nG1 X2 Y10 F3000\nM104 S[nozzle_temperature_initial_layer] ; set final nozzle temp\nM190 S[bed_temperature_initial_layer_single] ; wait for bed temp to stabilize\nM109 S[nozzle_temperature_initial_layer] ; wait for nozzle temp to stabilize\nG1 Z0.28 F240\nG92 E0\nG1 Y140 E10 F1500 ; prime the nozzle\nG1 X2.3 F5000\nG92 E0\nG1 Y10 E10 F1200 ; prime the nozzle\nG92 E0", - "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < printable_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors", - "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\nG92 E0\n;[layer_z]\n\n", - "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", - "scan_first_layer": "0" + "printable_height": "200" } diff --git a/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 0.6 nozzle.json b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 0.6 nozzle.json new file mode 100644 index 00000000000..871822ac527 --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 0.6 nozzle.json @@ -0,0 +1,29 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 0.6 nozzle", + "inherits": "Elegoo Neptune 0.4 nozzle", + "from": "system", + "setting_id": "EN106", + "instantiation": "true", + "nozzle_diameter": [ + "0.6" + ], + "printer_model": "Elegoo Neptune", + "printer_variant": "0.6", + "default_filament_profile": [ + "Elegoo PLA @EN2 Series" + ], + "default_print_profile": "0.30mm Standard @Elegoo Neptune 0.6 nozzle", + "retraction_minimum_travel": [ + "1.2" + ], + "wipe_distance": [ + "1.8" + ], + "max_layer_height": [ + "0.42" + ], + "min_layer_height": [ + "0.12" + ] +} diff --git a/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 0.8 nozzle.json b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 0.8 nozzle.json new file mode 100644 index 00000000000..05e4e9480a0 --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 0.8 nozzle.json @@ -0,0 +1,32 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 0.8 nozzle", + "inherits": "Elegoo Neptune 0.4 nozzle", + "from": "system", + "setting_id": "EN108", + "instantiation": "true", + "nozzle_diameter": [ + "0.8" + ], + "printer_model": "Elegoo Neptune", + "printer_variant": "0.8", + "default_filament_profile": [ + "Elegoo PLA @EN2 Series" + ], + "default_print_profile": "0.40mm Standard @Elegoo Neptune 0.8 nozzle", + "retraction_minimum_travel": [ + "1.6" + ], + "wipe_distance": [ + "2.0" + ], + "max_layer_height": [ + "0.56" + ], + "min_layer_height": [ + "0.16" + ], + "retract_length_toolchange": [ + "3" + ] +} diff --git a/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2 0.4 nozzle.json b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2 0.4 nozzle.json index b32b3b84a35..21f1e4eacd7 100644 --- a/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2 0.4 nozzle.json +++ b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2 0.4 nozzle.json @@ -1,63 +1,63 @@ { "type": "machine", + "setting_id": "EN204", "name": "Elegoo Neptune 2 0.4 nozzle", - "inherits": "fdm_elegoo_common", "from": "system", - "setting_id": "GM001", "instantiation": "true", + "inherits": "fdm_elegoo_common", + "host_type": "elegoolink", "printer_model": "Elegoo Neptune 2", - "default_print_profile": "0.20mm Standard @Elegoo Neptune2", + "default_print_profile": "0.20mm Standard @Elegoo Neptune 0.4 nozzle", "nozzle_diameter": [ "0.4" ], "printable_area": [ "0x0", - "220x0", - "220x220", - "0x220" + "235x0", + "235x235", + "0x235" ], "printable_height": "250", - "nozzle_type": "hardened_steel", "auxiliary_fan": "0", "machine_max_acceleration_extruding": [ - "500", - "500" + "1000", + "1000" ], "machine_max_acceleration_retracting": [ "1000", "1000" ], "machine_max_acceleration_travel": [ - "500", - "500" + "1000", + "1000" ], "machine_max_acceleration_x": [ - "500", - "500" + "1000", + "1000" ], "machine_max_acceleration_y": [ - "500", - "500" + "1000", + "1000" ], "machine_max_acceleration_z": [ "100", "100" ], "machine_max_speed_e": [ - "60", - "60" + "70", + "70" ], "machine_max_speed_x": [ - "500", - "500" + "300", + "300" ], "machine_max_speed_y": [ - "500", - "500" + "300", + "300" ], "machine_max_speed_z": [ - "10", - "10" + "20", + "20" ], "machine_max_jerk_e": [ "5", @@ -80,12 +80,11 @@ "0.4" ], "max_layer_height": [ - "0.32" + "0.28" ], "min_layer_height": [ "0.08" ], - "printer_settings_id": "Elegoo", "retraction_minimum_travel": [ "2" ], @@ -93,7 +92,7 @@ "70%" ], "retraction_length": [ - "2.5" + "5" ], "retraction_speed": [ "60" @@ -106,13 +105,11 @@ ], "single_extruder_multi_material": "1", "change_filament_gcode": "", - "machine_pause_gcode": "M0", + "machine_pause_gcode": "", "default_filament_profile": [ - "Generic PLA @Elegoo" + "Elegoo PLA @EN2 Series" ], - "machine_start_gcode": "M413 S0 ; disable Power Loss Recovery\nG90 ; use absolute coordinates\nM83 ; extruder relative mode\nM104 S120 ; set temporary nozzle temp to prevent oozing during homing and auto bed leveling\nM140 S[bed_temperature_initial_layer_single] ; set final bed temp\nG4 S10 ; allow partial nozzle warmup\nG28 ; home all axis\n;G29 ; run abl mesh\nM420 S1 ; load mesh\nG1 Z50 F240\nG1 X2 Y10 F3000\nM104 S[nozzle_temperature_initial_layer] ; set final nozzle temp\nM190 S[bed_temperature_initial_layer_single] ; wait for bed temp to stabilize\nM109 S[nozzle_temperature_initial_layer] ; wait for nozzle temp to stabilize\nG1 Z0.28 F240\nG92 E0\nG1 Y140 E10 F1500 ; prime the nozzle\nG1 X2.3 F5000\nG92 E0\nG1 Y10 E10 F1200 ; prime the nozzle\nG92 E0", + "machine_start_gcode": ";;===== date: 20240520 =====================\n;M413 S0 ; disable Power Loss Recovery\n;[printer_model]\n;initial_filament:{filament_type[initial_extruder]}\n;curr_bed_type={curr_bed_type}\nM220 S100 ;Set the feed speed to 100%\nM221 S100 ;Set the flow rate to 100%\nM104 S140\nM190 S[bed_temperature_initial_layer_single]\nG90\nG28 ; home all axis\n;G29 ; run abl mesh\nM420 S1 ; load mesh\n;\nG1 Z10 F300\nG1 X{print_bed_max[0]*0.5-50} Y0.5 F6000\nG1 Z0.4 F300\nM109 S[nozzle_temperature_initial_layer]\nG92 E0 ;Reset Extruder\nG1 X{print_bed_max[0]*0.5+50} E30 F400 ;Draw the first line\nG1 Z0.6 F120.0 ;Move to side a little\nG1 X{print_bed_max[0]*0.5+47} F3000\nG92 E0 ;Reset Extruder\n;LAYER_COUNT:[total_layer_count]\n;LAYER:0\n", "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < printable_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors", - "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\nG92 E0\n;[layer_z]\n\n", - "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", "scan_first_layer": "0" } diff --git a/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2 0.6 nozzle.json b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2 0.6 nozzle.json new file mode 100644 index 00000000000..289702899a9 --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2 0.6 nozzle.json @@ -0,0 +1,29 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 2 0.6 nozzle", + "inherits": "Elegoo Neptune 2 0.4 nozzle", + "from": "system", + "setting_id": "EN206", + "instantiation": "true", + "nozzle_diameter": [ + "0.6" + ], + "printer_model": "Elegoo Neptune 2", + "printer_variant": "0.6", + "default_filament_profile": [ + "Elegoo PLA @EN2 Series" + ], + "default_print_profile": "0.30mm Standard @Elegoo Neptune 0.6 nozzle", + "retraction_minimum_travel": [ + "1.2" + ], + "wipe_distance": [ + "1.8" + ], + "max_layer_height": [ + "0.42" + ], + "min_layer_height": [ + "0.12" + ] +} diff --git a/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2 0.8 nozzle.json b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2 0.8 nozzle.json new file mode 100644 index 00000000000..115eee62336 --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2 0.8 nozzle.json @@ -0,0 +1,32 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 2 0.8 nozzle", + "inherits": "Elegoo Neptune 2 0.4 nozzle", + "from": "system", + "setting_id": "EN208", + "instantiation": "true", + "nozzle_diameter": [ + "0.8" + ], + "printer_model": "Elegoo Neptune 2", + "printer_variant": "0.8", + "default_filament_profile": [ + "Elegoo PLA @EN2 Series" + ], + "default_print_profile": "0.40mm Standard @Elegoo Neptune 0.8 nozzle", + "retraction_minimum_travel": [ + "1.6" + ], + "wipe_distance": [ + "2.0" + ], + "max_layer_height": [ + "0.56" + ], + "min_layer_height": [ + "0.16" + ], + "retract_length_toolchange": [ + "3" + ] +} diff --git a/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2.json b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2.json index 85a1ec78279..44da4b00728 100644 --- a/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2.json +++ b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2.json @@ -1,12 +1,12 @@ { "type": "machine_model", "name": "Elegoo Neptune 2", - "model_id": "Elegoo-Neptune-2", - "nozzle_diameter": "0.4", + "model_id": "Elegoo-N2", + "nozzle_diameter": "0.4;0.6;0.8", "machine_tech": "FFF", "family": "Elegoo", "bed_model": "elegoo_neptune2_buildplate_model.stl", "bed_texture": "elegoo_neptune2_buildplate_texture.svg", "hotend_model": "", - "default_materials": "Generic ABS @Elegoo;Generic PETG @Elegoo;Generic PLA @Elegoo" + "default_materials": "Elegoo ASA @0.2 nozzle;Elegoo ASA @EN2 Series;Elegoo PETG @0.2 nozzle;Elegoo PETG @EN2 Series;Elegoo PETG PRO @0.2 nozzle;Elegoo PETG PRO @EN2 Series;Elegoo PLA @0.2 nozzle;Elegoo PLA Matte @0.2 nozzle;Elegoo PLA Matte @EN2 Series;Elegoo PLA PRO @0.2 nozzle;Elegoo PLA PRO @EN2 Series;Elegoo PLA Silk @0.2 nozzle;Elegoo PLA Silk @EN2 Series;Elegoo PLA-CF @EN2 Series;Elegoo PLA @EN2 Series;Elegoo PLA+ @0.2 nozzle;Elegoo PLA+ @EN2 Series;Elegoo Rapid PETG @0.2 nozzle;Elegoo Rapid PETG @EN2 Series;Elegoo Rapid PLA+ @0.2 nozzle;Elegoo Rapid PLA+ @EN2 Series;Elegoo PLA Basic @0.2 nozzle;Elegoo PLA Basic @EN2 Series;Elegoo PLA Galaxy @EN2 Series;Elegoo PLA Marble @EN2 Series;Elegoo PLA Sparkle @EN2 Series;Elegoo PLA Wood @EN2 Series;Elegoo Rapid TPU 95A @EN2 Series;Elegoo PETG-CF @EN2 Series;Elegoo PETG-GF @EN2 Series;Elegoo PETG Translucent @0.2 nozzle;Elegoo PETG Translucent @EN2 Series" } diff --git a/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2D 0.4 nozzle.json b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2D 0.4 nozzle.json index 021354d972c..52cbbe6ad9f 100644 --- a/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2D 0.4 nozzle.json +++ b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2D 0.4 nozzle.json @@ -1,12 +1,13 @@ { "type": "machine", + "setting_id": "EN2D04", "name": "Elegoo Neptune 2D 0.4 nozzle", - "inherits": "fdm_elegoo_common", "from": "system", - "setting_id": "GM001", "instantiation": "true", + "inherits": "Elegoo Neptune 2 0.4 nozzle", + "host_type": "elegoolink", "printer_model": "Elegoo Neptune 2D", - "default_print_profile": "0.20mm Standard @Elegoo Neptune2D", + "default_print_profile": "0.20mm Standard @Elegoo Neptune 0.4 nozzle", "extruder_colour": [ "#FCE94F", "#FCE94F" @@ -21,52 +22,51 @@ ], "printable_area": [ "0x0", - "220x0", - "220x220", - "0x220" + "235x0", + "235x235", + "0x235" ], "printable_height": "250", - "nozzle_type": "hardened_steel", "auxiliary_fan": "0", "machine_max_acceleration_extruding": [ - "500", - "500" + "1000", + "1000" ], "machine_max_acceleration_retracting": [ "1000", "1000" ], "machine_max_acceleration_travel": [ - "500", - "500" + "1000", + "1000" ], "machine_max_acceleration_x": [ - "500", - "500" + "1000", + "1000" ], "machine_max_acceleration_y": [ - "500", - "500" + "1000", + "1000" ], "machine_max_acceleration_z": [ "100", "100" ], "machine_max_speed_e": [ - "60", - "60" + "70", + "70" ], "machine_max_speed_x": [ - "500", - "500" + "300", + "300" ], "machine_max_speed_y": [ - "500", - "500" + "300", + "300" ], "machine_max_speed_z": [ - "10", - "10" + "20", + "20" ], "machine_max_jerk_e": [ "5", @@ -85,14 +85,13 @@ "0.4" ], "max_layer_height": [ - "0.32", - "0.32" + "0.28", + "0.28" ], "min_layer_height": [ "0.08", "0.08" ], - "printer_settings_id": "Elegoo", "retraction_minimum_travel": [ "2", "2" @@ -118,14 +117,11 @@ "40" ], "single_extruder_multi_material": "1", - "change_filament_gcode": "", - "machine_pause_gcode": "M0", "default_filament_profile": [ - "Generic PLA @Elegoo" + "Elegoo PLA @EN2 Series" ], - "machine_start_gcode": "T[initial_tool] ; set active extruder\nM413 S0 ; disable Power Loss Recovery\nG90 ; use absolute coordinates\nM83 ; extruder relative mode\nM140 S[bed_temperature_initial_layer_single] ; set final bed temp\nM104 S150 ; set temporary nozzle temp to prevent oozing during homing and auto bed leveling\nG4 S10 ; allow partial nozzle warmup\nG28 ; home all axis\n;G29 ; auto bed levelling - remove ; at beginning of line to enable\n;M420 S1 ; enable mesh - remove ; at beginning of line to enable\nG1 Z50 F240\nG1 X2 Y10 F3000\nM104 S[nozzle_temperature_initial_layer] ; set final nozzle temp\nM190 S[bed_temperature_initial_layer_single] ; wait for bed temp to stabilize\nM109 S[nozzle_temperature_initial_layer] ; wait for nozzle temp to stabilize\nG1 Z0.28 F240 ; move down to prime nozzle\nG92 E0 ; reset extruder\nG1 E90 ; load filament\nG92 E0 ; reset extruder\nG1 Y140 E10 F1500 ; prime the nozzle\nG1 X2.3 F5000 ; move over for second prime line\nG92 E0 ; reset extruder\nG1 Y10 E10 F1200 ; prime the nozzle\nG92 E0 ; reset extruder", - "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\nG1 E-80 F2000 ; unload filament\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < printable_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors", - "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\nG92 E0\n;[layer_z]\n\n", - "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", + "machine_start_gcode": ";;===== date: 20240520 =====================\nT[initial_tool] ; set active extruder\n;M413 S0 ; disable Power Loss Recovery\n;[printer_model]\n;initial_filament:{filament_type[initial_extruder]}\n;curr_bed_type={curr_bed_type}\nM220 S100 ;Set the feed speed to 100%\nM221 S100 ;Set the flow rate to 100%\nM104 S140 ; set temporary nozzle temp to prevent oozing during homing and auto bed leveling\nM190 S[bed_temperature_initial_layer_single] ; wait for bed temp to stabilize\nG90 \nM83 ; extruder relative mode\nG28 ; home all axis\n;G29 ; auto bed levelling - remove ; at beginning of line to enable\nM420 S1 ; enable mesh - remove ; at beginning of line to enable\n;\nG1 Z10 F300\nG1 X{print_bed_max[0]*0.5-50} Y0.5 F6000\nG1 Z0.4 F300\n;\nG92 E0 ; reset extruder\nG1 E90 F600 ; load filament\nM109 S[nozzle_temperature_initial_layer]\nG92 E0 ;Reset Extruder\n;\nG1 X{print_bed_max[0]*0.5+50} E30 F400 ;Draw the first line\nG1 Z0.6 F120.0 ;Move to side a little\nG1 X{print_bed_max[0]*0.5+47} F3000\nG92 E0 ;Reset Extruder\n;LAYER_COUNT:[total_layer_count]\n;LAYER:0\n;", + "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n;If prime tower is not enabled, perform the following refuelling G-Code.\n{if enable_prime_tower != true}G1 E-80 F2000 ; unload filament {endif}\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < printable_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors", + "change_filament_gcode": ";If prime tower is not enabled, perform the following refuelling G-Code.\n{if enable_prime_tower != true} \nM83\nG92 E0\nG1 E-5 Z{layer_z+0.4} F1200\nG1 E-85 F1200\nT[next_extruder]\nG93 E0\nG1 E90 F1200\n;\n{endif}", "scan_first_layer": "0" } diff --git a/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2D 0.6 nozzle.json b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2D 0.6 nozzle.json new file mode 100644 index 00000000000..80464a84852 --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2D 0.6 nozzle.json @@ -0,0 +1,29 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 2D 0.6 nozzle", + "inherits": "Elegoo Neptune 2D 0.4 nozzle", + "from": "system", + "setting_id": "EN2D06", + "instantiation": "true", + "nozzle_diameter": [ + "0.6" + ], + "printer_model": "Elegoo Neptune 2D", + "printer_variant": "0.6", + "default_filament_profile": [ + "Elegoo PLA @EN2 Series" + ], + "default_print_profile": "0.30mm Standard @Elegoo Neptune 0.6 nozzle", + "retraction_minimum_travel": [ + "1.2" + ], + "wipe_distance": [ + "1.8" + ], + "max_layer_height": [ + "0.42" + ], + "min_layer_height": [ + "0.12" + ] +} diff --git a/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2D 0.8 nozzle.json b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2D 0.8 nozzle.json new file mode 100644 index 00000000000..60649c1baac --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2D 0.8 nozzle.json @@ -0,0 +1,32 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 2D 0.8 nozzle", + "inherits": "Elegoo Neptune 2D 0.4 nozzle", + "from": "system", + "setting_id": "EN2D08", + "instantiation": "true", + "nozzle_diameter": [ + "0.8" + ], + "printer_model": "Elegoo Neptune 2D", + "printer_variant": "0.8", + "default_filament_profile": [ + "Elegoo PLA @EN2 Series" + ], + "default_print_profile": "0.40mm Standard @Elegoo Neptune 0.8 nozzle", + "retraction_minimum_travel": [ + "1.6" + ], + "wipe_distance": [ + "2.0" + ], + "max_layer_height": [ + "0.56" + ], + "min_layer_height": [ + "0.16" + ], + "retract_length_toolchange": [ + "3" + ] +} diff --git a/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2D.json b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2D.json index 7ff670044e9..7ea1ac7ffcf 100644 --- a/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2D.json +++ b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2D.json @@ -1,12 +1,12 @@ { "type": "machine_model", "name": "Elegoo Neptune 2D", - "model_id": "Elegoo-Neptune-2D", - "nozzle_diameter": "0.4", + "model_id": "Elegoo-N2D", + "nozzle_diameter": "0.4;0.6;0.8", "machine_tech": "FFF", "family": "Elegoo", "bed_model": "elegoo_neptune2d_buildplate_model.stl", "bed_texture": "elegoo_neptune2d_buildplate_texture.svg", "hotend_model": "", - "default_materials": "Generic ABS @Elegoo;Generic PETG @Elegoo;Generic PLA @Elegoo" + "default_materials": "Elegoo ASA @0.2 nozzle;Elegoo ASA @EN2 Series;Elegoo PETG @0.2 nozzle;Elegoo PETG @EN2 Series;Elegoo PETG PRO @0.2 nozzle;Elegoo PETG PRO @EN2 Series;Elegoo PLA @0.2 nozzle;Elegoo PLA Matte @0.2 nozzle;Elegoo PLA Matte @EN2 Series;Elegoo PLA PRO @0.2 nozzle;Elegoo PLA PRO @EN2 Series;Elegoo PLA Silk @0.2 nozzle;Elegoo PLA Silk @EN2 Series;Elegoo PLA-CF @EN2 Series;Elegoo PLA @EN2 Series;Elegoo PLA+ @0.2 nozzle;Elegoo PLA+ @EN2 Series;Elegoo Rapid PETG @0.2 nozzle;Elegoo Rapid PETG @EN2 Series;Elegoo Rapid PLA+ @0.2 nozzle;Elegoo Rapid PLA+ @EN2 Series;Elegoo PLA Basic @0.2 nozzle;Elegoo PLA Basic @EN2 Series;Elegoo PLA Galaxy @EN2 Series;Elegoo PLA Marble @EN2 Series;Elegoo PLA Sparkle @EN2 Series;Elegoo PLA Wood @EN2 Series;Elegoo Rapid TPU 95A @EN2 Series;Elegoo PETG-CF @EN2 Series;Elegoo PETG-GF @EN2 Series;Elegoo PETG Translucent @0.2 nozzle;Elegoo PETG Translucent @EN2 Series" } diff --git a/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2S 0.4 nozzle.json b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2S 0.4 nozzle.json index c07bfe08d02..78e407fbc6f 100644 --- a/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2S 0.4 nozzle.json +++ b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2S 0.4 nozzle.json @@ -1,114 +1,24 @@ { "type": "machine", + "setting_id": "EN2S04", "name": "Elegoo Neptune 2S 0.4 nozzle", - "inherits": "fdm_elegoo_common", "from": "system", - "setting_id": "GM001", "instantiation": "true", + "inherits": "fdm_elegoo_common", + "host_type": "elegoolink", "printer_model": "Elegoo Neptune 2S", - "default_print_profile": "0.20mm Standard @Elegoo Neptune2S", + "default_print_profile": "0.20mm Standard @Elegoo Neptune 0.4 nozzle", "nozzle_diameter": [ "0.4" ], "printable_area": [ "0x0", - "220x0", - "220x220", - "0x220" + "235x0", + "235x235", + "0x235" ], "printable_height": "250", - "nozzle_type": "hardened_steel", - "auxiliary_fan": "0", - "machine_max_acceleration_extruding": [ - "500", - "500" - ], - "machine_max_acceleration_retracting": [ - "1000", - "1000" - ], - "machine_max_acceleration_travel": [ - "500", - "500" - ], - "machine_max_acceleration_x": [ - "500", - "500" - ], - "machine_max_acceleration_y": [ - "500", - "500" - ], - "machine_max_acceleration_z": [ - "100", - "100" - ], - "machine_max_speed_e": [ - "60", - "60" - ], - "machine_max_speed_x": [ - "500", - "500" - ], - "machine_max_speed_y": [ - "500", - "500" - ], - "machine_max_speed_z": [ - "10", - "10" - ], - "machine_max_jerk_e": [ - "5", - "5" - ], - "machine_max_jerk_x": [ - "8", - "8" - ], - "machine_max_jerk_y": [ - "8", - "8" - ], - "machine_max_jerk_z": [ - "0.4", - "0.4" - ], - "max_layer_height": [ - "0.32" - ], - "min_layer_height": [ - "0.08" - ], - "printer_settings_id": "Elegoo", - "retraction_minimum_travel": [ - "2" - ], - "retract_before_wipe": [ - "70%" - ], - "retraction_length": [ - "2.5" - ], - "retraction_speed": [ - "60" - ], - "retract_length_toolchange": [ - "1" - ], - "deretraction_speed": [ - "40" - ], - "single_extruder_multi_material": "1", - "change_filament_gcode": "", - "machine_pause_gcode": "M0", - "default_filament_profile": [ - "Generic PLA @Elegoo" - ], - "machine_start_gcode": "M413 S0 ; disable Power Loss Recovery\nG90 ; use absolute coordinates\nM83 ; extruder relative mode\nM104 S120 ; set temporary nozzle temp to prevent oozing during homing and auto bed leveling\nM140 S[bed_temperature_initial_layer_single] ; set final bed temp\nG4 S10 ; allow partial nozzle warmup\nG28 ; home all axis\n;G29 ; run abl mesh\nM420 S1 ; load mesh\nG1 Z50 F240\nG1 X2 Y10 F3000\nM104 S[nozzle_temperature_initial_layer] ; set final nozzle temp\nM190 S[bed_temperature_initial_layer_single] ; wait for bed temp to stabilize\nM109 S[nozzle_temperature_initial_layer] ; wait for nozzle temp to stabilize\nG1 Z0.28 F240\nG92 E0\nG1 Y140 E10 F1500 ; prime the nozzle\nG1 X2.3 F5000\nG92 E0\nG1 Y10 E10 F1200 ; prime the nozzle\nG92 E0", + "machine_start_gcode": ";;===== date: 20250227 =====================\n;M413 S0 ; disable Power Loss Recovery\n;[printer_model]\n;initial_filament:{filament_type[initial_extruder]}\n;curr_bed_type={curr_bed_type}\nM220 S100 ;Set the feed speed to 100%\nM221 S100 ;Set the flow rate to 100%\nM104 S140\nM190 S[bed_temperature_initial_layer_single]\nG90\nG28 ; home all axis\n;G29 ; run abl mesh\nM420 S1 ; load mesh\n;\nG1 Z10 F300\nG1 X{print_bed_max[0]*0.5-50} Y0.5 F6000\nG1 Z0.4 F300\nM109 S[nozzle_temperature_initial_layer]\nG92 E0 ;Reset Extruder\nG1 X{print_bed_max[0]*0.5+50} E30 F400 ;Draw the first line\nG1 Z0.6 F120.0 ;Move to side a little\nG1 X{print_bed_max[0]*0.5+47} F3000\nG92 E0 ;Reset Extruder\n;LAYER_COUNT:[total_layer_count]\n;LAYER:0\n", "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < printable_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors", - "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\nG92 E0\n;[layer_z]\n\n", - "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", "scan_first_layer": "0" } diff --git a/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2S 0.6 nozzle.json b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2S 0.6 nozzle.json new file mode 100644 index 00000000000..41a15f684f7 --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2S 0.6 nozzle.json @@ -0,0 +1,29 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 2S 0.6 nozzle", + "inherits": "Elegoo Neptune 2S 0.4 nozzle", + "from": "system", + "setting_id": "EN2S06", + "instantiation": "true", + "nozzle_diameter": [ + "0.6" + ], + "printer_model": "Elegoo Neptune 2S", + "printer_variant": "0.6", + "default_filament_profile": [ + "Elegoo PLA @EN2 Series" + ], + "default_print_profile": "0.30mm Standard @Elegoo Neptune 0.6 nozzle", + "retraction_minimum_travel": [ + "1.2" + ], + "wipe_distance": [ + "1.8" + ], + "max_layer_height": [ + "0.42" + ], + "min_layer_height": [ + "0.12" + ] +} diff --git a/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2S 0.8 nozzle.json b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2S 0.8 nozzle.json new file mode 100644 index 00000000000..cb408ddafb0 --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2S 0.8 nozzle.json @@ -0,0 +1,32 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 2S 0.8 nozzle", + "inherits": "Elegoo Neptune 2S 0.4 nozzle", + "from": "system", + "setting_id": "EN2S08", + "instantiation": "true", + "nozzle_diameter": [ + "0.8" + ], + "printer_model": "Elegoo Neptune 2S", + "printer_variant": "0.8", + "default_filament_profile": [ + "Elegoo PLA @EN2 Series" + ], + "default_print_profile": "0.40mm Standard @Elegoo Neptune 0.8 nozzle", + "retraction_minimum_travel": [ + "1.6" + ], + "wipe_distance": [ + "2.0" + ], + "max_layer_height": [ + "0.56" + ], + "min_layer_height": [ + "0.16" + ], + "retract_length_toolchange": [ + "3" + ] +} diff --git a/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2S.json b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2S.json index 7e4307bbcae..e1bc8090f7a 100644 --- a/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2S.json +++ b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 2S.json @@ -1,12 +1,12 @@ { "type": "machine_model", "name": "Elegoo Neptune 2S", - "model_id": "Elegoo-Neptune-2S", - "nozzle_diameter": "0.4", + "model_id": "Elegoo-N2S", + "nozzle_diameter": "0.4;0.6;0.8", "machine_tech": "FFF", "family": "Elegoo", "bed_model": "elegoo_neptune2s_buildplate_model.stl", "bed_texture": "elegoo_neptune2s_buildplate_texture.svg", "hotend_model": "", - "default_materials": "Generic ABS @Elegoo;Generic PETG @Elegoo;Generic PLA @Elegoo" + "default_materials": "Elegoo ASA @0.2 nozzle;Elegoo ASA @EN2 Series;Elegoo PETG @0.2 nozzle;Elegoo PETG @EN2 Series;Elegoo PETG PRO @0.2 nozzle;Elegoo PETG PRO @EN2 Series;Elegoo PLA @0.2 nozzle;Elegoo PLA Matte @0.2 nozzle;Elegoo PLA Matte @EN2 Series;Elegoo PLA PRO @0.2 nozzle;Elegoo PLA PRO @EN2 Series;Elegoo PLA Silk @0.2 nozzle;Elegoo PLA Silk @EN2 Series;Elegoo PLA-CF @EN2 Series;Elegoo PLA @EN2 Series;Elegoo PLA+ @0.2 nozzle;Elegoo PLA+ @EN2 Series;Elegoo Rapid PETG @0.2 nozzle;Elegoo Rapid PETG @EN2 Series;Elegoo Rapid PLA+ @0.2 nozzle;Elegoo Rapid PLA+ @EN2 Series;Elegoo PLA Basic @0.2 nozzle;Elegoo PLA Basic @EN2 Series;Elegoo PLA Galaxy @EN2 Series;Elegoo PLA Marble @EN2 Series;Elegoo PLA Sparkle @EN2 Series;Elegoo PLA Wood @EN2 Series;Elegoo Rapid TPU 95A @EN2 Series;Elegoo PETG-CF @EN2 Series;Elegoo PETG-GF @EN2 Series;Elegoo PETG Translucent @0.2 nozzle;Elegoo PETG Translucent @EN2 Series" } diff --git a/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 3 0.4 nozzle.json b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 3 0.4 nozzle.json index d26cc02580f..660b05104cc 100644 --- a/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 3 0.4 nozzle.json +++ b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 3 0.4 nozzle.json @@ -1,111 +1,21 @@ { "type": "machine", + "setting_id": "EN304", "name": "Elegoo Neptune 3 0.4 nozzle", - "inherits": "fdm_elegoo_common", "from": "system", - "setting_id": "GM001", "instantiation": "true", + "inherits": "Elegoo Neptune 2 0.4 nozzle", + "host_type": "elegoolink", "printer_model": "Elegoo Neptune 3", - "default_print_profile": "0.20mm Standard @Elegoo Neptune3", + "default_print_profile": "0.20mm Standard @Elegoo Neptune 0.4 nozzle", "nozzle_diameter": [ "0.4" ], "printable_area": [ "0x0", - "220x0", - "220x220", - "0x220" + "235x0", + "235x235", + "0x235" ], - "printable_height": "280", - "nozzle_type": "hardened_steel", - "auxiliary_fan": "0", - "machine_max_acceleration_extruding": [ - "500", - "500" - ], - "machine_max_acceleration_retracting": [ - "1000", - "1000" - ], - "machine_max_acceleration_travel": [ - "500", - "500" - ], - "machine_max_acceleration_x": [ - "500", - "500" - ], - "machine_max_acceleration_y": [ - "500", - "500" - ], - "machine_max_acceleration_z": [ - "100", - "100" - ], - "machine_max_speed_e": [ - "60", - "60" - ], - "machine_max_speed_x": [ - "500", - "500" - ], - "machine_max_speed_y": [ - "500", - "500" - ], - "machine_max_speed_z": [ - "10", - "10" - ], - "machine_max_jerk_e": [ - "5", - "5" - ], - "machine_max_jerk_x": [ - "8", - "8" - ], - "machine_max_jerk_y": [ - "8", - "8" - ], - "machine_max_jerk_z": [ - "0.4", - "0.4" - ], - "max_layer_height": [ - "0.32" - ], - "min_layer_height": [ - "0.08" - ], - "printer_settings_id": "Elegoo", - "retraction_minimum_travel": [ - "1" - ], - "retract_before_wipe": [ - "85%" - ], - "retraction_length": [ - "5" - ], - "retract_length_toolchange": [ - "2" - ], - "deretraction_speed": [ - "0" - ], - "single_extruder_multi_material": "1", - "change_filament_gcode": "", - "machine_pause_gcode": "M0", - "default_filament_profile": [ - "Generic PLA @Elegoo" - ], - "machine_start_gcode": "M413 S0 ; disable Power Loss Recovery\nG90 ; use absolute coordinates\nM83 ; extruder relative mode\nM104 S120 ; set temporary nozzle temp to prevent oozing during homing and auto bed leveling\nM140 S[bed_temperature_initial_layer_single] ; set final bed temp\nG4 S10 ; allow partial nozzle warmup\nG28 ; home all axis\n;G29 ; run abl mesh\nM420 S1 ; load mesh\nG1 Z50 F240\nG1 X2 Y10 F3000\nM104 S[nozzle_temperature_initial_layer] ; set final nozzle temp\nM190 S[bed_temperature_initial_layer_single] ; wait for bed temp to stabilize\nM109 S[nozzle_temperature_initial_layer] ; wait for nozzle temp to stabilize\nG1 Z0.28 F240\nG92 E0\nG1 Y140 E10 F1500 ; prime the nozzle\nG1 X2.3 F5000\nG92 E0\nG1 Y10 E10 F1200 ; prime the nozzle\nG92 E0", - "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < printable_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors", - "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\nG92 E0\n;[layer_z]\n\n", - "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", - "scan_first_layer": "0" + "printable_height": "280" } diff --git a/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 3 0.6 nozzle.json b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 3 0.6 nozzle.json new file mode 100644 index 00000000000..a2ed0f97a69 --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 3 0.6 nozzle.json @@ -0,0 +1,29 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 3 0.6 nozzle", + "inherits": "Elegoo Neptune 3 0.4 nozzle", + "from": "system", + "setting_id": "EN306", + "instantiation": "true", + "nozzle_diameter": [ + "0.6" + ], + "printer_model": "Elegoo Neptune 3", + "printer_variant": "0.6", + "default_filament_profile": [ + "Elegoo PLA @EN2 Series" + ], + "default_print_profile": "0.30mm Standard @Elegoo Neptune 0.6 nozzle", + "retraction_minimum_travel": [ + "1.2" + ], + "wipe_distance": [ + "1.8" + ], + "max_layer_height": [ + "0.42" + ], + "min_layer_height": [ + "0.12" + ] +} diff --git a/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 3 0.8 nozzle.json b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 3 0.8 nozzle.json new file mode 100644 index 00000000000..86894a65637 --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 3 0.8 nozzle.json @@ -0,0 +1,32 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 3 0.8 nozzle", + "inherits": "Elegoo Neptune 3 0.4 nozzle", + "from": "system", + "setting_id": "EN308", + "instantiation": "true", + "nozzle_diameter": [ + "0.8" + ], + "printer_model": "Elegoo Neptune 3", + "printer_variant": "0.8", + "default_filament_profile": [ + "Elegoo PLA @EN2 Series" + ], + "default_print_profile": "0.40mm Standard @Elegoo Neptune 0.8 nozzle", + "retraction_minimum_travel": [ + "1.6" + ], + "wipe_distance": [ + "2.0" + ], + "max_layer_height": [ + "0.56" + ], + "min_layer_height": [ + "0.16" + ], + "retract_length_toolchange": [ + "3" + ] +} diff --git a/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 3.json b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 3.json index acc52346617..030c7b84c32 100644 --- a/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 3.json +++ b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune 3.json @@ -1,12 +1,12 @@ { "type": "machine_model", "name": "Elegoo Neptune 3", - "model_id": "Elegoo-Neptune-3", - "nozzle_diameter": "0.4", + "model_id": "Elegoo-N3", + "nozzle_diameter": "0.4;0.6;0.8", "machine_tech": "FFF", "family": "Elegoo", "bed_model": "elegoo_neptune3_buildplate_model.stl", "bed_texture": "elegoo_neptune3_buildplate_texture.svg", "hotend_model": "", - "default_materials": "Generic ABS @Elegoo;Generic PETG @Elegoo;Generic PLA @Elegoo" + "default_materials": "Elegoo ASA @0.2 nozzle;Elegoo ASA @EN2 Series;Elegoo PETG @0.2 nozzle;Elegoo PETG @EN2 Series;Elegoo PETG PRO @0.2 nozzle;Elegoo PETG PRO @EN2 Series;Elegoo PLA @0.2 nozzle;Elegoo PLA Matte @0.2 nozzle;Elegoo PLA Matte @EN2 Series;Elegoo PLA PRO @0.2 nozzle;Elegoo PLA PRO @EN2 Series;Elegoo PLA Silk @0.2 nozzle;Elegoo PLA Silk @EN2 Series;Elegoo PLA-CF @EN2 Series;Elegoo PLA @EN2 Series;Elegoo PLA+ @0.2 nozzle;Elegoo PLA+ @EN2 Series;Elegoo Rapid PETG @0.2 nozzle;Elegoo Rapid PETG @EN2 Series;Elegoo Rapid PLA+ @0.2 nozzle;Elegoo Rapid PLA+ @EN2 Series;Elegoo PLA Basic @0.2 nozzle;Elegoo PLA Basic @EN2 Series;Elegoo PLA Galaxy @EN2 Series;Elegoo PLA Marble @EN2 Series;Elegoo PLA Sparkle @EN2 Series;Elegoo PLA Wood @EN2 Series;Elegoo Rapid TPU 95A @EN2 Series;Elegoo PETG-CF @EN2 Series;Elegoo PETG-GF @EN2 Series;Elegoo PETG Translucent @0.2 nozzle;Elegoo PETG Translucent @EN2 Series" } diff --git a/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune X 0.4 nozzle.json b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune X 0.4 nozzle.json index 09e420af27c..7b07b18a3fd 100644 --- a/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune X 0.4 nozzle.json +++ b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune X 0.4 nozzle.json @@ -1,114 +1,24 @@ { "type": "machine", + "setting_id": "ENX04", "name": "Elegoo Neptune X 0.4 nozzle", - "inherits": "fdm_elegoo_common", "from": "system", - "setting_id": "GM001", "instantiation": "true", + "inherits": "fdm_elegoo_common", + "host_type": "elegoolink", "printer_model": "Elegoo Neptune X", - "default_print_profile": "0.20mm Standard @Elegoo NeptuneX", + "default_print_profile": "0.20mm Standard @Elegoo Neptune 0.4 nozzle", "nozzle_diameter": [ "0.4" ], "printable_area": [ "0x0", - "220x0", - "220x220", - "0x220" + "235x0", + "235x235", + "0x235" ], "printable_height": "300", - "nozzle_type": "hardened_steel", - "auxiliary_fan": "0", - "machine_max_acceleration_extruding": [ - "500", - "500" - ], - "machine_max_acceleration_retracting": [ - "1000", - "1000" - ], - "machine_max_acceleration_travel": [ - "500", - "500" - ], - "machine_max_acceleration_x": [ - "500", - "500" - ], - "machine_max_acceleration_y": [ - "500", - "500" - ], - "machine_max_acceleration_z": [ - "100", - "100" - ], - "machine_max_speed_e": [ - "60", - "60" - ], - "machine_max_speed_x": [ - "500", - "500" - ], - "machine_max_speed_y": [ - "500", - "500" - ], - "machine_max_speed_z": [ - "10", - "10" - ], - "machine_max_jerk_e": [ - "5", - "5" - ], - "machine_max_jerk_x": [ - "8", - "8" - ], - "machine_max_jerk_y": [ - "8", - "8" - ], - "machine_max_jerk_z": [ - "0.4", - "0.4" - ], - "max_layer_height": [ - "0.32" - ], - "min_layer_height": [ - "0.08" - ], - "printer_settings_id": "Elegoo", - "retraction_minimum_travel": [ - "2" - ], - "retract_before_wipe": [ - "70%" - ], - "retraction_length": [ - "2.5" - ], - "retraction_speed": [ - "60" - ], - "retract_length_toolchange": [ - "1" - ], - "deretraction_speed": [ - "40" - ], - "single_extruder_multi_material": "1", - "change_filament_gcode": "", - "machine_pause_gcode": "M0", - "default_filament_profile": [ - "Generic PLA @Elegoo" - ], - "machine_start_gcode": "M413 S0 ; disable Power Loss Recovery\nG90 ; use absolute coordinates\nM83 ; extruder relative mode\nM104 S120 ; set temporary nozzle temp to prevent oozing during homing and auto bed leveling\nM140 S[bed_temperature_initial_layer_single] ; set final bed temp\nG4 S10 ; allow partial nozzle warmup\nG28 ; home all axis\n;G29 ; run abl mesh\nM420 S1 ; load mesh\nG1 Z50 F240\nG1 X2 Y10 F3000\nM104 S[nozzle_temperature_initial_layer] ; set final nozzle temp\nM190 S[bed_temperature_initial_layer_single] ; wait for bed temp to stabilize\nM109 S[nozzle_temperature_initial_layer] ; wait for nozzle temp to stabilize\nG1 Z0.28 F240\nG92 E0\nG1 Y140 E10 F1500 ; prime the nozzle\nG1 X2.3 F5000\nG92 E0\nG1 Y10 E10 F1200 ; prime the nozzle\nG92 E0", + "machine_start_gcode": ";;===== date: 20250227 =====================\n;M413 S0 ; disable Power Loss Recovery\n;[printer_model]\n;initial_filament:{filament_type[initial_extruder]}\n;curr_bed_type={curr_bed_type}\nM220 S100 ;Set the feed speed to 100%\nM221 S100 ;Set the flow rate to 100%\nM104 S140\nM190 S[bed_temperature_initial_layer_single]\nG90\nG28 ; home all axis\n;G29 ; run abl mesh\nM420 S1 ; load mesh\n;\nG1 Z10 F300\nG1 X{print_bed_max[0]*0.5-50} Y0.5 F6000\nG1 Z0.4 F300\nM109 S[nozzle_temperature_initial_layer]\nG92 E0 ;Reset Extruder\nG1 X{print_bed_max[0]*0.5+50} E30 F400 ;Draw the first line\nG1 Z0.6 F120.0 ;Move to side a little\nG1 X{print_bed_max[0]*0.5+47} F3000\nG92 E0 ;Reset Extruder\n;LAYER_COUNT:[total_layer_count]\n;LAYER:0\n", "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < printable_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors", - "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\nG92 E0\n;[layer_z]\n\n", - "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", "scan_first_layer": "0" } diff --git a/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune X 0.6 nozzle.json b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune X 0.6 nozzle.json new file mode 100644 index 00000000000..2a73103c660 --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune X 0.6 nozzle.json @@ -0,0 +1,29 @@ +{ + "type": "machine", + "name": "Elegoo Neptune X 0.6 nozzle", + "inherits": "Elegoo Neptune X 0.4 nozzle", + "from": "system", + "setting_id": "ENX06", + "instantiation": "true", + "nozzle_diameter": [ + "0.6" + ], + "printer_model": "Elegoo Neptune X", + "printer_variant": "0.6", + "default_filament_profile": [ + "Elegoo PLA @EN2 Series" + ], + "default_print_profile": "0.30mm Standard @Elegoo Neptune 0.6 nozzle", + "retraction_minimum_travel": [ + "1.2" + ], + "wipe_distance": [ + "1.8" + ], + "max_layer_height": [ + "0.42" + ], + "min_layer_height": [ + "0.12" + ] +} diff --git a/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune X 0.8 nozzle.json b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune X 0.8 nozzle.json new file mode 100644 index 00000000000..5f21d5af227 --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune X 0.8 nozzle.json @@ -0,0 +1,32 @@ +{ + "type": "machine", + "name": "Elegoo Neptune X 0.8 nozzle", + "inherits": "Elegoo Neptune X 0.4 nozzle", + "from": "system", + "setting_id": "ENX08", + "instantiation": "true", + "nozzle_diameter": [ + "0.8" + ], + "printer_model": "Elegoo Neptune X", + "printer_variant": "0.8", + "default_filament_profile": [ + "Elegoo PLA @EN2 Series" + ], + "default_print_profile": "0.40mm Standard @Elegoo Neptune 0.8 nozzle", + "retraction_minimum_travel": [ + "1.6" + ], + "wipe_distance": [ + "2.0" + ], + "max_layer_height": [ + "0.56" + ], + "min_layer_height": [ + "0.16" + ], + "retract_length_toolchange": [ + "3" + ] +} diff --git a/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune X.json b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune X.json index c801b380017..cc81665e488 100644 --- a/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune X.json +++ b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune X.json @@ -1,12 +1,12 @@ { "type": "machine_model", "name": "Elegoo Neptune X", - "model_id": "Elegoo-Neptune-X", - "nozzle_diameter": "0.4", + "model_id": "Elegoo-NX", + "nozzle_diameter": "0.4;0.6;0.8", "machine_tech": "FFF", "family": "Elegoo", "bed_model": "elegoo_neptunex_buildplate_model.stl", "bed_texture": "elegoo_neptunex_buildplate_texture.svg", "hotend_model": "", - "default_materials": "Generic ABS @Elegoo;Generic PETG @Elegoo;Generic PLA @Elegoo" + "default_materials": "Elegoo ASA @0.2 nozzle;Elegoo ASA @EN2 Series;Elegoo PETG @0.2 nozzle;Elegoo PETG @EN2 Series;Elegoo PETG PRO @0.2 nozzle;Elegoo PETG PRO @EN2 Series;Elegoo PLA @0.2 nozzle;Elegoo PLA Matte @0.2 nozzle;Elegoo PLA Matte @EN2 Series;Elegoo PLA PRO @0.2 nozzle;Elegoo PLA PRO @EN2 Series;Elegoo PLA Silk @0.2 nozzle;Elegoo PLA Silk @EN2 Series;Elegoo PLA-CF @EN2 Series;Elegoo PLA @EN2 Series;Elegoo PLA+ @0.2 nozzle;Elegoo PLA+ @EN2 Series;Elegoo Rapid PETG @0.2 nozzle;Elegoo Rapid PETG @EN2 Series;Elegoo Rapid PLA+ @0.2 nozzle;Elegoo Rapid PLA+ @EN2 Series;Elegoo PLA Basic @0.2 nozzle;Elegoo PLA Basic @EN2 Series;Elegoo PLA Galaxy @EN2 Series;Elegoo PLA Marble @EN2 Series;Elegoo PLA Sparkle @EN2 Series;Elegoo PLA Wood @EN2 Series;Elegoo Rapid TPU 95A @EN2 Series;Elegoo PETG-CF @EN2 Series;Elegoo PETG-GF @EN2 Series;Elegoo PETG Translucent @0.2 nozzle;Elegoo PETG Translucent @EN2 Series" } diff --git a/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune.json b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune.json index 376e1520c65..e8f1dff64f3 100644 --- a/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune.json +++ b/resources/profiles/Elegoo/machine/EN2SERIES/Elegoo Neptune.json @@ -1,12 +1,12 @@ { "type": "machine_model", "name": "Elegoo Neptune", - "model_id": "Elegoo-Neptune", - "nozzle_diameter": "0.4", + "model_id": "Elegoo-N1", + "nozzle_diameter": "0.4;0.6;0.8", "machine_tech": "FFF", "family": "Elegoo", "bed_model": "elegoo_neptune_buildplate_model.stl", "bed_texture": "elegoo_neptune_buildplate_texture.svg", "hotend_model": "", - "default_materials": "Generic ABS @Elegoo;Generic PETG @Elegoo;Generic PLA @Elegoo" + "default_materials": "Elegoo ASA @0.2 nozzle;Elegoo ASA @EN2 Series;Elegoo PETG PRO @0.2 nozzle;Elegoo PETG PRO @EN2 Series;Elegoo PLA @0.2 nozzle;Elegoo PLA Matte @0.2 nozzle;Elegoo PLA Matte @EN2 Series;Elegoo PLA PRO @0.2 nozzle;Elegoo PLA PRO @EN2 Series;Elegoo PLA Silk @0.2 nozzle;Elegoo PLA Silk @EN2 Series;Elegoo PLA-CF @EN2 Series;Elegoo PLA @EN2 Series;Elegoo PLA+ @0.2 nozzle;Elegoo PLA+ @EN2 Series;Elegoo Rapid PETG @0.2 nozzle;Elegoo Rapid PETG @EN2 Series;Elegoo Rapid PLA+ @0.2 nozzle;Elegoo Rapid PLA+ @EN2 Series" } diff --git a/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Max 0.2 nozzle.json b/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Max 0.2 nozzle.json new file mode 100644 index 00000000000..8c9c238d1ab --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Max 0.2 nozzle.json @@ -0,0 +1,32 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 3 Max 0.2 nozzle", + "inherits": "Elegoo Neptune 3 Max 0.4 nozzle", + "from": "system", + "setting_id": "EN3Max02", + "instantiation": "true", + "nozzle_diameter": [ + "0.2" + ], + "printer_model": "Elegoo Neptune 3 Max", + "printer_variant": "0.2", + "default_filament_profile": [ + "Elegoo PLA @0.2 nozzle" + ], + "default_print_profile": "0.10mm Standard @Elegoo N3Max 0.2 nozzle", + "retraction_minimum_travel": [ + "0.4" + ], + "wipe_distance": [ + "0.8" + ], + "retraction_length": [ + "0.8" + ], + "max_layer_height": [ + "0.14" + ], + "min_layer_height": [ + "0.06" + ] +} diff --git a/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Max 0.4 nozzle.json b/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Max 0.4 nozzle.json index 101d0aebca6..af7fb0a2f75 100644 --- a/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Max 0.4 nozzle.json +++ b/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Max 0.4 nozzle.json @@ -1,114 +1,45 @@ { "type": "machine", + "setting_id": "EN3MAX04", "name": "Elegoo Neptune 3 Max 0.4 nozzle", - "inherits": "fdm_elegoo_common", "from": "system", - "setting_id": "GM001", "instantiation": "true", + "inherits": "Elegoo Neptune 3 Pro 0.4 nozzle", + "host_type": "elegoolink", "printer_model": "Elegoo Neptune 3 Max", - "default_print_profile": "0.20mm Standard @Elegoo Neptune3Max", + "default_print_profile": "0.20mm Standard @Elegoo N3Max 0.4 nozzle", "nozzle_diameter": [ "0.4" ], "printable_area": [ "0x0", - "420x0", - "420x420", - "0x420" + "425x0", + "425x425", + "0x425" ], "printable_height": "500", - "nozzle_type": "hardened_steel", + "retract_lift_below": [ + "499" + ], "auxiliary_fan": "0", "machine_max_acceleration_extruding": [ - "500", - "500" + "700", + "700" ], "machine_max_acceleration_retracting": [ - "1000", - "1000" + "700", + "700" ], "machine_max_acceleration_travel": [ - "500", - "500" + "700", + "700" ], "machine_max_acceleration_x": [ - "500", - "500" + "700", + "700" ], "machine_max_acceleration_y": [ - "500", - "500" - ], - "machine_max_acceleration_z": [ - "100", - "100" - ], - "machine_max_speed_e": [ - "60", - "60" - ], - "machine_max_speed_x": [ - "500", - "500" - ], - "machine_max_speed_y": [ - "500", - "500" - ], - "machine_max_speed_z": [ - "10", - "10" - ], - "machine_max_jerk_e": [ - "5", - "5" - ], - "machine_max_jerk_x": [ - "8", - "8" - ], - "machine_max_jerk_y": [ - "8", - "8" - ], - "machine_max_jerk_z": [ - "0.4", - "0.4" - ], - "max_layer_height": [ - "0.32" - ], - "min_layer_height": [ - "0.08" - ], - "printer_settings_id": "Elegoo", - "retraction_minimum_travel": [ - "1" - ], - "retract_before_wipe": [ - "85%" - ], - "retraction_length": [ - "2.5" - ], - "retraction_speed": [ - "25" - ], - "retract_length_toolchange": [ - "2" - ], - "deretraction_speed": [ - "0" - ], - "single_extruder_multi_material": "1", - "change_filament_gcode": "M600", - "machine_pause_gcode": "M0", - "default_filament_profile": [ - "Generic PLA @Elegoo" - ], - "machine_start_gcode": "M413 S0 ; disable Power Loss Recovery\nG90 ; use absolute coordinates\nM83 ; extruder relative mode\nM104 S120 ; set temporary nozzle temp to prevent oozing during homing and auto bed leveling\nM140 S[bed_temperature_initial_layer_single] ; set final bed temp\nG4 S10 ; allow partial nozzle warmup\nG28 ; home all axis\n;G29 ; run abl mesh\nM420 S1 ; load mesh\nG1 Z50 F240\nG1 X2 Y10 F3000\nM104 S[nozzle_temperature_initial_layer] ; set final nozzle temp\nM190 S[bed_temperature_initial_layer_single] ; wait for bed temp to stabilize\nM109 S[nozzle_temperature_initial_layer] ; wait for nozzle temp to stabilize\nG1 Z0.28 F240\nG92 E0\nG1 Y140 E10 F1500 ; prime the nozzle\nG1 X2.3 F5000\nG92 E0\nG1 Y10 E10 F1200 ; prime the nozzle\nG92 E0", - "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < printable_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors", - "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\nG92 E0\n;[layer_z]\n\n", - "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", - "scan_first_layer": "0" + "700", + "700" + ] } diff --git a/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Max 0.6 nozzle.json b/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Max 0.6 nozzle.json new file mode 100644 index 00000000000..f4e2f260139 --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Max 0.6 nozzle.json @@ -0,0 +1,32 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 3 Max 0.6 nozzle", + "inherits": "Elegoo Neptune 3 Max 0.4 nozzle", + "from": "system", + "setting_id": "EN3Max06", + "instantiation": "true", + "nozzle_diameter": [ + "0.6" + ], + "printer_model": "Elegoo Neptune 3 Max", + "printer_variant": "0.6", + "default_filament_profile": [ + "Elegoo PLA @EN3 Series" + ], + "default_print_profile": "0.30mm Standard @Elegoo N3Max 0.6 nozzle", + "retraction_minimum_travel": [ + "1.2" + ], + "wipe_distance": [ + "1.5" + ], + "retraction_length": [ + "0.8" + ], + "max_layer_height": [ + "0.42" + ], + "min_layer_height": [ + "0.12" + ] +} diff --git a/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Max 0.8 nozzle.json b/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Max 0.8 nozzle.json new file mode 100644 index 00000000000..e70dc91e888 --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Max 0.8 nozzle.json @@ -0,0 +1,35 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 3 Max 0.8 nozzle", + "inherits": "Elegoo Neptune 3 Max 0.4 nozzle", + "from": "system", + "setting_id": "EN3Max08", + "instantiation": "true", + "nozzle_diameter": [ + "0.8" + ], + "printer_model": "Elegoo Neptune 3 Max", + "printer_variant": "0.8", + "default_filament_profile": [ + "Elegoo PLA @EN3 Series" + ], + "default_print_profile": "0.40mm Standard @Elegoo N3Max 0.8 nozzle", + "retraction_minimum_travel": [ + "1.6" + ], + "wipe_distance": [ + "2.0" + ], + "retraction_length": [ + "1.6" + ], + "max_layer_height": [ + "0.56" + ], + "min_layer_height": [ + "0.16" + ], + "retract_length_toolchange": [ + "3" + ] +} diff --git a/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Max 1.0 nozzle.json b/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Max 1.0 nozzle.json new file mode 100644 index 00000000000..4003e686329 --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Max 1.0 nozzle.json @@ -0,0 +1,35 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 3 Max 1.0 nozzle", + "inherits": "Elegoo Neptune 3 Max 0.4 nozzle", + "from": "system", + "setting_id": "EN3Max10", + "instantiation": "true", + "nozzle_diameter": [ + "1.0" + ], + "printer_model": "Elegoo Neptune 3 Max", + "printer_variant": "1.0", + "default_filament_profile": [ + "Elegoo PLA @EN3 Series" + ], + "default_print_profile": "0.50mm Standard @Elegoo N3Max 1.0 nozzle", + "retraction_minimum_travel": [ + "2.0" + ], + "wipe_distance": [ + "2.0" + ], + "retraction_length": [ + "2.0" + ], + "max_layer_height": [ + "0.7" + ], + "min_layer_height": [ + "0.2" + ], + "retract_length_toolchange": [ + "3.5" + ] +} diff --git a/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Max.json b/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Max.json index 1fe18647a6e..178e92be61f 100644 --- a/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Max.json +++ b/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Max.json @@ -1,12 +1,12 @@ { "type": "machine_model", "name": "Elegoo Neptune 3 Max", - "model_id": "Elegoo-Neptune-3-Max", - "nozzle_diameter": "0.4", + "model_id": "Elegoo-N3Max", + "nozzle_diameter": "0.4;0.2;0.6;0.8;1.0", "machine_tech": "FFF", "family": "Elegoo", "bed_model": "elegoo_neptune3max_buildplate_model.stl", "bed_texture": "elegoo_neptune3max_buildplate_texture.svg", "hotend_model": "", - "default_materials": "Generic ABS @Elegoo;Generic PETG @Elegoo;Generic PLA @Elegoo" + "default_materials": "Elegoo ASA @0.2 nozzle;Elegoo ASA @EN3 Series;Elegoo PETG @0.2 nozzle;Elegoo PETG @EN3 Series;Elegoo PETG PRO @0.2 nozzle;Elegoo PETG PRO @EN3 Series;Elegoo PLA @0.2 nozzle;Elegoo PLA Matte @0.2 nozzle;Elegoo PLA Matte @EN3 Series;Elegoo PLA PRO @0.2 nozzle;Elegoo PLA PRO @EN3 Series;Elegoo PLA Silk @0.2 nozzle;Elegoo PLA Silk @EN3 Series;Elegoo PLA-CF @EN3 Series;Elegoo PLA @EN3 Series;Elegoo PLA+ @0.2 nozzle;Elegoo PLA+ @EN3 Series;Elegoo Rapid PETG @0.2 nozzle;Elegoo Rapid PETG @EN3 Series;Elegoo Rapid PLA+ @0.2 nozzle;Elegoo Rapid PLA+ @EN3 Series;Elegoo TPU 95A @EN3 Series;Elegoo PLA Basic @0.2 nozzle;Elegoo PLA Basic @EN3 Series;Elegoo PLA Galaxy @EN3 Series;Elegoo PLA Marble @EN3 Series;Elegoo PLA Sparkle @EN3 Series;Elegoo PLA Wood @EN3 Series;Elegoo Rapid TPU 95A @EN3 Series;Elegoo PETG-CF @EN3 Series;Elegoo PETG-GF @EN3 Series;Elegoo PETG Translucent @0.2 nozzle;Elegoo PETG Translucent @EN3 Series" } diff --git a/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Plus 0.2 nozzle.json b/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Plus 0.2 nozzle.json new file mode 100644 index 00000000000..153ec5735cf --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Plus 0.2 nozzle.json @@ -0,0 +1,32 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 3 Plus 0.2 nozzle", + "inherits": "Elegoo Neptune 3 Plus 0.4 nozzle", + "from": "system", + "setting_id": "EN3Plus02", + "instantiation": "true", + "nozzle_diameter": [ + "0.2" + ], + "printer_model": "Elegoo Neptune 3 Plus", + "printer_variant": "0.2", + "default_filament_profile": [ + "Elegoo PLA @0.2 nozzle" + ], + "default_print_profile": "0.10mm Standard @Elegoo N3Plus 0.2 nozzle", + "retraction_minimum_travel": [ + "0.4" + ], + "wipe_distance": [ + "0.8" + ], + "retraction_length": [ + "0.8" + ], + "max_layer_height": [ + "0.14" + ], + "min_layer_height": [ + "0.06" + ] +} diff --git a/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Plus 0.4 nozzle.json b/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Plus 0.4 nozzle.json index 727b11ed7d2..bc1a298d620 100644 --- a/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Plus 0.4 nozzle.json +++ b/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Plus 0.4 nozzle.json @@ -1,114 +1,24 @@ { "type": "machine", + "setting_id": "EN3PLUS04", "name": "Elegoo Neptune 3 Plus 0.4 nozzle", - "inherits": "fdm_elegoo_common", "from": "system", - "setting_id": "GM001", "instantiation": "true", + "inherits": "Elegoo Neptune 3 Pro 0.4 nozzle", + "host_type": "elegoolink", "printer_model": "Elegoo Neptune 3 Plus", - "default_print_profile": "0.20mm Standard @Elegoo Neptune3Plus", + "default_print_profile": "0.20mm Standard @Elegoo N3Plus 0.4 nozzle", "nozzle_diameter": [ "0.4" ], "printable_area": [ "0x0", - "320x0", - "320x320", - "0x320" + "325x0", + "325x325", + "0x325" ], "printable_height": "400", - "nozzle_type": "hardened_steel", - "auxiliary_fan": "0", - "machine_max_acceleration_extruding": [ - "500", - "500" - ], - "machine_max_acceleration_retracting": [ - "1000", - "1000" - ], - "machine_max_acceleration_travel": [ - "500", - "500" - ], - "machine_max_acceleration_x": [ - "500", - "500" - ], - "machine_max_acceleration_y": [ - "500", - "500" - ], - "machine_max_acceleration_z": [ - "100", - "100" - ], - "machine_max_speed_e": [ - "60", - "60" - ], - "machine_max_speed_x": [ - "500", - "500" - ], - "machine_max_speed_y": [ - "500", - "500" - ], - "machine_max_speed_z": [ - "10", - "10" - ], - "machine_max_jerk_e": [ - "5", - "5" - ], - "machine_max_jerk_x": [ - "8", - "8" - ], - "machine_max_jerk_y": [ - "8", - "8" - ], - "machine_max_jerk_z": [ - "0.4", - "0.4" - ], - "max_layer_height": [ - "0.32" - ], - "min_layer_height": [ - "0.08" - ], - "printer_settings_id": "Elegoo", - "retraction_minimum_travel": [ - "1" - ], - "retract_before_wipe": [ - "85%" - ], - "retraction_length": [ - "2.5" - ], - "retraction_speed": [ - "25" - ], - "retract_length_toolchange": [ - "2" - ], - "deretraction_speed": [ - "0" - ], - "single_extruder_multi_material": "1", - "change_filament_gcode": "M600", - "machine_pause_gcode": "M0", - "default_filament_profile": [ - "Generic PLA @Elegoo" - ], - "machine_start_gcode": "M413 S0 ; disable Power Loss Recovery\nG90 ; use absolute coordinates\nM83 ; extruder relative mode\nM104 S120 ; set temporary nozzle temp to prevent oozing during homing and auto bed leveling\nM140 S[bed_temperature_initial_layer_single] ; set final bed temp\nG4 S10 ; allow partial nozzle warmup\nG28 ; home all axis\n;G29 ; run abl mesh\nM420 S1 ; load mesh\nG1 Z50 F240\nG1 X2 Y10 F3000\nM104 S[nozzle_temperature_initial_layer] ; set final nozzle temp\nM190 S[bed_temperature_initial_layer_single] ; wait for bed temp to stabilize\nM109 S[nozzle_temperature_initial_layer] ; wait for nozzle temp to stabilize\nG1 Z0.28 F240\nG92 E0\nG1 Y140 E10 F1500 ; prime the nozzle\nG1 X2.3 F5000\nG92 E0\nG1 Y10 E10 F1200 ; prime the nozzle\nG92 E0", - "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < printable_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors", - "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\nG92 E0\n;[layer_z]\n\n", - "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", - "scan_first_layer": "0" + "retract_lift_below": [ + "399" + ] } diff --git a/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Plus 0.6 nozzle.json b/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Plus 0.6 nozzle.json new file mode 100644 index 00000000000..ef8d74398e0 --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Plus 0.6 nozzle.json @@ -0,0 +1,32 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 3 Plus 0.6 nozzle", + "inherits": "Elegoo Neptune 3 Plus 0.4 nozzle", + "from": "system", + "setting_id": "EN3Plus06", + "instantiation": "true", + "nozzle_diameter": [ + "0.6" + ], + "printer_model": "Elegoo Neptune 3 Plus", + "printer_variant": "0.6", + "default_filament_profile": [ + "Elegoo PLA @EN3 Series" + ], + "default_print_profile": "0.30mm Standard @Elegoo N3Plus 0.6 nozzle", + "retraction_minimum_travel": [ + "1.2" + ], + "wipe_distance": [ + "1.8" + ], + "retraction_length": [ + "1.5" + ], + "max_layer_height": [ + "0.42" + ], + "min_layer_height": [ + "0.12" + ] +} diff --git a/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Plus 0.8 nozzle.json b/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Plus 0.8 nozzle.json new file mode 100644 index 00000000000..4485f563470 --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Plus 0.8 nozzle.json @@ -0,0 +1,35 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 3 Plus 0.8 nozzle", + "inherits": "Elegoo Neptune 3 Plus 0.4 nozzle", + "from": "system", + "setting_id": "EN3Plus08", + "instantiation": "true", + "nozzle_diameter": [ + "0.8" + ], + "printer_model": "Elegoo Neptune 3 Plus", + "printer_variant": "0.8", + "default_filament_profile": [ + "Elegoo PLA @EN3 Series" + ], + "default_print_profile": "0.40mm Standard @Elegoo N3Plus 0.8 nozzle", + "retraction_minimum_travel": [ + "1.6" + ], + "wipe_distance": [ + "2.0" + ], + "retraction_length": [ + "1.6" + ], + "max_layer_height": [ + "0.56" + ], + "min_layer_height": [ + "0.16" + ], + "retract_length_toolchange": [ + "3" + ] +} diff --git a/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Plus 1.0 nozzle.json b/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Plus 1.0 nozzle.json new file mode 100644 index 00000000000..34181afdd53 --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Plus 1.0 nozzle.json @@ -0,0 +1,35 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 3 Plus 1.0 nozzle", + "inherits": "Elegoo Neptune 3 Plus 0.4 nozzle", + "from": "system", + "setting_id": "EN3Plus10", + "instantiation": "true", + "nozzle_diameter": [ + "1.0" + ], + "printer_model": "Elegoo Neptune 3 Plus", + "printer_variant": "1.0", + "default_filament_profile": [ + "Elegoo PLA @EN3 Series" + ], + "default_print_profile": "0.50mm Standard @Elegoo N3Plus 1.0 nozzle", + "retraction_minimum_travel": [ + "2.0" + ], + "wipe_distance": [ + "2.0" + ], + "retraction_length": [ + "2.0" + ], + "max_layer_height": [ + "0.7" + ], + "min_layer_height": [ + "0.2" + ], + "retract_length_toolchange": [ + "3.5" + ] +} diff --git a/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Plus.json b/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Plus.json index 0830277e967..d15d86cd9de 100644 --- a/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Plus.json +++ b/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Plus.json @@ -1,12 +1,12 @@ { "type": "machine_model", "name": "Elegoo Neptune 3 Plus", - "model_id": "Elegoo-Neptune-3-Plus", - "nozzle_diameter": "0.4", + "model_id": "Elegoo-N3Plus", + "nozzle_diameter": "0.4;0.2;0.6;0.8;1.0", "machine_tech": "FFF", "family": "Elegoo", "bed_model": "elegoo_neptune3plus_buildplate_model.stl", "bed_texture": "elegoo_neptune3plus_buildplate_texture.svg", "hotend_model": "", - "default_materials": "Generic ABS @Elegoo;Generic PETG @Elegoo;Generic PLA @Elegoo" + "default_materials": "Elegoo ASA @0.2 nozzle;Elegoo ASA @EN3 Series;Elegoo PETG @0.2 nozzle;Elegoo PETG @EN3 Series;Elegoo PETG PRO @0.2 nozzle;Elegoo PETG PRO @EN3 Series;Elegoo PLA @0.2 nozzle;Elegoo PLA Matte @0.2 nozzle;Elegoo PLA Matte @EN3 Series;Elegoo PLA PRO @0.2 nozzle;Elegoo PLA PRO @EN3 Series;Elegoo PLA Silk @0.2 nozzle;Elegoo PLA Silk @EN3 Series;Elegoo PLA-CF @EN3 Series;Elegoo PLA @EN3 Series;Elegoo PLA+ @0.2 nozzle;Elegoo PLA+ @EN3 Series;Elegoo Rapid PETG @0.2 nozzle;Elegoo Rapid PETG @EN3 Series;Elegoo Rapid PLA+ @0.2 nozzle;Elegoo Rapid PLA+ @EN3 Series;Elegoo TPU 95A @EN3 Series;Elegoo PLA Basic @0.2 nozzle;Elegoo PLA Basic @EN3 Series;Elegoo PLA Galaxy @EN3 Series;Elegoo PLA Marble @EN3 Series;Elegoo PLA Sparkle @EN3 Series;Elegoo PLA Wood @EN3 Series;Elegoo Rapid TPU 95A @EN3 Series;Elegoo PETG-CF @EN3 Series;Elegoo PETG-GF @EN3 Series;Elegoo PETG Translucent @0.2 nozzle;Elegoo PETG Translucent @EN3 Series" } diff --git a/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Pro 0.2 nozzle.json b/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Pro 0.2 nozzle.json new file mode 100644 index 00000000000..b1609d288d7 --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Pro 0.2 nozzle.json @@ -0,0 +1,32 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 3 Pro 0.2 nozzle", + "inherits": "Elegoo Neptune 3 Pro 0.4 nozzle", + "from": "system", + "setting_id": "EN3Pro02", + "instantiation": "true", + "nozzle_diameter": [ + "0.2" + ], + "printer_model": "Elegoo Neptune 3 Pro", + "printer_variant": "0.2", + "default_filament_profile": [ + "Elegoo PLA @0.2 nozzle" + ], + "default_print_profile": "0.10mm Standard @Elegoo N3Pro 0.2 nozzle", + "retraction_minimum_travel": [ + "0.4" + ], + "wipe_distance": [ + "0.8" + ], + "retraction_length": [ + "0.8" + ], + "max_layer_height": [ + "0.14" + ], + "min_layer_height": [ + "0.06" + ] +} diff --git a/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Pro 0.4 nozzle.json b/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Pro 0.4 nozzle.json index 2c3696fa713..3b40ba184f5 100644 --- a/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Pro 0.4 nozzle.json +++ b/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Pro 0.4 nozzle.json @@ -1,43 +1,46 @@ { "type": "machine", + "setting_id": "EN3PRO04", "name": "Elegoo Neptune 3 Pro 0.4 nozzle", - "inherits": "fdm_elegoo_common", "from": "system", - "setting_id": "GM001", "instantiation": "true", + "inherits": "fdm_elegoo_common", + "host_type": "elegoolink", "printer_model": "Elegoo Neptune 3 Pro", - "default_print_profile": "0.20mm Standard @Elegoo Neptune3Pro", + "default_print_profile": "0.20mm Standard @Elegoo N3Pro 0.4 nozzle", "nozzle_diameter": [ "0.4" ], "printable_area": [ "0x0", - "225x0", - "225x225", - "0x225" + "230x0", + "230x230", + "0x230" ], "printable_height": "280", - "nozzle_type": "hardened_steel", + "retract_lift_below": [ + "279" + ], "auxiliary_fan": "0", "machine_max_acceleration_extruding": [ - "500", - "500" + "1000", + "1000" ], "machine_max_acceleration_retracting": [ "1000", "1000" ], "machine_max_acceleration_travel": [ - "500", - "500" + "1000", + "1000" ], "machine_max_acceleration_x": [ - "500", - "500" + "1000", + "1000" ], "machine_max_acceleration_y": [ - "500", - "500" + "1000", + "1000" ], "machine_max_acceleration_z": [ "100", @@ -48,12 +51,12 @@ "60" ], "machine_max_speed_x": [ - "500", - "500" + "300", + "300" ], "machine_max_speed_y": [ - "500", - "500" + "300", + "300" ], "machine_max_speed_z": [ "10", @@ -76,12 +79,11 @@ "0.4" ], "max_layer_height": [ - "0.32" + "0.28" ], "min_layer_height": [ "0.08" ], - "printer_settings_id": "Elegoo", "retraction_minimum_travel": [ "1" ], @@ -89,26 +91,30 @@ "85%" ], "retraction_length": [ - "2.5" + "1.5" ], "retraction_speed": [ - "25" + "30" ], "retract_length_toolchange": [ "2" ], "deretraction_speed": [ - "0" + "30" ], + "thumbnails": [ + "200x200/COLPIC/#30394F", + "160x160/COLPIC/#30394F", + "160x160/PNG" + ], + "thumbnails_format": "COLPIC", "single_extruder_multi_material": "1", "change_filament_gcode": "M600", - "machine_pause_gcode": "M0", + "machine_pause_gcode": "M600", "default_filament_profile": [ - "Generic PLA @Elegoo" + "Elegoo PLA @EN3 Series" ], - "machine_start_gcode": "M413 S0 ; disable Power Loss Recovery\nG90 ; use absolute coordinates\nM83 ; extruder relative mode\nM104 S120 ; set temporary nozzle temp to prevent oozing during homing and auto bed leveling\nM140 S[bed_temperature_initial_layer_single] ; set final bed temp\nG4 S10 ; allow partial nozzle warmup\nG28 ; home all axis\n;G29 ; run abl mesh\nM420 S1 ; load mesh\nG1 Z50 F240\nG1 X2 Y10 F3000\nM104 S[nozzle_temperature_initial_layer] ; set final nozzle temp\nM190 S[bed_temperature_initial_layer_single] ; wait for bed temp to stabilize\nM109 S[nozzle_temperature_initial_layer] ; wait for nozzle temp to stabilize\nG1 Z0.28 F240\nG92 E0\nG1 Y140 E10 F1500 ; prime the nozzle\nG1 X2.3 F5000\nG92 E0\nG1 Y10 E10 F1200 ; prime the nozzle\nG92 E0", - "machine_end_gcode": "{if max_layer_z < printable_height}G1 Z{z_offset+min(max_layer_z+2, printable_height)} F600 ; Move print head up{endif}\nG1 X5 Y{print_bed_max[1]*0.8} F{travel_speed*60} ; present print\n{if max_layer_z < printable_height-10}G1 Z{z_offset+min(max_layer_z+70, printable_height-10)} F600 ; Move print head further up{endif}\n{if max_layer_z < printable_height*0.6}G1 Z{printable_height*0.6} F600 ; Move print head further up{endif}\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors", - "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\nG92 E0\n;[layer_z]\n\n", - "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", + "machine_start_gcode": ";;===== date: 20240520 =====================\nM400 ; wait for buffer to clear\n;[printer_model]\n;initial_filament:{filament_type[initial_extruder]}\n;curr_bed_type={curr_bed_type}\nM220 S100 ;Set the feed speed to 100%\nM221 S100 ;Set the flow rate to 100%\nM104 S140\nM190 S[bed_temperature_initial_layer_single]\nG90\nG28 ;home\n;G29 ; run abl mesh\nM420 S1 ; load mesh\nG1 Z10 F300\nG1 X{print_bed_max[0]*0.5-50} Y0.5 F6000\nG1 Z0.4 F300\nM109 S[nozzle_temperature_initial_layer]\nG92 E0 ;Reset Extruder\nG1 X{print_bed_max[0]*0.5+50} E30 F400 ;Draw the first line\nG1 Z0.6 F120.0 ;Move to side a little\nG1 X{print_bed_max[0]*0.5+47} F3000\nG92 E0 ;Reset Extruder\n;LAYER_COUNT:[total_layer_count]\n;LAYER:0\n", + "machine_end_gcode": ";PRINT_END\nG90 ;Absolute positionning\nM83 ; extruder relative mode\nG1 X10 Y{print_bed_max[1]*0.8} Z{min(max_layer_z+50, printable_height)} E-5 F{travel_speed*60} ; Move print head up\nM106 S0 ;Turn-off fan\nM104 S0 ;Turn-off hotend\nM140 S0 ;Turn-off bed\nM84 X Y E ;Disable all steppers but Z", "scan_first_layer": "0" } diff --git a/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Pro 0.6 nozzle.json b/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Pro 0.6 nozzle.json new file mode 100644 index 00000000000..271bbfa58a5 --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Pro 0.6 nozzle.json @@ -0,0 +1,32 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 3 Pro 0.6 nozzle", + "inherits": "Elegoo Neptune 3 Pro 0.4 nozzle", + "from": "system", + "setting_id": "EN3Pro06", + "instantiation": "true", + "nozzle_diameter": [ + "0.6" + ], + "printer_model": "Elegoo Neptune 3 Pro", + "printer_variant": "0.6", + "default_filament_profile": [ + "Elegoo PLA @EN3 Series" + ], + "default_print_profile": "0.30mm Standard @Elegoo N3Pro 0.6 nozzle", + "retraction_minimum_travel": [ + "1.2" + ], + "wipe_distance": [ + "1.8" + ], + "retraction_length": [ + "1.5" + ], + "max_layer_height": [ + "0.42" + ], + "min_layer_height": [ + "0.12" + ] +} diff --git a/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Pro 0.8 nozzle.json b/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Pro 0.8 nozzle.json new file mode 100644 index 00000000000..833bebd5136 --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Pro 0.8 nozzle.json @@ -0,0 +1,35 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 3 Pro 0.8 nozzle", + "inherits": "Elegoo Neptune 3 Pro 0.4 nozzle", + "from": "system", + "setting_id": "EN3Pro08", + "instantiation": "true", + "nozzle_diameter": [ + "0.8" + ], + "printer_model": "Elegoo Neptune 3 Pro", + "printer_variant": "0.8", + "default_filament_profile": [ + "Elegoo PLA @EN3 Series" + ], + "default_print_profile": "0.40mm Standard @Elegoo N3Pro 0.8 nozzle", + "retraction_minimum_travel": [ + "1.6" + ], + "wipe_distance": [ + "2.0" + ], + "retraction_length": [ + "1.6" + ], + "max_layer_height": [ + "0.56" + ], + "min_layer_height": [ + "0.16" + ], + "retract_length_toolchange": [ + "3" + ] +} diff --git a/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Pro 1.0 nozzle.json b/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Pro 1.0 nozzle.json new file mode 100644 index 00000000000..d236bd37f29 --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Pro 1.0 nozzle.json @@ -0,0 +1,35 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 3 Pro 1.0 nozzle", + "inherits": "Elegoo Neptune 3 Pro 0.4 nozzle", + "from": "system", + "setting_id": "EN3Pro10", + "instantiation": "true", + "nozzle_diameter": [ + "1.0" + ], + "printer_model": "Elegoo Neptune 3 Pro", + "printer_variant": "1.0", + "default_filament_profile": [ + "Elegoo PLA @EN3 Series" + ], + "default_print_profile": "0.50mm Standard @Elegoo N3Pro 1.0 nozzle", + "retraction_minimum_travel": [ + "2.0" + ], + "wipe_distance": [ + "2.0" + ], + "retraction_length": [ + "2.0" + ], + "max_layer_height": [ + "0.7" + ], + "min_layer_height": [ + "0.2" + ], + "retract_length_toolchange": [ + "3.5" + ] +} diff --git a/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Pro.json b/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Pro.json index ef0b1651992..92efec5e85f 100644 --- a/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Pro.json +++ b/resources/profiles/Elegoo/machine/EN3SERIES/Elegoo Neptune 3 Pro.json @@ -1,12 +1,12 @@ { "type": "machine_model", "name": "Elegoo Neptune 3 Pro", - "model_id": "Elegoo-Neptune-3-Pro", - "nozzle_diameter": "0.4", + "model_id": "Elegoo-N3Pro", + "nozzle_diameter": "0.4;0.2;0.6;0.8;1.0", "machine_tech": "FFF", "family": "Elegoo", "bed_model": "elegoo_neptune3pro_buildplate_model.stl", "bed_texture": "elegoo_neptune3pro_buildplate_texture.svg", "hotend_model": "", - "default_materials": "Generic ABS @Elegoo;Generic PETG @Elegoo;Generic PLA @Elegoo" + "default_materials": "Elegoo ASA @0.2 nozzle;Elegoo ASA @EN3 Series;Elegoo PETG @0.2 nozzle;Elegoo PETG @EN3 Series;Elegoo PETG PRO @0.2 nozzle;Elegoo PETG PRO @EN3 Series;Elegoo PLA @0.2 nozzle;Elegoo PLA Matte @0.2 nozzle;Elegoo PLA Matte @EN3 Series;Elegoo PLA PRO @0.2 nozzle;Elegoo PLA PRO @EN3 Series;Elegoo PLA Silk @0.2 nozzle;Elegoo PLA Silk @EN3 Series;Elegoo PLA-CF @EN3 Series;Elegoo PLA @EN3 Series;Elegoo PLA+ @0.2 nozzle;Elegoo PLA+ @EN3 Series;Elegoo Rapid PETG @0.2 nozzle;Elegoo Rapid PETG @EN3 Series;Elegoo Rapid PLA+ @0.2 nozzle;Elegoo Rapid PLA+ @EN3 Series;Elegoo TPU 95A @EN3 Series;Elegoo PLA Basic @0.2 nozzle;Elegoo PLA Basic @EN3 Series;Elegoo PLA Galaxy @EN3 Series;Elegoo PLA Marble @EN3 Series;Elegoo PLA Sparkle @EN3 Series;Elegoo PLA Wood @EN3 Series;Elegoo Rapid TPU 95A @EN3 Series;Elegoo PETG-CF @EN3 Series;Elegoo PETG-GF @EN3 Series;Elegoo PETG Translucent @0.2 nozzle;Elegoo PETG Translucent @EN3 Series" } diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 (0.2 nozzle).json b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 (0.2 nozzle).json deleted file mode 100644 index 0aecb7af549..00000000000 --- a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 (0.2 nozzle).json +++ /dev/null @@ -1,60 +0,0 @@ -{ - "type": "machine", - "name": "Elegoo Neptune 4 (0.2 nozzle)", - "inherits": "fdm_neptune_4_common", - "from": "system", - "setting_id": "GM001", - "instantiation": "true", - "printer_model": "Elegoo Neptune 4", - "default_print_profile": "0.20mm Standard @Elegoo Neptune4 (0.2 nozzle)", - "gcode_flavor": "klipper", - "nozzle_diameter": [ - "0.2" - ], - "printer_variant": "0.2", - "printable_area": [ - "0x0", - "225x0", - "225x225", - "0x225" - ], - "printable_height": "265", - "nozzle_type": "hardened_steel", - "auxiliary_fan": "0", - "max_layer_height": [ - "0.16" - ], - "min_layer_height": [ - "0.08" - ], - "printer_settings_id": "Elegoo", - "retraction_minimum_travel": [ - "1" - ], - "retract_before_wipe": [ - "85%" - ], - "retraction_length": [ - "0.8" - ], - "retraction_speed": [ - "60" - ], - "retract_length_toolchange": [ - "2" - ], - "deretraction_speed": [ - "45" - ], - "single_extruder_multi_material": "1", - "change_filament_gcode": "M600", - "machine_pause_gcode": "PAUSE", - "default_filament_profile": [ - "Generic PLA @Elegoo" - ], - "machine_start_gcode": ";ELEGOO NEPTUNE 4\nM220 S100 ;Set the feed speed to 100%\nM221 S100 ;Set the flow rate to 100%\nM104 S140\nM190 S[bed_temperature_initial_layer_single]\nG90\nG28 ;home\nG1 Z10 F300\nG1 X67.5 Y0 F6000\nG1 Z0 F300\nM109 S[nozzle_temperature_initial_layer]\nG92 E0 ;Reset Extruder\nG1 X67.5 Y0 Z0.4 F300 ;Move to start position\nG1 X167.5 E30 F400 ;Draw the first line\nG1 Z0.6 F120.0 ;Move to side a little\nG1 X162.5 F3000\nG92 E0 ;Reset Extruder\n", - "machine_end_gcode": ";PRINT_END\nG91 ;Relative positionning\nG1 E-2 F2700 ;Retract a bit\nG1 E-8 X5 Y5 Z3 F3000 ;Retract\nG90 ;Absolute positionning\nG1 X10 Y220 F6000;Finish print\nM106 S0 ;Turn-off fan\nM104 S0 ;Turn-off hotend\nM140 S0 ;Turn-off bed\nM84 X Y E ;Disable all steppers but Z", - "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\nG92 E0\n;[layer_z]\n\n", - "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", - "scan_first_layer": "0" -} diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 (0.4 nozzle).json b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 (0.4 nozzle).json deleted file mode 100644 index 5a9014048e7..00000000000 --- a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 (0.4 nozzle).json +++ /dev/null @@ -1,60 +0,0 @@ -{ - "type": "machine", - "name": "Elegoo Neptune 4 (0.4 nozzle)", - "inherits": "fdm_neptune_4_common", - "from": "system", - "setting_id": "GM001", - "instantiation": "true", - "printer_model": "Elegoo Neptune 4", - "default_print_profile": "0.20mm Standard @Elegoo Neptune4 (0.4 nozzle)", - "gcode_flavor": "klipper", - "nozzle_diameter": [ - "0.4" - ], - "printer_variant": "0.4", - "printable_area": [ - "0x0", - "225x0", - "225x225", - "0x225" - ], - "printable_height": "265", - "nozzle_type": "hardened_steel", - "auxiliary_fan": "0", - "max_layer_height": [ - "0.32" - ], - "min_layer_height": [ - "0.08" - ], - "printer_settings_id": "Elegoo", - "retraction_minimum_travel": [ - "1" - ], - "retract_before_wipe": [ - "85%" - ], - "retraction_length": [ - "0.8" - ], - "retraction_speed": [ - "60" - ], - "retract_length_toolchange": [ - "2" - ], - "deretraction_speed": [ - "45" - ], - "single_extruder_multi_material": "1", - "change_filament_gcode": "M600", - "machine_pause_gcode": "PAUSE", - "default_filament_profile": [ - "Generic PLA @Elegoo" - ], - "machine_start_gcode": ";ELEGOO NEPTUNE 4\nM220 S100 ;Set the feed speed to 100%\nM221 S100 ;Set the flow rate to 100%\nM104 S140\nM190 S[bed_temperature_initial_layer_single]\nG90\nG28 ;home\nG1 Z10 F300\nG1 X67.5 Y0 F6000\nG1 Z0 F300\nM109 S[nozzle_temperature_initial_layer]\nG92 E0 ;Reset Extruder\nG1 X67.5 Y0 Z0.4 F300 ;Move to start position\nG1 X167.5 E30 F400 ;Draw the first line\nG1 Z0.6 F120.0 ;Move to side a little\nG1 X162.5 F3000\nG92 E0 ;Reset Extruder\n", - "machine_end_gcode": ";PRINT_END\nG91 ;Relative positionning\nG1 E-2 F2700 ;Retract a bit\nG1 E-8 X5 Y5 Z3 F3000 ;Retract\nG90 ;Absolute positionning\nG1 X10 Y220 F6000;Finish print\nM106 S0 ;Turn-off fan\nM104 S0 ;Turn-off hotend\nM140 S0 ;Turn-off bed\nM84 X Y E ;Disable all steppers but Z", - "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\nG92 E0\n;[layer_z]\n\n", - "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", - "scan_first_layer": "0" -} diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 (0.6 nozzle).json b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 (0.6 nozzle).json deleted file mode 100644 index 8fd61537050..00000000000 --- a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 (0.6 nozzle).json +++ /dev/null @@ -1,60 +0,0 @@ -{ - "type": "machine", - "name": "Elegoo Neptune 4 (0.6 nozzle)", - "inherits": "fdm_neptune_4_common", - "from": "system", - "setting_id": "GM001", - "instantiation": "true", - "printer_model": "Elegoo Neptune 4", - "default_print_profile": "0.20mm Standard @Elegoo Neptune4 (0.6 nozzle)", - "gcode_flavor": "klipper", - "nozzle_diameter": [ - "0.6" - ], - "printer_variant": "0.6", - "printable_area": [ - "0x0", - "225x0", - "225x225", - "0x225" - ], - "printable_height": "265", - "nozzle_type": "hardened_steel", - "auxiliary_fan": "0", - "max_layer_height": [ - "0.4" - ], - "min_layer_height": [ - "0.08" - ], - "printer_settings_id": "Elegoo", - "retraction_minimum_travel": [ - "1" - ], - "retract_before_wipe": [ - "85%" - ], - "retraction_length": [ - "2.5" - ], - "retraction_speed": [ - "60" - ], - "retract_length_toolchange": [ - "2" - ], - "deretraction_speed": [ - "45" - ], - "single_extruder_multi_material": "1", - "change_filament_gcode": "M600", - "machine_pause_gcode": "PAUSE", - "default_filament_profile": [ - "Generic PLA @Elegoo" - ], - "machine_start_gcode": ";ELEGOO NEPTUNE 4\nM220 S100 ;Set the feed speed to 100%\nM221 S100 ;Set the flow rate to 100%\nM104 S140\nM190 S[bed_temperature_initial_layer_single]\nG90\nG28 ;home\nG1 Z10 F300\nG1 X67.5 Y0 F6000\nG1 Z0 F300\nM109 S[nozzle_temperature_initial_layer]\nG92 E0 ;Reset Extruder\nG1 X67.5 Y0 Z0.4 F300 ;Move to start position\nG1 X167.5 E30 F400 ;Draw the first line\nG1 Z0.6 F120.0 ;Move to side a little\nG1 X162.5 F3000\nG92 E0 ;Reset Extruder\n", - "machine_end_gcode": ";PRINT_END\nG91 ;Relative positionning\nG1 E-2 F2700 ;Retract a bit\nG1 E-8 X5 Y5 Z3 F3000 ;Retract\nG90 ;Absolute positionning\nG1 X10 Y220 F6000;Finish print\nM106 S0 ;Turn-off fan\nM104 S0 ;Turn-off hotend\nM140 S0 ;Turn-off bed\nM84 X Y E ;Disable all steppers but Z", - "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\nG92 E0\n;[layer_z]\n\n", - "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", - "scan_first_layer": "0" -} diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 (0.8 nozzle).json b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 (0.8 nozzle).json deleted file mode 100644 index 75cfb7f4e6b..00000000000 --- a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 (0.8 nozzle).json +++ /dev/null @@ -1,60 +0,0 @@ -{ - "type": "machine", - "name": "Elegoo Neptune 4 (0.8 nozzle)", - "inherits": "fdm_neptune_4_common", - "from": "system", - "setting_id": "GM001", - "instantiation": "true", - "printer_model": "Elegoo Neptune 4", - "default_print_profile": "0.20mm Standard @Elegoo Neptune4 (0.8 nozzle)", - "gcode_flavor": "klipper", - "nozzle_diameter": [ - "0.8" - ], - "printer_variant": "0.8", - "printable_area": [ - "0x0", - "225x0", - "225x225", - "0x225" - ], - "printable_height": "265", - "nozzle_type": "hardened_steel", - "auxiliary_fan": "0", - "max_layer_height": [ - "0.6" - ], - "min_layer_height": [ - "0.08" - ], - "printer_settings_id": "Elegoo", - "retraction_minimum_travel": [ - "1" - ], - "retract_before_wipe": [ - "85%" - ], - "retraction_length": [ - "0.8" - ], - "retraction_speed": [ - "60" - ], - "retract_length_toolchange": [ - "2" - ], - "deretraction_speed": [ - "45" - ], - "single_extruder_multi_material": "1", - "change_filament_gcode": "M600", - "machine_pause_gcode": "PAUSE", - "default_filament_profile": [ - "Generic PLA @Elegoo" - ], - "machine_start_gcode": ";ELEGOO NEPTUNE 4\nM220 S100 ;Set the feed speed to 100%\nM221 S100 ;Set the flow rate to 100%\nM104 S140\nM190 S[bed_temperature_initial_layer_single]\nG90\nG28 ;home\nG1 Z10 F300\nG1 X67.5 Y0 F6000\nG1 Z0 F300\nM109 S[nozzle_temperature_initial_layer]\nG92 E0 ;Reset Extruder\nG1 X67.5 Y0 Z0.4 F300 ;Move to start position\nG1 X167.5 E30 F400 ;Draw the first line\nG1 Z0.6 F120.0 ;Move to side a little\nG1 X162.5 F3000\nG92 E0 ;Reset Extruder\n", - "machine_end_gcode": ";PRINT_END\nG91 ;Relative positionning\nG1 E-2 F2700 ;Retract a bit\nG1 E-8 X5 Y5 Z3 F3000 ;Retract\nG90 ;Absolute positionning\nG1 X10 Y220 F6000;Finish print\nM106 S0 ;Turn-off fan\nM104 S0 ;Turn-off hotend\nM140 S0 ;Turn-off bed\nM84 X Y E ;Disable all steppers but Z", - "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\nG92 E0\n;[layer_z]\n\n", - "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", - "scan_first_layer": "0" -} diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 0.2 nozzle.json b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 0.2 nozzle.json new file mode 100644 index 00000000000..6fbeb9bc7ca --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 0.2 nozzle.json @@ -0,0 +1,33 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 4 0.2 nozzle", + "inherits": "Elegoo Neptune 4 0.4 nozzle", + "from": "system", + "setting_id": "EN402", + "instantiation": "true", + "nozzle_diameter": [ + "0.2" + ], + "printer_model": "Elegoo Neptune 4", + "printer_variant": "0.2", + "default_filament_profile": [ + "Elegoo PLA @0.2 nozzle" + ], + "default_print_profile": "0.10mm Standard @Elegoo N4 0.2 nozzle", + "retraction_minimum_travel": [ + "0.4" + ], + "wipe_distance": [ + "0.8" + ], + "retraction_length": [ + "0.5" + ], + "max_layer_height": [ + "0.14" + ], + "min_layer_height": [ + "0.06" + ], + "renamed_from": "Elegoo Neptune 4 (0.2 nozzle)" +} diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 0.4 nozzle.json b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 0.4 nozzle.json new file mode 100644 index 00000000000..20bd16ec6f0 --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 0.4 nozzle.json @@ -0,0 +1,119 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 4 0.4 nozzle", + "from": "system", + "setting_id": "EN404", + "instantiation": "true", + "inherits": "fdm_elegoo_3dp_001_common", + "host_type": "elegoolink", + "printer_model": "Elegoo Neptune 4", + "default_print_profile": "0.20mm Standard @Elegoo N4 0.4 nozzle", + "gcode_flavor": "klipper", + "nozzle_diameter": [ + "0.4" + ], + "printer_variant": "0.4", + "printable_area": [ + "0x0", + "230x0", + "230x230", + "0x230" + ], + "extruder_offset": [ + "-1x-2" + ], + "printable_height": "265", + "retract_lift_below": [ + "264" + ], + "machine_max_acceleration_extruding": [ + "10000", + "10000" + ], + "machine_max_acceleration_retracting": [ + "10000", + "10000" + ], + "machine_max_acceleration_x": [ + "10000", + "10000" + ], + "machine_max_acceleration_y": [ + "10000", + "10000" + ], + "machine_max_acceleration_z": [ + "300", + "300" + ], + "machine_max_acceleration_e": [ + "5000", + "5000" + ], + "machine_max_acceleration_travel": [ + "10000", + "10000" + ], + "machine_max_speed_e": [ + "60", + "60" + ], + "machine_max_speed_x": [ + "500", + "500" + ], + "machine_max_speed_y": [ + "500", + "500" + ], + "machine_max_speed_z": [ + "20", + "20" + ], + "retraction_minimum_travel": [ + "0.8" + ], + "printer_structure": "i3", + "cooling_tube_length": "5", + "enable_filament_ramming": "1", + "nozzle_volume": "90", + "max_layer_height": [ + "0.28" + ], + "min_layer_height": [ + "0.08" + ], + "retract_before_wipe": [ + "0%" + ], + "retraction_length": [ + "0.8" + ], + "retraction_speed": [ + "60" + ], + "retract_length_toolchange": [ + "2" + ], + "scan_first_layer": "0", + "auxiliary_fan": "0", + "single_extruder_multi_material": "1", + "change_filament_gcode": "M600", + "machine_pause_gcode": "M600", + "default_filament_profile": [ + "Elegoo PLA @EN4 Series" + ], + "extruder_clearance_radius": "47", + "extruder_clearance_height_to_rod": "34", + "extruder_clearance_height_to_lid": "34", + "printer_technology": "FFF", + "machine_start_gcode": ";;===== date: 20240520 =====================\nM400 ; wait for buffer to clear\n;[printer_model]\n;initial_filament:{filament_type[initial_extruder]}\n;curr_bed_type={curr_bed_type}\nM220 S100 ;Set the feed speed to 100%\nM221 S100 ;Set the flow rate to 100%\nM104 S140\nM190 S[bed_temperature_initial_layer_single]\nG90\nG28 ;home\nG1 Z10 F300\nG1 X{print_bed_max[0]*0.5-50} Y0.5 F6000\nG1 Z0.4 F300\nM109 S[nozzle_temperature_initial_layer]\nG92 E0 ;Reset Extruder\nG1 X{print_bed_max[0]*0.5+50} E30 F400 ;Draw the first line\nG1 Z0.6 F120.0 ;Move to side a little\nG1 X{print_bed_max[0]*0.5+47} F3000\nG92 E0 ;Reset Extruder\n;LAYER_COUNT:[total_layer_count]\n;LAYER:0\n", + "machine_end_gcode": ";PRINT_END\nG90 ;Absolute positionning\nM83 ; extruder relative mode\nG92 E0 ; zero the extruder\nG1 E-1.5 F1800\nG2 I1 J0 Z{max_layer_z+0.5} F3000 ; lower z a little\nG90\nG1 X10 Y{print_bed_max[1]*0.8} Z{min(max_layer_z+50, printable_height)} E-5 F{travel_speed*60} ; Move print head up\nM106 S0 ;Turn-off fan\nM104 S0 ;Turn-off hotend\nM140 S0 ;Turn-off bed\nM84 X Y E ;Disable all steppers but Z", + "thumbnails": [ + "320x320/COLPIC/#30394F", + "160x160/COLPIC/#30394F", + "160x160/PNG" + ], + "thumbnails_format": "COLPIC", + "renamed_from": "Elegoo Neptune 4 (0.4 nozzle)" +} diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 0.6 nozzle.json b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 0.6 nozzle.json new file mode 100644 index 00000000000..eea51da2b50 --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 0.6 nozzle.json @@ -0,0 +1,33 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 4 0.6 nozzle", + "inherits": "Elegoo Neptune 4 0.4 nozzle", + "from": "system", + "setting_id": "EN406", + "instantiation": "true", + "nozzle_diameter": [ + "0.6" + ], + "printer_model": "Elegoo Neptune 4", + "printer_variant": "0.6", + "default_filament_profile": [ + "Elegoo PLA @EN4 Series" + ], + "default_print_profile": "0.30mm Standard @Elegoo N4 0.6 nozzle", + "retraction_minimum_travel": [ + "1.2" + ], + "wipe_distance": [ + "1.8" + ], + "retraction_length": [ + "0.8" + ], + "max_layer_height": [ + "0.42" + ], + "min_layer_height": [ + "0.12" + ], + "renamed_from": "Elegoo Neptune 4 (0.6 nozzle)" +} diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 0.8 nozzle.json b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 0.8 nozzle.json new file mode 100644 index 00000000000..6e95538dacc --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 0.8 nozzle.json @@ -0,0 +1,36 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 4 0.8 nozzle", + "inherits": "Elegoo Neptune 4 0.4 nozzle", + "from": "system", + "setting_id": "EN408", + "instantiation": "true", + "nozzle_diameter": [ + "0.8" + ], + "printer_model": "Elegoo Neptune 4", + "printer_variant": "0.8", + "default_filament_profile": [ + "Elegoo PLA @EN4 Series" + ], + "default_print_profile": "0.40mm Standard @Elegoo N4 0.8 nozzle", + "retraction_minimum_travel": [ + "1.6" + ], + "wipe_distance": [ + "2.0" + ], + "retraction_length": [ + "1.2" + ], + "max_layer_height": [ + "0.56" + ], + "min_layer_height": [ + "0.16" + ], + "retract_length_toolchange": [ + "3" + ], + "renamed_from": "Elegoo Neptune 4 (0.8 nozzle)" +} diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 1.0 nozzle.json b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 1.0 nozzle.json new file mode 100644 index 00000000000..945fa4de2cd --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 1.0 nozzle.json @@ -0,0 +1,35 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 4 1.0 nozzle", + "inherits": "Elegoo Neptune 4 0.4 nozzle", + "from": "system", + "setting_id": "EN410", + "instantiation": "true", + "nozzle_diameter": [ + "1.0" + ], + "printer_model": "Elegoo Neptune 4", + "printer_variant": "1.0", + "default_filament_profile": [ + "Elegoo PLA @EN4 Series" + ], + "default_print_profile": "0.50mm Standard @Elegoo N4 1.0 nozzle", + "retraction_minimum_travel": [ + "2.0" + ], + "wipe_distance": [ + "2.0" + ], + "retraction_length": [ + "1.5" + ], + "max_layer_height": [ + "0.7" + ], + "min_layer_height": [ + "0.2" + ], + "retract_length_toolchange": [ + "3.5" + ] +} diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Max (0.2 nozzle).json b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Max (0.2 nozzle).json deleted file mode 100644 index c8274d0cddd..00000000000 --- a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Max (0.2 nozzle).json +++ /dev/null @@ -1,124 +0,0 @@ -{ - "type": "machine", - "name": "Elegoo Neptune 4 Max (0.2 nozzle)", - "inherits": "fdm_neptune_4_common", - "from": "system", - "setting_id": "GM001", - "instantiation": "true", - "printer_model": "Elegoo Neptune 4 Max", - "printer_notes": "", - "default_print_profile": "0.20mm Standard @Elegoo Neptune4Max (0.6 nozzle)", - "nozzle_diameter": [ - "0.2" - ], - "printer_variant": "0.2", - "printable_area": [ - "0x0", - "420x0", - "420x420", - "0x420" - ], - "machine_max_speed_x": [ - "300", - "300" - ], - "machine_max_speed_y": [ - "300", - "300" - ], - "printable_height": "480", - "nozzle_hrc": "0", - "nozzle_type": "brass", - "nozzle_volume": "0", - "cooling_tube_length": "5", - "cooling_tube_retraction": "91.5", - "enable_filament_ramming": "1", - "parking_pos_retraction": "92", - "auxiliary_fan": "1", - "extra_loading_move": "-2", - "extruder_clearance_height_to_lid": "34", - "extruder_clearance_height_to_rod": "34", - "extruder_clearance_radius": "47", - "extruder_colour": [ - "#FCE94F" - ], - "extruder_offset": [ - "0x0" - ], - "fan_kickstart": "0", - "fan_speedup_overhangs": "1", - "fan_speedup_time": "0", - "gcode_flavor": "klipper", - "high_current_on_filament_swap": "0", - "host_type": "octoprint", - "machine_load_filament_time": "0", - "machine_unload_filament_time": "0", - "max_layer_height": [ - "0.15" - ], - "min_layer_height": [ - "0.05" - ], - "printer_settings_id": "Elegoo", - "retract_before_wipe": [ - "85%" - ], - "retract_length_toolchange": [ - "2" - ], - "deretraction_speed": [ - "45" - ], - "retract_lift_above": [ - "0" - ], - "retract_lift_below": [ - "0" - ], - "retract_lift_enforce": [ - "All Surfaces" - ], - "retract_restart_extra": [ - "0" - ], - "retract_restart_extra_toolchange": [ - "0" - ], - "retract_when_changing_layer": [ - "1" - ], - "retraction_length": [ - "0.7" - ], - "retraction_minimum_travel": [ - "1" - ], - "retraction_speed": [ - "60" - ], - "use_firmwware_retraction": "0", - "single_extruder_multi_material": "1", - "use_relative_e_distances": "1", - "wipe": [ - "1" - ], - "wipe_distance": [ - "1" - ], - "z_hop": [ - "0.4" - ], - "z_hop_types": [ - "Normal Lift" - ], - "change_filament_gcode": "M600", - "machine_pause_gcode": "PAUSE", - "default_filament_profile": [ - "Generic PLA @Elegoo" - ], - "machine_start_gcode": ";ELEGOO NEPTUNE 4 MAX\nM220 S100 ;Set the feed speed to 100%\nM221 S100 ;Set the flow rate to 100%\nM104 S140\nM190 S[bed_temperature_initial_layer_single]\nG90\nG28 ;home\nG1 Z10 F300\nG1 X165 Y0.5 F6000\nG1 Z0 F300\nM109 S[nozzle_temperature_initial_layer]\nG92 E0 ;Reset Extruder\nG1 X165 Y0.5 Z0.4 F300 ;Move to start position\nG1 X265 E30 F400 ;Draw the first line\nG1 Z0.6 F120.0 ;Move to side a little\nG1 X260 F3000\nG92 E0 ;Reset Extruder", - "machine_end_gcode": ";PRINT_END\nG91 ;Relative positionning\nG1 E-2 F2700 ;Retract a bit\nG1 E-8 X5 Y5 Z3 F3000 ;Retract\nG90 ;Absolute positionning\nG1 X10 Y400 F6000;Finish print\nM106 S0 ;Turn-off fan\nM104 S0 ;Turn-off hotend\nM140 S0 ;Turn-off bed\nM84 X Y E ;Disable all steppers but Z", - "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\nG92 E0\n;[layer_z]\n\n", - "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", - "scan_first_layer": "0" -} diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Max (0.4 nozzle).json b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Max (0.4 nozzle).json deleted file mode 100644 index bfd18531cd7..00000000000 --- a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Max (0.4 nozzle).json +++ /dev/null @@ -1,124 +0,0 @@ -{ - "type": "machine", - "name": "Elegoo Neptune 4 Max (0.4 nozzle)", - "inherits": "fdm_neptune_4_common", - "from": "system", - "setting_id": "GM001", - "instantiation": "true", - "printer_model": "Elegoo Neptune 4 Max", - "printer_notes": "", - "default_print_profile": "0.20mm Standard @Elegoo Neptune4Max (0.6 nozzle)", - "nozzle_diameter": [ - "0.4" - ], - "printer_variant": "0.4", - "printable_area": [ - "0x0", - "420x0", - "420x420", - "0x420" - ], - "printable_height": "480", - "nozzle_hrc": "0", - "nozzle_type": "brass", - "nozzle_volume": "0", - "cooling_tube_length": "5", - "cooling_tube_retraction": "91.5", - "enable_filament_ramming": "1", - "parking_pos_retraction": "92", - "auxiliary_fan": "1", - "extra_loading_move": "-2", - "extruder_clearance_height_to_lid": "34", - "extruder_clearance_height_to_rod": "34", - "extruder_clearance_radius": "47", - "extruder_colour": [ - "#FCE94F" - ], - "extruder_offset": [ - "0x0" - ], - "fan_kickstart": "0", - "fan_speedup_overhangs": "1", - "fan_speedup_time": "0", - "gcode_flavor": "klipper", - "high_current_on_filament_swap": "0", - "host_type": "octoprint", - "machine_load_filament_time": "0", - "machine_unload_filament_time": "0", - "max_layer_height": [ - "0.32" - ], - "min_layer_height": [ - "0.08" - ], - "machine_max_speed_x": [ - "300", - "300" - ], - "machine_max_speed_y": [ - "300", - "300" - ], - "printer_settings_id": "Elegoo", - "retract_before_wipe": [ - "85%" - ], - "retract_length_toolchange": [ - "2" - ], - "deretraction_speed": [ - "45" - ], - "retract_lift_above": [ - "0" - ], - "retract_lift_below": [ - "0" - ], - "retract_lift_enforce": [ - "All Surfaces" - ], - "retract_restart_extra": [ - "0" - ], - "retract_restart_extra_toolchange": [ - "0" - ], - "retract_when_changing_layer": [ - "1" - ], - "retraction_length": [ - "0.7" - ], - "retraction_minimum_travel": [ - "1" - ], - "retraction_speed": [ - "60" - ], - "use_firmwware_retraction": "0", - "single_extruder_multi_material": "1", - "use_relative_e_distances": "1", - "wipe": [ - "1" - ], - "wipe_distance": [ - "1" - ], - "z_hop": [ - "0.4" - ], - "z_hop_types": [ - "Normal Lift" - ], - "change_filament_gcode": "M600", - "machine_pause_gcode": "PAUSE", - "default_filament_profile": [ - "Generic PLA @Elegoo" - ], - "machine_start_gcode": ";ELEGOO NEPTUNE 4 MAX\nM220 S100 ;Set the feed speed to 100%\nM221 S100 ;Set the flow rate to 100%\nM104 S140\nM190 S[bed_temperature_initial_layer_single]\nG90\nG28 ;home\nG1 Z10 F300\nG1 X165 Y0.5 F6000\nG1 Z0 F300\nM109 S[nozzle_temperature_initial_layer]\nG92 E0 ;Reset Extruder\nG1 X165 Y0.5 Z0.4 F300 ;Move to start position\nG1 X265 E30 F400 ;Draw the first line\nG1 Z0.6 F120.0 ;Move to side a little\nG1 X260 F3000\nG92 E0 ;Reset Extruder", - "machine_end_gcode": ";PRINT_END\nG91 ;Relative positionning\nG1 E-2 F2700 ;Retract a bit\nG1 E-8 X5 Y5 Z3 F3000 ;Retract\nG90 ;Absolute positionning\nG1 X10 Y400 F6000;Finish print\nM106 S0 ;Turn-off fan\nM104 S0 ;Turn-off hotend\nM140 S0 ;Turn-off bed\nM84 X Y E ;Disable all steppers but Z", - "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\nG92 E0\n;[layer_z]\n\n", - "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", - "scan_first_layer": "0" -} diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Max (0.6 nozzle).json b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Max (0.6 nozzle).json deleted file mode 100644 index 713b951dd4b..00000000000 --- a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Max (0.6 nozzle).json +++ /dev/null @@ -1,124 +0,0 @@ -{ - "type": "machine", - "name": "Elegoo Neptune 4 Max (0.6 nozzle)", - "inherits": "fdm_neptune_4_common", - "from": "system", - "setting_id": "GM001", - "instantiation": "true", - "printer_model": "Elegoo Neptune 4 Max", - "printer_notes": "", - "default_print_profile": "0.20mm Standard @Elegoo Neptune4Max (0.6 nozzle)", - "nozzle_diameter": [ - "0.6" - ], - "printer_variant": "0.6", - "printable_area": [ - "0x0", - "420x0", - "420x420", - "0x420" - ], - "machine_max_speed_x": [ - "300", - "300" - ], - "machine_max_speed_y": [ - "300", - "300" - ], - "printable_height": "480", - "nozzle_hrc": "0", - "nozzle_type": "brass", - "nozzle_volume": "0", - "cooling_tube_length": "5", - "cooling_tube_retraction": "91.5", - "enable_filament_ramming": "1", - "parking_pos_retraction": "92", - "auxiliary_fan": "1", - "extra_loading_move": "-2", - "extruder_clearance_height_to_lid": "34", - "extruder_clearance_height_to_rod": "34", - "extruder_clearance_radius": "47", - "extruder_colour": [ - "#FCE94F" - ], - "extruder_offset": [ - "0x0" - ], - "fan_kickstart": "0", - "fan_speedup_overhangs": "1", - "fan_speedup_time": "0", - "gcode_flavor": "klipper", - "high_current_on_filament_swap": "0", - "host_type": "octoprint", - "machine_load_filament_time": "0", - "machine_unload_filament_time": "0", - "max_layer_height": [ - "0.48" - ], - "min_layer_height": [ - "0.15" - ], - "printer_settings_id": "Elegoo", - "retract_before_wipe": [ - "85%" - ], - "retract_length_toolchange": [ - "2" - ], - "deretraction_speed": [ - "45" - ], - "retract_lift_above": [ - "0" - ], - "retract_lift_below": [ - "0" - ], - "retract_lift_enforce": [ - "All Surfaces" - ], - "retract_restart_extra": [ - "0" - ], - "retract_restart_extra_toolchange": [ - "0" - ], - "retract_when_changing_layer": [ - "1" - ], - "retraction_length": [ - "0.7" - ], - "retraction_minimum_travel": [ - "1" - ], - "retraction_speed": [ - "60" - ], - "use_firmwware_retraction": "0", - "single_extruder_multi_material": "1", - "use_relative_e_distances": "1", - "wipe": [ - "1" - ], - "wipe_distance": [ - "1" - ], - "z_hop": [ - "0.4" - ], - "z_hop_types": [ - "Normal Lift" - ], - "change_filament_gcode": "M600", - "machine_pause_gcode": "PAUSE", - "default_filament_profile": [ - "Generic PLA @Elegoo" - ], - "machine_start_gcode": ";ELEGOO NEPTUNE 4 MAX\nM220 S100 ;Set the feed speed to 100%\nM221 S100 ;Set the flow rate to 100%\nM104 S140\nM190 S[bed_temperature_initial_layer_single]\nG90\nG28 ;home\nG1 Z10 F300\nG1 X165 Y0.5 F6000\nG1 Z0 F300\nM109 S[nozzle_temperature_initial_layer]\nG92 E0 ;Reset Extruder\nG1 X165 Y0.5 Z0.4 F300 ;Move to start position\nG1 X265 E30 F400 ;Draw the first line\nG1 Z0.6 F120.0 ;Move to side a little\nG1 X260 F3000\nG92 E0 ;Reset Extruder", - "machine_end_gcode": ";PRINT_END\nG91 ;Relative positionning\nG1 E-2 F2700 ;Retract a bit\nG1 E-8 X5 Y5 Z3 F3000 ;Retract\nG90 ;Absolute positionning\nG1 X10 Y400 F6000;Finish print\nM106 S0 ;Turn-off fan\nM104 S0 ;Turn-off hotend\nM140 S0 ;Turn-off bed\nM84 X Y E ;Disable all steppers but Z", - "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\nG92 E0\n;[layer_z]\n\n", - "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", - "scan_first_layer": "0" -} diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Max (0.8 nozzle).json b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Max (0.8 nozzle).json deleted file mode 100644 index 0940a45dd5d..00000000000 --- a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Max (0.8 nozzle).json +++ /dev/null @@ -1,124 +0,0 @@ -{ - "type": "machine", - "name": "Elegoo Neptune 4 Max (0.8 nozzle)", - "inherits": "fdm_neptune_4_common", - "from": "system", - "setting_id": "GM001", - "instantiation": "true", - "printer_model": "Elegoo Neptune 4 Max", - "printer_notes": "", - "default_print_profile": "0.20mm Standard @Elegoo Neptune4Max (0.6 nozzle)", - "nozzle_diameter": [ - "0.8" - ], - "printer_variant": "0.8", - "printable_area": [ - "0x0", - "420x0", - "420x420", - "0x420" - ], - "printable_height": "480", - "nozzle_hrc": "0", - "nozzle_type": "brass", - "nozzle_volume": "0", - "cooling_tube_length": "5", - "cooling_tube_retraction": "91.5", - "enable_filament_ramming": "1", - "parking_pos_retraction": "92", - "auxiliary_fan": "1", - "extra_loading_move": "-2", - "extruder_clearance_height_to_lid": "34", - "extruder_clearance_height_to_rod": "34", - "extruder_clearance_radius": "47", - "extruder_colour": [ - "#FCE94F" - ], - "extruder_offset": [ - "0x0" - ], - "fan_kickstart": "0", - "fan_speedup_overhangs": "1", - "fan_speedup_time": "0", - "gcode_flavor": "klipper", - "high_current_on_filament_swap": "0", - "host_type": "octoprint", - "machine_load_filament_time": "0", - "machine_unload_filament_time": "0", - "max_layer_height": [ - "0.64" - ], - "min_layer_height": [ - "0.20" - ], - "machine_max_speed_x": [ - "300", - "300" - ], - "machine_max_speed_y": [ - "300", - "300" - ], - "printer_settings_id": "Elegoo", - "retract_before_wipe": [ - "85%" - ], - "retract_length_toolchange": [ - "2" - ], - "deretraction_speed": [ - "45" - ], - "retract_lift_above": [ - "0" - ], - "retract_lift_below": [ - "0" - ], - "retract_lift_enforce": [ - "All Surfaces" - ], - "retract_restart_extra": [ - "0" - ], - "retract_restart_extra_toolchange": [ - "0" - ], - "retract_when_changing_layer": [ - "1" - ], - "retraction_length": [ - "0.7" - ], - "retraction_minimum_travel": [ - "1" - ], - "retraction_speed": [ - "60" - ], - "use_firmwware_retraction": "0", - "single_extruder_multi_material": "1", - "use_relative_e_distances": "1", - "wipe": [ - "1" - ], - "wipe_distance": [ - "1" - ], - "z_hop": [ - "0.4" - ], - "z_hop_types": [ - "Normal Lift" - ], - "change_filament_gcode": "M600", - "machine_pause_gcode": "PAUSE", - "default_filament_profile": [ - "Generic PLA @Elegoo" - ], - "machine_start_gcode": ";ELEGOO NEPTUNE 4 MAX\nM220 S100 ;Set the feed speed to 100%\nM221 S100 ;Set the flow rate to 100%\nM104 S140\nM190 S[bed_temperature_initial_layer_single]\nG90\nG28 ;home\nG1 Z10 F300\nG1 X165 Y0.5 F6000\nG1 Z0 F300\nM109 S[nozzle_temperature_initial_layer]\nG92 E0 ;Reset Extruder\nG1 X165 Y0.5 Z0.4 F300 ;Move to start position\nG1 X265 E30 F400 ;Draw the first line\nG1 Z0.6 F120.0 ;Move to side a little\nG1 X260 F3000\nG92 E0 ;Reset Extruder", - "machine_end_gcode": ";PRINT_END\nG91 ;Relative positionning\nG1 E-2 F2700 ;Retract a bit\nG1 E-8 X5 Y5 Z3 F3000 ;Retract\nG90 ;Absolute positionning\nG1 X10 Y400 F6000;Finish print\nM106 S0 ;Turn-off fan\nM104 S0 ;Turn-off hotend\nM140 S0 ;Turn-off bed\nM84 X Y E ;Disable all steppers but Z", - "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\nG92 E0\n;[layer_z]\n\n", - "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", - "scan_first_layer": "0" -} diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Max 0.2 nozzle.json b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Max 0.2 nozzle.json new file mode 100644 index 00000000000..4cbff15b308 --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Max 0.2 nozzle.json @@ -0,0 +1,33 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 4 Max 0.2 nozzle", + "inherits": "Elegoo Neptune 4 Max 0.4 nozzle", + "from": "system", + "setting_id": "EN4MAX02", + "instantiation": "true", + "nozzle_diameter": [ + "0.2" + ], + "printer_model": "Elegoo Neptune 4 Max", + "printer_variant": "0.2", + "default_filament_profile": [ + "Elegoo PLA @0.2 nozzle" + ], + "default_print_profile": "0.10mm Standard @Elegoo N4Max 0.2 nozzle", + "retraction_minimum_travel": [ + "0.4" + ], + "wipe_distance": [ + "0.8" + ], + "retraction_length": [ + "0.5" + ], + "max_layer_height": [ + "0.14" + ], + "min_layer_height": [ + "0.06" + ], + "renamed_from": "Elegoo Neptune 4 Max (0.2 nozzle)" +} diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Max 0.4 nozzle.json b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Max 0.4 nozzle.json new file mode 100644 index 00000000000..1c90f02a937 --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Max 0.4 nozzle.json @@ -0,0 +1,85 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 4 Max 0.4 nozzle", + "from": "system", + "setting_id": "EN4MAX04", + "instantiation": "true", + "inherits": "Elegoo Neptune 4 0.4 nozzle", + "host_type": "elegoolink", + "printer_model": "Elegoo Neptune 4 Max", + "default_print_profile": "0.20mm Standard @Elegoo N4Max 0.4 nozzle", + "nozzle_diameter": [ + "0.4" + ], + "printer_variant": "0.4", + "printable_area": [ + "0x0", + "426x0", + "426x426", + "0x426" + ], + "bed_texture_area": [ + "0x-12.3", + "426x-12.3", + "426x423.6", + "0x423.6" + ], + "printable_height": "480", + "retract_lift_below": [ + "479" + ], + "extruder_offset": [ + "-1.5x2" + ], + "machine_max_acceleration_extruding": [ + "5000", + "5000" + ], + "machine_max_acceleration_retracting": [ + "5000", + "5000" + ], + "machine_max_acceleration_x": [ + "5000", + "5000" + ], + "machine_max_acceleration_y": [ + "5000", + "5000" + ], + "machine_max_acceleration_z": [ + "300", + "300" + ], + "machine_max_acceleration_e": [ + "5000", + "5000" + ], + "machine_max_acceleration_travel": [ + "5000", + "5000" + ], + "machine_max_speed_e": [ + "60", + "60" + ], + "machine_max_speed_x": [ + "500", + "500" + ], + "machine_max_speed_y": [ + "500", + "500" + ], + "machine_max_speed_z": [ + "20", + "20" + ], + "cooling_tube_length": "5", + "enable_filament_ramming": "1", + "nozzle_volume": "110", + "default_filament_profile": [ + "Elegoo PLA @EN4 Series" + ], + "renamed_from": "Elegoo Neptune 4 Max (0.4 nozzle)" +} diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Max 0.6 nozzle.json b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Max 0.6 nozzle.json new file mode 100644 index 00000000000..3c7584cefc0 --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Max 0.6 nozzle.json @@ -0,0 +1,33 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 4 Max 0.6 nozzle", + "inherits": "Elegoo Neptune 4 Max 0.4 nozzle", + "from": "system", + "setting_id": "EN4MAX06", + "instantiation": "true", + "nozzle_diameter": [ + "0.6" + ], + "printer_model": "Elegoo Neptune 4 Max", + "printer_variant": "0.6", + "default_filament_profile": [ + "Elegoo PLA @EN4 Series" + ], + "default_print_profile": "0.30mm Standard @Elegoo N4Max 0.6 nozzle", + "retraction_minimum_travel": [ + "1.2" + ], + "wipe_distance": [ + "1.8" + ], + "retraction_length": [ + "0.8" + ], + "max_layer_height": [ + "0.42" + ], + "min_layer_height": [ + "0.12" + ], + "renamed_from": "Elegoo Neptune 4 Max (0.6 nozzle)" +} diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Max 0.8 nozzle.json b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Max 0.8 nozzle.json new file mode 100644 index 00000000000..bd60a815ddd --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Max 0.8 nozzle.json @@ -0,0 +1,36 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 4 Max 0.8 nozzle", + "inherits": "Elegoo Neptune 4 Max 0.4 nozzle", + "from": "system", + "setting_id": "EN4MAX08", + "instantiation": "true", + "nozzle_diameter": [ + "0.8" + ], + "printer_model": "Elegoo Neptune 4 Max", + "printer_variant": "0.8", + "default_filament_profile": [ + "Elegoo PLA @EN4 Series" + ], + "default_print_profile": "0.40mm Standard @Elegoo N4Max 0.8 nozzle", + "retraction_minimum_travel": [ + "1.6" + ], + "wipe_distance": [ + "2.0" + ], + "retraction_length": [ + "1.2" + ], + "max_layer_height": [ + "0.56" + ], + "min_layer_height": [ + "0.16" + ], + "retract_length_toolchange": [ + "3" + ], + "renamed_from": "Elegoo Neptune 4 Max (0.8 nozzle)" +} diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Max 1.0 nozzle.json b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Max 1.0 nozzle.json new file mode 100644 index 00000000000..d279ef05d0d --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Max 1.0 nozzle.json @@ -0,0 +1,35 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 4 Max 1.0 nozzle", + "inherits": "Elegoo Neptune 4 Max 0.4 nozzle", + "from": "system", + "setting_id": "EN4MAX10", + "instantiation": "true", + "nozzle_diameter": [ + "1.0" + ], + "printer_model": "Elegoo Neptune 4 Max", + "printer_variant": "1.0", + "default_filament_profile": [ + "Elegoo PLA @EN4 Series" + ], + "default_print_profile": "0.50mm Standard @Elegoo N4Max 1.0 nozzle", + "retraction_minimum_travel": [ + "2.0" + ], + "wipe_distance": [ + "2.0" + ], + "retraction_length": [ + "1.5" + ], + "max_layer_height": [ + "0.7" + ], + "min_layer_height": [ + "0.2" + ], + "retract_length_toolchange": [ + "3.5" + ] +} diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Max.json b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Max.json index a44e0408743..040af62fd98 100644 --- a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Max.json +++ b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Max.json @@ -1,8 +1,8 @@ { "type": "machine_model", "name": "Elegoo Neptune 4 Max", - "model_id": "Elegoo-Neptune-4-Max", - "nozzle_diameter": "0.2;0.4;0.6;0.8", + "model_id": "Elegoo-N4Max", + "nozzle_diameter": "0.4;0.2;0.6;0.8;1.0", "machine_tech": "FFF", "family": "Elegoo", "bed_model": "elegoo_neptune4max_buildplate_model.stl", @@ -11,5 +11,5 @@ "0x0" ], "hotend_model": "", - "default_materials": "Generic PLA @Elegoo;Generic PETG @Elegoo;Generic ABS @Elegoo" + "default_materials": "Elegoo ASA @0.2 nozzle;Elegoo ASA @EN4 Series;Elegoo PETG PRO @0.2 nozzle;Elegoo PETG PRO @EN4 Series;Elegoo PLA @0.2 nozzle;Elegoo PLA Matte @0.2 nozzle;Elegoo PLA Matte @EN4 Series;Elegoo PLA PRO @0.2 nozzle;Elegoo PLA PRO @EN4 Series;Elegoo PLA Silk @0.2 nozzle;Elegoo PLA Silk @EN4 Series;Elegoo PLA-CF @EN4 Series;Elegoo PLA @EN4 Series;Elegoo PLA+ @0.2 nozzle;Elegoo PLA+ @EN4 Series;Elegoo Rapid PETG @0.2 nozzle;Elegoo Rapid PETG @EN4 Series;Elegoo Rapid PLA+ @0.2 nozzle;Elegoo Rapid PLA+ @EN4 Series;Elegoo TPU 95A @EN4 Series;Elegoo PLA Basic @0.2 nozzle;Elegoo PLA Basic @EN4 Series;Elegoo PLA Galaxy @EN4 Series;Elegoo PLA Marble @EN4 Series;Elegoo PLA Sparkle @EN4 Series;Elegoo PLA Wood @EN4 Series;Elegoo Rapid TPU 95A @EN4 Series;Elegoo PETG-CF @EN4 Series;Elegoo PETG-GF @EN4 Series;Elegoo PETG Translucent @0.2 nozzle;Elegoo PETG Translucent @EN4 Series" } diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Plus (0.2 nozzle).json b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Plus (0.2 nozzle).json deleted file mode 100644 index 070491ddf2e..00000000000 --- a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Plus (0.2 nozzle).json +++ /dev/null @@ -1,169 +0,0 @@ -{ - "type": "machine", - "name": "Elegoo Neptune 4 Plus (0.2 nozzle)", - "inherits": "fdm_neptune_4_common", - "from": "system", - "setting_id": "GM001", - "instantiation": "true", - "printer_model": "Elegoo Neptune 4 Plus", - "printer_notes": "", - "default_print_profile": "0.20mm Standard @Elegoo Neptune4 Plus (0.2 nozzle)", - "nozzle_diameter": [ - "0.2" - ], - "printer_variant": "0.2", - "printable_area": [ - "0x0", - "320x0", - "320x320", - "0x320" - ], - "printable_height": "385", - "nozzle_hrc": "0", - "nozzle_type": "brass", - "nozzle_volume": "0", - "cooling_tube_length": "5", - "cooling_tube_retraction": "91.5", - "enable_filament_ramming": "1", - "parking_pos_retraction": "92", - "auxiliary_fan": "1", - "extra_loading_move": "-2", - "extruder_clearance_height_to_lid": "380", - "extruder_clearance_height_to_rod": "10", - "extruder_clearance_radius": "60", - "extruder_colour": [ - "#FCE94F" - ], - "extruder_offset": [ - "0x0" - ], - "fan_kickstart": "0", - "fan_speedup_overhangs": "1", - "fan_speedup_time": "0", - "gcode_flavor": "klipper", - "high_current_on_filament_swap": "0", - "host_type": "octoprint", - "machine_load_filament_time": "0", - "machine_unload_filament_time": "0", - "machine_max_acceleration_e": [ - "5000", - "5000" - ], - "machine_max_acceleration_extruding": [ - "7000", - "7000" - ], - "machine_max_acceleration_retracting": [ - "7000", - "7000" - ], - "machine_max_acceleration_travel": [ - "7000", - "7000" - ], - "machine_max_acceleration_x": [ - "7000", - "7000" - ], - "machine_max_acceleration_y": [ - "7000", - "7000" - ], - "machine_max_acceleration_z": [ - "300", - "300" - ], - "machine_max_speed_e": [ - "60", - "25" - ], - "machine_max_speed_x": [ - "500", - "500" - ], - "machine_max_speed_y": [ - "500", - "500" - ], - "machine_max_speed_z": [ - "20", - "20" - ], - "machine_min_extruding_rate": [ - "0", - "0" - ], - "machine_min_travel_rate": [ - "0", - "0" - ], - "max_layer_height": [ - "0.15" - ], - "min_layer_height": [ - "0.05" - ], - "printer_settings_id": "Elegoo", - "retract_before_wipe": [ - "85%" - ], - "retract_length_toolchange": [ - "2" - ], - "deretraction_speed": [ - "45" - ], - "retract_lift_above": [ - "0" - ], - "retract_lift_below": [ - "0" - ], - "retract_lift_enforce": [ - "All Surfaces" - ], - "retract_restart_extra": [ - "0" - ], - "retract_restart_extra_toolchange": [ - "0" - ], - "retract_when_changing_layer": [ - "1" - ], - "retraction_length": [ - "0.5" - ], - "retraction_minimum_travel": [ - "1" - ], - "retraction_speed": [ - "45" - ], - "use_firmwware_retraction": "0", - "single_extruder_multi_material": "1", - "manual_filament_change": "1", - "use_relative_e_distances": "1", - "wipe": [ - "1" - ], - "wipe_distance": [ - "1" - ], - "z_hop": [ - "0.4" - ], - "z_hop_types": [ - "Normal Lift" - ], - "change_filament_gcode": "M600", - "machine_pause_gcode": "PAUSE", - "default_filament_profile": [ - "Generic PLA @Elegoo" - ], - "machine_start_gcode": ";ELEGOO NEPTUNE 4 PLUS\nM220 S100 ;Set the feed speed to 100%\nM221 S100 ;Set the flow rate to 100%\nM104 S140\nM190 S[bed_temperature_initial_layer_single]\nG90\nG28 ;home\nG1 Z10 F300\nG1 X115 Y0.5 F6000\nG1 Z0 F300\nM109 S[nozzle_temperature_initial_layer]\nG92 E0 ;Reset Extruder\nG1 X115 Y0.5 Z0.4 F300 ;Move to start position\nG1 X215.0 E30 F400 ;Draw the first line\nG1 Z0.6 F120.0 ;Move to side a little\nG1 X210 F3000\nG92 E0 ;Reset Extruder", - "machine_end_gcode": ";PRINT_END\nG91 ;Relative positionning\nG1 E-2 F2700 ;Retract a bit\nG1 E-8 X5 Y5 Z3 F3000 ;Retract\nG90 ;Absolute positionning\nG1 X10 Y300 F6000;Finish print\nM106 S0 ;Turn-off fan\nM104 S0 ;Turn-off hotend\nM140 S0 ;Turn-off bed\nM84 X Y E ;Disable all steppers but Z", - "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\nG92 E0\n;[layer_z]\n\n", - "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", - "scan_first_layer": "0" -} diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Plus (0.4 nozzle).json b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Plus (0.4 nozzle).json deleted file mode 100644 index 4edceb301c1..00000000000 --- a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Plus (0.4 nozzle).json +++ /dev/null @@ -1,169 +0,0 @@ -{ - "type": "machine", - "name": "Elegoo Neptune 4 Plus (0.4 nozzle)", - "inherits": "fdm_neptune_4_common", - "from": "system", - "setting_id": "GM001", - "instantiation": "true", - "printer_model": "Elegoo Neptune 4 Plus", - "printer_notes": "", - "default_print_profile": "0.20mm Standard @Elegoo Neptune4 Plus (0.4 nozzle)", - "nozzle_diameter": [ - "0.4" - ], - "printer_variant": "0.4", - "printable_area": [ - "0x0", - "320x0", - "320x320", - "0x320" - ], - "printable_height": "385", - "nozzle_hrc": "0", - "nozzle_type": "brass", - "nozzle_volume": "0", - "cooling_tube_length": "5", - "cooling_tube_retraction": "91.5", - "enable_filament_ramming": "1", - "parking_pos_retraction": "92", - "auxiliary_fan": "1", - "extra_loading_move": "-2", - "extruder_clearance_height_to_lid": "380", - "extruder_clearance_height_to_rod": "10", - "extruder_clearance_radius": "60", - "extruder_colour": [ - "#FCE94F" - ], - "extruder_offset": [ - "0x0" - ], - "fan_kickstart": "0", - "fan_speedup_overhangs": "1", - "fan_speedup_time": "0", - "gcode_flavor": "klipper", - "high_current_on_filament_swap": "0", - "host_type": "octoprint", - "machine_load_filament_time": "0", - "machine_unload_filament_time": "0", - "machine_max_acceleration_e": [ - "5000", - "5000" - ], - "machine_max_acceleration_extruding": [ - "7000", - "7000" - ], - "machine_max_acceleration_retracting": [ - "7000", - "7000" - ], - "machine_max_acceleration_travel": [ - "7000", - "7000" - ], - "machine_max_acceleration_x": [ - "7000", - "7000" - ], - "machine_max_acceleration_y": [ - "7000", - "7000" - ], - "machine_max_acceleration_z": [ - "300", - "300" - ], - "machine_max_speed_e": [ - "60", - "25" - ], - "machine_max_speed_x": [ - "500", - "500" - ], - "machine_max_speed_y": [ - "500", - "500" - ], - "machine_max_speed_z": [ - "20", - "20" - ], - "machine_min_extruding_rate": [ - "0", - "0" - ], - "machine_min_travel_rate": [ - "0", - "0" - ], - "max_layer_height": [ - "0.32" - ], - "min_layer_height": [ - "0.08" - ], - "printer_settings_id": "Elegoo", - "retract_before_wipe": [ - "85%" - ], - "retract_length_toolchange": [ - "2" - ], - "deretraction_speed": [ - "45" - ], - "retract_lift_above": [ - "0" - ], - "retract_lift_below": [ - "0" - ], - "retract_lift_enforce": [ - "All Surfaces" - ], - "retract_restart_extra": [ - "0" - ], - "retract_restart_extra_toolchange": [ - "0" - ], - "retract_when_changing_layer": [ - "1" - ], - "retraction_length": [ - "0.5" - ], - "retraction_minimum_travel": [ - "1" - ], - "retraction_speed": [ - "45" - ], - "use_firmwware_retraction": "0", - "single_extruder_multi_material": "1", - "manual_filament_change": "1", - "use_relative_e_distances": "1", - "wipe": [ - "1" - ], - "wipe_distance": [ - "1" - ], - "z_hop": [ - "0.4" - ], - "z_hop_types": [ - "Normal Lift" - ], - "change_filament_gcode": "M600", - "machine_pause_gcode": "PAUSE", - "default_filament_profile": [ - "Generic PLA @Elegoo" - ], - "machine_start_gcode": ";ELEGOO NEPTUNE 4 PLUS\nM220 S100 ;Set the feed speed to 100%\nM221 S100 ;Set the flow rate to 100%\nM104 S140\nM190 S[bed_temperature_initial_layer_single]\nG90\nG28 ;home\nG1 Z10 F300\nG1 X115 Y0.5 F6000\nG1 Z0 F300\nM109 S[nozzle_temperature_initial_layer]\nG92 E0 ;Reset Extruder\nG1 X115 Y0.5 Z0.4 F300 ;Move to start position\nG1 X215.0 E30 F400 ;Draw the first line\nG1 Z0.6 F120.0 ;Move to side a little\nG1 X210 F3000\nG92 E0 ;Reset Extruder", - "machine_end_gcode": ";PRINT_END\nG91 ;Relative positionning\nG1 E-2 F2700 ;Retract a bit\nG1 E-8 X5 Y5 Z3 F3000 ;Retract\nG90 ;Absolute positionning\nG1 X10 Y300 F6000;Finish print\nM106 S0 ;Turn-off fan\nM104 S0 ;Turn-off hotend\nM140 S0 ;Turn-off bed\nM84 X Y E ;Disable all steppers but Z", - "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\nG92 E0\n;[layer_z]\n\n", - "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", - "scan_first_layer": "0" -} diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Plus (0.6 nozzle).json b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Plus (0.6 nozzle).json deleted file mode 100644 index 57361b4ce03..00000000000 --- a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Plus (0.6 nozzle).json +++ /dev/null @@ -1,169 +0,0 @@ -{ - "type": "machine", - "name": "Elegoo Neptune 4 Plus (0.6 nozzle)", - "inherits": "fdm_neptune_4_common", - "from": "system", - "setting_id": "GM001", - "instantiation": "true", - "printer_model": "Elegoo Neptune 4 Plus", - "printer_notes": "", - "default_print_profile": "0.20mm Standard @Elegoo Neptune4 Plus (0.6 nozzle)", - "nozzle_diameter": [ - "0.6" - ], - "printer_variant": "0.6", - "printable_area": [ - "0x0", - "320x0", - "320x320", - "0x320" - ], - "printable_height": "385", - "nozzle_hrc": "0", - "nozzle_type": "brass", - "nozzle_volume": "0", - "cooling_tube_length": "5", - "cooling_tube_retraction": "91.5", - "enable_filament_ramming": "1", - "parking_pos_retraction": "92", - "auxiliary_fan": "1", - "extra_loading_move": "-2", - "extruder_clearance_height_to_lid": "380", - "extruder_clearance_height_to_rod": "10", - "extruder_clearance_radius": "60", - "extruder_colour": [ - "#FCE94F" - ], - "extruder_offset": [ - "0x0" - ], - "fan_kickstart": "0", - "fan_speedup_overhangs": "1", - "fan_speedup_time": "0", - "gcode_flavor": "klipper", - "high_current_on_filament_swap": "0", - "host_type": "octoprint", - "machine_load_filament_time": "0", - "machine_unload_filament_time": "0", - "machine_max_acceleration_e": [ - "5000", - "5000" - ], - "machine_max_acceleration_extruding": [ - "7000", - "7000" - ], - "machine_max_acceleration_retracting": [ - "7000", - "7000" - ], - "machine_max_acceleration_travel": [ - "7000", - "7000" - ], - "machine_max_acceleration_x": [ - "7000", - "7000" - ], - "machine_max_acceleration_y": [ - "7000", - "7000" - ], - "machine_max_acceleration_z": [ - "300", - "300" - ], - "machine_max_speed_e": [ - "60", - "25" - ], - "machine_max_speed_x": [ - "300", - "200" - ], - "machine_max_speed_y": [ - "300", - "200" - ], - "machine_max_speed_z": [ - "25", - "12" - ], - "machine_min_extruding_rate": [ - "0", - "0" - ], - "machine_min_travel_rate": [ - "0", - "0" - ], - "max_layer_height": [ - "0.48" - ], - "min_layer_height": [ - "0.15" - ], - "printer_settings_id": "Elegoo", - "retract_before_wipe": [ - "85%" - ], - "retract_length_toolchange": [ - "2" - ], - "deretraction_speed": [ - "45" - ], - "retract_lift_above": [ - "0" - ], - "retract_lift_below": [ - "0" - ], - "retract_lift_enforce": [ - "All Surfaces" - ], - "retract_restart_extra": [ - "0" - ], - "retract_restart_extra_toolchange": [ - "0" - ], - "retract_when_changing_layer": [ - "1" - ], - "retraction_length": [ - "0.5" - ], - "retraction_minimum_travel": [ - "1" - ], - "retraction_speed": [ - "45" - ], - "use_firmwware_retraction": "0", - "single_extruder_multi_material": "1", - "manual_filament_change": "1", - "use_relative_e_distances": "1", - "wipe": [ - "1" - ], - "wipe_distance": [ - "1" - ], - "z_hop": [ - "0.4" - ], - "z_hop_types": [ - "Normal Lift" - ], - "change_filament_gcode": "M600", - "machine_pause_gcode": "PAUSE", - "default_filament_profile": [ - "Generic PLA @Elegoo" - ], - "machine_start_gcode": ";ELEGOO NEPTUNE 4 PLUS\nM220 S100 ;Set the feed speed to 100%\nM221 S100 ;Set the flow rate to 100%\nM104 S140\nM190 S[bed_temperature_initial_layer_single]\nG90\nG28 ;home\nG1 Z10 F300\nG1 X115 Y0.5 F6000\nG1 Z0 F300\nM109 S[nozzle_temperature_initial_layer]\nG92 E0 ;Reset Extruder\nG1 X115 Y0.5 Z0.4 F300 ;Move to start position\nG1 X215.0 E30 F400 ;Draw the first line\nG1 Z0.6 F120.0 ;Move to side a little\nG1 X210 F3000\nG92 E0 ;Reset Extruder", - "machine_end_gcode": ";PRINT_END\nG91 ;Relative positionning\nG1 E-2 F2700 ;Retract a bit\nG1 E-8 X5 Y5 Z3 F3000 ;Retract\nG90 ;Absolute positionning\nG1 X10 Y300 F6000;Finish print\nM106 S0 ;Turn-off fan\nM104 S0 ;Turn-off hotend\nM140 S0 ;Turn-off bed\nM84 X Y E ;Disable all steppers but Z", - "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\nG92 E0\n;[layer_z]\n\n", - "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", - "scan_first_layer": "0" -} diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Plus (0.8 nozzle).json b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Plus (0.8 nozzle).json deleted file mode 100644 index 5367fcfa9ec..00000000000 --- a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Plus (0.8 nozzle).json +++ /dev/null @@ -1,169 +0,0 @@ -{ - "type": "machine", - "name": "Elegoo Neptune 4 Plus (0.8 nozzle)", - "inherits": "fdm_neptune_4_common", - "from": "system", - "setting_id": "GM001", - "instantiation": "true", - "printer_model": "Elegoo Neptune 4 Plus", - "printer_notes": "", - "default_print_profile": "0.20mm Standard @Elegoo Neptune4 Plus (0.8 nozzle)", - "nozzle_diameter": [ - "0.8" - ], - "printer_variant": "0.8", - "printable_area": [ - "0x0", - "320x0", - "320x320", - "0x320" - ], - "printable_height": "385", - "nozzle_hrc": "0", - "nozzle_type": "brass", - "nozzle_volume": "0", - "cooling_tube_length": "5", - "cooling_tube_retraction": "91.5", - "enable_filament_ramming": "1", - "parking_pos_retraction": "92", - "auxiliary_fan": "1", - "extra_loading_move": "-2", - "extruder_clearance_height_to_lid": "380", - "extruder_clearance_height_to_rod": "10", - "extruder_clearance_radius": "60", - "extruder_colour": [ - "#FCE94F" - ], - "extruder_offset": [ - "0x0" - ], - "fan_kickstart": "0", - "fan_speedup_overhangs": "1", - "fan_speedup_time": "0", - "gcode_flavor": "klipper", - "high_current_on_filament_swap": "0", - "host_type": "octoprint", - "machine_load_filament_time": "0", - "machine_unload_filament_time": "0", - "machine_max_acceleration_e": [ - "5000", - "5000" - ], - "machine_max_acceleration_extruding": [ - "7000", - "7000" - ], - "machine_max_acceleration_retracting": [ - "7000", - "7000" - ], - "machine_max_acceleration_travel": [ - "7000", - "7000" - ], - "machine_max_acceleration_x": [ - "7000", - "7000" - ], - "machine_max_acceleration_y": [ - "7000", - "7000" - ], - "machine_max_acceleration_z": [ - "300", - "300" - ], - "machine_max_speed_e": [ - "60", - "25" - ], - "machine_max_speed_x": [ - "300", - "200" - ], - "machine_max_speed_y": [ - "300", - "200" - ], - "machine_max_speed_z": [ - "25", - "12" - ], - "machine_min_extruding_rate": [ - "0", - "0" - ], - "machine_min_travel_rate": [ - "0", - "0" - ], - "max_layer_height": [ - "0.64" - ], - "min_layer_height": [ - "0.20" - ], - "printer_settings_id": "Elegoo", - "retract_before_wipe": [ - "85%" - ], - "retract_length_toolchange": [ - "2" - ], - "deretraction_speed": [ - "45" - ], - "retract_lift_above": [ - "0" - ], - "retract_lift_below": [ - "0" - ], - "retract_lift_enforce": [ - "All Surfaces" - ], - "retract_restart_extra": [ - "0" - ], - "retract_restart_extra_toolchange": [ - "0" - ], - "retract_when_changing_layer": [ - "1" - ], - "retraction_length": [ - "0.5" - ], - "retraction_minimum_travel": [ - "1" - ], - "retraction_speed": [ - "45" - ], - "use_firmwware_retraction": "0", - "single_extruder_multi_material": "1", - "manual_filament_change": "1", - "use_relative_e_distances": "1", - "wipe": [ - "1" - ], - "wipe_distance": [ - "1" - ], - "z_hop": [ - "0.4" - ], - "z_hop_types": [ - "Normal Lift" - ], - "change_filament_gcode": "M600", - "machine_pause_gcode": "PAUSE", - "default_filament_profile": [ - "Generic PLA @Elegoo" - ], - "machine_start_gcode": ";ELEGOO NEPTUNE 4 PLUS\nM220 S100 ;Set the feed speed to 100%\nM221 S100 ;Set the flow rate to 100%\nM104 S140\nM190 S[bed_temperature_initial_layer_single]\nG90\nG28 ;home\nG1 Z10 F300\nG1 X115 Y0.5 F6000\nG1 Z0 F300\nM109 S[nozzle_temperature_initial_layer]\nG92 E0 ;Reset Extruder\nG1 X115 Y0.5 Z0.4 F300 ;Move to start position\nG1 X215.0 E30 F400 ;Draw the first line\nG1 Z0.6 F120.0 ;Move to side a little\nG1 X210 F3000\nG92 E0 ;Reset Extruder", - "machine_end_gcode": ";PRINT_END\nG91 ;Relative positionning\nG1 E-2 F2700 ;Retract a bit\nG1 E-8 X5 Y5 Z3 F3000 ;Retract\nG90 ;Absolute positionning\nG1 X10 Y300 F6000;Finish print\nM106 S0 ;Turn-off fan\nM104 S0 ;Turn-off hotend\nM140 S0 ;Turn-off bed\nM84 X Y E ;Disable all steppers but Z", - "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\nG92 E0\n;[layer_z]\n\n", - "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", - "scan_first_layer": "0" -} diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Plus 0.2 nozzle.json b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Plus 0.2 nozzle.json new file mode 100644 index 00000000000..012bbb778cc --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Plus 0.2 nozzle.json @@ -0,0 +1,33 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 4 Plus 0.2 nozzle", + "inherits": "Elegoo Neptune 4 Plus 0.4 nozzle", + "from": "system", + "setting_id": "EN4PLUS02", + "instantiation": "true", + "nozzle_diameter": [ + "0.2" + ], + "printer_model": "Elegoo Neptune 4 Plus", + "printer_variant": "0.2", + "default_filament_profile": [ + "Elegoo PLA @0.2 nozzle" + ], + "default_print_profile": "0.10mm Standard @Elegoo N4Plus 0.2 nozzle", + "retraction_minimum_travel": [ + "0.4" + ], + "wipe_distance": [ + "0.8" + ], + "retraction_length": [ + "0.5" + ], + "max_layer_height": [ + "0.14" + ], + "min_layer_height": [ + "0.06" + ], + "renamed_from": "Elegoo Neptune 4 Plus (0.2 nozzle)" +} diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Plus 0.4 nozzle.json b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Plus 0.4 nozzle.json new file mode 100644 index 00000000000..c5380ef2b26 --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Plus 0.4 nozzle.json @@ -0,0 +1,85 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 4 Plus 0.4 nozzle", + "from": "system", + "setting_id": "EN4PLUS04", + "instantiation": "true", + "inherits": "Elegoo Neptune 4 0.4 nozzle", + "host_type": "elegoolink", + "printer_model": "Elegoo Neptune 4 Plus", + "default_print_profile": "0.20mm Standard @Elegoo N4Plus 0.4 nozzle", + "nozzle_diameter": [ + "0.4" + ], + "printer_variant": "0.4", + "printable_area": [ + "0x0", + "325x0", + "325x325", + "0x325" + ], + "bed_texture_area": [ + "0x-12.3", + "325x-12.3", + "325x321.5", + "0x321.5" + ], + "printable_height": "385", + "retract_lift_below": [ + "384" + ], + "extruder_offset": [ + "-2x-0" + ], + "machine_max_acceleration_extruding": [ + "8000", + "8000" + ], + "machine_max_acceleration_retracting": [ + "8000", + "8000" + ], + "machine_max_acceleration_x": [ + "8000", + "8000" + ], + "machine_max_acceleration_y": [ + "8000", + "8000" + ], + "machine_max_acceleration_z": [ + "300", + "300" + ], + "machine_max_acceleration_e": [ + "5000", + "5000" + ], + "machine_max_acceleration_travel": [ + "8000", + "8000" + ], + "machine_max_speed_e": [ + "60", + "60" + ], + "machine_max_speed_x": [ + "500", + "500" + ], + "machine_max_speed_y": [ + "500", + "500" + ], + "machine_max_speed_z": [ + "20", + "20" + ], + "cooling_tube_length": "5", + "enable_filament_ramming": "1", + "nozzle_volume": "110", + "default_filament_profile": [ + "Elegoo PLA @EN4 Series" + ], + "renamed_from": "Elegoo Neptune 4 Plus (0.4 nozzle)" +} diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Plus 0.6 nozzle.json b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Plus 0.6 nozzle.json new file mode 100644 index 00000000000..a2b5a6d14c7 --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Plus 0.6 nozzle.json @@ -0,0 +1,33 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 4 Plus 0.6 nozzle", + "inherits": "Elegoo Neptune 4 Plus 0.4 nozzle", + "from": "system", + "setting_id": "EN4PLUS06", + "instantiation": "true", + "nozzle_diameter": [ + "0.6" + ], + "printer_model": "Elegoo Neptune 4 Plus", + "printer_variant": "0.6", + "default_filament_profile": [ + "Elegoo PLA @EN4 Series" + ], + "default_print_profile": "0.30mm Standard @Elegoo N4Plus 0.6 nozzle", + "retraction_minimum_travel": [ + "1.2" + ], + "wipe_distance": [ + "1.8" + ], + "retraction_length": [ + "0.8" + ], + "max_layer_height": [ + "0.42" + ], + "min_layer_height": [ + "0.12" + ], + "renamed_from": "Elegoo Neptune 4 Plus (0.6 nozzle)" +} diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Plus 0.8 nozzle.json b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Plus 0.8 nozzle.json new file mode 100644 index 00000000000..772b78ad211 --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Plus 0.8 nozzle.json @@ -0,0 +1,36 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 4 Plus 0.8 nozzle", + "inherits": "Elegoo Neptune 4 Plus 0.4 nozzle", + "from": "system", + "setting_id": "EN4PLUS08", + "instantiation": "true", + "nozzle_diameter": [ + "0.8" + ], + "printer_model": "Elegoo Neptune 4 Plus", + "printer_variant": "0.8", + "default_filament_profile": [ + "Elegoo PLA @EN4 Series" + ], + "default_print_profile": "0.40mm Standard @Elegoo N4Plus 0.8 nozzle", + "retraction_minimum_travel": [ + "1.6" + ], + "wipe_distance": [ + "2.0" + ], + "retraction_length": [ + "1.2" + ], + "max_layer_height": [ + "0.56" + ], + "min_layer_height": [ + "0.16" + ], + "retract_length_toolchange": [ + "3" + ], + "renamed_from": "Elegoo Neptune 4 Plus (0.8 nozzle)" +} diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Plus 1.0 nozzle.json b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Plus 1.0 nozzle.json new file mode 100644 index 00000000000..f6e0797203a --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Plus 1.0 nozzle.json @@ -0,0 +1,35 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 4 Plus 1.0 nozzle", + "inherits": "Elegoo Neptune 4 Plus 0.4 nozzle", + "from": "system", + "setting_id": "EN4PLUS10", + "instantiation": "true", + "nozzle_diameter": [ + "1.0" + ], + "printer_model": "Elegoo Neptune 4 Plus", + "printer_variant": "1.0", + "default_filament_profile": [ + "Elegoo PLA @EN4 Series" + ], + "default_print_profile": "0.50mm Standard @Elegoo N4Plus 1.0 nozzle", + "retraction_minimum_travel": [ + "2.0" + ], + "wipe_distance": [ + "2.0" + ], + "retraction_length": [ + "1.5" + ], + "max_layer_height": [ + "0.7" + ], + "min_layer_height": [ + "0.2" + ], + "retract_length_toolchange": [ + "3.5" + ] +} diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Plus.json b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Plus.json index 31cf8f02e27..c6cbe7d2dfa 100644 --- a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Plus.json +++ b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Plus.json @@ -1,8 +1,8 @@ { "type": "machine_model", "name": "Elegoo Neptune 4 Plus", - "model_id": "Elegoo-Neptune-4-Plus", - "nozzle_diameter": "0.2;0.4;0.6;0.8", + "model_id": "Elegoo-N4Plus", + "nozzle_diameter": "0.4;0.2;0.6;0.8;1.0", "machine_tech": "FFF", "family": "Elegoo", "bed_model": "elegoo_neptune4plus_buildplate_model.stl", @@ -11,5 +11,5 @@ "0x0" ], "hotend_model": "", - "default_materials": "Generic PLA @Elegoo;Generic PETG @Elegoo;Generic ABS @Elegoo" + "default_materials": "Elegoo ASA @0.2 nozzle;Elegoo ASA @EN4 Series;Elegoo PETG PRO @0.2 nozzle;Elegoo PETG PRO @EN4 Series;Elegoo PLA @0.2 nozzle;Elegoo PLA Matte @0.2 nozzle;Elegoo PLA Matte @EN4 Series;Elegoo PLA PRO @0.2 nozzle;Elegoo PLA PRO @EN4 Series;Elegoo PLA Silk @0.2 nozzle;Elegoo PLA Silk @EN4 Series;Elegoo PLA-CF @EN4 Series;Elegoo PLA @EN4 Series;Elegoo PLA+ @0.2 nozzle;Elegoo PLA+ @EN4 Series;Elegoo Rapid PETG @0.2 nozzle;Elegoo Rapid PETG @EN4 Series;Elegoo Rapid PLA+ @0.2 nozzle;Elegoo Rapid PLA+ @EN4 Series;Elegoo TPU 95A @EN4 Series;Elegoo PLA Basic @0.2 nozzle;Elegoo PLA Basic @EN4 Series;Elegoo PLA Galaxy @EN4 Series;Elegoo PLA Marble @EN4 Series;Elegoo PLA Sparkle @EN4 Series;Elegoo PLA Wood @EN4 Series;Elegoo Rapid TPU 95A @EN4 Series;Elegoo PETG-CF @EN4 Series;Elegoo PETG-GF @EN4 Series;Elegoo PETG Translucent @0.2 nozzle;Elegoo PETG Translucent @EN4 Series" } diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Pro (0.2 nozzle).json b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Pro (0.2 nozzle).json deleted file mode 100644 index 096a8cbd547..00000000000 --- a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Pro (0.2 nozzle).json +++ /dev/null @@ -1,60 +0,0 @@ -{ - "type": "machine", - "name": "Elegoo Neptune 4 Pro (0.2 nozzle)", - "inherits": "fdm_neptune_4_common", - "from": "system", - "setting_id": "GM001", - "instantiation": "true", - "printer_model": "Elegoo Neptune 4 Pro", - "default_print_profile": "0.20mm Standard @Elegoo Neptune4Pro (0.2 nozzle)", - "gcode_flavor": "klipper", - "nozzle_diameter": [ - "0.2" - ], - "printer_variant": "0.2", - "printable_area": [ - "0x0", - "235x0", - "235x230", - "0x230" - ], - "printable_height": "265", - "nozzle_type": "hardened_steel", - "auxiliary_fan": "0", - "max_layer_height": [ - "0.16" - ], - "min_layer_height": [ - "0.08" - ], - "printer_settings_id": "Elegoo", - "retraction_minimum_travel": [ - "1" - ], - "retract_before_wipe": [ - "85%" - ], - "retraction_length": [ - "0.8" - ], - "retraction_speed": [ - "60" - ], - "retract_length_toolchange": [ - "2" - ], - "deretraction_speed": [ - "45" - ], - "single_extruder_multi_material": "1", - "change_filament_gcode": "M600", - "machine_pause_gcode": "PAUSE", - "default_filament_profile": [ - "Generic PLA @Elegoo" - ], - "machine_start_gcode": ";ELEGOO NEPTUNE 4 PRO\nM220 S100 ;Set the feed speed to 100%\nM221 S100 ;Set the flow rate to 100%\nM104 S140\nM190 S[bed_temperature_initial_layer_single]\nG90\nG28 ;home\nG1 Z10 F300\nG1 X67.5 Y0 F6000\nG1 Z0 F300\nM109 S[nozzle_temperature_initial_layer]\nG92 E0 ;Reset Extruder\nG1 X67.5 Y0 Z0.4 F300 ;Move to start position\nG1 X167.5 E30 F400 ;Draw the first line\nG1 Z0.6 F120.0 ;Move to side a little\nG1 X162.5 F3000\nG92 E0 ;Reset Extruder", - "machine_end_gcode": ";PRINT END\nG91 ;Relative positionning\nG1 E-2 F2700 ;Retract a bit\nG1 E-8 X5 Y5 Z3 F3000 ;Retract\nG90 ;Absolute positionning\nG1 X10 Y220 F6000;Finish print\nM106 S0 ;Turn-off fan\nM104 S0 ;Turn-off hotend\nM140 S0 ;Turn-off bed\nM84 X Y E ;Disable all steppers but Z", - "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\nG92 E0\n;[layer_z]\n\n", - "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", - "scan_first_layer": "0" -} diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Pro (0.4 nozzle).json b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Pro (0.4 nozzle).json deleted file mode 100644 index d9971006e18..00000000000 --- a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Pro (0.4 nozzle).json +++ /dev/null @@ -1,60 +0,0 @@ -{ - "type": "machine", - "name": "Elegoo Neptune 4 Pro (0.4 nozzle)", - "inherits": "fdm_neptune_4_common", - "from": "system", - "setting_id": "GM001", - "instantiation": "true", - "printer_model": "Elegoo Neptune 4 Pro", - "default_print_profile": "0.20mm Standard @Elegoo Neptune4Pro (0.4 nozzle)", - "gcode_flavor": "klipper", - "nozzle_diameter": [ - "0.4" - ], - "printer_variant": "0.4", - "printable_area": [ - "0x0", - "235x0", - "235x230", - "0x230" - ], - "printable_height": "265", - "nozzle_type": "hardened_steel", - "auxiliary_fan": "0", - "max_layer_height": [ - "0.32" - ], - "min_layer_height": [ - "0.08" - ], - "printer_settings_id": "Elegoo", - "retraction_minimum_travel": [ - "1" - ], - "retract_before_wipe": [ - "85%" - ], - "retraction_length": [ - "0.8" - ], - "retraction_speed": [ - "60" - ], - "retract_length_toolchange": [ - "2" - ], - "deretraction_speed": [ - "45" - ], - "single_extruder_multi_material": "1", - "change_filament_gcode": "M600", - "machine_pause_gcode": "PAUSE", - "default_filament_profile": [ - "Generic PLA @Elegoo" - ], - "machine_start_gcode": ";ELEGOO NEPTUNE 4 PRO\nM220 S100 ;Set the feed speed to 100%\nM221 S100 ;Set the flow rate to 100%\nM104 S140\nM190 S[bed_temperature_initial_layer_single]\nG90\nG28 ;home\nG1 Z10 F300\nG1 X67.5 Y0 F6000\nG1 Z0 F300\nM109 S[nozzle_temperature_initial_layer]\nG92 E0 ;Reset Extruder\nG1 X67.5 Y0 Z0.4 F300 ;Move to start position\nG1 X167.5 E30 F400 ;Draw the first line\nG1 Z0.6 F120.0 ;Move to side a little\nG1 X162.5 F3000\nG92 E0 ;Reset Extruder", - "machine_end_gcode": ";PRINT END\nG91 ;Relative positionning\nG1 E-2 F2700 ;Retract a bit\nG1 E-8 X5 Y5 Z3 F3000 ;Retract\nG90 ;Absolute positionning\nG1 X10 Y220 F6000;Finish print\nM106 S0 ;Turn-off fan\nM104 S0 ;Turn-off hotend\nM140 S0 ;Turn-off bed\nM84 X Y E ;Disable all steppers but Z", - "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\nG92 E0\n;[layer_z]\n\n", - "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", - "scan_first_layer": "0" -} diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Pro (0.6 nozzle).json b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Pro (0.6 nozzle).json deleted file mode 100644 index a818d429e69..00000000000 --- a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Pro (0.6 nozzle).json +++ /dev/null @@ -1,60 +0,0 @@ -{ - "type": "machine", - "name": "Elegoo Neptune 4 Pro (0.6 nozzle)", - "inherits": "fdm_neptune_4_common", - "from": "system", - "setting_id": "GM001", - "instantiation": "true", - "printer_model": "Elegoo Neptune 4 Pro", - "default_print_profile": "0.20mm Standard @Elegoo Neptune4Pro (0.6 nozzle)", - "gcode_flavor": "klipper", - "nozzle_diameter": [ - "0.6" - ], - "printer_variant": "0.6", - "printable_area": [ - "0x0", - "235x0", - "235x230", - "0x230" - ], - "printable_height": "265", - "nozzle_type": "hardened_steel", - "auxiliary_fan": "0", - "max_layer_height": [ - "0.4" - ], - "min_layer_height": [ - "0.08" - ], - "printer_settings_id": "Elegoo", - "retraction_minimum_travel": [ - "1" - ], - "retract_before_wipe": [ - "85%" - ], - "retraction_length": [ - "2.5" - ], - "retraction_speed": [ - "60" - ], - "retract_length_toolchange": [ - "2" - ], - "deretraction_speed": [ - "45" - ], - "single_extruder_multi_material": "1", - "change_filament_gcode": "M600", - "machine_pause_gcode": "PAUSE", - "default_filament_profile": [ - "Generic PLA @Elegoo" - ], - "machine_start_gcode": ";ELEGOO NEPTUNE 4 PRO\nM220 S100 ;Set the feed speed to 100%\nM221 S100 ;Set the flow rate to 100%\nM104 S140\nM190 S[bed_temperature_initial_layer_single]\nG90\nG28 ;home\nG1 Z10 F300\nG1 X67.5 Y0 F6000\nG1 Z0 F300\nM109 S[nozzle_temperature_initial_layer]\nG92 E0 ;Reset Extruder\nG1 X67.5 Y0 Z0.4 F300 ;Move to start position\nG1 X167.5 E30 F400 ;Draw the first line\nG1 Z0.6 F120.0 ;Move to side a little\nG1 X162.5 F3000\nG92 E0 ;Reset Extruder", - "machine_end_gcode": ";PRINT END\nG91 ;Relative positionning\nG1 E-2 F2700 ;Retract a bit\nG1 E-8 X5 Y5 Z3 F3000 ;Retract\nG90 ;Absolute positionning\nG1 X10 Y220 F6000;Finish print\nM106 S0 ;Turn-off fan\nM104 S0 ;Turn-off hotend\nM140 S0 ;Turn-off bed\nM84 X Y E ;Disable all steppers but Z", - "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\nG92 E0\n;[layer_z]\n\n", - "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", - "scan_first_layer": "0" -} diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Pro (0.8 nozzle).json b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Pro (0.8 nozzle).json deleted file mode 100644 index f558f7d6453..00000000000 --- a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Pro (0.8 nozzle).json +++ /dev/null @@ -1,120 +0,0 @@ -{ - "type": "machine", - "name": "Elegoo Neptune 4 Pro (0.8 nozzle)", - "inherits": "fdm_neptune_4_common", - "from": "system", - "setting_id": "GM001", - "instantiation": "true", - "printer_model": "Elegoo Neptune 4 Pro", - "gcode_flavor": "klipper", - "default_print_profile": "0.20mm Standard @Elegoo Neptune4Pro (0.8 nozzle)", - "nozzle_diameter": [ - "0.8" - ], - "printer_variant": "0.8", - "printable_area": [ - "0x0", - "235x0", - "235x230", - "0x230" - ], - "printable_height": "265", - "nozzle_type": "hardened_steel", - "auxiliary_fan": "0", - "machine_max_acceleration_e": [ - "5000", - "5000" - ], - "machine_max_acceleration_extruding": [ - "20000", - "20000" - ], - "machine_max_acceleration_retracting": [ - "5000", - "5000" - ], - "machine_max_acceleration_travel": [ - "20000", - "20000" - ], - "machine_max_acceleration_x": [ - "20000", - "20000" - ], - "machine_max_acceleration_y": [ - "20000", - "20000" - ], - "machine_max_acceleration_z": [ - "500", - "200" - ], - "machine_max_speed_e": [ - "25", - "25" - ], - "machine_max_speed_x": [ - "500", - "200" - ], - "machine_max_speed_y": [ - "500", - "200" - ], - "machine_max_speed_z": [ - "12", - "12" - ], - "machine_max_jerk_e": [ - "2.5", - "2.5" - ], - "machine_max_jerk_x": [ - "12", - "12" - ], - "machine_max_jerk_y": [ - "12", - "12" - ], - "machine_max_jerk_z": [ - "0.2", - "0.4" - ], - "max_layer_height": [ - "0.6" - ], - "min_layer_height": [ - "0.08" - ], - "printer_settings_id": "Elegoo", - "retraction_minimum_travel": [ - "1" - ], - "retract_before_wipe": [ - "85%" - ], - "retraction_length": [ - "0.8" - ], - "retraction_speed": [ - "60" - ], - "retract_length_toolchange": [ - "2" - ], - "deretraction_speed": [ - "45" - ], - "single_extruder_multi_material": "1", - "change_filament_gcode": "M600", - "machine_pause_gcode": "PAUSE", - "default_filament_profile": [ - "Generic PLA @Elegoo" - ], - "machine_start_gcode": ";ELEGOO NEPTUNE 4 PRO\nM220 S100 ;Set the feed speed to 100%\nM221 S100 ;Set the flow rate to 100%\nM104 S140\nM190 S[bed_temperature_initial_layer_single]\nG90\nG28 ;home\nG1 Z10 F300\nG1 X67.5 Y0 F6000\nG1 Z0 F300\nM109 S[nozzle_temperature_initial_layer]\nG92 E0 ;Reset Extruder\nG1 X67.5 Y0 Z0.4 F300 ;Move to start position\nG1 X167.5 E30 F400 ;Draw the first line\nG1 Z0.6 F120.0 ;Move to side a little\nG1 X162.5 F3000\nG92 E0 ;Reset Extruder", - "machine_end_gcode": ";PRINT END\nG91 ;Relative positionning\nG1 E-2 F2700 ;Retract a bit\nG1 E-8 X5 Y5 Z3 F3000 ;Retract\nG90 ;Absolute positionning\nG1 X10 Y220 F6000;Finish print\nM106 S0 ;Turn-off fan\nM104 S0 ;Turn-off hotend\nM140 S0 ;Turn-off bed\nM84 X Y E ;Disable all steppers but Z", - "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\nG92 E0\n;[layer_z]\n\n", - "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", - "scan_first_layer": "0" -} diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Pro 0.2 nozzle.json b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Pro 0.2 nozzle.json new file mode 100644 index 00000000000..ee782385977 --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Pro 0.2 nozzle.json @@ -0,0 +1,33 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 4 Pro 0.2 nozzle", + "inherits": "Elegoo Neptune 4 Pro 0.4 nozzle", + "from": "system", + "setting_id": "EN4PRO02", + "instantiation": "true", + "nozzle_diameter": [ + "0.2" + ], + "printer_model": "Elegoo Neptune 4 Pro", + "printer_variant": "0.2", + "default_filament_profile": [ + "Elegoo PLA @0.2 nozzle" + ], + "default_print_profile": "0.10mm Standard @Elegoo N4Pro 0.2 nozzle", + "retraction_minimum_travel": [ + "0.4" + ], + "wipe_distance": [ + "0.8" + ], + "retraction_length": [ + "0.5" + ], + "max_layer_height": [ + "0.14" + ], + "min_layer_height": [ + "0.06" + ], + "renamed_from": "Elegoo Neptune 4 Pro (0.2 nozzle)" +} diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Pro 0.4 nozzle.json b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Pro 0.4 nozzle.json new file mode 100644 index 00000000000..ad047c80032 --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Pro 0.4 nozzle.json @@ -0,0 +1,40 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 4 Pro 0.4 nozzle", + "from": "system", + "setting_id": "EN4PRO04", + "instantiation": "true", + "inherits": "Elegoo Neptune 4 0.4 nozzle", + "host_type": "elegoolink", + "printer_model": "Elegoo Neptune 4 Pro", + "default_print_profile": "0.20mm Standard @Elegoo N4Pro 0.4 nozzle", + "gcode_flavor": "klipper", + "nozzle_diameter": [ + "0.4" + ], + "printer_variant": "0.4", + "printable_area": [ + "0x0", + "230x0", + "230x230", + "0x230" + ], + "bed_texture_area": [ + "0x-12.5", + "230x-12.5", + "230x0", + "230x227.5" + ], + "printable_height": "265", + "retract_lift_below": [ + "264" + ], + "extruder_offset": [ + "-2.5x-3.5" + ], + "before_layer_change_gcode": ";[layer_z]\nG92 E0\n{if (first_layer_print_min[0]) > 57.5 && (first_layer_print_min[1]) > 57.5 &&(first_layer_print_max[0]) < 177.5 && (first_layer_print_max[1]) < 177.5 && layer_num < 4 && bed_temperature_initial_layer_single < 71}\nM141 S0\n{endif}", + "default_filament_profile": [ + "Elegoo PLA @EN4 Series" + ], + "renamed_from": "Elegoo Neptune 4 Pro (0.4 nozzle)" +} diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Pro 0.6 nozzle.json b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Pro 0.6 nozzle.json new file mode 100644 index 00000000000..e84b383dacb --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Pro 0.6 nozzle.json @@ -0,0 +1,33 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 4 Pro 0.6 nozzle", + "inherits": "Elegoo Neptune 4 Pro 0.4 nozzle", + "from": "system", + "setting_id": "EN4PRO06", + "instantiation": "true", + "nozzle_diameter": [ + "0.6" + ], + "printer_model": "Elegoo Neptune 4 Pro", + "printer_variant": "0.6", + "default_filament_profile": [ + "Elegoo PLA @EN4 Series" + ], + "default_print_profile": "0.30mm Standard @Elegoo N4Pro 0.6 nozzle", + "retraction_minimum_travel": [ + "1.2" + ], + "wipe_distance": [ + "1.8" + ], + "retraction_length": [ + "0.8" + ], + "max_layer_height": [ + "0.42" + ], + "min_layer_height": [ + "0.12" + ], + "renamed_from": "Elegoo Neptune 4 Pro (0.6 nozzle)" +} diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Pro 0.8 nozzle.json b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Pro 0.8 nozzle.json new file mode 100644 index 00000000000..9ee76903bb9 --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Pro 0.8 nozzle.json @@ -0,0 +1,36 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 4 Pro 0.8 nozzle", + "inherits": "Elegoo Neptune 4 Pro 0.4 nozzle", + "from": "system", + "setting_id": "EN4PRO08", + "instantiation": "true", + "nozzle_diameter": [ + "0.8" + ], + "printer_model": "Elegoo Neptune 4 Pro", + "printer_variant": "0.8", + "default_filament_profile": [ + "Elegoo PLA @EN4 Series" + ], + "default_print_profile": "0.40mm Standard @Elegoo N4Pro 0.8 nozzle", + "retraction_minimum_travel": [ + "1.6" + ], + "wipe_distance": [ + "2.0" + ], + "retraction_length": [ + "1.2" + ], + "max_layer_height": [ + "0.56" + ], + "min_layer_height": [ + "0.16" + ], + "retract_length_toolchange": [ + "3" + ], + "renamed_from": "Elegoo Neptune 4 Pro (0.8 nozzle)" +} diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Pro 1.0 nozzle.json b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Pro 1.0 nozzle.json new file mode 100644 index 00000000000..24dc8e0dadc --- /dev/null +++ b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Pro 1.0 nozzle.json @@ -0,0 +1,35 @@ +{ + "type": "machine", + "name": "Elegoo Neptune 4 Pro 1.0 nozzle", + "inherits": "Elegoo Neptune 4 Pro 0.4 nozzle", + "from": "system", + "setting_id": "EN4PRO10", + "instantiation": "true", + "nozzle_diameter": [ + "1.0" + ], + "printer_model": "Elegoo Neptune 4 Pro", + "printer_variant": "1.0", + "default_filament_profile": [ + "Elegoo PLA @EN4 Series" + ], + "default_print_profile": "0.50mm Standard @Elegoo N4Pro 1.0 nozzle", + "retraction_minimum_travel": [ + "2.0" + ], + "wipe_distance": [ + "2.0" + ], + "retraction_length": [ + "1.5" + ], + "max_layer_height": [ + "0.7" + ], + "min_layer_height": [ + "0.2" + ], + "retract_length_toolchange": [ + "3.5" + ] +} diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Pro.json b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Pro.json index 8e432eecb71..30fd3fba528 100644 --- a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Pro.json +++ b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4 Pro.json @@ -1,12 +1,12 @@ { "type": "machine_model", "name": "Elegoo Neptune 4 Pro", - "model_id": "Elegoo-Neptune-4-Pro", - "nozzle_diameter": "0.2;0.4;0.6;0.8", + "model_id": "Elegoo-N4Pro", + "nozzle_diameter": "0.4;0.2;0.6;0.8;1.0", "machine_tech": "FFF", "family": "Elegoo", "bed_model": "elegoo_neptune4pro_buildplate_model.stl", "bed_texture": "elegoo_neptune4pro_buildplate_texture.svg", "hotend_model": "", - "default_materials": "Generic PLA @Elegoo;Generic PETG @Elegoo;Generic ABS @Elegoo" + "default_materials": "Elegoo ASA @0.2 nozzle;Elegoo ASA @EN4 Series;Elegoo PETG PRO @0.2 nozzle;Elegoo PETG PRO @EN4 Series;Elegoo PLA @0.2 nozzle;Elegoo PLA Matte @0.2 nozzle;Elegoo PLA Matte @EN4 Series;Elegoo PLA PRO @0.2 nozzle;Elegoo PLA PRO @EN4 Series;Elegoo PLA Silk @0.2 nozzle;Elegoo PLA Silk @EN4 Series;Elegoo PLA-CF @EN4 Series;Elegoo PLA @EN4 Series;Elegoo PLA+ @0.2 nozzle;Elegoo PLA+ @EN4 Series;Elegoo Rapid PETG @0.2 nozzle;Elegoo Rapid PETG @EN4 Series;Elegoo Rapid PLA+ @0.2 nozzle;Elegoo Rapid PLA+ @EN4 Series;Elegoo TPU 95A @EN4 Series;Elegoo PLA Basic @0.2 nozzle;Elegoo PLA Basic @EN4 Series;Elegoo PLA Galaxy @EN4 Series;Elegoo PLA Marble @EN4 Series;Elegoo PLA Sparkle @EN4 Series;Elegoo PLA Wood @EN4 Series;Elegoo Rapid TPU 95A @EN4 Series;Elegoo PETG-CF @EN4 Series;Elegoo PETG-GF @EN4 Series;Elegoo PETG Translucent @0.2 nozzle;Elegoo PETG Translucent @EN4 Series" } diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4.json b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4.json index 2f08221ed71..cfe1b9fc2f1 100644 --- a/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4.json +++ b/resources/profiles/Elegoo/machine/EN4SERIES/Elegoo Neptune 4.json @@ -1,12 +1,12 @@ { "type": "machine_model", "name": "Elegoo Neptune 4", - "model_id": "Elegoo-Neptune-4", - "nozzle_diameter": "0.2;0.4;0.6;0.8", + "model_id": "Elegoo-N4", + "nozzle_diameter": "0.4;0.2;0.6;0.8;1.0", "machine_tech": "FFF", "family": "Elegoo", - "bed_model": "elegoo_neptune4_buildplate_model.stl", - "bed_texture": "elegoo_neptune4_buildplate_texture.svg", + "bed_model": "elegoo_neptune_pro_buildplate_model.stl", + "bed_texture": "elegoo_neptune_buildplate_texture.svg", "hotend_model": "", - "default_materials": "Generic PLA @Elegoo;Generic PETG @Elegoo;Generic ABS @Elegoo" + "default_materials": "Elegoo ASA @0.2 nozzle;Elegoo ASA @EN4 Series;Elegoo PETG PRO @0.2 nozzle;Elegoo PETG PRO @EN4 Series;Elegoo PLA @0.2 nozzle;Elegoo PLA Matte @0.2 nozzle;Elegoo PLA Matte @EN4 Series;Elegoo PLA PRO @0.2 nozzle;Elegoo PLA PRO @EN4 Series;Elegoo PLA Silk @0.2 nozzle;Elegoo PLA Silk @EN4 Series;Elegoo PLA-CF @EN4 Series;Elegoo PLA @EN4 Series;Elegoo PLA+ @0.2 nozzle;Elegoo PLA+ @EN4 Series;Elegoo Rapid PETG @0.2 nozzle;Elegoo Rapid PETG @EN4 Series;Elegoo Rapid PLA+ @0.2 nozzle;Elegoo Rapid PLA+ @EN4 Series;Elegoo TPU 95A @EN4 Series" } diff --git a/resources/profiles/Elegoo/machine/EN4SERIES/fdm_neptune_4_common.json b/resources/profiles/Elegoo/machine/EN4SERIES/fdm_neptune_4_common.json deleted file mode 100644 index b8e8461d38f..00000000000 --- a/resources/profiles/Elegoo/machine/EN4SERIES/fdm_neptune_4_common.json +++ /dev/null @@ -1,145 +0,0 @@ -{ - "type": "machine", - "name": "fdm_neptune_4_common", - "inherits": "fdm_elegoo_common", - "from": "system", - "instantiation": "false", - "gcode_flavor": "klipper", - "machine_max_acceleration_extruding": [ - "10000", - "10000" - ], - "machine_max_acceleration_retracting": [ - "10000", - "10000" - ], - "machine_max_acceleration_x": [ - "10000", - "10000" - ], - "machine_max_acceleration_y": [ - "10000", - "10000" - ], - "machine_max_speed_z": [ - "12", - "12" - ], - "machine_max_acceleration_e": [ - "5000", - "5000" - ], - "machine_max_acceleration_travel": [ - "10000", - "10000" - ], - "machine_max_jerk_x": [ - "9", - "9" - ], - "machine_max_jerk_y": [ - "9", - "9" - ], - "machine_max_acceleration_z": [ - "500", - "500" - ], - "machine_max_speed_e": [ - "60", - "60" - ], - "machine_max_speed_x": [ - "500", - "500" - ], - "machine_max_speed_y": [ - "500", - "500" - ], - "machine_max_jerk_e": [ - "5", - "5" - ], - "machine_max_jerk_z": [ - "0.4", - "0.4" - ], - "machine_min_extruding_rate": [ - "0", - "0" - ], - "machine_min_travel_rate": [ - "0", - "0" - ], - "max_layer_height": [ - "0.32" - ], - "min_layer_height": [ - "0.08" - ], - "printable_height": "280", - "extruder_clearance_radius": "47", - "extruder_clearance_height_to_rod": "34", - "extruder_clearance_height_to_lid": "34", - "printer_settings_id": "", - "printer_technology": "FFF", - "printer_variant": "0.4", - "retraction_minimum_travel": [ - "2" - ], - "retract_before_wipe": [ - "70%" - ], - "retract_when_changing_layer": [ - "1" - ], - "retraction_length": [ - "5" - ], - "retract_length_toolchange": [ - "2" - ], - "z_hop": [ - "0.4" - ], - "retract_restart_extra": [ - "0" - ], - "retract_restart_extra_toolchange": [ - "0" - ], - "retraction_speed": [ - "60" - ], - "deretraction_speed": [ - "40" - ], - "silent_mode": "0", - "single_extruder_multi_material": "1", - "change_filament_gcode": "", - "machine_pause_gcode": "M25 ;pause print", - "wipe": [ - "1" - ], - "default_filament_profile": [ - "Generic PLA @Elegoo" - ], - "default_print_profile": "", - "bed_exclude_area": [ - "0x0" - ], - "machine_start_gcode": "", - "machine_end_gcode": "", - "layer_change_gcode": "", - "scan_first_layer": "0", - "nozzle_type": "undefine", - "auxiliary_fan": "0", - "thumbnails": [ - "320x320/PNG", - "32x32/COLPIC", - "160x160/COLPIC" - ], - "thumbnails_format": "PNG" -} diff --git a/resources/profiles/Elegoo/machine/EOSGIGA/Elegoo OrangeStorm Giga 0.4 nozzle.json b/resources/profiles/Elegoo/machine/EOSGIGA/Elegoo OrangeStorm Giga 0.4 nozzle.json index a5a8c3d7884..eca11e5cc3d 100644 --- a/resources/profiles/Elegoo/machine/EOSGIGA/Elegoo OrangeStorm Giga 0.4 nozzle.json +++ b/resources/profiles/Elegoo/machine/EOSGIGA/Elegoo OrangeStorm Giga 0.4 nozzle.json @@ -5,9 +5,8 @@ "from": "system", "setting_id": "EOSG04", "instantiation": "true", + "host_type": "elegoolink", "printer_model": "Elegoo OrangeStorm Giga", - "printer_variant": "0.4", - "printer_structure": "i3", "default_print_profile": "0.20mm Standard @Elegoo Giga 0.4 nozzle", "nozzle_diameter": [ "0.4" @@ -18,16 +17,25 @@ "810x805", "0x805" ], - "printable_height": [ - "1010" - ], + "printable_height": "1010", "retract_lift_below": [ "1010" ], + "printer_variant": "0.4", "auxiliary_fan": "0", + "bed_exclude_area": [], + "support_parallel_printheads": "1", + "parallel_printheads_count": "1", + "parallel_printheads_bed_exclude_areas": [ + "", + "400x0, 810x0, 810x805, 400x805", + "200x0, 810x0, 810x805, 200x805", + "200x0, 810x0, 810x805, 200x805" + ], "default_filament_profile": [ "Elegoo PLA @Elegoo Giga" ], + "head_wrap_detect_zone": [], "machine_load_filament_time": "25", "machine_max_acceleration_extruding": [ "5000", @@ -49,6 +57,14 @@ "5000", "5000" ], + "machine_max_speed_x": [ + "300", + "200" + ], + "machine_max_speed_y": [ + "300", + "200" + ], "machine_max_jerk_e": [ "3", "3" @@ -72,21 +88,24 @@ "extruder_clearance_height_to_rod": "65", "extruder_clearance_radius": "65", "fan_speedup_time": "0.5", - "thumbnails_format": "COLPIC", "thumbnails": [ "400x400/COLPIC", "114x114/COLPIC", "160x160/PNG" ], + "thumbnails_format": "COLPIC", "machine_unload_filament_time": "29", "nozzle_height": "4.76", "nozzle_volume": "125", + "printer_structure": "i3", "scan_first_layer": "0", "time_lapse_gcode": "", "gcode_flavor": "klipper", + "use_relative_e_distances": "0", "change_filament_gcode": "M600", - "machine_pause_gcode": "PAUSE", - "machine_start_gcode": ";;===== date: 20240520 =====================\n;Machine_use_extruders:1\n;TIME:\nM400 ; wait for buffer to clear\n;[printer_model]\n;initial_filament:{filament_type[initial_extruder]}\n;curr_bed_type={curr_bed_type}\nM220 S100 ;Set the feed speed to 100%\nM221 S100 ;Set the flow rate to 100%\nM104 S140\n;Giga zoned hot bed control\n;Case 1\nM140 S0\n{if (min(print_bed_max[0], first_layer_print_min[0] + 32) - 32) < 405 && (max(0, first_layer_print_min[1])) < 402.5}\nM140 T0 S[bed_temperature_initial_layer_single]\n{if ((min(print_bed_max[0], max(first_layer_print_min[0] + 32, first_layer_print_max[0])))) > 405}\nM140 T1 S[bed_temperature_initial_layer_single]\n{endif}\n{if ((first_layer_print_max[1])) > 402.5}\nM140 T3 S[bed_temperature_initial_layer_single]\n{endif}\n{if ((min(print_bed_max[0], max(first_layer_print_min[0] + 32, first_layer_print_max[0])))) > 405 && ((first_layer_print_max[1])) > 402.5}\nM140 T2 S[bed_temperature_initial_layer_single]\n{endif}\n{endif}\n\n;Case 2\n{if (min(print_bed_max[0], first_layer_print_min[0] + 32) - 32) < 405 && (max(0, first_layer_print_min[1])) > 402.5}\nM140 T3 S[bed_temperature_initial_layer_single]\n{if ((min(print_bed_max[0], max(first_layer_print_min[0] + 32, first_layer_print_max[0])))) > 405}\nM140 T2 S[bed_temperature_initial_layer_single]\n{endif}\n{endif}\n\n;Case 3\n{if (min(print_bed_max[0], first_layer_print_min[0] + 32) - 32) > 405 && (max(0, first_layer_print_min[1])) < 402.5}\nM140 T1 S[bed_temperature_initial_layer_single]\n{if ((first_layer_print_max[1])) > 402.5}\nM140 T2 S[bed_temperature_initial_layer_single]\n{endif}\n{endif}\n\n;Case 4\n{if (min(print_bed_max[0], first_layer_print_min[0] + 32) - 32) > 405 && (max(0, first_layer_print_min[1])) > 402.5}\nM140 T2 S[bed_temperature_initial_layer_single]\n{endif}\nG90\nG28 ;home\nG1 Z10 F300\nG1 X{print_bed_max[0]*0.75-50} Y0.5 F6000\n;\n;Giga zoned hot bed control\n;Case 1\n{if (min(print_bed_max[0], first_layer_print_min[0] + 32) - 32) < 405 && (max(0, first_layer_print_min[1])) < 402.5}\nM190 T0 S[bed_temperature_initial_layer_single]\n{if ((min(print_bed_max[0], max(first_layer_print_min[0] + 32, first_layer_print_max[0])))) > 405}\nM190 T1 S[bed_temperature_initial_layer_single]\n{endif}\n{if ((first_layer_print_max[1])) > 402.5}\nM190 T3 S[bed_temperature_initial_layer_single]\n{endif}\n{if ((min(print_bed_max[0], max(first_layer_print_min[0] + 32, first_layer_print_max[0])))) > 405 && ((first_layer_print_max[1])) > 402.5}\nM190 T2 S[bed_temperature_initial_layer_single]\n{endif}\n{endif}\n\n;Case 2\n{if (min(print_bed_max[0], first_layer_print_min[0] + 32) - 32) < 405 && (max(0, first_layer_print_min[1])) > 402.5}\nM190 T3 S[bed_temperature_initial_layer_single]\n{if ((min(print_bed_max[0], max(first_layer_print_min[0] + 32, first_layer_print_max[0])))) > 405}\nM190 T2 S[bed_temperature_initial_layer_single]\n{endif}\n{endif}\n\n;Case 3\n{if (min(print_bed_max[0], first_layer_print_min[0] + 32) - 32) > 405 && (max(0, first_layer_print_min[1])) < 402.5}\nM190 T1 S[bed_temperature_initial_layer_single]\n{if ((first_layer_print_max[1])) > 402.5}\nM190 T2 S[bed_temperature_initial_layer_single]\n{endif}\n{endif}\n\n;Case 4\n{if (min(print_bed_max[0], first_layer_print_min[0] + 32) - 32) > 405 && (max(0, first_layer_print_min[1])) > 402.5}\nM190 T2 S[bed_temperature_initial_layer_single]\n{endif}\nG1 Z0.4 F300\nM109 S[nozzle_temperature_initial_layer]\nG92 E0 ;Reset Extruder\nG1 X{print_bed_max[0]*0.75+50} E30 F400 ;Draw the first line\nG1 Z0.6 F120.0 ;Move to side a little\nG1 X{print_bed_max[0]*0.75+47} F3000\nG92 E0 ;Reset Extruder\n;LAYER_COUNT:[total_layer_count]\n;LAYER:0", + "machine_pause_gcode": "M600", + "machine_start_gcode": ";===== START GCODE BEGIN =====\n;===== date: 20260528 =====================\n;Machine_use_extruders:{parallel_printheads_count}\nM400 ; wait for buffer to clear\n;[printer_model]\n;initial_filament:{filament_type[initial_extruder]}\n;curr_bed_type={curr_bed_type}\nM220 S100 ;Set the feed speed to 100%\nM221 S100 ;Set the flow rate to 100%\nM104 S140\n;Giga zoned hot bed control\nM140 S0\n\n{if parallel_printheads_count == 1}\n;Case 1\n{if (min(print_bed_max[0], first_layer_print_min[0] + 32) - 32) < 405 && (max(0, first_layer_print_min[1])) < 402.5}\nM140 T0 S[bed_temperature_initial_layer_single]\n{if ((min(print_bed_max[0], max(first_layer_print_min[0] + 32, first_layer_print_max[0])))) > 405}\nM140 T1 S[bed_temperature_initial_layer_single]\n{endif}\n{if ((first_layer_print_max[1])) > 402.5}\nM140 T3 S[bed_temperature_initial_layer_single]\n{endif}\n{if ((min(print_bed_max[0], max(first_layer_print_min[0] + 32, first_layer_print_max[0])))) > 405 && ((first_layer_print_max[1])) > 402.5}\nM140 T2 S[bed_temperature_initial_layer_single]\n{endif}\n{endif}\n\n;Case 2\n{if (min(print_bed_max[0], first_layer_print_min[0] + 32) - 32) < 405 && (max(0, first_layer_print_min[1])) > 402.5}\nM140 T3 S[bed_temperature_initial_layer_single]\n{if ((min(print_bed_max[0], max(first_layer_print_min[0] + 32, first_layer_print_max[0])))) > 405}\nM140 T2 S[bed_temperature_initial_layer_single]\n{endif}\n{endif}\n\n;Case 3\n{if (min(print_bed_max[0], first_layer_print_min[0] + 32) - 32) > 405 && (max(0, first_layer_print_min[1])) < 402.5}\nM140 T1 S[bed_temperature_initial_layer_single]\n{if ((first_layer_print_max[1])) > 402.5}\nM140 T2 S[bed_temperature_initial_layer_single]\n{endif}\n{endif}\n\n;Case 4\n{if (min(print_bed_max[0], first_layer_print_min[0] + 32) - 32) > 405 && (max(0, first_layer_print_min[1])) > 402.5}\nM140 T2 S[bed_temperature_initial_layer_single]\n{endif}\n{endif}\n\n{if parallel_printheads_count > 1}\n;Heat all 4 bed zones for multi-printhead\nM140 T0 S[bed_temperature_initial_layer_single]\nM140 T1 S[bed_temperature_initial_layer_single]\nM140 T2 S[bed_temperature_initial_layer_single]\nM140 T3 S[bed_temperature_initial_layer_single]\n{endif}\n\nG90\nG28 ;home\nG1 Z10 F300\n\n{if parallel_printheads_count == 1}\nG1 X{print_bed_max[0]*0.75-50} Y0.5 F6000\n{endif}\n\n{if parallel_printheads_count == 2}\nG1 X{print_bed_max[0]*0.25-50} Y0.5 F6000\n{endif}\n\n{if parallel_printheads_count > 2}\nG1 X{print_bed_max[0]*0.125-50} Y0.5 F6000\n{endif}\n\n;\n;Giga zoned hot bed control\n{if parallel_printheads_count == 1}\n;Case 1\n{if (min(print_bed_max[0], first_layer_print_min[0] + 32) - 32) < 405 && (max(0, first_layer_print_min[1])) < 402.5}\nM190 T0 S[bed_temperature_initial_layer_single]\n{if ((min(print_bed_max[0], max(first_layer_print_min[0] + 32, first_layer_print_max[0])))) > 405}\nM190 T1 S[bed_temperature_initial_layer_single]\n{endif}\n{if ((first_layer_print_max[1])) > 402.5}\nM190 T3 S[bed_temperature_initial_layer_single]\n{endif}\n{if ((min(print_bed_max[0], max(first_layer_print_min[0] + 32, first_layer_print_max[0])))) > 405 && ((first_layer_print_max[1])) > 402.5}\nM190 T2 S[bed_temperature_initial_layer_single]\n{endif}\n{endif}\n\n;Case 2\n{if (min(print_bed_max[0], first_layer_print_min[0] + 32) - 32) < 405 && (max(0, first_layer_print_min[1])) > 402.5}\nM190 T3 S[bed_temperature_initial_layer_single]\n{if ((min(print_bed_max[0], max(first_layer_print_min[0] + 32, first_layer_print_max[0])))) > 405}\nM190 T2 S[bed_temperature_initial_layer_single]\n{endif}\n{endif}\n\n;Case 3\n{if (min(print_bed_max[0], first_layer_print_min[0] + 32) - 32) > 405 && (max(0, first_layer_print_min[1])) < 402.5}\nM190 T1 S[bed_temperature_initial_layer_single]\n{if ((first_layer_print_max[1])) > 402.5}\nM190 T2 S[bed_temperature_initial_layer_single]\n{endif}\n{endif}\n\n;Case 4\n{if (min(print_bed_max[0], first_layer_print_min[0] + 32) - 32) > 405 && (max(0, first_layer_print_min[1])) > 402.5}\nM190 T2 S[bed_temperature_initial_layer_single]\n{endif}\n{endif}\n\n{if parallel_printheads_count > 1}\n;Wait for all 4 bed zones to reach temperature\nM190 T0 S[bed_temperature_initial_layer_single]\nM190 T1 S[bed_temperature_initial_layer_single]\nM190 T2 S[bed_temperature_initial_layer_single]\nM190 T3 S[bed_temperature_initial_layer_single]\n{endif}\nG1 Z0.4 F300\nM109 S[nozzle_temperature_initial_layer]\nG92 E0 ;Reset Extruder\n\n{if parallel_printheads_count == 1}\nG1 X{print_bed_max[0]*0.75+50} E30 F400 ;Draw the first line\nG1 Z0.6 F120.0 ;Move to side a little\nG1 X{print_bed_max[0]*0.75+47} F3000\n{endif}\n\n{if parallel_printheads_count == 2}\nG1 X{print_bed_max[0]*0.25+50} E30 F400 ;Draw the first line\nG1 Z0.6 F120.0 ;Move to side a little\nG1 X{print_bed_max[0]*0.25+47} F3000\n{endif}\n\n{if parallel_printheads_count > 2}\nG1 X{print_bed_max[0]*0.125+50} E30 F400 ;Draw the first line\nG1 Z0.6 F120.0 ;Move to side a little\nG1 X{print_bed_max[0]*0.125+47} F3000\n{endif}\n\nG92 E0 ;Reset Extruder\n;LAYER_COUNT:[total_layer_count]\n;LAYER:0\n", "machine_end_gcode": ";PRINT_END\nG90 ;Absolute positionning\nM83 ; extruder relative mode\nG1 X30 Y30 Z{min(max_layer_z+200, printable_height)} E-5 F{travel_speed*60} ; Move print head up\nM106 S0 ;Turn-off fan\nM104 S0 ;Turn-off hotend\nM140 S0 ;Turn-off bed\nM84 X Y E ;Disable all steppers but Z", - "layer_change_gcode": ";LAYER:{layer_num+1}\n{if layer_num > 0 and layer_num < 3}\n;Giga zoned hot bed control\n;Case 1\nM140 S0\n{if (min(print_bed_max[0], first_layer_print_min[0] + 32) - 32) < 405 && (max(0, first_layer_print_min[1])) < 402.5}\nM140 T0 S[bed_temperature_initial_layer_single]\n{if ((min(print_bed_max[0], max(first_layer_print_min[0] + 32, first_layer_print_max[0])))) > 405}\nM140 T1 S[bed_temperature_initial_layer_single]\n{endif}\n{if ((first_layer_print_max[1])) > 402.5}\nM140 T3 S[bed_temperature_initial_layer_single]\n{endif}\n{if ((min(print_bed_max[0], max(first_layer_print_min[0] + 32, first_layer_print_max[0])))) > 405 && ((first_layer_print_max[1])) > 402.5}\nM140 T2 S[bed_temperature_initial_layer_single]\n{endif}\n{endif}\n\n;Case 2\n{if (min(print_bed_max[0], first_layer_print_min[0] + 32) - 32) < 405 && (max(0, first_layer_print_min[1])) > 402.5}\nM140 T3 S[bed_temperature_initial_layer_single]\n{if ((min(print_bed_max[0], max(first_layer_print_min[0] + 32, first_layer_print_max[0])))) > 405}\nM140 T2 S[bed_temperature_initial_layer_single]\n{endif}\n{endif}\n\n;Case 3\n{if (min(print_bed_max[0], first_layer_print_min[0] + 32) - 32) > 405 && (max(0, first_layer_print_min[1])) < 402.5}\nM140 T1 S[bed_temperature_initial_layer_single]\n{if ((first_layer_print_max[1])) > 402.5}\nM140 T2 S[bed_temperature_initial_layer_single]\n{endif}\n{endif}\n\n;Case 4\n{if (min(print_bed_max[0], first_layer_print_min[0] + 32) - 32) > 405 && (max(0, first_layer_print_min[1])) > 402.5}\nM140 T2 S[bed_temperature_initial_layer_single]\n{endif}\n\n{endif}" + "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\n", + "layer_change_gcode": ";===== LAYER CHANGE GCODE BEGIN =====\n;===== date: 20251230 =====================\n;LAYER:{layer_num+1}\n{if layer_num > 0 and layer_num < 3}\n;Giga zoned hot bed control\nM140 S0\n\n{if parallel_printheads_count == 1}\n;Case 1\n{if (min(print_bed_max[0], first_layer_print_min[0] + 32) - 32) < 405 && (max(0, first_layer_print_min[1])) < 402.5}\nM140 T0 S[bed_temperature_initial_layer_single]\n{if ((min(print_bed_max[0], max(first_layer_print_min[0] + 32, first_layer_print_max[0])))) > 405}\nM140 T1 S[bed_temperature_initial_layer_single]\n{endif}\n{if ((first_layer_print_max[1])) > 402.5}\nM140 T3 S[bed_temperature_initial_layer_single]\n{endif}\n{if ((min(print_bed_max[0], max(first_layer_print_min[0] + 32, first_layer_print_max[0])))) > 405 && ((first_layer_print_max[1])) > 402.5}\nM140 T2 S[bed_temperature_initial_layer_single]\n{endif}\n{endif}\n\n;Case 2\n{if (min(print_bed_max[0], first_layer_print_min[0] + 32) - 32) < 405 && (max(0, first_layer_print_min[1])) > 402.5}\nM140 T3 S[bed_temperature_initial_layer_single]\n{if ((min(print_bed_max[0], max(first_layer_print_min[0] + 32, first_layer_print_max[0])))) > 405}\nM140 T2 S[bed_temperature_initial_layer_single]\n{endif}\n{endif}\n\n;Case 3\n{if (min(print_bed_max[0], first_layer_print_min[0] + 32) - 32) > 405 && (max(0, first_layer_print_min[1])) < 402.5}\nM140 T1 S[bed_temperature_initial_layer_single]\n{if ((first_layer_print_max[1])) > 402.5}\nM140 T2 S[bed_temperature_initial_layer_single]\n{endif}\n{endif}\n\n;Case 4\n{if (min(print_bed_max[0], first_layer_print_min[0] + 32) - 32) > 405 && (max(0, first_layer_print_min[1])) > 402.5}\nM140 T2 S[bed_temperature_initial_layer_single]\n{endif}\n{endif}\n\n{if parallel_printheads_count > 1}\n;Heat all 4 bed zones for multi-printhead\nM140 T0 S[bed_temperature_initial_layer_single]\nM140 T1 S[bed_temperature_initial_layer_single]\nM140 T2 S[bed_temperature_initial_layer_single]\nM140 T3 S[bed_temperature_initial_layer_single]\n{endif}\n\n{endif}" } diff --git a/resources/profiles/Elegoo/machine/EOSGIGA/Elegoo OrangeStorm Giga 0.6 nozzle.json b/resources/profiles/Elegoo/machine/EOSGIGA/Elegoo OrangeStorm Giga 0.6 nozzle.json index b73513d8872..9947dc3027f 100644 --- a/resources/profiles/Elegoo/machine/EOSGIGA/Elegoo OrangeStorm Giga 0.6 nozzle.json +++ b/resources/profiles/Elegoo/machine/EOSGIGA/Elegoo OrangeStorm Giga 0.6 nozzle.json @@ -28,5 +28,6 @@ ], "min_layer_height": [ "0.12" - ] + ], + "upward_compatible_machine": [] } diff --git a/resources/profiles/Elegoo/machine/EOSGIGA/Elegoo OrangeStorm Giga 0.8 nozzle.json b/resources/profiles/Elegoo/machine/EOSGIGA/Elegoo OrangeStorm Giga 0.8 nozzle.json index 7d4823cafa5..606387e0cb3 100644 --- a/resources/profiles/Elegoo/machine/EOSGIGA/Elegoo OrangeStorm Giga 0.8 nozzle.json +++ b/resources/profiles/Elegoo/machine/EOSGIGA/Elegoo OrangeStorm Giga 0.8 nozzle.json @@ -28,5 +28,6 @@ ], "min_layer_height": [ "0.16" - ] + ], + "upward_compatible_machine": [] } diff --git a/resources/profiles/Elegoo/machine/EOSGIGA/Elegoo OrangeStorm Giga 1.0 nozzle.json b/resources/profiles/Elegoo/machine/EOSGIGA/Elegoo OrangeStorm Giga 1.0 nozzle.json index 3216598ab18..078533436c4 100644 --- a/resources/profiles/Elegoo/machine/EOSGIGA/Elegoo OrangeStorm Giga 1.0 nozzle.json +++ b/resources/profiles/Elegoo/machine/EOSGIGA/Elegoo OrangeStorm Giga 1.0 nozzle.json @@ -28,5 +28,6 @@ ], "min_layer_height": [ "0.2" - ] + ], + "upward_compatible_machine": [] } diff --git a/resources/profiles/Elegoo/machine/EOSGIGA/Elegoo OrangeStorm Giga.json b/resources/profiles/Elegoo/machine/EOSGIGA/Elegoo OrangeStorm Giga.json index f43ce6ffd31..98d916c8c3e 100644 --- a/resources/profiles/Elegoo/machine/EOSGIGA/Elegoo OrangeStorm Giga.json +++ b/resources/profiles/Elegoo/machine/EOSGIGA/Elegoo OrangeStorm Giga.json @@ -1,12 +1,12 @@ { "type": "machine_model", "name": "Elegoo OrangeStorm Giga", - "model_id": "Elegoo-OrangeStorm-Giga", - "nozzle_diameter": "0.4;0.6;0.8;1.0", + "model_id": "Elegoo-OS-Giga", + "nozzle_diameter": "0.6;0.4;0.8;1.0", "bed_model": "elegoo_orangestorm_giga_buildplate_model.stl", "bed_texture": "elegoo_orangestorm_giga_buildplate_texture.svg", "machine_tech": "FFF", "family": "Elegoo", "hotend_model": "", - "default_materials": "Elegoo PLA @Elegoo Giga;Elegoo PETG PRO @Elegoo Giga;Elegoo PLA Silk" + "default_materials": "Elegoo PLA @Elegoo Giga;Elegoo PETG PRO @Elegoo Giga;Elegoo ASA @Elegoo Giga;Elegoo PLA Matte @Elegoo Giga;Elegoo Rapid PETG @Elegoo Giga;Elegoo Rapid PLA+ @Elegoo Giga;Elegoo PLA Basic @0.2 nozzle;Elegoo PLA Basic @Elegoo Giga;Elegoo PLA Galaxy @Elegoo Giga;Elegoo PLA Marble @Elegoo Giga;Elegoo PLA Sparkle @Elegoo Giga;Elegoo PLA Wood @Elegoo Giga;Elegoo Rapid TPU 95A @Elegoo Giga;Elegoo PETG-CF @Elegoo Giga;Elegoo PETG-GF @Elegoo Giga;Elegoo PETG Translucent @0.2 nozzle;Elegoo PETG Translucent @Elegoo Giga" } diff --git a/resources/profiles/Elegoo/machine/fdm_elegoo_3dp_001_common.json b/resources/profiles/Elegoo/machine/fdm_elegoo_3dp_001_common.json index f1398ce1011..70f792f6f98 100644 --- a/resources/profiles/Elegoo/machine/fdm_elegoo_3dp_001_common.json +++ b/resources/profiles/Elegoo/machine/fdm_elegoo_3dp_001_common.json @@ -21,6 +21,7 @@ "default_filament_profile": [ "Generic PLA @Elegoo" ], + "default_print_profile": "0.20mm Standard @Elegoo CC 0.4 nozzle", "extruder_colour": [ "#018001" ], diff --git a/resources/profiles/Elegoo/machine/fdm_elegoo_common.json b/resources/profiles/Elegoo/machine/fdm_elegoo_common.json index 9eafa2efa89..fffd18ea440 100644 --- a/resources/profiles/Elegoo/machine/fdm_elegoo_common.json +++ b/resources/profiles/Elegoo/machine/fdm_elegoo_common.json @@ -1,69 +1,91 @@ { "type": "machine", "name": "fdm_elegoo_common", - "inherits": "fdm_machine_common", "from": "system", "instantiation": "false", + "inherits": "fdm_machine_common", "gcode_flavor": "marlin", + "printer_technology": "FFF", + "nozzle_diameter": [ + "0.4" + ], + "printer_variant": "0.4", + "printable_area": [ + "0x0", + "235x0", + "235x235", + "0x235" + ], + "auxiliary_fan": "0", + "bed_exclude_area": [ + "0x0" + ], + "default_filament_profile": [ + "Generic PLA @Elegoo" + ], + "default_print_profile": "", + "extruder_colour": [ + "#018001" + ], "machine_max_acceleration_e": [ - "5000", - "5000" + "1000", + "1000" ], "machine_max_acceleration_extruding": [ - "500", - "500" + "1000", + "1000" ], "machine_max_acceleration_retracting": [ "1000", "1000" ], "machine_max_acceleration_travel": [ - "500", - "500" + "1000", + "1000" ], "machine_max_acceleration_x": [ - "500", - "500" + "1000", + "1000" ], "machine_max_acceleration_y": [ - "500", - "500" + "1000", + "1000" ], "machine_max_acceleration_z": [ - "200", - "200" + "100", + "100" ], "machine_max_speed_e": [ - "60", - "60" + "70", + "70" ], "machine_max_speed_x": [ - "500", - "500" + "300", + "300" ], "machine_max_speed_y": [ - "500", - "500" + "300", + "300" ], "machine_max_speed_z": [ - "10", - "10" + "20", + "20" ], "machine_max_jerk_e": [ - "5", - "5" + "2.5", + "2.5" ], "machine_max_jerk_x": [ - "8", - "8" + "9", + "9" ], "machine_max_jerk_y": [ - "8", - "8" + "9", + "9" ], "machine_max_jerk_z": [ - "0.4", - "0.4" + "3", + "3" ], "machine_min_extruding_rate": [ "0", @@ -73,28 +95,27 @@ "0", "0" ], - "max_layer_height": [ - "0.32" + "printable_height": "250", + "retract_lift_below": [ + "249" ], - "min_layer_height": [ - "0.08" - ], - "printable_height": "280", - "extruder_clearance_radius": "47", + "extruder_clearance_max_radius": "68", "extruder_clearance_height_to_rod": "34", "extruder_clearance_height_to_lid": "34", - "printer_settings_id": "", - "printer_technology": "FFF", - "printer_variant": "0.4", + "nozzle_volume": "90", + "best_object_pos": "0.5x0.5", "retraction_minimum_travel": [ - "2" + "0.8" ], "retract_before_wipe": [ - "70%" + "0%" ], "retract_when_changing_layer": [ "1" ], + "wipe_distance": [ + "1.2" + ], "retraction_length": [ "5" ], @@ -104,36 +125,30 @@ "z_hop": [ "0.4" ], - "retract_restart_extra": [ - "0" - ], - "retract_restart_extra_toolchange": [ - "0" - ], "retraction_speed": [ "60" ], "deretraction_speed": [ - "40" + "60" ], + "z_hop_types": [ + "Auto Lift" + ], + "thumbnails": [ + "320x320", + "160x160" + ], + "thumbnails_format": "PNG", + "nozzle_type": "brass", + "machine_end_gcode": "G90 ;Absolute positionning\nM83 ; extruder relative mode\nG1 X10 Y{print_bed_max[1]*0.8} Z{min(max_layer_z+100, printable_height)} E-8 F{travel_speed*60} ; Move print head up\nG1 Z{min(max_layer_z+100, printable_height-2)} F600\nM104 S0 ;Turn-off hotend\nM140 S0 ;Turn-off bed\nM106 S0 ; turn off fan\nM84 ;Disable all steppers", "silent_mode": "0", "single_extruder_multi_material": "1", "change_filament_gcode": "", - "machine_pause_gcode": "M25 ;pause print", + "machine_pause_gcode": "M600", "wipe": [ "1" ], - "default_filament_profile": [ - "Generic PLA @Elegoo" - ], - "default_print_profile": "", - "bed_exclude_area": [ - "0x0" - ], - "machine_start_gcode": "", - "machine_end_gcode": "", - "layer_change_gcode": "", - "scan_first_layer": "0", - "nozzle_type": "undefine", - "auxiliary_fan": "0" + "machine_start_gcode": "\n;LAYER_COUNT:[total_layer_count]\n;LAYER:0\n", + "layer_change_gcode": ";LAYER:{layer_num+1}\n", + "scan_first_layer": "0" } diff --git a/resources/profiles/Elegoo/machine/fdm_machine_common.json b/resources/profiles/Elegoo/machine/fdm_machine_common.json index 57dfda5322c..249e7609208 100644 --- a/resources/profiles/Elegoo/machine/fdm_machine_common.json +++ b/resources/profiles/Elegoo/machine/fdm_machine_common.json @@ -3,7 +3,13 @@ "name": "fdm_machine_common", "from": "system", "instantiation": "false", + "nozzle_diameter": [ + "0.4" + ], + "printer_variant": "0.4", + "support_chamber_temp_control": "0", "printer_technology": "FFF", + "printer_notes": "", "deretraction_speed": [ "40" ], @@ -19,19 +25,19 @@ "5000" ], "machine_max_acceleration_extruding": [ - "500" + "10000" ], "machine_max_acceleration_retracting": [ "1000" ], "machine_max_acceleration_x": [ - "500" + "10000" ], "machine_max_acceleration_y": [ - "500" + "10000" ], "machine_max_acceleration_z": [ - "500" + "100" ], "machine_max_speed_e": [ "60" @@ -55,7 +61,7 @@ "8" ], "machine_max_jerk_z": [ - "0.4" + "3" ], "machine_min_extruding_rate": [ "0" @@ -64,31 +70,28 @@ "0" ], "max_layer_height": [ - "0.3" + "0.28" ], "min_layer_height": [ - "0.07" + "0.08" ], "printable_height": "250", "extruder_clearance_radius": "65", "extruder_clearance_height_to_rod": "36", "extruder_clearance_height_to_lid": "140", - "nozzle_diameter": [ - "0.4" - ], - "printer_settings_id": "", - "printer_variant": "0.4", + "printer_settings_id": "Elegoo", + "disable_m73": "0", "retraction_minimum_travel": [ - "1" + "2" ], "retract_before_wipe": [ - "0%" + "70%" ], "retract_when_changing_layer": [ "1" ], "retraction_length": [ - "1" + "5" ], "retract_length_toolchange": [ "1" @@ -103,16 +106,25 @@ "0" ], "retraction_speed": [ - "35" + "60" ], + "cooling_tube_retraction": "90", + "parking_pos_retraction": "90", "single_extruder_multi_material": "1", - "change_filament_gcode": "", + "support_air_filtration": "0", "wipe": [ "1" ], - "z_lift_type": "NormalLift", - "default_print_profile": "", + "z_hop_types": [ + "Auto Lift" + ], + "default_filament_profile": [], "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\nG92 E0\n", + "layer_change_gcode": ";LAYER:{layer_num+1}\n", "machine_start_gcode": "", - "machine_end_gcode": "" + "machine_end_gcode": "", + "change_filament_gcode": "", + "purge_in_prime_tower": "0", + "manual_filament_change": "1", + "enable_filament_ramming": "0" } diff --git a/resources/profiles/Elegoo/process/EC/0.08mm Optimal @Elegoo C 0.2 nozzle.json b/resources/profiles/Elegoo/process/EC/0.08mm Optimal @Elegoo C 0.2 nozzle.json index cc14785dd60..645aee11ec8 100644 --- a/resources/profiles/Elegoo/process/EC/0.08mm Optimal @Elegoo C 0.2 nozzle.json +++ b/resources/profiles/Elegoo/process/EC/0.08mm Optimal @Elegoo C 0.2 nozzle.json @@ -1,8 +1,7 @@ { - "type": "process", - "name": "0.08mm Optimal @Elegoo C 0.2 nozzle", - "inherits": "0.10mm Standard @Elegoo C 0.2 nozzle", - "instantiation": "true", "elefant_foot_compensation": "0.05", - "layer_height": "0.08" + "inherits": "0.10mm Standard @Elegoo C 0.2 nozzle", + "layer_height": "0.08", + "name": "0.08mm Optimal @Elegoo C 0.2 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/EC/0.10mm Standard @Elegoo C 0.2 nozzle.json b/resources/profiles/Elegoo/process/EC/0.10mm Standard @Elegoo C 0.2 nozzle.json index faaf8038410..190f105fa67 100644 --- a/resources/profiles/Elegoo/process/EC/0.10mm Standard @Elegoo C 0.2 nozzle.json +++ b/resources/profiles/Elegoo/process/EC/0.10mm Standard @Elegoo C 0.2 nozzle.json @@ -1,13 +1,15 @@ { "type": "process", "name": "0.10mm Standard @Elegoo C 0.2 nozzle", - "inherits": "fdm_process_ecc_02010", + "inherits": "fdm_process_elegoo_02010", "from": "system", "setting_id": "PEC02010", "instantiation": "true", "sparse_infill_pattern": "zig-zag", - "filename_format": "EC_{nozzle_diameter[0]}_{input_filename_base}_{filament_type[0]}{layer_height}_{print_time}.gcode", + "filename_format": "EC_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "min_width_top_surface": "50%", "elefant_foot_compensation": "0.15", + "enable_prime_tower": "1", "compatible_printers": [ "Elegoo Centauri 0.2 nozzle" ] diff --git a/resources/profiles/Elegoo/process/EC/0.12mm Draft @Elegoo C 0.2 nozzle.json b/resources/profiles/Elegoo/process/EC/0.12mm Draft @Elegoo C 0.2 nozzle.json index e3c1d0da09c..9eeaa6a6dcb 100644 --- a/resources/profiles/Elegoo/process/EC/0.12mm Draft @Elegoo C 0.2 nozzle.json +++ b/resources/profiles/Elegoo/process/EC/0.12mm Draft @Elegoo C 0.2 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.12mm Draft @Elegoo C 0.2 nozzle", "inherits": "0.10mm Standard @Elegoo C 0.2 nozzle", - "instantiation": "true", - "layer_height": "0.12" + "layer_height": "0.12", + "name": "0.12mm Draft @Elegoo C 0.2 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/EC/0.12mm Fine @Elegoo C 0.4 nozzle.json b/resources/profiles/Elegoo/process/EC/0.12mm Fine @Elegoo C 0.4 nozzle.json index b624eac380b..cd3f12eb2d7 100644 --- a/resources/profiles/Elegoo/process/EC/0.12mm Fine @Elegoo C 0.4 nozzle.json +++ b/resources/profiles/Elegoo/process/EC/0.12mm Fine @Elegoo C 0.4 nozzle.json @@ -1,8 +1,7 @@ { - "type": "process", - "name": "0.12mm Fine @Elegoo C 0.4 nozzle", "inherits": "0.20mm Standard @Elegoo C 0.4 nozzle", - "instantiation": "true", "layer_height": "0.12", - "wall_loops": "3" + "name": "0.12mm Fine @Elegoo C 0.4 nozzle", + "wall_loops": "3", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/EC/0.14mm Extra Draft @Elegoo C 0.2 nozzle.json b/resources/profiles/Elegoo/process/EC/0.14mm Extra Draft @Elegoo C 0.2 nozzle.json index 14a82ac693b..7c32b7b5cc1 100644 --- a/resources/profiles/Elegoo/process/EC/0.14mm Extra Draft @Elegoo C 0.2 nozzle.json +++ b/resources/profiles/Elegoo/process/EC/0.14mm Extra Draft @Elegoo C 0.2 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.14mm Extra Draft @Elegoo C 0.2 nozzle", "inherits": "0.10mm Standard @Elegoo C 0.2 nozzle", - "instantiation": "true", - "layer_height": "0.14" + "layer_height": "0.14", + "name": "0.14mm Extra Draft @Elegoo C 0.2 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/EC/0.16mm Extra Fine @Elegoo C 0.8 nozzle.json b/resources/profiles/Elegoo/process/EC/0.16mm Extra Fine @Elegoo C 0.8 nozzle.json index f77fad63e02..25edde6abef 100644 --- a/resources/profiles/Elegoo/process/EC/0.16mm Extra Fine @Elegoo C 0.8 nozzle.json +++ b/resources/profiles/Elegoo/process/EC/0.16mm Extra Fine @Elegoo C 0.8 nozzle.json @@ -1,8 +1,7 @@ { - "type": "process", - "name": "0.16mm Extra Fine @Elegoo C 0.8 nozzle", "inherits": "0.40mm Standard @Elegoo C 0.8 nozzle", - "instantiation": "true", "initial_layer_print_height": "0.3", - "layer_height": "0.16" + "layer_height": "0.16", + "name": "0.16mm Extra Fine @Elegoo C 0.8 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/EC/0.16mm Optimal @Elegoo C 0.4 nozzle.json b/resources/profiles/Elegoo/process/EC/0.16mm Optimal @Elegoo C 0.4 nozzle.json index 7c6535522cd..9f7f769c682 100644 --- a/resources/profiles/Elegoo/process/EC/0.16mm Optimal @Elegoo C 0.4 nozzle.json +++ b/resources/profiles/Elegoo/process/EC/0.16mm Optimal @Elegoo C 0.4 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.16mm Optimal @Elegoo C 0.4 nozzle", "inherits": "0.20mm Standard @Elegoo C 0.4 nozzle", - "instantiation": "true", - "layer_height": "0.16" + "layer_height": "0.16", + "name": "0.16mm Optimal @Elegoo C 0.4 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/EC/0.18mm Fine @Elegoo C 0.6 nozzle.json b/resources/profiles/Elegoo/process/EC/0.18mm Fine @Elegoo C 0.6 nozzle.json index e0444d5763f..b1afd755ce4 100644 --- a/resources/profiles/Elegoo/process/EC/0.18mm Fine @Elegoo C 0.6 nozzle.json +++ b/resources/profiles/Elegoo/process/EC/0.18mm Fine @Elegoo C 0.6 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.18mm Fine @Elegoo C 0.6 nozzle", "inherits": "0.30mm Standard @Elegoo C 0.6 nozzle", - "instantiation": "true", - "layer_height": "0.18" + "layer_height": "0.18", + "name": "0.18mm Fine @Elegoo C 0.6 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/EC/0.20mm Standard @Elegoo C 0.4 nozzle.json b/resources/profiles/Elegoo/process/EC/0.20mm Standard @Elegoo C 0.4 nozzle.json index 9946508483b..a96282125a7 100644 --- a/resources/profiles/Elegoo/process/EC/0.20mm Standard @Elegoo C 0.4 nozzle.json +++ b/resources/profiles/Elegoo/process/EC/0.20mm Standard @Elegoo C 0.4 nozzle.json @@ -1,14 +1,16 @@ { "type": "process", "name": "0.20mm Standard @Elegoo C 0.4 nozzle", - "inherits": "fdm_process_ecc_04020", + "inherits": "fdm_process_elegoo_04020", "from": "system", "setting_id": "PEC04020", "instantiation": "true", "bottom_shell_layers": "3", "bottom_shell_thickness": "0.6", "sparse_infill_pattern": "zig-zag", - "filename_format": "EC_{nozzle_diameter[0]}_{input_filename_base}_{filament_type[0]}{layer_height}_{print_time}.gcode", + "filename_format": "EC_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "min_width_top_surface": "50%", + "enable_prime_tower": "1", "compatible_printers": [ "Elegoo Centauri 0.4 nozzle" ] diff --git a/resources/profiles/Elegoo/process/EC/0.20mm Strength @Elegoo C 0.4 nozzle.json b/resources/profiles/Elegoo/process/EC/0.20mm Strength @Elegoo C 0.4 nozzle.json index aff71badc7f..abd085ba76c 100644 --- a/resources/profiles/Elegoo/process/EC/0.20mm Strength @Elegoo C 0.4 nozzle.json +++ b/resources/profiles/Elegoo/process/EC/0.20mm Strength @Elegoo C 0.4 nozzle.json @@ -1,13 +1,13 @@ { - "type": "process", - "name": "0.20mm Strength @Elegoo C 0.4 nozzle", "inherits": "0.20mm Standard @Elegoo C 0.4 nozzle", - "instantiation": "true", + "name": "0.20mm Strength @Elegoo C 0.4 nozzle", "wall_sequence": "inner-outer-inner wall", "reduce_crossing_wall": "1", "bottom_shell_layers": "5", "outer_wall_speed": "120", + "print_flow_ratio": "0.95", "sparse_infill_density": "20%", "top_shell_layers": "6", - "wall_loops": "6" + "wall_loops": "6", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/EC/0.24mm Draft @Elegoo C 0.4 nozzle.json b/resources/profiles/Elegoo/process/EC/0.24mm Draft @Elegoo C 0.4 nozzle.json index 59a3befe7ac..5871ab00d27 100644 --- a/resources/profiles/Elegoo/process/EC/0.24mm Draft @Elegoo C 0.4 nozzle.json +++ b/resources/profiles/Elegoo/process/EC/0.24mm Draft @Elegoo C 0.4 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.24mm Draft @Elegoo C 0.4 nozzle", "inherits": "0.20mm Standard @Elegoo C 0.4 nozzle", - "instantiation": "true", - "layer_height": "0.24" + "layer_height": "0.24", + "name": "0.24mm Draft @Elegoo C 0.4 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/EC/0.24mm Fine @Elegoo C 0.8 nozzle.json b/resources/profiles/Elegoo/process/EC/0.24mm Fine @Elegoo C 0.8 nozzle.json index 339c0cc077c..15db46e1150 100644 --- a/resources/profiles/Elegoo/process/EC/0.24mm Fine @Elegoo C 0.8 nozzle.json +++ b/resources/profiles/Elegoo/process/EC/0.24mm Fine @Elegoo C 0.8 nozzle.json @@ -1,8 +1,7 @@ { - "type": "process", - "name": "0.24mm Fine @Elegoo C 0.8 nozzle", "inherits": "0.40mm Standard @Elegoo C 0.8 nozzle", - "instantiation": "true", "initial_layer_print_height": "0.3", - "layer_height": "0.24" + "layer_height": "0.24", + "name": "0.24mm Fine @Elegoo C 0.8 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/EC/0.24mm Optimal @Elegoo C 0.6 nozzle.json b/resources/profiles/Elegoo/process/EC/0.24mm Optimal @Elegoo C 0.6 nozzle.json index dff12b04ccf..e7301fe397a 100644 --- a/resources/profiles/Elegoo/process/EC/0.24mm Optimal @Elegoo C 0.6 nozzle.json +++ b/resources/profiles/Elegoo/process/EC/0.24mm Optimal @Elegoo C 0.6 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.24mm Optimal @Elegoo C 0.6 nozzle", "inherits": "0.30mm Standard @Elegoo C 0.6 nozzle", - "instantiation": "true", - "layer_height": "0.24" + "layer_height": "0.24", + "name": "0.24mm Optimal @Elegoo C 0.6 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/EC/0.28mm Extra Draft @Elegoo C 0.4 nozzle.json b/resources/profiles/Elegoo/process/EC/0.28mm Extra Draft @Elegoo C 0.4 nozzle.json index f03f6de89e0..5bbd3dba82e 100644 --- a/resources/profiles/Elegoo/process/EC/0.28mm Extra Draft @Elegoo C 0.4 nozzle.json +++ b/resources/profiles/Elegoo/process/EC/0.28mm Extra Draft @Elegoo C 0.4 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.28mm Extra Draft @Elegoo C 0.4 nozzle", "inherits": "0.20mm Standard @Elegoo C 0.4 nozzle", - "instantiation": "true", - "layer_height": "0.28" + "layer_height": "0.28", + "name": "0.28mm Extra Draft @Elegoo C 0.4 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/EC/0.30mm Standard @Elegoo C 0.6 nozzle.json b/resources/profiles/Elegoo/process/EC/0.30mm Standard @Elegoo C 0.6 nozzle.json index 808a49c2017..9b593203fa6 100644 --- a/resources/profiles/Elegoo/process/EC/0.30mm Standard @Elegoo C 0.6 nozzle.json +++ b/resources/profiles/Elegoo/process/EC/0.30mm Standard @Elegoo C 0.6 nozzle.json @@ -1,12 +1,14 @@ { "type": "process", "name": "0.30mm Standard @Elegoo C 0.6 nozzle", - "inherits": "fdm_process_ecc_06030", + "inherits": "fdm_process_elegoo_06030", "from": "system", "setting_id": "PEC06030", "instantiation": "true", "sparse_infill_pattern": "zig-zag", - "filename_format": "EC_{nozzle_diameter[0]}_{input_filename_base}_{filament_type[0]}{layer_height}_{print_time}.gcode", + "filename_format": "EC_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "min_width_top_surface": "50%", + "enable_prime_tower": "1", "compatible_printers": [ "Elegoo Centauri 0.6 nozzle" ] diff --git a/resources/profiles/Elegoo/process/EC/0.30mm Strength @Elegoo C 0.6 nozzle.json b/resources/profiles/Elegoo/process/EC/0.30mm Strength @Elegoo C 0.6 nozzle.json index 5830c7c2028..29330e3863b 100644 --- a/resources/profiles/Elegoo/process/EC/0.30mm Strength @Elegoo C 0.6 nozzle.json +++ b/resources/profiles/Elegoo/process/EC/0.30mm Strength @Elegoo C 0.6 nozzle.json @@ -1,13 +1,12 @@ { - "type": "process", - "name": "0.30mm Strength @Elegoo C 0.6 nozzle", "inherits": "0.30mm Standard @Elegoo C 0.6 nozzle", - "instantiation": "true", "inner_wall_speed": "120", + "name": "0.30mm Strength @Elegoo C 0.6 nozzle", "wall_sequence": "inner-outer-inner wall", "reduce_crossing_wall": "1", "outer_wall_speed": "80", "sparse_infill_density": "15%", "top_surface_speed": "120", - "wall_loops": "4" + "wall_loops": "4", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/EC/0.32mm Optimal @Elegoo C 0.8 nozzle.json b/resources/profiles/Elegoo/process/EC/0.32mm Optimal @Elegoo C 0.8 nozzle.json index 3195fe2c3b8..f886db35000 100644 --- a/resources/profiles/Elegoo/process/EC/0.32mm Optimal @Elegoo C 0.8 nozzle.json +++ b/resources/profiles/Elegoo/process/EC/0.32mm Optimal @Elegoo C 0.8 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.32mm Optimal @Elegoo C 0.8 nozzle", "inherits": "0.40mm Standard @Elegoo C 0.8 nozzle", - "instantiation": "true", - "layer_height": "0.32" + "layer_height": "0.32", + "name": "0.32mm Optimal @Elegoo C 0.8 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/EC/0.36mm Draft @Elegoo C 0.6 nozzle.json b/resources/profiles/Elegoo/process/EC/0.36mm Draft @Elegoo C 0.6 nozzle.json index 8a16a2c6663..395feb99664 100644 --- a/resources/profiles/Elegoo/process/EC/0.36mm Draft @Elegoo C 0.6 nozzle.json +++ b/resources/profiles/Elegoo/process/EC/0.36mm Draft @Elegoo C 0.6 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.36mm Draft @Elegoo C 0.6 nozzle", "inherits": "0.30mm Standard @Elegoo C 0.6 nozzle", - "instantiation": "true", - "layer_height": "0.36" + "layer_height": "0.36", + "name": "0.36mm Draft @Elegoo C 0.6 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/EC/0.40mm Standard @Elegoo C 0.8 nozzle.json b/resources/profiles/Elegoo/process/EC/0.40mm Standard @Elegoo C 0.8 nozzle.json index 12e46cd76ad..b8fc2c36637 100644 --- a/resources/profiles/Elegoo/process/EC/0.40mm Standard @Elegoo C 0.8 nozzle.json +++ b/resources/profiles/Elegoo/process/EC/0.40mm Standard @Elegoo C 0.8 nozzle.json @@ -1,12 +1,14 @@ { "type": "process", "name": "0.40mm Standard @Elegoo C 0.8 nozzle", - "inherits": "fdm_process_ecc_08040", + "inherits": "fdm_process_elegoo_08040", "from": "system", "setting_id": "PEC08040", "instantiation": "true", "sparse_infill_pattern": "zig-zag", - "filename_format": "EC_{nozzle_diameter[0]}_{input_filename_base}_{filament_type[0]}{layer_height}_{print_time}.gcode", + "filename_format": "EC_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "min_width_top_surface": "50%", + "enable_prime_tower": "1", "compatible_printers": [ "Elegoo Centauri 0.8 nozzle" ] diff --git a/resources/profiles/Elegoo/process/EC/0.42mm Extra Draft @Elegoo C 0.6 nozzle.json b/resources/profiles/Elegoo/process/EC/0.42mm Extra Draft @Elegoo C 0.6 nozzle.json index 52a518cca84..7e1bd9e9250 100644 --- a/resources/profiles/Elegoo/process/EC/0.42mm Extra Draft @Elegoo C 0.6 nozzle.json +++ b/resources/profiles/Elegoo/process/EC/0.42mm Extra Draft @Elegoo C 0.6 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.42mm Extra Draft @Elegoo C 0.6 nozzle", "inherits": "0.30mm Standard @Elegoo C 0.6 nozzle", - "instantiation": "true", - "layer_height": "0.42" + "layer_height": "0.42", + "name": "0.42mm Extra Draft @Elegoo C 0.6 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/EC/0.48mm Draft @Elegoo C 0.8 nozzle.json b/resources/profiles/Elegoo/process/EC/0.48mm Draft @Elegoo C 0.8 nozzle.json index 9ff0dc5ca1b..3bb63c20a1c 100644 --- a/resources/profiles/Elegoo/process/EC/0.48mm Draft @Elegoo C 0.8 nozzle.json +++ b/resources/profiles/Elegoo/process/EC/0.48mm Draft @Elegoo C 0.8 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.48mm Draft @Elegoo C 0.8 nozzle", "inherits": "0.40mm Standard @Elegoo C 0.8 nozzle", - "instantiation": "true", - "layer_height": "0.48" + "layer_height": "0.48", + "name": "0.48mm Draft @Elegoo C 0.8 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/ECC/0.08mm Optimal @Elegoo CC 0.2 nozzle.json b/resources/profiles/Elegoo/process/ECC/0.08mm Optimal @Elegoo CC 0.2 nozzle.json index 1714c2f66d3..929f237de9b 100644 --- a/resources/profiles/Elegoo/process/ECC/0.08mm Optimal @Elegoo CC 0.2 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC/0.08mm Optimal @Elegoo CC 0.2 nozzle.json @@ -1,8 +1,7 @@ { - "type": "process", - "name": "0.08mm Optimal @Elegoo CC 0.2 nozzle", - "inherits": "0.10mm Standard @Elegoo CC 0.2 nozzle", - "instantiation": "true", "elefant_foot_compensation": "0.05", - "layer_height": "0.08" + "inherits": "0.10mm Standard @Elegoo CC 0.2 nozzle", + "layer_height": "0.08", + "name": "0.08mm Optimal @Elegoo CC 0.2 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/ECC/0.10mm Standard @Elegoo CC 0.2 nozzle.json b/resources/profiles/Elegoo/process/ECC/0.10mm Standard @Elegoo CC 0.2 nozzle.json index ebd23177162..11ec27a7062 100644 --- a/resources/profiles/Elegoo/process/ECC/0.10mm Standard @Elegoo CC 0.2 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC/0.10mm Standard @Elegoo CC 0.2 nozzle.json @@ -1,13 +1,15 @@ { "type": "process", "name": "0.10mm Standard @Elegoo CC 0.2 nozzle", - "inherits": "fdm_process_ecc_02010", + "inherits": "fdm_process_elegoo_02010", "from": "system", "setting_id": "PECC02010", "instantiation": "true", "sparse_infill_pattern": "zig-zag", - "filename_format": "ECC_{nozzle_diameter[0]}_{input_filename_base}_{filament_type[0]}{layer_height}_{print_time}.gcode", + "filename_format": "ECC_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "min_width_top_surface": "50%", "elefant_foot_compensation": "0.15", + "enable_prime_tower": "1", "compatible_printers": [ "Elegoo Centauri Carbon 0.2 nozzle" ] diff --git a/resources/profiles/Elegoo/process/ECC/0.12mm Draft @Elegoo CC 0.2 nozzle.json b/resources/profiles/Elegoo/process/ECC/0.12mm Draft @Elegoo CC 0.2 nozzle.json index 7736e594606..3ca5415c10a 100644 --- a/resources/profiles/Elegoo/process/ECC/0.12mm Draft @Elegoo CC 0.2 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC/0.12mm Draft @Elegoo CC 0.2 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.12mm Draft @Elegoo CC 0.2 nozzle", "inherits": "0.10mm Standard @Elegoo CC 0.2 nozzle", - "instantiation": "true", - "layer_height": "0.12" + "layer_height": "0.12", + "name": "0.12mm Draft @Elegoo CC 0.2 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/ECC/0.12mm Fine @Elegoo CC 0.4 nozzle.json b/resources/profiles/Elegoo/process/ECC/0.12mm Fine @Elegoo CC 0.4 nozzle.json index 77e6231148b..2065f51cafd 100644 --- a/resources/profiles/Elegoo/process/ECC/0.12mm Fine @Elegoo CC 0.4 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC/0.12mm Fine @Elegoo CC 0.4 nozzle.json @@ -1,8 +1,7 @@ { - "type": "process", - "name": "0.12mm Fine @Elegoo CC 0.4 nozzle", "inherits": "0.20mm Standard @Elegoo CC 0.4 nozzle", - "instantiation": "true", "layer_height": "0.12", - "wall_loops": "3" + "name": "0.12mm Fine @Elegoo CC 0.4 nozzle", + "wall_loops": "3", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/ECC/0.14mm Extra Draft @Elegoo CC 0.2 nozzle.json b/resources/profiles/Elegoo/process/ECC/0.14mm Extra Draft @Elegoo CC 0.2 nozzle.json index 76122bf5e3b..aa1907bb0cd 100644 --- a/resources/profiles/Elegoo/process/ECC/0.14mm Extra Draft @Elegoo CC 0.2 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC/0.14mm Extra Draft @Elegoo CC 0.2 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.14mm Extra Draft @Elegoo CC 0.2 nozzle", "inherits": "0.10mm Standard @Elegoo CC 0.2 nozzle", - "instantiation": "true", - "layer_height": "0.14" + "layer_height": "0.14", + "name": "0.14mm Extra Draft @Elegoo CC 0.2 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/ECC/0.16mm Extra Fine @Elegoo CC 0.8 nozzle.json b/resources/profiles/Elegoo/process/ECC/0.16mm Extra Fine @Elegoo CC 0.8 nozzle.json index 409124dc06a..ab58f4e18eb 100644 --- a/resources/profiles/Elegoo/process/ECC/0.16mm Extra Fine @Elegoo CC 0.8 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC/0.16mm Extra Fine @Elegoo CC 0.8 nozzle.json @@ -1,8 +1,7 @@ { - "type": "process", - "name": "0.16mm Extra Fine @Elegoo CC 0.8 nozzle", "inherits": "0.40mm Standard @Elegoo CC 0.8 nozzle", - "instantiation": "true", "initial_layer_print_height": "0.3", - "layer_height": "0.16" + "layer_height": "0.16", + "name": "0.16mm Extra Fine @Elegoo CC 0.8 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/ECC/0.16mm Optimal @Elegoo CC 0.4 nozzle.json b/resources/profiles/Elegoo/process/ECC/0.16mm Optimal @Elegoo CC 0.4 nozzle.json index 26507a3685d..fe0636d0b77 100644 --- a/resources/profiles/Elegoo/process/ECC/0.16mm Optimal @Elegoo CC 0.4 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC/0.16mm Optimal @Elegoo CC 0.4 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.16mm Optimal @Elegoo CC 0.4 nozzle", "inherits": "0.20mm Standard @Elegoo CC 0.4 nozzle", - "instantiation": "true", - "layer_height": "0.16" + "layer_height": "0.16", + "name": "0.16mm Optimal @Elegoo CC 0.4 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/ECC/0.18mm Fine @Elegoo CC 0.6 nozzle.json b/resources/profiles/Elegoo/process/ECC/0.18mm Fine @Elegoo CC 0.6 nozzle.json index 7baa9c491cb..1d95474e647 100644 --- a/resources/profiles/Elegoo/process/ECC/0.18mm Fine @Elegoo CC 0.6 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC/0.18mm Fine @Elegoo CC 0.6 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.18mm Fine @Elegoo CC 0.6 nozzle", "inherits": "0.30mm Standard @Elegoo CC 0.6 nozzle", - "instantiation": "true", - "layer_height": "0.18" + "layer_height": "0.18", + "name": "0.18mm Fine @Elegoo CC 0.6 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/ECC/0.20mm Standard @Elegoo CC 0.4 nozzle.json b/resources/profiles/Elegoo/process/ECC/0.20mm Standard @Elegoo CC 0.4 nozzle.json index c5a59e503ee..9824d302fa6 100644 --- a/resources/profiles/Elegoo/process/ECC/0.20mm Standard @Elegoo CC 0.4 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC/0.20mm Standard @Elegoo CC 0.4 nozzle.json @@ -1,14 +1,16 @@ { "type": "process", "name": "0.20mm Standard @Elegoo CC 0.4 nozzle", - "inherits": "fdm_process_ecc_04020", + "inherits": "fdm_process_elegoo_04020", "from": "system", "setting_id": "PECC04020", "instantiation": "true", "bottom_shell_layers": "3", "bottom_shell_thickness": "0.6", "sparse_infill_pattern": "zig-zag", - "filename_format": "ECC_{nozzle_diameter[0]}_{input_filename_base}_{filament_type[0]}{layer_height}_{print_time}.gcode", + "filename_format": "ECC_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "min_width_top_surface": "50%", + "enable_prime_tower": "1", "compatible_printers": [ "Elegoo Centauri Carbon 0.4 nozzle" ] diff --git a/resources/profiles/Elegoo/process/ECC/0.20mm Strength @Elegoo CC 0.4 nozzle.json b/resources/profiles/Elegoo/process/ECC/0.20mm Strength @Elegoo CC 0.4 nozzle.json index f2a30759317..d4dd40e93e6 100644 --- a/resources/profiles/Elegoo/process/ECC/0.20mm Strength @Elegoo CC 0.4 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC/0.20mm Strength @Elegoo CC 0.4 nozzle.json @@ -1,13 +1,13 @@ { - "type": "process", - "name": "0.20mm Strength @Elegoo CC 0.4 nozzle", "inherits": "0.20mm Standard @Elegoo CC 0.4 nozzle", - "instantiation": "true", + "name": "0.20mm Strength @Elegoo CC 0.4 nozzle", "wall_sequence": "inner-outer-inner wall", "reduce_crossing_wall": "1", "bottom_shell_layers": "5", "outer_wall_speed": "120", + "print_flow_ratio": "0.95", "sparse_infill_density": "20%", "top_shell_layers": "6", - "wall_loops": "6" + "wall_loops": "6", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/ECC/0.24mm Draft @Elegoo CC 0.4 nozzle.json b/resources/profiles/Elegoo/process/ECC/0.24mm Draft @Elegoo CC 0.4 nozzle.json index 57d8f69edc8..f3e97e62d6a 100644 --- a/resources/profiles/Elegoo/process/ECC/0.24mm Draft @Elegoo CC 0.4 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC/0.24mm Draft @Elegoo CC 0.4 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.24mm Draft @Elegoo CC 0.4 nozzle", "inherits": "0.20mm Standard @Elegoo CC 0.4 nozzle", - "instantiation": "true", - "layer_height": "0.24" + "layer_height": "0.24", + "name": "0.24mm Draft @Elegoo CC 0.4 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/ECC/0.24mm Fine @Elegoo CC 0.8 nozzle.json b/resources/profiles/Elegoo/process/ECC/0.24mm Fine @Elegoo CC 0.8 nozzle.json index 2ed9503df60..57a006097aa 100644 --- a/resources/profiles/Elegoo/process/ECC/0.24mm Fine @Elegoo CC 0.8 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC/0.24mm Fine @Elegoo CC 0.8 nozzle.json @@ -1,8 +1,7 @@ { - "type": "process", - "name": "0.24mm Fine @Elegoo CC 0.8 nozzle", "inherits": "0.40mm Standard @Elegoo CC 0.8 nozzle", - "instantiation": "true", "initial_layer_print_height": "0.3", - "layer_height": "0.24" + "layer_height": "0.24", + "name": "0.24mm Fine @Elegoo CC 0.8 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/ECC/0.24mm Optimal @Elegoo CC 0.6 nozzle.json b/resources/profiles/Elegoo/process/ECC/0.24mm Optimal @Elegoo CC 0.6 nozzle.json index 5648884c9a6..73b931e41ab 100644 --- a/resources/profiles/Elegoo/process/ECC/0.24mm Optimal @Elegoo CC 0.6 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC/0.24mm Optimal @Elegoo CC 0.6 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.24mm Optimal @Elegoo CC 0.6 nozzle", "inherits": "0.30mm Standard @Elegoo CC 0.6 nozzle", - "instantiation": "true", - "layer_height": "0.24" + "layer_height": "0.24", + "name": "0.24mm Optimal @Elegoo CC 0.6 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/ECC/0.28mm Extra Draft @Elegoo CC 0.4 nozzle.json b/resources/profiles/Elegoo/process/ECC/0.28mm Extra Draft @Elegoo CC 0.4 nozzle.json index 28884ba53c0..ec438b26d50 100644 --- a/resources/profiles/Elegoo/process/ECC/0.28mm Extra Draft @Elegoo CC 0.4 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC/0.28mm Extra Draft @Elegoo CC 0.4 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.28mm Extra Draft @Elegoo CC 0.4 nozzle", "inherits": "0.20mm Standard @Elegoo CC 0.4 nozzle", - "instantiation": "true", - "layer_height": "0.28" + "layer_height": "0.28", + "name": "0.28mm Extra Draft @Elegoo CC 0.4 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/ECC/0.30mm Standard @Elegoo CC 0.6 nozzle.json b/resources/profiles/Elegoo/process/ECC/0.30mm Standard @Elegoo CC 0.6 nozzle.json index da64090e4ee..49892afec7c 100644 --- a/resources/profiles/Elegoo/process/ECC/0.30mm Standard @Elegoo CC 0.6 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC/0.30mm Standard @Elegoo CC 0.6 nozzle.json @@ -1,12 +1,14 @@ { "type": "process", "name": "0.30mm Standard @Elegoo CC 0.6 nozzle", - "inherits": "fdm_process_ecc_06030", + "inherits": "fdm_process_elegoo_06030", "from": "system", "setting_id": "PECC06030", "instantiation": "true", "sparse_infill_pattern": "zig-zag", - "filename_format": "ECC_{nozzle_diameter[0]}_{input_filename_base}_{filament_type[0]}{layer_height}_{print_time}.gcode", + "filename_format": "ECC_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "min_width_top_surface": "50%", + "enable_prime_tower": "1", "compatible_printers": [ "Elegoo Centauri Carbon 0.6 nozzle" ] diff --git a/resources/profiles/Elegoo/process/ECC/0.30mm Strength @Elegoo CC 0.6 nozzle.json b/resources/profiles/Elegoo/process/ECC/0.30mm Strength @Elegoo CC 0.6 nozzle.json index a722535b7cc..448f7064f23 100644 --- a/resources/profiles/Elegoo/process/ECC/0.30mm Strength @Elegoo CC 0.6 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC/0.30mm Strength @Elegoo CC 0.6 nozzle.json @@ -1,13 +1,12 @@ { - "type": "process", - "name": "0.30mm Strength @Elegoo CC 0.6 nozzle", "inherits": "0.30mm Standard @Elegoo CC 0.6 nozzle", - "instantiation": "true", "inner_wall_speed": "120", + "name": "0.30mm Strength @Elegoo CC 0.6 nozzle", "wall_sequence": "inner-outer-inner wall", "reduce_crossing_wall": "1", "outer_wall_speed": "80", "sparse_infill_density": "15%", "top_surface_speed": "120", - "wall_loops": "4" + "wall_loops": "4", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/ECC/0.32mm Optimal @Elegoo CC 0.8 nozzle.json b/resources/profiles/Elegoo/process/ECC/0.32mm Optimal @Elegoo CC 0.8 nozzle.json index 864c2cd39c3..2a369c8dfaf 100644 --- a/resources/profiles/Elegoo/process/ECC/0.32mm Optimal @Elegoo CC 0.8 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC/0.32mm Optimal @Elegoo CC 0.8 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.32mm Optimal @Elegoo CC 0.8 nozzle", "inherits": "0.40mm Standard @Elegoo CC 0.8 nozzle", - "instantiation": "true", - "layer_height": "0.32" + "layer_height": "0.32", + "name": "0.32mm Optimal @Elegoo CC 0.8 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/ECC/0.36mm Draft @Elegoo CC 0.6 nozzle.json b/resources/profiles/Elegoo/process/ECC/0.36mm Draft @Elegoo CC 0.6 nozzle.json index 4f542a29647..a9eadfaad48 100644 --- a/resources/profiles/Elegoo/process/ECC/0.36mm Draft @Elegoo CC 0.6 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC/0.36mm Draft @Elegoo CC 0.6 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.36mm Draft @Elegoo CC 0.6 nozzle", "inherits": "0.30mm Standard @Elegoo CC 0.6 nozzle", - "instantiation": "true", - "layer_height": "0.36" + "layer_height": "0.36", + "name": "0.36mm Draft @Elegoo CC 0.6 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/ECC/0.40mm Standard @Elegoo CC 0.8 nozzle.json b/resources/profiles/Elegoo/process/ECC/0.40mm Standard @Elegoo CC 0.8 nozzle.json index 8dc0b9b96c9..d6197b0696a 100644 --- a/resources/profiles/Elegoo/process/ECC/0.40mm Standard @Elegoo CC 0.8 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC/0.40mm Standard @Elegoo CC 0.8 nozzle.json @@ -1,12 +1,14 @@ { "type": "process", "name": "0.40mm Standard @Elegoo CC 0.8 nozzle", - "inherits": "fdm_process_ecc_08040", + "inherits": "fdm_process_elegoo_08040", "from": "system", "setting_id": "PECC08040", "instantiation": "true", "sparse_infill_pattern": "zig-zag", - "filename_format": "ECC_{nozzle_diameter[0]}_{input_filename_base}_{filament_type[0]}{layer_height}_{print_time}.gcode", + "filename_format": "ECC_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "min_width_top_surface": "50%", + "enable_prime_tower": "1", "compatible_printers": [ "Elegoo Centauri Carbon 0.8 nozzle" ] diff --git a/resources/profiles/Elegoo/process/ECC/0.42mm Extra Draft @Elegoo CC 0.6 nozzle.json b/resources/profiles/Elegoo/process/ECC/0.42mm Extra Draft @Elegoo CC 0.6 nozzle.json index 69ec9b14fda..08d85a026a4 100644 --- a/resources/profiles/Elegoo/process/ECC/0.42mm Extra Draft @Elegoo CC 0.6 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC/0.42mm Extra Draft @Elegoo CC 0.6 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.42mm Extra Draft @Elegoo CC 0.6 nozzle", "inherits": "0.30mm Standard @Elegoo CC 0.6 nozzle", - "instantiation": "true", - "layer_height": "0.42" + "layer_height": "0.42", + "name": "0.42mm Extra Draft @Elegoo CC 0.6 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/ECC/0.48mm Draft @Elegoo CC 0.8 nozzle.json b/resources/profiles/Elegoo/process/ECC/0.48mm Draft @Elegoo CC 0.8 nozzle.json index fdab41c542e..6938bbf98c0 100644 --- a/resources/profiles/Elegoo/process/ECC/0.48mm Draft @Elegoo CC 0.8 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC/0.48mm Draft @Elegoo CC 0.8 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.48mm Draft @Elegoo CC 0.8 nozzle", "inherits": "0.40mm Standard @Elegoo CC 0.8 nozzle", - "instantiation": "true", - "layer_height": "0.48" + "layer_height": "0.48", + "name": "0.48mm Draft @Elegoo CC 0.8 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/ECC/fdm_process_ecc.json b/resources/profiles/Elegoo/process/ECC/fdm_process_ecc.json deleted file mode 100644 index 5daab5a5c9d..00000000000 --- a/resources/profiles/Elegoo/process/ECC/fdm_process_ecc.json +++ /dev/null @@ -1,93 +0,0 @@ -{ - "type": "process", - "name": "fdm_process_ecc", - "inherits": "fdm_process_ecc_common", - "from": "system", - "instantiation": "false", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "4", - "bridge_speed": "50", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.05", - "enable_arc_fitting": "1", - "outer_wall_acceleration": "5000", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.42", - "internal_bridge_support_thickness": "0.8", - "initial_layer_acceleration": "500", - "initial_layer_line_width": "0.5", - "initial_layer_speed": "30", - "gap_infill_speed": "50", - "sparse_infill_speed": "250", - "ironing_flow": "10%", - "ironing_spacing": "0.15", - "ironing_speed": "30", - "ironing_type": "no ironing", - "layer_height": "0.2", - "filename_format": "{input_filename_base}_{filament_type[0]}{layer_height}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "50", - "overhang_3_4_speed": "30", - "overhang_4_4_speed": "10", - "only_one_wall_top": "1", - "inner_wall_speed": "150", - "seam_position": "aligned", - "skirt_height": "1", - "skirt_loops": "0", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "cubic", - "top_bottom_infill_wall_overlap": "5%", - "infill_anchor": "400%", - "infill_anchor_max": "40", - "minimum_sparse_infill_area": "15", - "internal_solid_infill_line_width": "0.42", - "internal_solid_infill_speed": "150", - "initial_layer_infill_speed": "60", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_top_z_distance": "0.2", - "support_bottom_z_distance": "0.2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.5", - "support_expansion": "0", - "support_base_pattern_spacing": "2.5", - "support_speed": "150", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_diameter": "2", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "top_surface_pattern": "monotonicline", - "top_surface_acceleration": "2000", - "top_surface_speed": "200", - "top_shell_layers": "3", - "travel_speed": "500", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "35", - "wall_generator": "classic", - "compatible_printers": [], - "detect_narrow_internal_solid_infill": "1", - "extra_perimeters_on_overhangs": "0", - "seam_slope_conditional": "1", - "seam_slope_inner_walls": "1", - "accel_to_decel_enable": "0", - "precise_outer_wall": "0", - "seam_slope_min_length": "0", - "bridge_flow": "0.95", - "internal_bridge_flow": "0.95", - "role_based_wipe_speed": "0", - "seam_slope_type": "none", - "wipe_on_loops": "0", - "gcode_label_objects": "0", - "staggered_inner_seams": "0", - "wipe_before_external_loop": "0", - "exclude_object": "1", - "wipe_speed": "100%", - "print_flow_ratio": "1.0", - "wall_sequence": "inner wall/outer wall" -} diff --git a/resources/profiles/Elegoo/process/ECC/fdm_process_ecc_02010.json b/resources/profiles/Elegoo/process/ECC/fdm_process_ecc_02010.json deleted file mode 100644 index 8dd60ed923e..00000000000 --- a/resources/profiles/Elegoo/process/ECC/fdm_process_ecc_02010.json +++ /dev/null @@ -1,29 +0,0 @@ -{ - "type": "process", - "name": "fdm_process_ecc_02010", - "inherits": "fdm_process_ecc", - "from": "system", - "instantiation": "false", - "layer_height": "0.1", - "initial_layer_print_height": "0.15", - "elefant_foot_compensation": "0.05", - "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.3", - "sparse_infill_line_width": "0.25", - "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": "35", - "initial_layer_infill_speed": "60", - "sparse_infill_speed": "100", - "inner_wall_speed": "100", - "internal_solid_infill_speed": "100", - "outer_wall_speed": "60", - "top_surface_speed": "80" -} diff --git a/resources/profiles/Elegoo/process/ECC/fdm_process_ecc_04020.json b/resources/profiles/Elegoo/process/ECC/fdm_process_ecc_04020.json deleted file mode 100644 index b24c94f99aa..00000000000 --- a/resources/profiles/Elegoo/process/ECC/fdm_process_ecc_04020.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "type": "process", - "name": "fdm_process_ecc_04020", - "inherits": "fdm_process_ecc", - "from": "system", - "instantiation": "false", - "elefant_foot_compensation": "0.1", - "top_shell_thickness": "1.0", - "bridge_flow": "1", - "initial_layer_speed": "50", - "initial_layer_infill_speed": "105", - "outer_wall_speed": "160", - "inner_wall_speed": "200", - "sparse_infill_speed": "200", - "internal_solid_infill_speed": "250", - "gap_infill_speed": "250", - "top_shell_layers": "5" -} diff --git a/resources/profiles/Elegoo/process/ECC/fdm_process_ecc_06030.json b/resources/profiles/Elegoo/process/ECC/fdm_process_ecc_06030.json deleted file mode 100644 index 53f0de9f8dc..00000000000 --- a/resources/profiles/Elegoo/process/ECC/fdm_process_ecc_06030.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "process", - "name": "fdm_process_ecc_06030", - "inherits": "fdm_process_ecc", - "from": "system", - "instantiation": "false", - "layer_height": "0.3", - "initial_layer_print_height": "0.3", - "elefant_foot_compensation": "0.15", - "bridge_flow": "1", - "line_width": "0.62", - "outer_wall_line_width": "0.62", - "initial_layer_line_width": "0.80", - "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", - "gap_infill_speed": "80", - "sparse_infill_speed": "200", - "top_surface_speed": "150", - "bridge_speed": "30", - "overhang_3_4_speed": "25" -} diff --git a/resources/profiles/Elegoo/process/ECC/fdm_process_ecc_08040.json b/resources/profiles/Elegoo/process/ECC/fdm_process_ecc_08040.json deleted file mode 100644 index e301d2e500f..00000000000 --- a/resources/profiles/Elegoo/process/ECC/fdm_process_ecc_08040.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "type": "process", - "name": "fdm_process_ecc_08040", - "inherits": "fdm_process_ecc", - "from": "system", - "instantiation": "false", - "layer_height": "0.4", - "initial_layer_print_height": "0.4", - "elefant_foot_compensation": "0.15", - "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", - "initial_layer_speed": "35", - "initial_layer_infill_speed": "55", - "sparse_infill_speed": "100", - "top_surface_speed": "150", - "bridge_speed": "30", - "overhang_2_4_speed": "40", - "overhang_3_4_speed": "20", - "overhang_4_4_speed": "10" -} diff --git a/resources/profiles/Elegoo/process/ECC/fdm_process_ecc_common.json b/resources/profiles/Elegoo/process/ECC/fdm_process_ecc_common.json deleted file mode 100644 index 4bf21d336af..00000000000 --- a/resources/profiles/Elegoo/process/ECC/fdm_process_ecc_common.json +++ /dev/null @@ -1,86 +0,0 @@ -{ - "type": "process", - "name": "fdm_process_ecc_common", - "from": "system", - "instantiation": "false", - "adaptive_layer_height": "0", - "reduce_crossing_wall": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "5", - "print_sequence": "by layer", - "default_acceleration": "10000", - "travel_acceleration": "0", - "inner_wall_acceleration": "0", - "bridge_no_support": "0", - "elefant_foot_compensation": "0.1", - "outer_wall_line_width": "0.42", - "outer_wall_speed": "120", - "line_width": "0.45", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "initial_layer_speed": "20", - "gap_infill_speed": "30", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "15%", - "sparse_infill_speed": "50", - "overhang_speed_classic": "1", - "interface_shells": "0", - "detect_overhang_wall": "0", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}.gcode", - "wall_loops": "2", - "inner_wall_line_width": "0.45", - "inner_wall_speed": "40", - "raft_layers": "0", - "seam_position": "nearest", - "skirt_distance": "2", - "skirt_height": "2", - "minimum_sparse_infill_area": "0", - "internal_solid_infill_line_width": "0.45", - "internal_solid_infill_speed": "40", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "support_filament": "0", - "support_line_width": "0.42", - "support_interface_filament": "0", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.15", - "support_interface_loop_pattern": "0", - "support_interface_top_layers": "2", - "support_interface_spacing": "0", - "support_interface_speed": "80", - "support_interface_pattern": "auto", - "support_base_pattern": "default", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "40", - "support_object_xy_distance": "0.5", - "tree_support_angle_slow": "30", - "tree_support_branch_angle_organic": "45", - "tree_support_branch_diameter_double_wall": "10", - "tree_support_branch_distance_organic": "5", - "tree_support_tip_diameter": "2", - "detect_thin_wall": "0", - "top_surface_line_width": "0.42", - "top_surface_speed": "30", - "travel_speed": "400", - "enable_prime_tower": "1", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "role_based_wipe_speed": "1", - "detect_narrow_internal_solid_infill": "1", - "top_shell_thickness": "0.8", - "bottom_shell_thickness": "0.8", - "gap_fill_target": "everywhere", - "filter_out_gap_fill": "1", - "ensure_vertical_shell_thickness": "ensure_all", - "compatible_printers": [], - "slowdown_for_curled_perimeters": "0" -} diff --git a/resources/profiles/Elegoo/process/ECC2/0.08mm Optimal @Elegoo CC2 0.2 nozzle.json b/resources/profiles/Elegoo/process/ECC2/0.08mm Optimal @Elegoo CC2 0.2 nozzle.json index a078e52e793..1b193e30fcb 100644 --- a/resources/profiles/Elegoo/process/ECC2/0.08mm Optimal @Elegoo CC2 0.2 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC2/0.08mm Optimal @Elegoo CC2 0.2 nozzle.json @@ -1,8 +1,7 @@ { - "type": "process", - "name": "0.08mm Optimal @Elegoo CC2 0.2 nozzle", - "inherits": "0.10mm Standard @Elegoo CC2 0.2 nozzle", - "instantiation": "true", "elefant_foot_compensation": "0.05", - "layer_height": "0.08" + "inherits": "0.10mm Standard @Elegoo CC2 0.2 nozzle", + "layer_height": "0.08", + "name": "0.08mm Optimal @Elegoo CC2 0.2 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/ECC2/0.10mm Standard @Elegoo CC2 0.2 nozzle.json b/resources/profiles/Elegoo/process/ECC2/0.10mm Standard @Elegoo CC2 0.2 nozzle.json index b7b85785d31..ee0bd09959b 100644 --- a/resources/profiles/Elegoo/process/ECC2/0.10mm Standard @Elegoo CC2 0.2 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC2/0.10mm Standard @Elegoo CC2 0.2 nozzle.json @@ -5,12 +5,15 @@ "from": "system", "setting_id": "PECC202010", "instantiation": "true", - "sparse_infill_pattern": "zig-zag", "filename_format": "ECC2_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", "min_width_top_surface": "50%", "elefant_foot_compensation": "0.15", "enable_prime_tower": "1", "reduce_infill_retraction": "0", + "initial_layer_acceleration": "500", + "outer_wall_speed": "160", + "sparse_infill_pattern": "rectilinear", + "top_surface_acceleration": "2000", "compatible_printers": [ "Elegoo Centauri Carbon 2 0.2 nozzle" ] diff --git a/resources/profiles/Elegoo/process/ECC2/0.12mm Draft @Elegoo CC2 0.2 nozzle.json b/resources/profiles/Elegoo/process/ECC2/0.12mm Draft @Elegoo CC2 0.2 nozzle.json index f84d8797826..e1172fcfb11 100644 --- a/resources/profiles/Elegoo/process/ECC2/0.12mm Draft @Elegoo CC2 0.2 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC2/0.12mm Draft @Elegoo CC2 0.2 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.12mm Draft @Elegoo CC2 0.2 nozzle", "inherits": "0.10mm Standard @Elegoo CC2 0.2 nozzle", - "instantiation": "true", - "layer_height": "0.12" + "layer_height": "0.12", + "name": "0.12mm Draft @Elegoo CC2 0.2 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/ECC2/0.12mm Fine @Elegoo CC2 0.4 nozzle.json b/resources/profiles/Elegoo/process/ECC2/0.12mm Fine @Elegoo CC2 0.4 nozzle.json index bed0a472470..8794ef5731a 100644 --- a/resources/profiles/Elegoo/process/ECC2/0.12mm Fine @Elegoo CC2 0.4 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC2/0.12mm Fine @Elegoo CC2 0.4 nozzle.json @@ -1,8 +1,10 @@ { - "type": "process", - "name": "0.12mm Fine @Elegoo CC2 0.4 nozzle", "inherits": "0.20mm Standard @Elegoo CC2 0.4 nozzle", - "instantiation": "true", "layer_height": "0.12", - "wall_loops": "3" + "name": "0.12mm Fine @Elegoo CC2 0.4 nozzle", + "wall_loops": "3", + "support_bottom_z_distance": "0.2", + "support_top_z_distance": "0.2", + "top_solid_infill_flow_ratio": "1.09", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/ECC2/0.14mm Extra Draft @Elegoo CC2 0.2 nozzle.json b/resources/profiles/Elegoo/process/ECC2/0.14mm Extra Draft @Elegoo CC2 0.2 nozzle.json index a75ca06d92c..e44ed6f7cb2 100644 --- a/resources/profiles/Elegoo/process/ECC2/0.14mm Extra Draft @Elegoo CC2 0.2 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC2/0.14mm Extra Draft @Elegoo CC2 0.2 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.14mm Extra Draft @Elegoo CC2 0.2 nozzle", "inherits": "0.10mm Standard @Elegoo CC2 0.2 nozzle", - "instantiation": "true", - "layer_height": "0.14" + "layer_height": "0.14", + "name": "0.14mm Extra Draft @Elegoo CC2 0.2 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/ECC2/0.16mm Extra Fine @Elegoo CC2 0.8 nozzle.json b/resources/profiles/Elegoo/process/ECC2/0.16mm Extra Fine @Elegoo CC2 0.8 nozzle.json index 42b4d26fb59..a6ea15a1453 100644 --- a/resources/profiles/Elegoo/process/ECC2/0.16mm Extra Fine @Elegoo CC2 0.8 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC2/0.16mm Extra Fine @Elegoo CC2 0.8 nozzle.json @@ -1,8 +1,7 @@ { - "type": "process", - "name": "0.16mm Extra Fine @Elegoo CC2 0.8 nozzle", "inherits": "0.40mm Standard @Elegoo CC2 0.8 nozzle", - "instantiation": "true", "initial_layer_print_height": "0.3", - "layer_height": "0.16" + "layer_height": "0.16", + "name": "0.16mm Extra Fine @Elegoo CC2 0.8 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/ECC2/0.16mm Optimal @Elegoo CC2 0.4 nozzle.json b/resources/profiles/Elegoo/process/ECC2/0.16mm Optimal @Elegoo CC2 0.4 nozzle.json index eded4987c7b..fe6e4bda303 100644 --- a/resources/profiles/Elegoo/process/ECC2/0.16mm Optimal @Elegoo CC2 0.4 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC2/0.16mm Optimal @Elegoo CC2 0.4 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.16mm Optimal @Elegoo CC2 0.4 nozzle", "inherits": "0.20mm Standard @Elegoo CC2 0.4 nozzle", - "instantiation": "true", - "layer_height": "0.16" + "layer_height": "0.16", + "name": "0.16mm Optimal @Elegoo CC2 0.4 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/ECC2/0.18mm Fine @Elegoo CC2 0.6 nozzle.json b/resources/profiles/Elegoo/process/ECC2/0.18mm Fine @Elegoo CC2 0.6 nozzle.json index 164f561a8f3..6233080932c 100644 --- a/resources/profiles/Elegoo/process/ECC2/0.18mm Fine @Elegoo CC2 0.6 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC2/0.18mm Fine @Elegoo CC2 0.6 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.18mm Fine @Elegoo CC2 0.6 nozzle", "inherits": "0.30mm Standard @Elegoo CC2 0.6 nozzle", - "instantiation": "true", - "layer_height": "0.18" + "layer_height": "0.18", + "name": "0.18mm Fine @Elegoo CC2 0.6 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/ECC2/0.20mm Standard @Elegoo CC2 0.4 nozzle.json b/resources/profiles/Elegoo/process/ECC2/0.20mm Standard @Elegoo CC2 0.4 nozzle.json index e40249711dd..98bd16d30b9 100644 --- a/resources/profiles/Elegoo/process/ECC2/0.20mm Standard @Elegoo CC2 0.4 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC2/0.20mm Standard @Elegoo CC2 0.4 nozzle.json @@ -7,7 +7,7 @@ "instantiation": "true", "bottom_shell_layers": "3", "bottom_shell_thickness": "0.6", - "filename_format": "ECC2_{nozzle_diameter[0]}_{input_filename_base}_{filament_type[0]}_{layer_height}_{print_time}.gcode", + "filename_format": "ECC2_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", "min_width_top_surface": "50%", "enable_prime_tower": "1", "compatible_printers": [ @@ -16,18 +16,19 @@ "enable_arc_fitting": "0", "exclude_object": "0", "independent_support_layer_height": "0", - "initial_layer_acceleration": "2000", - "outer_wall_speed": "200", "skirt_height": "4", - "sparse_infill_pattern": "honeycomb", - "support_base_pattern": "honeycomb", "support_base_pattern_spacing": "1", - "support_bottom_z_distance": "0.1", - "support_top_z_distance": "0.08", + "support_bottom_z_distance": "0.2", + "support_top_z_distance": "0.2", + "top_solid_infill_flow_ratio": "1.09", "support_type": "tree(auto)", - "top_surface_acceleration": "5000", "tree_support_branch_distance_organic": "2", "tree_support_tip_diameter": "0.8", "wall_sequence": "inner wall/outer wall", - "reduce_infill_retraction": "0" + "reduce_infill_retraction": "0", + "initial_layer_acceleration": "500", + "outer_wall_speed": "160", + "sparse_infill_pattern": "rectilinear", + "top_surface_acceleration": "2000", + "support_base_pattern": "rectilinear" } diff --git a/resources/profiles/Elegoo/process/ECC2/0.20mm Strength @Elegoo CC2 0.4 nozzle.json b/resources/profiles/Elegoo/process/ECC2/0.20mm Strength @Elegoo CC2 0.4 nozzle.json index 5655d94a207..af46be64e37 100644 --- a/resources/profiles/Elegoo/process/ECC2/0.20mm Strength @Elegoo CC2 0.4 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC2/0.20mm Strength @Elegoo CC2 0.4 nozzle.json @@ -1,14 +1,14 @@ { - "type": "process", - "name": "0.20mm Strength @Elegoo CC2 0.4 nozzle", "inherits": "0.20mm Standard @Elegoo CC2 0.4 nozzle", - "instantiation": "true", - "wall_sequence": "inner-outer-inner wall", - "reduce_crossing_wall": "1", + "name": "0.20mm Strength @Elegoo CC2 0.4 nozzle", + "wall_sequence": "inner wall/outer wall", + "reduce_crossing_wall": "0", "bottom_shell_layers": "5", - "outer_wall_speed": "120", - "print_flow_ratio": "0.95", + "outer_wall_speed": "200", + "print_flow_ratio": "0.97", "sparse_infill_density": "20%", "top_shell_layers": "6", - "wall_loops": "6" + "wall_loops": "5", + "top_solid_infill_flow_ratio": "1.09", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/ECC2/0.24mm Draft @Elegoo CC2 0.4 nozzle.json b/resources/profiles/Elegoo/process/ECC2/0.24mm Draft @Elegoo CC2 0.4 nozzle.json index e0eb3daf613..50d31cedc12 100644 --- a/resources/profiles/Elegoo/process/ECC2/0.24mm Draft @Elegoo CC2 0.4 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC2/0.24mm Draft @Elegoo CC2 0.4 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.24mm Draft @Elegoo CC2 0.4 nozzle", "inherits": "0.20mm Standard @Elegoo CC2 0.4 nozzle", - "instantiation": "true", - "layer_height": "0.24" + "layer_height": "0.24", + "name": "0.24mm Draft @Elegoo CC2 0.4 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/ECC2/0.24mm Fine @Elegoo CC2 0.8 nozzle.json b/resources/profiles/Elegoo/process/ECC2/0.24mm Fine @Elegoo CC2 0.8 nozzle.json index fad9ec85208..9d43d1ee8bc 100644 --- a/resources/profiles/Elegoo/process/ECC2/0.24mm Fine @Elegoo CC2 0.8 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC2/0.24mm Fine @Elegoo CC2 0.8 nozzle.json @@ -1,8 +1,7 @@ { - "type": "process", - "name": "0.24mm Fine @Elegoo CC2 0.8 nozzle", "inherits": "0.40mm Standard @Elegoo CC2 0.8 nozzle", - "instantiation": "true", "initial_layer_print_height": "0.3", - "layer_height": "0.24" + "layer_height": "0.24", + "name": "0.24mm Fine @Elegoo CC2 0.8 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/ECC2/0.24mm Optimal @Elegoo CC2 0.6 nozzle.json b/resources/profiles/Elegoo/process/ECC2/0.24mm Optimal @Elegoo CC2 0.6 nozzle.json index 663877b0bfe..1171026be72 100644 --- a/resources/profiles/Elegoo/process/ECC2/0.24mm Optimal @Elegoo CC2 0.6 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC2/0.24mm Optimal @Elegoo CC2 0.6 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.24mm Optimal @Elegoo CC2 0.6 nozzle", "inherits": "0.30mm Standard @Elegoo CC2 0.6 nozzle", - "instantiation": "true", - "layer_height": "0.24" + "layer_height": "0.24", + "name": "0.24mm Optimal @Elegoo CC2 0.6 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/ECC2/0.28mm Extra Draft @Elegoo CC2 0.4 nozzle.json b/resources/profiles/Elegoo/process/ECC2/0.28mm Extra Draft @Elegoo CC2 0.4 nozzle.json index b3690e240ab..000676ba68f 100644 --- a/resources/profiles/Elegoo/process/ECC2/0.28mm Extra Draft @Elegoo CC2 0.4 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC2/0.28mm Extra Draft @Elegoo CC2 0.4 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.28mm Extra Draft @Elegoo CC2 0.4 nozzle", "inherits": "0.20mm Standard @Elegoo CC2 0.4 nozzle", - "instantiation": "true", - "layer_height": "0.28" + "layer_height": "0.28", + "name": "0.28mm Extra Draft @Elegoo CC2 0.4 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/ECC2/0.30mm Standard @Elegoo CC2 0.6 nozzle.json b/resources/profiles/Elegoo/process/ECC2/0.30mm Standard @Elegoo CC2 0.6 nozzle.json index cfde502c682..e5084f94d00 100644 --- a/resources/profiles/Elegoo/process/ECC2/0.30mm Standard @Elegoo CC2 0.6 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC2/0.30mm Standard @Elegoo CC2 0.6 nozzle.json @@ -5,12 +5,16 @@ "from": "system", "setting_id": "PECC206030", "instantiation": "true", - "sparse_infill_pattern": "zig-zag", "filename_format": "ECC2_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", "min_width_top_surface": "50%", "enable_prime_tower": "1", "compatible_printers": [ "Elegoo Centauri Carbon 2 0.6 nozzle" ], - "reduce_infill_retraction": "0" + "reduce_infill_retraction": "0", + "initial_layer_acceleration": "500", + "outer_wall_speed": "160", + "sparse_infill_pattern": "rectilinear", + "top_surface_acceleration": "2000", + "support_base_pattern": "rectilinear" } diff --git a/resources/profiles/Elegoo/process/ECC2/0.30mm Strength @Elegoo CC2 0.6 nozzle.json b/resources/profiles/Elegoo/process/ECC2/0.30mm Strength @Elegoo CC2 0.6 nozzle.json index 0f2436520f3..f14cafb3efd 100644 --- a/resources/profiles/Elegoo/process/ECC2/0.30mm Strength @Elegoo CC2 0.6 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC2/0.30mm Strength @Elegoo CC2 0.6 nozzle.json @@ -1,13 +1,12 @@ { - "type": "process", - "name": "0.30mm Strength @Elegoo CC2 0.6 nozzle", "inherits": "0.30mm Standard @Elegoo CC2 0.6 nozzle", - "instantiation": "true", "inner_wall_speed": "120", + "name": "0.30mm Strength @Elegoo CC2 0.6 nozzle", "wall_sequence": "inner-outer-inner wall", "reduce_crossing_wall": "1", "outer_wall_speed": "80", "sparse_infill_density": "15%", "top_surface_speed": "120", - "wall_loops": "4" + "wall_loops": "4", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/ECC2/0.32mm Optimal @Elegoo CC2 0.8 nozzle.json b/resources/profiles/Elegoo/process/ECC2/0.32mm Optimal @Elegoo CC2 0.8 nozzle.json index b453396d217..94a4d405efb 100644 --- a/resources/profiles/Elegoo/process/ECC2/0.32mm Optimal @Elegoo CC2 0.8 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC2/0.32mm Optimal @Elegoo CC2 0.8 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.32mm Optimal @Elegoo CC2 0.8 nozzle", "inherits": "0.40mm Standard @Elegoo CC2 0.8 nozzle", - "instantiation": "true", - "layer_height": "0.32" + "layer_height": "0.32", + "name": "0.32mm Optimal @Elegoo CC2 0.8 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/ECC2/0.36mm Draft @Elegoo CC2 0.6 nozzle.json b/resources/profiles/Elegoo/process/ECC2/0.36mm Draft @Elegoo CC2 0.6 nozzle.json index b5b24eb53e5..dbb3d9e8d7f 100644 --- a/resources/profiles/Elegoo/process/ECC2/0.36mm Draft @Elegoo CC2 0.6 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC2/0.36mm Draft @Elegoo CC2 0.6 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.36mm Draft @Elegoo CC2 0.6 nozzle", "inherits": "0.30mm Standard @Elegoo CC2 0.6 nozzle", - "instantiation": "true", - "layer_height": "0.36" + "layer_height": "0.36", + "name": "0.36mm Draft @Elegoo CC2 0.6 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/ECC2/0.40mm Standard @Elegoo CC2 0.8 nozzle.json b/resources/profiles/Elegoo/process/ECC2/0.40mm Standard @Elegoo CC2 0.8 nozzle.json index 09e7d479a56..031bad98870 100644 --- a/resources/profiles/Elegoo/process/ECC2/0.40mm Standard @Elegoo CC2 0.8 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC2/0.40mm Standard @Elegoo CC2 0.8 nozzle.json @@ -5,12 +5,16 @@ "from": "system", "setting_id": "PECC208040", "instantiation": "true", - "sparse_infill_pattern": "zig-zag", - "filename_format": "ECC2_{nozzle_diameter[0]}_{input_filename_base}_{filament_type[0]}_{layer_height}_{print_time}.gcode", + "filename_format": "ECC2_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", "min_width_top_surface": "50%", "enable_prime_tower": "1", "compatible_printers": [ "Elegoo Centauri Carbon 2 0.8 nozzle" ], - "reduce_infill_retraction": "0" + "reduce_infill_retraction": "0", + "initial_layer_acceleration": "500", + "outer_wall_speed": "160", + "sparse_infill_pattern": "rectilinear", + "top_surface_acceleration": "2000", + "support_base_pattern": "rectilinear" } diff --git a/resources/profiles/Elegoo/process/ECC2/0.42mm Extra Draft @Elegoo CC2 0.6 nozzle.json b/resources/profiles/Elegoo/process/ECC2/0.42mm Extra Draft @Elegoo CC2 0.6 nozzle.json index a281d2c30e2..d32be7b6df8 100644 --- a/resources/profiles/Elegoo/process/ECC2/0.42mm Extra Draft @Elegoo CC2 0.6 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC2/0.42mm Extra Draft @Elegoo CC2 0.6 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.42mm Extra Draft @Elegoo CC2 0.6 nozzle", "inherits": "0.30mm Standard @Elegoo CC2 0.6 nozzle", - "instantiation": "true", - "layer_height": "0.42" + "layer_height": "0.42", + "name": "0.42mm Extra Draft @Elegoo CC2 0.6 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/ECC2/0.48mm Draft @Elegoo CC2 0.8 nozzle.json b/resources/profiles/Elegoo/process/ECC2/0.48mm Draft @Elegoo CC2 0.8 nozzle.json index d45f29424fa..58a1ece2c24 100644 --- a/resources/profiles/Elegoo/process/ECC2/0.48mm Draft @Elegoo CC2 0.8 nozzle.json +++ b/resources/profiles/Elegoo/process/ECC2/0.48mm Draft @Elegoo CC2 0.8 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.48mm Draft @Elegoo CC2 0.8 nozzle", "inherits": "0.40mm Standard @Elegoo CC2 0.8 nozzle", - "instantiation": "true", - "layer_height": "0.48" + "layer_height": "0.48", + "name": "0.48mm Draft @Elegoo CC2 0.8 nozzle", + "instantiation": "true" } diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.08mm Extra Fine @Elegoo Neptune.json b/resources/profiles/Elegoo/process/EN2SERIES/0.08mm Extra Fine @Elegoo Neptune.json deleted file mode 100644 index 14736a23d63..00000000000 --- a/resources/profiles/Elegoo/process/EN2SERIES/0.08mm Extra Fine @Elegoo Neptune.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.08mm Extra Fine @Elegoo Neptune", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.08", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "9", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.08", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "11", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.08mm Extra Fine @Elegoo Neptune2.json b/resources/profiles/Elegoo/process/EN2SERIES/0.08mm Extra Fine @Elegoo Neptune2.json deleted file mode 100644 index 1ffe1f3d147..00000000000 --- a/resources/profiles/Elegoo/process/EN2SERIES/0.08mm Extra Fine @Elegoo Neptune2.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.08mm Extra Fine @Elegoo Neptune2", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.08", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "9", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.08", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "11", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 2 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.08mm Extra Fine @Elegoo Neptune2D.json b/resources/profiles/Elegoo/process/EN2SERIES/0.08mm Extra Fine @Elegoo Neptune2D.json deleted file mode 100644 index 88a841d7ea9..00000000000 --- a/resources/profiles/Elegoo/process/EN2SERIES/0.08mm Extra Fine @Elegoo Neptune2D.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.08mm Extra Fine @Elegoo Neptune2D", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.08", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "9", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.08", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "11", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 2D 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.08mm Extra Fine @Elegoo Neptune2S.json b/resources/profiles/Elegoo/process/EN2SERIES/0.08mm Extra Fine @Elegoo Neptune2S.json deleted file mode 100644 index 53845423c01..00000000000 --- a/resources/profiles/Elegoo/process/EN2SERIES/0.08mm Extra Fine @Elegoo Neptune2S.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.08mm Extra Fine @Elegoo Neptune2S", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.08", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "9", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.08", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "11", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 2S 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.08mm Extra Fine @Elegoo Neptune3.json b/resources/profiles/Elegoo/process/EN2SERIES/0.08mm Extra Fine @Elegoo Neptune3.json deleted file mode 100644 index 0e905426544..00000000000 --- a/resources/profiles/Elegoo/process/EN2SERIES/0.08mm Extra Fine @Elegoo Neptune3.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.08mm Extra Fine @Elegoo Neptune3", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.08", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "9", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.08", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "11", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 3 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.08mm Extra Fine @Elegoo NeptuneX.json b/resources/profiles/Elegoo/process/EN2SERIES/0.08mm Extra Fine @Elegoo NeptuneX.json deleted file mode 100644 index aafd2fbe8e8..00000000000 --- a/resources/profiles/Elegoo/process/EN2SERIES/0.08mm Extra Fine @Elegoo NeptuneX.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.08mm Extra Fine @Elegoo NeptuneX", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.08", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "9", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.08", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "11", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune X 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.12mm Fine @Elegoo Neptune 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN2SERIES/0.12mm Fine @Elegoo Neptune 0.4 nozzle.json new file mode 100644 index 00000000000..f3cb796591e --- /dev/null +++ b/resources/profiles/Elegoo/process/EN2SERIES/0.12mm Fine @Elegoo Neptune 0.4 nozzle.json @@ -0,0 +1,10 @@ +{ + "setting_id": "PEN204020", + "from": "system", + "inherits": "0.20mm Standard @Elegoo Neptune 0.4 nozzle", + "name": "0.12mm Fine @Elegoo Neptune 0.4 nozzle", + "layer_height": "0.12", + "wall_loops": "3", + "instantiation": "true", + "renamed_from": "0.08mm Extra Fine @Elegoo Neptune;0.08mm Extra Fine @Elegoo Neptune2;0.08mm Extra Fine @Elegoo Neptune2D;0.08mm Extra Fine @Elegoo Neptune2S;0.08mm Extra Fine @Elegoo NeptuneX;0.12mm Fine @Elegoo Neptune;0.12mm Fine @Elegoo Neptune2;0.12mm Fine @Elegoo Neptune2D;0.12mm Fine @Elegoo Neptune2S;0.12mm Fine @Elegoo NeptuneX" +} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.12mm Fine @Elegoo Neptune.json b/resources/profiles/Elegoo/process/EN2SERIES/0.12mm Fine @Elegoo Neptune.json deleted file mode 100644 index 450384e2088..00000000000 --- a/resources/profiles/Elegoo/process/EN2SERIES/0.12mm Fine @Elegoo Neptune.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.12mm Fine @Elegoo Neptune", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.12", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "6", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.12", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "7", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.12mm Fine @Elegoo Neptune2.json b/resources/profiles/Elegoo/process/EN2SERIES/0.12mm Fine @Elegoo Neptune2.json deleted file mode 100644 index 02f66b48ac5..00000000000 --- a/resources/profiles/Elegoo/process/EN2SERIES/0.12mm Fine @Elegoo Neptune2.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.12mm Fine @Elegoo Neptune2", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.12", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "6", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.12", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "7", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 2 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.12mm Fine @Elegoo Neptune2D.json b/resources/profiles/Elegoo/process/EN2SERIES/0.12mm Fine @Elegoo Neptune2D.json deleted file mode 100644 index 5636cc2d2ce..00000000000 --- a/resources/profiles/Elegoo/process/EN2SERIES/0.12mm Fine @Elegoo Neptune2D.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.12mm Fine @Elegoo Neptune2D", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.12", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "6", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.12", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "7", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 2D 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.12mm Fine @Elegoo Neptune2S.json b/resources/profiles/Elegoo/process/EN2SERIES/0.12mm Fine @Elegoo Neptune2S.json deleted file mode 100644 index 9462cc8c017..00000000000 --- a/resources/profiles/Elegoo/process/EN2SERIES/0.12mm Fine @Elegoo Neptune2S.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.12mm Fine @Elegoo Neptune2S", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.12", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "6", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.12", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "7", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 2S 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.12mm Fine @Elegoo Neptune3.json b/resources/profiles/Elegoo/process/EN2SERIES/0.12mm Fine @Elegoo Neptune3.json deleted file mode 100644 index 2c569a10f38..00000000000 --- a/resources/profiles/Elegoo/process/EN2SERIES/0.12mm Fine @Elegoo Neptune3.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.12mm Fine @Elegoo Neptune3", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.12", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "6", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.12", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "7", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 3 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.12mm Fine @Elegoo NeptuneX.json b/resources/profiles/Elegoo/process/EN2SERIES/0.12mm Fine @Elegoo NeptuneX.json deleted file mode 100644 index 6cd38e6991b..00000000000 --- a/resources/profiles/Elegoo/process/EN2SERIES/0.12mm Fine @Elegoo NeptuneX.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.12mm Fine @Elegoo NeptuneX", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.12", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "6", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.12", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "7", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune X 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.16mm Optimal @Elegoo Neptune 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN2SERIES/0.16mm Optimal @Elegoo Neptune 0.4 nozzle.json new file mode 100644 index 00000000000..963040e3ab1 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN2SERIES/0.16mm Optimal @Elegoo Neptune 0.4 nozzle.json @@ -0,0 +1,9 @@ +{ + "setting_id": "PEN204020", + "from": "system", + "inherits": "0.20mm Standard @Elegoo Neptune 0.4 nozzle", + "name": "0.16mm Optimal @Elegoo Neptune 0.4 nozzle", + "layer_height": "0.16", + "instantiation": "true", + "renamed_from": "0.16mm Optimal @Elegoo Neptune;0.16mm Optimal @Elegoo Neptune2;0.16mm Optimal @Elegoo Neptune2D;0.16mm Optimal @Elegoo Neptune2S;0.16mm Optimal @Elegoo NeptuneX" +} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.16mm Optimal @Elegoo Neptune.json b/resources/profiles/Elegoo/process/EN2SERIES/0.16mm Optimal @Elegoo Neptune.json deleted file mode 100644 index 642a24cbab6..00000000000 --- a/resources/profiles/Elegoo/process/EN2SERIES/0.16mm Optimal @Elegoo Neptune.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.16mm Optimal @Elegoo Neptune", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.16", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "4", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.16", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "5", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.16mm Optimal @Elegoo Neptune2.json b/resources/profiles/Elegoo/process/EN2SERIES/0.16mm Optimal @Elegoo Neptune2.json deleted file mode 100644 index 27ecf5044ca..00000000000 --- a/resources/profiles/Elegoo/process/EN2SERIES/0.16mm Optimal @Elegoo Neptune2.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.16mm Optimal @Elegoo Neptune2", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.16", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "4", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.16", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "5", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 2 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.16mm Optimal @Elegoo Neptune2D.json b/resources/profiles/Elegoo/process/EN2SERIES/0.16mm Optimal @Elegoo Neptune2D.json deleted file mode 100644 index f07e602cd06..00000000000 --- a/resources/profiles/Elegoo/process/EN2SERIES/0.16mm Optimal @Elegoo Neptune2D.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.16mm Optimal @Elegoo Neptune2D", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.16", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "4", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.16", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "5", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 2D 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.16mm Optimal @Elegoo Neptune2S.json b/resources/profiles/Elegoo/process/EN2SERIES/0.16mm Optimal @Elegoo Neptune2S.json deleted file mode 100644 index ccf243e8a7e..00000000000 --- a/resources/profiles/Elegoo/process/EN2SERIES/0.16mm Optimal @Elegoo Neptune2S.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.16mm Optimal @Elegoo Neptune2S", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.16", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "4", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.16", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "5", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 2S 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.16mm Optimal @Elegoo Neptune3.json b/resources/profiles/Elegoo/process/EN2SERIES/0.16mm Optimal @Elegoo Neptune3.json deleted file mode 100644 index 1dda5b57a19..00000000000 --- a/resources/profiles/Elegoo/process/EN2SERIES/0.16mm Optimal @Elegoo Neptune3.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.16mm Optimal @Elegoo Neptune3", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.16", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "4", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.16", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "5", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 3 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.16mm Optimal @Elegoo NeptuneX.json b/resources/profiles/Elegoo/process/EN2SERIES/0.16mm Optimal @Elegoo NeptuneX.json deleted file mode 100644 index e28f34056ab..00000000000 --- a/resources/profiles/Elegoo/process/EN2SERIES/0.16mm Optimal @Elegoo NeptuneX.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.16mm Optimal @Elegoo NeptuneX", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.16", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "4", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.16", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "5", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune X 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.20mm Standard @Elegoo Neptune 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN2SERIES/0.20mm Standard @Elegoo Neptune 0.4 nozzle.json new file mode 100644 index 00000000000..ee5b79d5eab --- /dev/null +++ b/resources/profiles/Elegoo/process/EN2SERIES/0.20mm Standard @Elegoo Neptune 0.4 nozzle.json @@ -0,0 +1,39 @@ +{ + "type": "process", + "setting_id": "PEN204020", + "name": "0.20mm Standard @Elegoo Neptune 0.4 nozzle", + "from": "system", + "inherits": "fdm_process_elegoo_04020", + "instantiation": "true", + "filename_format": "{nozzle_diameter[0]}{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "default_acceleration": "1000", + "gap_infill_speed": "30", + "initial_layer_infill_speed": "50", + "initial_layer_speed": "30", + "inner_wall_speed": "60", + "internal_bridge_speed": "100%", + "internal_solid_infill_speed": "60", + "outer_wall_acceleration": "500", + "outer_wall_speed": "30", + "overhang_2_4_speed": "30", + "overhang_3_4_speed": "20", + "skirt_speed": "30", + "sparse_infill_speed": "60", + "support_interface_speed": "30", + "support_speed": "60", + "top_surface_acceleration": "1000", + "top_surface_speed": "30", + "travel_speed": "200", + "only_one_wall_top": "0", + "wall_loops": "3", + "enable_arc_fitting": "0", + "compatible_printers": [ + "Elegoo Neptune 2 0.4 nozzle", + "Elegoo Neptune 3 0.4 nozzle", + "Elegoo Neptune X 0.4 nozzle", + "Elegoo Neptune 2S 0.4 nozzle", + "Elegoo Neptune 2D 0.4 nozzle", + "Elegoo Neptune 0.4 nozzle" + ], + "renamed_from": "0.20mm Standard @Elegoo Neptune;0.20mm Standard @Elegoo Neptune2;0.20mm Standard @Elegoo Neptune2D;0.20mm Standard @Elegoo Neptune2S;0.20mm Standard @Elegoo NeptuneX" +} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.20mm Standard @Elegoo Neptune.json b/resources/profiles/Elegoo/process/EN2SERIES/0.20mm Standard @Elegoo Neptune.json deleted file mode 100644 index e5f0b7fd57b..00000000000 --- a/resources/profiles/Elegoo/process/EN2SERIES/0.20mm Standard @Elegoo Neptune.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.20mm Standard @Elegoo Neptune", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.2", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.2", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.20mm Standard @Elegoo Neptune2.json b/resources/profiles/Elegoo/process/EN2SERIES/0.20mm Standard @Elegoo Neptune2.json deleted file mode 100644 index b2877217850..00000000000 --- a/resources/profiles/Elegoo/process/EN2SERIES/0.20mm Standard @Elegoo Neptune2.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.20mm Standard @Elegoo Neptune2", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.2", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.2", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 2 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.20mm Standard @Elegoo Neptune2D.json b/resources/profiles/Elegoo/process/EN2SERIES/0.20mm Standard @Elegoo Neptune2D.json deleted file mode 100644 index 7d89a5e9ddf..00000000000 --- a/resources/profiles/Elegoo/process/EN2SERIES/0.20mm Standard @Elegoo Neptune2D.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.20mm Standard @Elegoo Neptune2D", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.2", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.2", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 2D 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.20mm Standard @Elegoo Neptune2S.json b/resources/profiles/Elegoo/process/EN2SERIES/0.20mm Standard @Elegoo Neptune2S.json deleted file mode 100644 index aac88fc9769..00000000000 --- a/resources/profiles/Elegoo/process/EN2SERIES/0.20mm Standard @Elegoo Neptune2S.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.20mm Standard @Elegoo Neptune2S", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.2", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.2", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 2S 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.20mm Standard @Elegoo Neptune3.json b/resources/profiles/Elegoo/process/EN2SERIES/0.20mm Standard @Elegoo Neptune3.json deleted file mode 100644 index 4a770f0d585..00000000000 --- a/resources/profiles/Elegoo/process/EN2SERIES/0.20mm Standard @Elegoo Neptune3.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.20mm Standard @Elegoo Neptune3", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.2", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.2", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 3 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.20mm Standard @Elegoo NeptuneX.json b/resources/profiles/Elegoo/process/EN2SERIES/0.20mm Standard @Elegoo NeptuneX.json deleted file mode 100644 index baa5d454c0f..00000000000 --- a/resources/profiles/Elegoo/process/EN2SERIES/0.20mm Standard @Elegoo NeptuneX.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.20mm Standard @Elegoo NeptuneX", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.2", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.2", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune X 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.20mm Strength @Elegoo Neptune 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN2SERIES/0.20mm Strength @Elegoo Neptune 0.4 nozzle.json new file mode 100644 index 00000000000..62f79c8e77c --- /dev/null +++ b/resources/profiles/Elegoo/process/EN2SERIES/0.20mm Strength @Elegoo Neptune 0.4 nozzle.json @@ -0,0 +1,10 @@ +{ + "setting_id": "PEN204020S", + "from": "system", + "inherits": "0.20mm Standard @Elegoo Neptune 0.4 nozzle", + "name": "0.20mm Strength @Elegoo Neptune 0.4 nozzle", + "wall_sequence": "inner-outer-inner wall", + "reduce_crossing_wall": "1", + "wall_loops": "6", + "instantiation": "true" +} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.24mm Draft @Elegoo Neptune 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN2SERIES/0.24mm Draft @Elegoo Neptune 0.4 nozzle.json new file mode 100644 index 00000000000..c54923918dd --- /dev/null +++ b/resources/profiles/Elegoo/process/EN2SERIES/0.24mm Draft @Elegoo Neptune 0.4 nozzle.json @@ -0,0 +1,9 @@ +{ + "setting_id": "PEN204024", + "from": "system", + "inherits": "0.20mm Standard @Elegoo Neptune 0.4 nozzle", + "name": "0.24mm Draft @Elegoo Neptune 0.4 nozzle", + "layer_height": "0.24", + "instantiation": "true", + "renamed_from": "0.24mm Draft @Elegoo Neptune;0.24mm Draft @Elegoo Neptune2;0.24mm Draft @Elegoo Neptune2D;0.24mm Draft @Elegoo Neptune2S;0.24mm Draft @Elegoo NeptuneX" +} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.24mm Draft @Elegoo Neptune.json b/resources/profiles/Elegoo/process/EN2SERIES/0.24mm Draft @Elegoo Neptune.json deleted file mode 100644 index 384e8a9c1e8..00000000000 --- a/resources/profiles/Elegoo/process/EN2SERIES/0.24mm Draft @Elegoo Neptune.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.24mm Draft @Elegoo Neptune", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.24", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.24", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.45", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.24mm Draft @Elegoo Neptune2.json b/resources/profiles/Elegoo/process/EN2SERIES/0.24mm Draft @Elegoo Neptune2.json deleted file mode 100644 index ecc4753fa9d..00000000000 --- a/resources/profiles/Elegoo/process/EN2SERIES/0.24mm Draft @Elegoo Neptune2.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.24mm Draft @Elegoo Neptune2", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.24", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.24", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.45", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 2 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.24mm Draft @Elegoo Neptune2D.json b/resources/profiles/Elegoo/process/EN2SERIES/0.24mm Draft @Elegoo Neptune2D.json deleted file mode 100644 index df3aea16540..00000000000 --- a/resources/profiles/Elegoo/process/EN2SERIES/0.24mm Draft @Elegoo Neptune2D.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.24mm Draft @Elegoo Neptune2D", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.24", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.24", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.45", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 2D 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.24mm Draft @Elegoo Neptune2S.json b/resources/profiles/Elegoo/process/EN2SERIES/0.24mm Draft @Elegoo Neptune2S.json deleted file mode 100644 index 9349294cee1..00000000000 --- a/resources/profiles/Elegoo/process/EN2SERIES/0.24mm Draft @Elegoo Neptune2S.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.24mm Draft @Elegoo Neptune2S", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.24", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.24", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.45", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 2S 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.24mm Draft @Elegoo Neptune3.json b/resources/profiles/Elegoo/process/EN2SERIES/0.24mm Draft @Elegoo Neptune3.json deleted file mode 100644 index e5bb0f8096e..00000000000 --- a/resources/profiles/Elegoo/process/EN2SERIES/0.24mm Draft @Elegoo Neptune3.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.24mm Draft @Elegoo Neptune3", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.24", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.24", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.45", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 3 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.24mm Draft @Elegoo NeptuneX.json b/resources/profiles/Elegoo/process/EN2SERIES/0.24mm Draft @Elegoo NeptuneX.json deleted file mode 100644 index 673217c0ba8..00000000000 --- a/resources/profiles/Elegoo/process/EN2SERIES/0.24mm Draft @Elegoo NeptuneX.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.24mm Draft @Elegoo NeptuneX", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.24", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.24", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.45", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune X 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.24mm Fine @Elegoo Neptune 0.8 nozzle.json b/resources/profiles/Elegoo/process/EN2SERIES/0.24mm Fine @Elegoo Neptune 0.8 nozzle.json new file mode 100644 index 00000000000..bb7a4cf27e1 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN2SERIES/0.24mm Fine @Elegoo Neptune 0.8 nozzle.json @@ -0,0 +1,8 @@ +{ + "setting_id": "PEN208024", + "from": "system", + "name": "0.24mm Fine @Elegoo Neptune 0.8 nozzle", + "inherits": "0.40mm Standard @Elegoo Neptune 0.8 nozzle", + "layer_height": "0.24", + "instantiation": "true" +} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.24mm Optimal @Elegoo Neptune 0.6 nozzle.json b/resources/profiles/Elegoo/process/EN2SERIES/0.24mm Optimal @Elegoo Neptune 0.6 nozzle.json new file mode 100644 index 00000000000..ef7e720471f --- /dev/null +++ b/resources/profiles/Elegoo/process/EN2SERIES/0.24mm Optimal @Elegoo Neptune 0.6 nozzle.json @@ -0,0 +1,8 @@ +{ + "setting_id": "PEN206024", + "from": "system", + "name": "0.24mm Optimal @Elegoo Neptune 0.6 nozzle", + "inherits": "0.30mm Standard @Elegoo Neptune 0.6 nozzle", + "layer_height": "0.24", + "instantiation": "true" +} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.28mm Extra Draft @Elegoo Neptune 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN2SERIES/0.28mm Extra Draft @Elegoo Neptune 0.4 nozzle.json new file mode 100644 index 00000000000..cc8cc38ec81 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN2SERIES/0.28mm Extra Draft @Elegoo Neptune 0.4 nozzle.json @@ -0,0 +1,9 @@ +{ + "setting_id": "PEN204028", + "from": "system", + "inherits": "0.20mm Standard @Elegoo Neptune 0.4 nozzle", + "name": "0.28mm Extra Draft @Elegoo Neptune 0.4 nozzle", + "layer_height": "0.28", + "instantiation": "true", + "renamed_from": "0.28mm Extra Draft @Elegoo Neptune;0.28mm Extra Draft @Elegoo Neptune2;0.28mm Extra Draft @Elegoo Neptune2D;0.28mm Extra Draft @Elegoo Neptune2S;0.28mm Extra Draft @Elegoo NeptuneX" +} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.28mm Extra Draft @Elegoo Neptune.json b/resources/profiles/Elegoo/process/EN2SERIES/0.28mm Extra Draft @Elegoo Neptune.json deleted file mode 100644 index cbc80a12a7b..00000000000 --- a/resources/profiles/Elegoo/process/EN2SERIES/0.28mm Extra Draft @Elegoo Neptune.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.28mm Extra Draft @Elegoo Neptune", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.28", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.28", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.45", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.28mm Extra Draft @Elegoo Neptune2.json b/resources/profiles/Elegoo/process/EN2SERIES/0.28mm Extra Draft @Elegoo Neptune2.json deleted file mode 100644 index d0ac19685ba..00000000000 --- a/resources/profiles/Elegoo/process/EN2SERIES/0.28mm Extra Draft @Elegoo Neptune2.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.28mm Extra Draft @Elegoo Neptune2", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.28", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.28", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.45", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 2 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.28mm Extra Draft @Elegoo Neptune2D.json b/resources/profiles/Elegoo/process/EN2SERIES/0.28mm Extra Draft @Elegoo Neptune2D.json deleted file mode 100644 index 1ceb042ba2b..00000000000 --- a/resources/profiles/Elegoo/process/EN2SERIES/0.28mm Extra Draft @Elegoo Neptune2D.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.28mm Extra Draft @Elegoo Neptune2D", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.28", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.28", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.45", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 2D 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.28mm Extra Draft @Elegoo Neptune2S.json b/resources/profiles/Elegoo/process/EN2SERIES/0.28mm Extra Draft @Elegoo Neptune2S.json deleted file mode 100644 index 860aa4f0e61..00000000000 --- a/resources/profiles/Elegoo/process/EN2SERIES/0.28mm Extra Draft @Elegoo Neptune2S.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.28mm Extra Draft @Elegoo Neptune2S", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.28", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.28", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.45", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 2S 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.28mm Extra Draft @Elegoo Neptune3.json b/resources/profiles/Elegoo/process/EN2SERIES/0.28mm Extra Draft @Elegoo Neptune3.json deleted file mode 100644 index 28497ae77aa..00000000000 --- a/resources/profiles/Elegoo/process/EN2SERIES/0.28mm Extra Draft @Elegoo Neptune3.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.28mm Extra Draft @Elegoo Neptune3", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.28", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.28", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.45", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 3 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.28mm Extra Draft @Elegoo NeptuneX.json b/resources/profiles/Elegoo/process/EN2SERIES/0.28mm Extra Draft @Elegoo NeptuneX.json deleted file mode 100644 index 72e521b2741..00000000000 --- a/resources/profiles/Elegoo/process/EN2SERIES/0.28mm Extra Draft @Elegoo NeptuneX.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.28mm Extra Draft @Elegoo NeptuneX", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.28", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.28", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.45", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune X 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.30mm Standard @Elegoo Neptune 0.6 nozzle.json b/resources/profiles/Elegoo/process/EN2SERIES/0.30mm Standard @Elegoo Neptune 0.6 nozzle.json new file mode 100644 index 00000000000..a2839ad5577 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN2SERIES/0.30mm Standard @Elegoo Neptune 0.6 nozzle.json @@ -0,0 +1,37 @@ +{ + "type": "process", + "name": "0.30mm Standard @Elegoo Neptune 0.6 nozzle", + "inherits": "fdm_process_elegoo_06030", + "from": "system", + "setting_id": "PEN206030", + "instantiation": "true", + "filename_format": "{nozzle_diameter[0]}{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "default_acceleration": "1000", + "gap_infill_speed": "30", + "initial_layer_infill_speed": "50", + "initial_layer_speed": "30", + "inner_wall_speed": "60", + "internal_bridge_speed": "100%", + "internal_solid_infill_speed": "60", + "outer_wall_acceleration": "500", + "outer_wall_speed": "30", + "overhang_2_4_speed": "20", + "overhang_3_4_speed": "10", + "skirt_speed": "30", + "sparse_infill_speed": "60", + "support_interface_speed": "30", + "support_speed": "60", + "top_surface_acceleration": "1000", + "top_surface_speed": "30", + "travel_speed": "200", + "only_one_wall_top": "0", + "enable_arc_fitting": "0", + "compatible_printers": [ + "Elegoo Neptune 2 0.6 nozzle", + "Elegoo Neptune 3 0.6 nozzle", + "Elegoo Neptune X 0.6 nozzle", + "Elegoo Neptune 2S 0.6 nozzle", + "Elegoo Neptune 2D 0.6 nozzle", + "Elegoo Neptune 0.6 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.32mm Optimal @Elegoo Neptune 0.8 nozzle.json b/resources/profiles/Elegoo/process/EN2SERIES/0.32mm Optimal @Elegoo Neptune 0.8 nozzle.json new file mode 100644 index 00000000000..f91c249e99d --- /dev/null +++ b/resources/profiles/Elegoo/process/EN2SERIES/0.32mm Optimal @Elegoo Neptune 0.8 nozzle.json @@ -0,0 +1,8 @@ +{ + "setting_id": "PEN208032", + "from": "system", + "name": "0.32mm Optimal @Elegoo Neptune 0.8 nozzle", + "inherits": "0.40mm Standard @Elegoo Neptune 0.8 nozzle", + "layer_height": "0.32", + "instantiation": "true" +} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.36mm Draft @Elegoo Neptune 0.6 nozzle.json b/resources/profiles/Elegoo/process/EN2SERIES/0.36mm Draft @Elegoo Neptune 0.6 nozzle.json new file mode 100644 index 00000000000..bb411a82714 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN2SERIES/0.36mm Draft @Elegoo Neptune 0.6 nozzle.json @@ -0,0 +1,8 @@ +{ + "setting_id": "PEN206036", + "from": "system", + "name": "0.36mm Draft @Elegoo Neptune 0.6 nozzle", + "inherits": "0.30mm Standard @Elegoo Neptune 0.6 nozzle", + "layer_height": "0.36", + "instantiation": "true" +} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.40mm Standard @Elegoo Neptune 0.8 nozzle.json b/resources/profiles/Elegoo/process/EN2SERIES/0.40mm Standard @Elegoo Neptune 0.8 nozzle.json new file mode 100644 index 00000000000..ca53203fbca --- /dev/null +++ b/resources/profiles/Elegoo/process/EN2SERIES/0.40mm Standard @Elegoo Neptune 0.8 nozzle.json @@ -0,0 +1,36 @@ +{ + "type": "process", + "name": "0.40mm Standard @Elegoo Neptune 0.8 nozzle", + "inherits": "fdm_process_elegoo_08040", + "from": "system", + "setting_id": "PEN208040", + "instantiation": "true", + "filename_format": "{nozzle_diameter[0]}{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "default_acceleration": "1000", + "gap_infill_speed": "30", + "initial_layer_infill_speed": "50", + "initial_layer_speed": "30", + "inner_wall_speed": "60", + "internal_bridge_speed": "100%", + "internal_solid_infill_speed": "60", + "outer_wall_acceleration": "500", + "outer_wall_speed": "30", + "overhang_2_4_speed": "20", + "overhang_3_4_speed": "10", + "skirt_speed": "30", + "sparse_infill_speed": "60", + "support_interface_speed": "30", + "support_speed": "60", + "top_surface_acceleration": "1000", + "top_surface_speed": "30", + "only_one_wall_top": "0", + "enable_arc_fitting": "0", + "compatible_printers": [ + "Elegoo Neptune 2 0.8 nozzle", + "Elegoo Neptune 3 0.8 nozzle", + "Elegoo Neptune X 0.8 nozzle", + "Elegoo Neptune 2S 0.8 nozzle", + "Elegoo Neptune 2D 0.8 nozzle", + "Elegoo Neptune 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/process/EN2SERIES/0.42mm Extra Draft @Elegoo Neptune 0.6 nozzle.json b/resources/profiles/Elegoo/process/EN2SERIES/0.42mm Extra Draft @Elegoo Neptune 0.6 nozzle.json new file mode 100644 index 00000000000..ec6ec519e88 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN2SERIES/0.42mm Extra Draft @Elegoo Neptune 0.6 nozzle.json @@ -0,0 +1,8 @@ +{ + "setting_id": "PEN206042", + "from": "system", + "name": "0.42mm Extra Draft @Elegoo Neptune 0.6 nozzle", + "inherits": "0.30mm Standard @Elegoo Neptune 0.6 nozzle", + "layer_height": "0.42", + "instantiation": "true" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.08mm Extra Fine @Elegoo Neptune3Max.json b/resources/profiles/Elegoo/process/EN3SERIES/0.08mm Extra Fine @Elegoo Neptune3Max.json deleted file mode 100644 index 93b27eb7ecf..00000000000 --- a/resources/profiles/Elegoo/process/EN3SERIES/0.08mm Extra Fine @Elegoo Neptune3Max.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.08mm Extra Fine @Elegoo Neptune3Max", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.08", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "9", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.08", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "11", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 3 Max 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.08mm Extra Fine @Elegoo Neptune3Plus.json b/resources/profiles/Elegoo/process/EN3SERIES/0.08mm Extra Fine @Elegoo Neptune3Plus.json deleted file mode 100644 index decdd221f54..00000000000 --- a/resources/profiles/Elegoo/process/EN3SERIES/0.08mm Extra Fine @Elegoo Neptune3Plus.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.08mm Extra Fine @Elegoo Neptune3Plus", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.08", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "9", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.08", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "11", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 3 Plus 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.08mm Extra Fine @Elegoo Neptune3Pro.json b/resources/profiles/Elegoo/process/EN3SERIES/0.08mm Extra Fine @Elegoo Neptune3Pro.json deleted file mode 100644 index c22f59e2aa7..00000000000 --- a/resources/profiles/Elegoo/process/EN3SERIES/0.08mm Extra Fine @Elegoo Neptune3Pro.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.08mm Extra Fine @Elegoo Neptune3Pro", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.08", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "9", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.08", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "11", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 3 Pro 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.08mm Optimal @Elegoo N3Max 0.2 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.08mm Optimal @Elegoo N3Max 0.2 nozzle.json new file mode 100644 index 00000000000..c66b4c4e442 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.08mm Optimal @Elegoo N3Max 0.2 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.08mm Optimal @Elegoo N3Max 0.2 nozzle", + "inherits": "0.10mm Standard @Elegoo N3Max 0.2 nozzle", + "layer_height": "0.08", + "settings_id": "PEN3Max02008", + "instantiation": "true" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.08mm Optimal @Elegoo N3Plus 0.2 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.08mm Optimal @Elegoo N3Plus 0.2 nozzle.json new file mode 100644 index 00000000000..5d59fd92571 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.08mm Optimal @Elegoo N3Plus 0.2 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.08mm Optimal @Elegoo N3Plus 0.2 nozzle", + "inherits": "0.10mm Standard @Elegoo N3Plus 0.2 nozzle", + "layer_height": "0.08", + "settings_id": "PEN3Plus02008", + "instantiation": "true" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.08mm Optimal @Elegoo N3Pro 0.2 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.08mm Optimal @Elegoo N3Pro 0.2 nozzle.json new file mode 100644 index 00000000000..e9ea71a4d26 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.08mm Optimal @Elegoo N3Pro 0.2 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.08mm Optimal @Elegoo N3Pro 0.2 nozzle", + "inherits": "0.10mm Standard @Elegoo N3Pro 0.2 nozzle", + "layer_height": "0.08", + "settings_id": "PEN3Pro02008", + "instantiation": "true" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.10mm Standard @Elegoo N3Max 0.2 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.10mm Standard @Elegoo N3Max 0.2 nozzle.json new file mode 100644 index 00000000000..3bc639009ce --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.10mm Standard @Elegoo N3Max 0.2 nozzle.json @@ -0,0 +1,31 @@ +{ + "type": "process", + "name": "0.10mm Standard @Elegoo N3Max 0.2 nozzle", + "inherits": "fdm_process_elegoo_02010", + "from": "system", + "setting_id": "PEN3Max02010", + "instantiation": "true", + "filename_format": "EN3Max_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "elefant_foot_compensation": "0.15", + "gap_infill_speed": "30", + "initial_layer_infill_speed": "50", + "initial_layer_speed": "30", + "inner_wall_speed": "60", + "internal_bridge_speed": "100%", + "internal_solid_infill_speed": "60", + "outer_wall_acceleration": "500", + "outer_wall_speed": "30", + "overhang_2_4_speed": "30", + "overhang_3_4_speed": "20", + "skirt_speed": "30", + "sparse_infill_speed": "60", + "support_interface_speed": "30", + "support_speed": "60", + "top_surface_speed": "30", + "default_acceleration": "700", + "top_surface_acceleration": "700", + "travel_speed": "150", + "compatible_printers": [ + "Elegoo Neptune 3 Max 0.2 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.10mm Standard @Elegoo N3Plus 0.2 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.10mm Standard @Elegoo N3Plus 0.2 nozzle.json new file mode 100644 index 00000000000..8acf8caf106 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.10mm Standard @Elegoo N3Plus 0.2 nozzle.json @@ -0,0 +1,31 @@ +{ + "type": "process", + "name": "0.10mm Standard @Elegoo N3Plus 0.2 nozzle", + "inherits": "fdm_process_elegoo_02010", + "from": "system", + "setting_id": "PEN3Plus02010", + "instantiation": "true", + "filename_format": "EN3Plus_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "elefant_foot_compensation": "0.15", + "default_acceleration": "1000", + "gap_infill_speed": "30", + "initial_layer_infill_speed": "50", + "initial_layer_speed": "30", + "inner_wall_speed": "60", + "internal_bridge_speed": "100%", + "internal_solid_infill_speed": "60", + "outer_wall_acceleration": "500", + "outer_wall_speed": "30", + "overhang_2_4_speed": "30", + "overhang_3_4_speed": "20", + "skirt_speed": "30", + "sparse_infill_speed": "60", + "support_interface_speed": "30", + "support_speed": "60", + "top_surface_acceleration": "1000", + "top_surface_speed": "30", + "travel_speed": "200", + "compatible_printers": [ + "Elegoo Neptune 3 Plus 0.2 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.10mm Standard @Elegoo N3Pro 0.2 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.10mm Standard @Elegoo N3Pro 0.2 nozzle.json new file mode 100644 index 00000000000..4e5feb1dcb5 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.10mm Standard @Elegoo N3Pro 0.2 nozzle.json @@ -0,0 +1,31 @@ +{ + "type": "process", + "name": "0.10mm Standard @Elegoo N3Pro 0.2 nozzle", + "inherits": "fdm_process_elegoo_02010", + "from": "system", + "setting_id": "PEN3Pro02010", + "instantiation": "true", + "filename_format": "EN3Pro_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "elefant_foot_compensation": "0.15", + "default_acceleration": "1000", + "gap_infill_speed": "30", + "initial_layer_infill_speed": "50", + "initial_layer_speed": "30", + "inner_wall_speed": "60", + "internal_bridge_speed": "100%", + "internal_solid_infill_speed": "60", + "outer_wall_acceleration": "500", + "outer_wall_speed": "30", + "overhang_2_4_speed": "30", + "overhang_3_4_speed": "20", + "skirt_speed": "30", + "sparse_infill_speed": "60", + "support_interface_speed": "30", + "support_speed": "60", + "top_surface_acceleration": "1000", + "top_surface_speed": "30", + "travel_speed": "200", + "compatible_printers": [ + "Elegoo Neptune 3 Pro 0.2 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.12mm Draft @Elegoo N3Max 0.2 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.12mm Draft @Elegoo N3Max 0.2 nozzle.json new file mode 100644 index 00000000000..de0124f296d --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.12mm Draft @Elegoo N3Max 0.2 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.12mm Draft @Elegoo N3Max 0.2 nozzle", + "inherits": "0.10mm Standard @Elegoo N3Max 0.2 nozzle", + "instantiation": "true", + "layer_height": "0.12", + "settings_id": "PEN3Max02012" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.12mm Draft @Elegoo N3Plus 0.2 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.12mm Draft @Elegoo N3Plus 0.2 nozzle.json new file mode 100644 index 00000000000..72c9a1c20ce --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.12mm Draft @Elegoo N3Plus 0.2 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.12mm Draft @Elegoo N3Plus 0.2 nozzle", + "inherits": "0.10mm Standard @Elegoo N3Plus 0.2 nozzle", + "layer_height": "0.12", + "instantiation": "true", + "settings_id": "PEN3Plus02012" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.12mm Draft @Elegoo N3Pro 0.2 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.12mm Draft @Elegoo N3Pro 0.2 nozzle.json new file mode 100644 index 00000000000..4077d1d7906 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.12mm Draft @Elegoo N3Pro 0.2 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.12mm Draft @Elegoo N3Pro 0.2 nozzle", + "inherits": "0.10mm Standard @Elegoo N3Pro 0.2 nozzle", + "layer_height": "0.12", + "instantiation": "true", + "settings_id": "PEN3Pro02012" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.12mm Fine @Elegoo N3Max 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.12mm Fine @Elegoo N3Max 0.4 nozzle.json new file mode 100644 index 00000000000..6abd6e7aed1 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.12mm Fine @Elegoo N3Max 0.4 nozzle.json @@ -0,0 +1,9 @@ +{ + "from": "system", + "inherits": "0.20mm Standard @Elegoo N3Max 0.4 nozzle", + "name": "0.12mm Fine @Elegoo N3Max 0.4 nozzle", + "layer_height": "0.12", + "instantiation": "true", + "wall_loops": "3", + "renamed_from": "0.08mm Extra Fine @Elegoo Neptune3Max;0.12mm Fine @Elegoo Neptune3Max" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.12mm Fine @Elegoo N3Plus 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.12mm Fine @Elegoo N3Plus 0.4 nozzle.json new file mode 100644 index 00000000000..93eb31aa6d0 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.12mm Fine @Elegoo N3Plus 0.4 nozzle.json @@ -0,0 +1,9 @@ +{ + "from": "system", + "inherits": "0.20mm Standard @Elegoo N3Plus 0.4 nozzle", + "name": "0.12mm Fine @Elegoo N3Plus 0.4 nozzle", + "layer_height": "0.12", + "instantiation": "true", + "wall_loops": "3", + "renamed_from": "0.08mm Extra Fine @Elegoo Neptune3Plus;0.12mm Fine @Elegoo Neptune3Plus" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.12mm Fine @Elegoo N3Pro 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.12mm Fine @Elegoo N3Pro 0.4 nozzle.json new file mode 100644 index 00000000000..6e413070fee --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.12mm Fine @Elegoo N3Pro 0.4 nozzle.json @@ -0,0 +1,9 @@ +{ + "from": "system", + "inherits": "0.20mm Standard @Elegoo N3Pro 0.4 nozzle", + "name": "0.12mm Fine @Elegoo N3Pro 0.4 nozzle", + "layer_height": "0.12", + "wall_loops": "3", + "instantiation": "true", + "renamed_from": "0.08mm Extra Fine @Elegoo Neptune3;0.08mm Extra Fine @Elegoo Neptune3Pro;0.12mm Fine @Elegoo Neptune3;0.12mm Fine @Elegoo Neptune3Pro" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.12mm Fine @Elegoo Neptune3Max.json b/resources/profiles/Elegoo/process/EN3SERIES/0.12mm Fine @Elegoo Neptune3Max.json deleted file mode 100644 index e49cac286a5..00000000000 --- a/resources/profiles/Elegoo/process/EN3SERIES/0.12mm Fine @Elegoo Neptune3Max.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.12mm Fine @Elegoo Neptune3Max", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.12", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "6", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.12", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "7", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 3 Max 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.12mm Fine @Elegoo Neptune3Plus.json b/resources/profiles/Elegoo/process/EN3SERIES/0.12mm Fine @Elegoo Neptune3Plus.json deleted file mode 100644 index d7ad6d06fa9..00000000000 --- a/resources/profiles/Elegoo/process/EN3SERIES/0.12mm Fine @Elegoo Neptune3Plus.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.12mm Fine @Elegoo Neptune3Plus", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.12", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "6", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.12", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "7", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 3 Plus 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.12mm Fine @Elegoo Neptune3Pro.json b/resources/profiles/Elegoo/process/EN3SERIES/0.12mm Fine @Elegoo Neptune3Pro.json deleted file mode 100644 index f0b4f67509a..00000000000 --- a/resources/profiles/Elegoo/process/EN3SERIES/0.12mm Fine @Elegoo Neptune3Pro.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.12mm Fine @Elegoo Neptune3Pro", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.12", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "6", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.12", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "7", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 3 Pro 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.16mm Optimal @Elegoo N3Max 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.16mm Optimal @Elegoo N3Max 0.4 nozzle.json new file mode 100644 index 00000000000..0252596d720 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.16mm Optimal @Elegoo N3Max 0.4 nozzle.json @@ -0,0 +1,8 @@ +{ + "from": "system", + "inherits": "0.20mm Standard @Elegoo N3Max 0.4 nozzle", + "name": "0.16mm Optimal @Elegoo N3Max 0.4 nozzle", + "layer_height": "0.16", + "instantiation": "true", + "renamed_from": "0.16mm Optimal @Elegoo Neptune3Max" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.16mm Optimal @Elegoo N3Plus 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.16mm Optimal @Elegoo N3Plus 0.4 nozzle.json new file mode 100644 index 00000000000..316dc6932c4 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.16mm Optimal @Elegoo N3Plus 0.4 nozzle.json @@ -0,0 +1,8 @@ +{ + "from": "system", + "inherits": "0.20mm Standard @Elegoo N3Plus 0.4 nozzle", + "name": "0.16mm Optimal @Elegoo N3Plus 0.4 nozzle", + "layer_height": "0.16", + "instantiation": "true", + "renamed_from": "0.16mm Optimal @Elegoo Neptune3Plus" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.16mm Optimal @Elegoo N3Pro 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.16mm Optimal @Elegoo N3Pro 0.4 nozzle.json new file mode 100644 index 00000000000..7dcbbd6ff33 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.16mm Optimal @Elegoo N3Pro 0.4 nozzle.json @@ -0,0 +1,8 @@ +{ + "from": "system", + "inherits": "0.20mm Standard @Elegoo N3Pro 0.4 nozzle", + "name": "0.16mm Optimal @Elegoo N3Pro 0.4 nozzle", + "layer_height": "0.16", + "instantiation": "true", + "renamed_from": "0.16mm Optimal @Elegoo Neptune3;0.16mm Optimal @Elegoo Neptune3Pro" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.16mm Optimal @Elegoo Neptune3Max.json b/resources/profiles/Elegoo/process/EN3SERIES/0.16mm Optimal @Elegoo Neptune3Max.json deleted file mode 100644 index f9cd203b75c..00000000000 --- a/resources/profiles/Elegoo/process/EN3SERIES/0.16mm Optimal @Elegoo Neptune3Max.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.16mm Optimal @Elegoo Neptune3Max", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.16", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "4", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.16", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "5", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 3 Max 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.16mm Optimal @Elegoo Neptune3Plus.json b/resources/profiles/Elegoo/process/EN3SERIES/0.16mm Optimal @Elegoo Neptune3Plus.json deleted file mode 100644 index 730b628be79..00000000000 --- a/resources/profiles/Elegoo/process/EN3SERIES/0.16mm Optimal @Elegoo Neptune3Plus.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.16mm Optimal @Elegoo Neptune3Plus", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.16", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "4", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.16", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "5", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 3 Plus 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.16mm Optimal @Elegoo Neptune3Pro.json b/resources/profiles/Elegoo/process/EN3SERIES/0.16mm Optimal @Elegoo Neptune3Pro.json deleted file mode 100644 index 2a691208396..00000000000 --- a/resources/profiles/Elegoo/process/EN3SERIES/0.16mm Optimal @Elegoo Neptune3Pro.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.16mm Optimal @Elegoo Neptune3Pro", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.16", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "4", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.16", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "5", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 3 Pro 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.20mm Standard @Elegoo N3Max 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.20mm Standard @Elegoo N3Max 0.4 nozzle.json new file mode 100644 index 00000000000..c6110a312ba --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.20mm Standard @Elegoo N3Max 0.4 nozzle.json @@ -0,0 +1,31 @@ +{ + "type": "process", + "setting_id": "PEN3Max04020", + "name": "0.20mm Standard @Elegoo N3Max 0.4 nozzle", + "from": "system", + "inherits": "fdm_process_elegoo_04020", + "instantiation": "true", + "filename_format": "EN3Max_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "gap_infill_speed": "30", + "initial_layer_infill_speed": "50", + "initial_layer_speed": "30", + "inner_wall_speed": "60", + "internal_bridge_speed": "100%", + "internal_solid_infill_speed": "60", + "outer_wall_acceleration": "500", + "outer_wall_speed": "30", + "overhang_2_4_speed": "30", + "overhang_3_4_speed": "20", + "skirt_speed": "30", + "sparse_infill_speed": "60", + "support_interface_speed": "30", + "support_speed": "60", + "top_surface_speed": "30", + "default_acceleration": "700", + "top_surface_acceleration": "700", + "travel_speed": "150", + "compatible_printers": [ + "Elegoo Neptune 3 Max 0.4 nozzle" + ], + "renamed_from": "0.20mm Standard @Elegoo Neptune3Max" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.20mm Standard @Elegoo N3Plus 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.20mm Standard @Elegoo N3Plus 0.4 nozzle.json new file mode 100644 index 00000000000..9d92db7eb66 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.20mm Standard @Elegoo N3Plus 0.4 nozzle.json @@ -0,0 +1,31 @@ +{ + "type": "process", + "setting_id": "PEN3Plus04020", + "name": "0.20mm Standard @Elegoo N3Plus 0.4 nozzle", + "from": "system", + "inherits": "fdm_process_elegoo_04020", + "instantiation": "true", + "filename_format": "EN3Plus_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "default_acceleration": "1000", + "gap_infill_speed": "30", + "initial_layer_infill_speed": "50", + "initial_layer_speed": "30", + "inner_wall_speed": "60", + "internal_bridge_speed": "100%", + "internal_solid_infill_speed": "60", + "outer_wall_acceleration": "500", + "outer_wall_speed": "30", + "overhang_2_4_speed": "30", + "overhang_3_4_speed": "20", + "skirt_speed": "30", + "sparse_infill_speed": "60", + "support_interface_speed": "30", + "support_speed": "60", + "top_surface_acceleration": "1000", + "top_surface_speed": "30", + "travel_speed": "200", + "compatible_printers": [ + "Elegoo Neptune 3 Plus 0.4 nozzle" + ], + "renamed_from": "0.20mm Standard @Elegoo Neptune3Plus" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.20mm Standard @Elegoo N3Pro 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.20mm Standard @Elegoo N3Pro 0.4 nozzle.json new file mode 100644 index 00000000000..0140bc50705 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.20mm Standard @Elegoo N3Pro 0.4 nozzle.json @@ -0,0 +1,31 @@ +{ + "type": "process", + "setting_id": "PEN3Pro04020", + "name": "0.20mm Standard @Elegoo N3Pro 0.4 nozzle", + "from": "system", + "inherits": "fdm_process_elegoo_04020", + "instantiation": "true", + "filename_format": "EN3Pro_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "default_acceleration": "1000", + "gap_infill_speed": "30", + "initial_layer_infill_speed": "50", + "initial_layer_speed": "30", + "inner_wall_speed": "60", + "internal_bridge_speed": "100%", + "internal_solid_infill_speed": "60", + "outer_wall_acceleration": "500", + "outer_wall_speed": "30", + "overhang_2_4_speed": "30", + "overhang_3_4_speed": "20", + "skirt_speed": "30", + "sparse_infill_speed": "60", + "support_interface_speed": "30", + "support_speed": "60", + "top_surface_acceleration": "1000", + "top_surface_speed": "30", + "travel_speed": "200", + "compatible_printers": [ + "Elegoo Neptune 3 Pro 0.4 nozzle" + ], + "renamed_from": "0.20mm Standard @Elegoo Neptune3;0.20mm Standard @Elegoo Neptune3Pro" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.20mm Standard @Elegoo Neptune3Max.json b/resources/profiles/Elegoo/process/EN3SERIES/0.20mm Standard @Elegoo Neptune3Max.json deleted file mode 100644 index 5d96e2601c1..00000000000 --- a/resources/profiles/Elegoo/process/EN3SERIES/0.20mm Standard @Elegoo Neptune3Max.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.20mm Standard @Elegoo Neptune3Max", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.2", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.2", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 3 Max 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.20mm Standard @Elegoo Neptune3Plus.json b/resources/profiles/Elegoo/process/EN3SERIES/0.20mm Standard @Elegoo Neptune3Plus.json deleted file mode 100644 index f72c90339a4..00000000000 --- a/resources/profiles/Elegoo/process/EN3SERIES/0.20mm Standard @Elegoo Neptune3Plus.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.20mm Standard @Elegoo Neptune3Plus", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.2", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.2", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 3 Plus 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.20mm Standard @Elegoo Neptune3Pro.json b/resources/profiles/Elegoo/process/EN3SERIES/0.20mm Standard @Elegoo Neptune3Pro.json deleted file mode 100644 index a8c85302ab3..00000000000 --- a/resources/profiles/Elegoo/process/EN3SERIES/0.20mm Standard @Elegoo Neptune3Pro.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.20mm Standard @Elegoo Neptune3Pro", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.2", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.2", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 3 Pro 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.20mm Strength @Elegoo N3Max 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.20mm Strength @Elegoo N3Max 0.4 nozzle.json new file mode 100644 index 00000000000..f869f050a9a --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.20mm Strength @Elegoo N3Max 0.4 nozzle.json @@ -0,0 +1,9 @@ +{ + "from": "system", + "inherits": "0.20mm Standard @Elegoo N3Max 0.4 nozzle", + "name": "0.20mm Strength @Elegoo N3Max 0.4 nozzle", + "wall_sequence": "inner-outer-inner wall", + "reduce_crossing_wall": "1", + "wall_loops": "6", + "instantiation": "true" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.20mm Strength @Elegoo N3Plus 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.20mm Strength @Elegoo N3Plus 0.4 nozzle.json new file mode 100644 index 00000000000..543069d4904 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.20mm Strength @Elegoo N3Plus 0.4 nozzle.json @@ -0,0 +1,9 @@ +{ + "from": "system", + "inherits": "0.20mm Standard @Elegoo N3Plus 0.4 nozzle", + "name": "0.20mm Strength @Elegoo N3Plus 0.4 nozzle", + "wall_sequence": "inner-outer-inner wall", + "reduce_crossing_wall": "1", + "wall_loops": "6", + "instantiation": "true" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.20mm Strength @Elegoo N3Pro 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.20mm Strength @Elegoo N3Pro 0.4 nozzle.json new file mode 100644 index 00000000000..877f99a2801 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.20mm Strength @Elegoo N3Pro 0.4 nozzle.json @@ -0,0 +1,9 @@ +{ + "from": "system", + "inherits": "0.20mm Standard @Elegoo N3Pro 0.4 nozzle", + "name": "0.20mm Strength @Elegoo N3Pro 0.4 nozzle", + "wall_sequence": "inner-outer-inner wall", + "reduce_crossing_wall": "1", + "wall_loops": "6", + "instantiation": "true" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.24mm Draft @Elegoo N3Max 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.24mm Draft @Elegoo N3Max 0.4 nozzle.json new file mode 100644 index 00000000000..6b7a7c38817 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.24mm Draft @Elegoo N3Max 0.4 nozzle.json @@ -0,0 +1,8 @@ +{ + "from": "system", + "inherits": "0.20mm Standard @Elegoo N3Max 0.4 nozzle", + "name": "0.24mm Draft @Elegoo N3Max 0.4 nozzle", + "layer_height": "0.24", + "instantiation": "true", + "renamed_from": "0.24mm Draft @Elegoo Neptune3Max" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.24mm Draft @Elegoo N3Plus 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.24mm Draft @Elegoo N3Plus 0.4 nozzle.json new file mode 100644 index 00000000000..613539c88b2 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.24mm Draft @Elegoo N3Plus 0.4 nozzle.json @@ -0,0 +1,8 @@ +{ + "from": "system", + "inherits": "0.20mm Standard @Elegoo N3Plus 0.4 nozzle", + "name": "0.24mm Draft @Elegoo N3Plus 0.4 nozzle", + "layer_height": "0.24", + "instantiation": "true", + "renamed_from": "0.24mm Draft @Elegoo Neptune3Plus" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.24mm Draft @Elegoo N3Pro 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.24mm Draft @Elegoo N3Pro 0.4 nozzle.json new file mode 100644 index 00000000000..f4c5a3a6d36 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.24mm Draft @Elegoo N3Pro 0.4 nozzle.json @@ -0,0 +1,8 @@ +{ + "from": "system", + "inherits": "0.20mm Standard @Elegoo N3Pro 0.4 nozzle", + "name": "0.24mm Draft @Elegoo N3Pro 0.4 nozzle", + "layer_height": "0.24", + "instantiation": "true", + "renamed_from": "0.24mm Draft @Elegoo Neptune3;0.24mm Draft @Elegoo Neptune3Pro" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.24mm Draft @Elegoo Neptune3Max.json b/resources/profiles/Elegoo/process/EN3SERIES/0.24mm Draft @Elegoo Neptune3Max.json deleted file mode 100644 index 5db93a7520d..00000000000 --- a/resources/profiles/Elegoo/process/EN3SERIES/0.24mm Draft @Elegoo Neptune3Max.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.24mm Draft @Elegoo Neptune3Max", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.24", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.24", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.45", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 3 Max 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.24mm Draft @Elegoo Neptune3Plus.json b/resources/profiles/Elegoo/process/EN3SERIES/0.24mm Draft @Elegoo Neptune3Plus.json deleted file mode 100644 index dd348699397..00000000000 --- a/resources/profiles/Elegoo/process/EN3SERIES/0.24mm Draft @Elegoo Neptune3Plus.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.24mm Draft @Elegoo Neptune3Plus", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.24", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.24", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.45", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 3 Plus 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.24mm Draft @Elegoo Neptune3Pro.json b/resources/profiles/Elegoo/process/EN3SERIES/0.24mm Draft @Elegoo Neptune3Pro.json deleted file mode 100644 index f4376432980..00000000000 --- a/resources/profiles/Elegoo/process/EN3SERIES/0.24mm Draft @Elegoo Neptune3Pro.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.24mm Draft @Elegoo Neptune3Pro", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.24", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.24", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.45", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 3 Pro 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.24mm Fine @Elegoo N3Max 0.8 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.24mm Fine @Elegoo N3Max 0.8 nozzle.json new file mode 100644 index 00000000000..7d64bfbe5f3 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.24mm Fine @Elegoo N3Max 0.8 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.24mm Fine @Elegoo N3Max 0.8 nozzle", + "inherits": "0.40mm Standard @Elegoo N3Max 0.8 nozzle", + "layer_height": "0.24", + "settings_id": "PEN3Max08024", + "instantiation": "true" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.24mm Fine @Elegoo N3Plus 0.8 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.24mm Fine @Elegoo N3Plus 0.8 nozzle.json new file mode 100644 index 00000000000..b5f15fefe2d --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.24mm Fine @Elegoo N3Plus 0.8 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.24mm Fine @Elegoo N3Plus 0.8 nozzle", + "inherits": "0.40mm Standard @Elegoo N3Plus 0.8 nozzle", + "layer_height": "0.24", + "settings_id": "PEN3Plus08024", + "instantiation": "true" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.24mm Fine @Elegoo N3Pro 0.8 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.24mm Fine @Elegoo N3Pro 0.8 nozzle.json new file mode 100644 index 00000000000..d71a581533b --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.24mm Fine @Elegoo N3Pro 0.8 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.24mm Fine @Elegoo N3Pro 0.8 nozzle", + "inherits": "0.40mm Standard @Elegoo N3Pro 0.8 nozzle", + "instantiation": "true", + "layer_height": "0.24", + "settings_id": "PEN3Pro08024" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.24mm Optimal @Elegoo N3Max 0.6 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.24mm Optimal @Elegoo N3Max 0.6 nozzle.json new file mode 100644 index 00000000000..82e9b869536 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.24mm Optimal @Elegoo N3Max 0.6 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.24mm Optimal @Elegoo N3Max 0.6 nozzle", + "inherits": "0.30mm Standard @Elegoo N3Max 0.6 nozzle", + "layer_height": "0.24", + "settings_id": "PEN3Max06024", + "instantiation": "true" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.24mm Optimal @Elegoo N3Plus 0.6 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.24mm Optimal @Elegoo N3Plus 0.6 nozzle.json new file mode 100644 index 00000000000..91764eee758 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.24mm Optimal @Elegoo N3Plus 0.6 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.24mm Optimal @Elegoo N3Plus 0.6 nozzle", + "inherits": "0.30mm Standard @Elegoo N3Plus 0.6 nozzle", + "layer_height": "0.24", + "settings_id": "PEN3Plus06024", + "instantiation": "true" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.24mm Optimal @Elegoo N3Pro 0.6 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.24mm Optimal @Elegoo N3Pro 0.6 nozzle.json new file mode 100644 index 00000000000..8e437c84b79 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.24mm Optimal @Elegoo N3Pro 0.6 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.24mm Optimal @Elegoo N3Pro 0.6 nozzle", + "inherits": "0.30mm Standard @Elegoo N3Pro 0.6 nozzle", + "layer_height": "0.24", + "settings_id": "PEN3Pro06024", + "instantiation": "true" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.28mm Extra Draft @Elegoo N3Max 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.28mm Extra Draft @Elegoo N3Max 0.4 nozzle.json new file mode 100644 index 00000000000..1f32538a9fb --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.28mm Extra Draft @Elegoo N3Max 0.4 nozzle.json @@ -0,0 +1,8 @@ +{ + "from": "system", + "inherits": "0.20mm Standard @Elegoo N3Max 0.4 nozzle", + "name": "0.28mm Extra Draft @Elegoo N3Max 0.4 nozzle", + "layer_height": "0.28", + "instantiation": "true", + "renamed_from": "0.28mm Extra Draft @Elegoo Neptune3Max" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.28mm Extra Draft @Elegoo N3Plus 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.28mm Extra Draft @Elegoo N3Plus 0.4 nozzle.json new file mode 100644 index 00000000000..1dcf6c15b01 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.28mm Extra Draft @Elegoo N3Plus 0.4 nozzle.json @@ -0,0 +1,8 @@ +{ + "from": "system", + "inherits": "0.20mm Standard @Elegoo N3Plus 0.4 nozzle", + "name": "0.28mm Extra Draft @Elegoo N3Plus 0.4 nozzle", + "layer_height": "0.28", + "instantiation": "true", + "renamed_from": "0.28mm Extra Draft @Elegoo Neptune3Plus" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.28mm Extra Draft @Elegoo N3Pro 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.28mm Extra Draft @Elegoo N3Pro 0.4 nozzle.json new file mode 100644 index 00000000000..09762e30606 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.28mm Extra Draft @Elegoo N3Pro 0.4 nozzle.json @@ -0,0 +1,8 @@ +{ + "from": "system", + "inherits": "0.20mm Standard @Elegoo N3Pro 0.4 nozzle", + "name": "0.28mm Extra Draft @Elegoo N3Pro 0.4 nozzle", + "layer_height": "0.28", + "instantiation": "true", + "renamed_from": "0.28mm Extra Draft @Elegoo Neptune3;0.28mm Extra Draft @Elegoo Neptune3Pro" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.28mm Extra Draft @Elegoo Neptune3Max.json b/resources/profiles/Elegoo/process/EN3SERIES/0.28mm Extra Draft @Elegoo Neptune3Max.json deleted file mode 100644 index ae1ef4dd58e..00000000000 --- a/resources/profiles/Elegoo/process/EN3SERIES/0.28mm Extra Draft @Elegoo Neptune3Max.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.28mm Extra Draft @Elegoo Neptune3Max", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.28", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.28", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.45", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 3 Max 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.28mm Extra Draft @Elegoo Neptune3Plus.json b/resources/profiles/Elegoo/process/EN3SERIES/0.28mm Extra Draft @Elegoo Neptune3Plus.json deleted file mode 100644 index 6f3f54f8f24..00000000000 --- a/resources/profiles/Elegoo/process/EN3SERIES/0.28mm Extra Draft @Elegoo Neptune3Plus.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.28mm Extra Draft @Elegoo Neptune3Plus", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.28", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.28", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.45", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 3 Plus 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.28mm Extra Draft @Elegoo Neptune3Pro.json b/resources/profiles/Elegoo/process/EN3SERIES/0.28mm Extra Draft @Elegoo Neptune3Pro.json deleted file mode 100644 index 7680188d072..00000000000 --- a/resources/profiles/Elegoo/process/EN3SERIES/0.28mm Extra Draft @Elegoo Neptune3Pro.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "type": "process", - "name": "0.28mm Extra Draft @Elegoo Neptune3Pro", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.28", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", - "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.28", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.45", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 3 Pro 0.4 nozzle" - ] -} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.30mm Fine @Elegoo N3Max 1.0 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.30mm Fine @Elegoo N3Max 1.0 nozzle.json new file mode 100644 index 00000000000..05baa094b91 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.30mm Fine @Elegoo N3Max 1.0 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.30mm Fine @Elegoo N3Max 1.0 nozzle", + "inherits": "0.50mm Standard @Elegoo N3Max 1.0 nozzle", + "layer_height": "0.3", + "settings_id": "PEN3Max10030", + "instantiation": "true" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.30mm Fine @Elegoo N3Plus 1.0 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.30mm Fine @Elegoo N3Plus 1.0 nozzle.json new file mode 100644 index 00000000000..1909af5d295 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.30mm Fine @Elegoo N3Plus 1.0 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.30mm Fine @Elegoo N3Plus 1.0 nozzle", + "inherits": "0.50mm Standard @Elegoo N3Plus 1.0 nozzle", + "layer_height": "0.3", + "settings_id": "PEN3Plus10030", + "instantiation": "true" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.30mm Fine @Elegoo N3Pro 1.0 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.30mm Fine @Elegoo N3Pro 1.0 nozzle.json new file mode 100644 index 00000000000..7b07fc4756f --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.30mm Fine @Elegoo N3Pro 1.0 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.30mm Fine @Elegoo N3Pro 1.0 nozzle", + "inherits": "0.50mm Standard @Elegoo N3Pro 1.0 nozzle", + "layer_height": "0.3", + "settings_id": "PEN3Pro10030", + "instantiation": "true" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.30mm Standard @Elegoo N3Max 0.6 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.30mm Standard @Elegoo N3Max 0.6 nozzle.json new file mode 100644 index 00000000000..c2db84bf684 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.30mm Standard @Elegoo N3Max 0.6 nozzle.json @@ -0,0 +1,30 @@ +{ + "type": "process", + "name": "0.30mm Standard @Elegoo N3Max 0.6 nozzle", + "inherits": "fdm_process_elegoo_06030", + "from": "system", + "setting_id": "PEN3Max06030", + "instantiation": "true", + "filename_format": "EN3Max_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "gap_infill_speed": "30", + "initial_layer_infill_speed": "50", + "initial_layer_speed": "30", + "inner_wall_speed": "60", + "internal_bridge_speed": "100%", + "internal_solid_infill_speed": "60", + "outer_wall_acceleration": "500", + "outer_wall_speed": "30", + "overhang_2_4_speed": "30", + "overhang_3_4_speed": "20", + "skirt_speed": "30", + "sparse_infill_speed": "60", + "support_interface_speed": "30", + "support_speed": "60", + "top_surface_speed": "30", + "default_acceleration": "700", + "top_surface_acceleration": "700", + "travel_speed": "150", + "compatible_printers": [ + "Elegoo Neptune 3 Max 0.6 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.30mm Standard @Elegoo N3Plus 0.6 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.30mm Standard @Elegoo N3Plus 0.6 nozzle.json new file mode 100644 index 00000000000..efc781e54b1 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.30mm Standard @Elegoo N3Plus 0.6 nozzle.json @@ -0,0 +1,30 @@ +{ + "type": "process", + "name": "0.30mm Standard @Elegoo N3Plus 0.6 nozzle", + "inherits": "fdm_process_elegoo_06030", + "from": "system", + "setting_id": "PEN3Plus06030", + "instantiation": "true", + "filename_format": "EN3Plus_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "default_acceleration": "1000", + "gap_infill_speed": "30", + "initial_layer_infill_speed": "50", + "initial_layer_speed": "30", + "inner_wall_speed": "60", + "internal_bridge_speed": "100%", + "internal_solid_infill_speed": "60", + "outer_wall_acceleration": "500", + "outer_wall_speed": "30", + "overhang_2_4_speed": "30", + "overhang_3_4_speed": "20", + "skirt_speed": "30", + "sparse_infill_speed": "60", + "support_interface_speed": "30", + "support_speed": "60", + "top_surface_acceleration": "1000", + "top_surface_speed": "30", + "travel_speed": "200", + "compatible_printers": [ + "Elegoo Neptune 3 Plus 0.6 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.30mm Standard @Elegoo N3Pro 0.6 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.30mm Standard @Elegoo N3Pro 0.6 nozzle.json new file mode 100644 index 00000000000..8ad5630d5f8 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.30mm Standard @Elegoo N3Pro 0.6 nozzle.json @@ -0,0 +1,30 @@ +{ + "type": "process", + "name": "0.30mm Standard @Elegoo N3Pro 0.6 nozzle", + "inherits": "fdm_process_elegoo_06030", + "from": "system", + "setting_id": "PEN3Pro06030", + "instantiation": "true", + "filename_format": "EN3Pro_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "default_acceleration": "1000", + "gap_infill_speed": "30", + "initial_layer_infill_speed": "50", + "initial_layer_speed": "30", + "inner_wall_speed": "60", + "internal_bridge_speed": "100%", + "internal_solid_infill_speed": "60", + "outer_wall_acceleration": "500", + "outer_wall_speed": "30", + "overhang_2_4_speed": "30", + "overhang_3_4_speed": "20", + "skirt_speed": "30", + "sparse_infill_speed": "60", + "support_interface_speed": "30", + "support_speed": "60", + "top_surface_acceleration": "1000", + "top_surface_speed": "30", + "travel_speed": "200", + "compatible_printers": [ + "Elegoo Neptune 3 Pro 0.6 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.32mm Optimal @Elegoo N3Max 0.8 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.32mm Optimal @Elegoo N3Max 0.8 nozzle.json new file mode 100644 index 00000000000..2726be4265b --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.32mm Optimal @Elegoo N3Max 0.8 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.32mm Optimal @Elegoo N3Max 0.8 nozzle", + "inherits": "0.40mm Standard @Elegoo N3Max 0.8 nozzle", + "layer_height": "0.32", + "settings_id": "PEN3Max08032", + "instantiation": "true" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.32mm Optimal @Elegoo N3Plus 0.8 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.32mm Optimal @Elegoo N3Plus 0.8 nozzle.json new file mode 100644 index 00000000000..f1ac290c8d5 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.32mm Optimal @Elegoo N3Plus 0.8 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.32mm Optimal @Elegoo N3Plus 0.8 nozzle", + "inherits": "0.40mm Standard @Elegoo N3Plus 0.8 nozzle", + "layer_height": "0.32", + "settings_id": "PEN3Plus08032", + "instantiation": "true" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.32mm Optimal @Elegoo N3Pro 0.8 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.32mm Optimal @Elegoo N3Pro 0.8 nozzle.json new file mode 100644 index 00000000000..f3ebff14672 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.32mm Optimal @Elegoo N3Pro 0.8 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.32mm Optimal @Elegoo N3Pro 0.8 nozzle", + "inherits": "0.40mm Standard @Elegoo N3Pro 0.8 nozzle", + "layer_height": "0.32", + "settings_id": "PEN3Pro08032", + "instantiation": "true" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.36mm Draft @Elegoo N3Max 0.6 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.36mm Draft @Elegoo N3Max 0.6 nozzle.json new file mode 100644 index 00000000000..032c50a9845 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.36mm Draft @Elegoo N3Max 0.6 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.36mm Draft @Elegoo N3Max 0.6 nozzle", + "inherits": "0.30mm Standard @Elegoo N3Max 0.6 nozzle", + "layer_height": "0.36", + "settings_id": "PEN3Max06036", + "instantiation": "true" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.36mm Draft @Elegoo N3Plus 0.6 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.36mm Draft @Elegoo N3Plus 0.6 nozzle.json new file mode 100644 index 00000000000..f120c0d5d17 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.36mm Draft @Elegoo N3Plus 0.6 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.36mm Draft @Elegoo N3Plus 0.6 nozzle", + "inherits": "0.30mm Standard @Elegoo N3Plus 0.6 nozzle", + "layer_height": "0.36", + "settings_id": "PEN3Plus06036", + "instantiation": "true" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.36mm Draft @Elegoo N3Pro 0.6 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.36mm Draft @Elegoo N3Pro 0.6 nozzle.json new file mode 100644 index 00000000000..e39646456fd --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.36mm Draft @Elegoo N3Pro 0.6 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.36mm Draft @Elegoo N3Pro 0.6 nozzle", + "inherits": "0.30mm Standard @Elegoo N3Pro 0.6 nozzle", + "layer_height": "0.36", + "settings_id": "PEN3Pro06036", + "instantiation": "true" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.40mm Optimal @Elegoo N3Max 1.0 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.40mm Optimal @Elegoo N3Max 1.0 nozzle.json new file mode 100644 index 00000000000..5fb6a642393 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.40mm Optimal @Elegoo N3Max 1.0 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.40mm Optimal @Elegoo N3Max 1.0 nozzle", + "inherits": "0.50mm Standard @Elegoo N3Max 1.0 nozzle", + "layer_height": "0.4", + "settings_id": "PEN3Max10040", + "instantiation": "true" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.40mm Optimal @Elegoo N3Plus 1.0 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.40mm Optimal @Elegoo N3Plus 1.0 nozzle.json new file mode 100644 index 00000000000..8fa84c26599 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.40mm Optimal @Elegoo N3Plus 1.0 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.40mm Optimal @Elegoo N3Plus 1.0 nozzle", + "inherits": "0.50mm Standard @Elegoo N3Plus 1.0 nozzle", + "layer_height": "0.4", + "settings_id": "PEN3Plus10040", + "instantiation": "true" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.40mm Optimal @Elegoo N3Pro 1.0 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.40mm Optimal @Elegoo N3Pro 1.0 nozzle.json new file mode 100644 index 00000000000..f4f205ca064 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.40mm Optimal @Elegoo N3Pro 1.0 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.40mm Optimal @Elegoo N3Pro 1.0 nozzle", + "inherits": "0.50mm Standard @Elegoo N3Pro 1.0 nozzle", + "layer_height": "0.4", + "settings_id": "PEN3Pro10040", + "instantiation": "true" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.40mm Standard @Elegoo N3Max 0.8 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.40mm Standard @Elegoo N3Max 0.8 nozzle.json new file mode 100644 index 00000000000..c2004e9d83c --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.40mm Standard @Elegoo N3Max 0.8 nozzle.json @@ -0,0 +1,30 @@ +{ + "type": "process", + "name": "0.40mm Standard @Elegoo N3Max 0.8 nozzle", + "inherits": "fdm_process_elegoo_08040", + "from": "system", + "setting_id": "PEN3Max08040", + "instantiation": "true", + "filename_format": "EN3Max_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "gap_infill_speed": "30", + "initial_layer_infill_speed": "50", + "initial_layer_speed": "30", + "inner_wall_speed": "60", + "internal_bridge_speed": "100%", + "internal_solid_infill_speed": "60", + "outer_wall_acceleration": "500", + "outer_wall_speed": "30", + "overhang_2_4_speed": "30", + "overhang_3_4_speed": "20", + "skirt_speed": "30", + "sparse_infill_speed": "60", + "support_interface_speed": "30", + "support_speed": "60", + "top_surface_speed": "30", + "default_acceleration": "700", + "top_surface_acceleration": "700", + "travel_speed": "150", + "compatible_printers": [ + "Elegoo Neptune 3 Max 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.40mm Standard @Elegoo N3Plus 0.8 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.40mm Standard @Elegoo N3Plus 0.8 nozzle.json new file mode 100644 index 00000000000..9b919d09a6f --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.40mm Standard @Elegoo N3Plus 0.8 nozzle.json @@ -0,0 +1,29 @@ +{ + "type": "process", + "name": "0.40mm Standard @Elegoo N3Plus 0.8 nozzle", + "inherits": "fdm_process_elegoo_08040", + "from": "system", + "setting_id": "PEN3Plus08040", + "instantiation": "true", + "filename_format": "EN3Plus_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "default_acceleration": "1000", + "gap_infill_speed": "30", + "initial_layer_infill_speed": "50", + "initial_layer_speed": "30", + "inner_wall_speed": "60", + "internal_bridge_speed": "100%", + "internal_solid_infill_speed": "60", + "outer_wall_acceleration": "500", + "outer_wall_speed": "30", + "overhang_2_4_speed": "30", + "overhang_3_4_speed": "20", + "skirt_speed": "30", + "sparse_infill_speed": "60", + "support_interface_speed": "30", + "support_speed": "60", + "top_surface_acceleration": "1000", + "top_surface_speed": "30", + "compatible_printers": [ + "Elegoo Neptune 3 Plus 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.40mm Standard @Elegoo N3Pro 0.8 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.40mm Standard @Elegoo N3Pro 0.8 nozzle.json new file mode 100644 index 00000000000..3d91eaa5d7b --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.40mm Standard @Elegoo N3Pro 0.8 nozzle.json @@ -0,0 +1,29 @@ +{ + "type": "process", + "name": "0.40mm Standard @Elegoo N3Pro 0.8 nozzle", + "inherits": "fdm_process_elegoo_08040", + "from": "system", + "setting_id": "PEN3Pro08040", + "instantiation": "true", + "filename_format": "EN3Pro_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "default_acceleration": "1000", + "gap_infill_speed": "30", + "initial_layer_infill_speed": "50", + "initial_layer_speed": "30", + "inner_wall_speed": "60", + "internal_bridge_speed": "100%", + "internal_solid_infill_speed": "60", + "outer_wall_acceleration": "500", + "outer_wall_speed": "30", + "overhang_2_4_speed": "30", + "overhang_3_4_speed": "20", + "skirt_speed": "30", + "sparse_infill_speed": "60", + "support_interface_speed": "30", + "support_speed": "60", + "top_surface_acceleration": "1000", + "top_surface_speed": "30", + "compatible_printers": [ + "Elegoo Neptune 3 Pro 0.8 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.42mm Extra Draft @Elegoo N3Max 0.6 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.42mm Extra Draft @Elegoo N3Max 0.6 nozzle.json new file mode 100644 index 00000000000..81870c3375d --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.42mm Extra Draft @Elegoo N3Max 0.6 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.42mm Extra Draft @Elegoo N3Max 0.6 nozzle", + "inherits": "0.30mm Standard @Elegoo N3Max 0.6 nozzle", + "layer_height": "0.42", + "settings_id": "PEN3Max06042", + "instantiation": "true" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.42mm Extra Draft @Elegoo N3Plus 0.6 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.42mm Extra Draft @Elegoo N3Plus 0.6 nozzle.json new file mode 100644 index 00000000000..8ea5cec54a3 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.42mm Extra Draft @Elegoo N3Plus 0.6 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.42mm Extra Draft @Elegoo N3Plus 0.6 nozzle", + "inherits": "0.30mm Standard @Elegoo N3Plus 0.6 nozzle", + "layer_height": "0.42", + "settings_id": "PEN3Plus06042", + "instantiation": "true" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.42mm Extra Draft @Elegoo N3Pro 0.6 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.42mm Extra Draft @Elegoo N3Pro 0.6 nozzle.json new file mode 100644 index 00000000000..d7ba07bc1af --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.42mm Extra Draft @Elegoo N3Pro 0.6 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.42mm Extra Draft @Elegoo N3Pro 0.6 nozzle", + "inherits": "0.30mm Standard @Elegoo N3Pro 0.6 nozzle", + "layer_height": "0.42", + "settings_id": "PEN3Pro06042", + "instantiation": "true" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.48mm Draft @Elegoo N3Max 0.8 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.48mm Draft @Elegoo N3Max 0.8 nozzle.json new file mode 100644 index 00000000000..d571b95a994 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.48mm Draft @Elegoo N3Max 0.8 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.48mm Draft @Elegoo N3Max 0.8 nozzle", + "inherits": "0.40mm Standard @Elegoo N3Max 0.8 nozzle", + "layer_height": "0.48", + "settings_id": "PEN3Max08048", + "instantiation": "true" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.48mm Draft @Elegoo N3Plus 0.8 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.48mm Draft @Elegoo N3Plus 0.8 nozzle.json new file mode 100644 index 00000000000..39032c88044 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.48mm Draft @Elegoo N3Plus 0.8 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.48mm Draft @Elegoo N3Plus 0.8 nozzle", + "inherits": "0.40mm Standard @Elegoo N3Plus 0.8 nozzle", + "layer_height": "0.48", + "settings_id": "PEN3Plus08048", + "instantiation": "true" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.48mm Draft @Elegoo N3Pro 0.8 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.48mm Draft @Elegoo N3Pro 0.8 nozzle.json new file mode 100644 index 00000000000..ff7d45f366e --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.48mm Draft @Elegoo N3Pro 0.8 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.48mm Draft @Elegoo N3Pro 0.8 nozzle", + "inherits": "0.40mm Standard @Elegoo N3Pro 0.8 nozzle", + "layer_height": "0.48", + "settings_id": "PEN3Pro08048", + "instantiation": "true" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.50mm Standard @Elegoo N3Max 1.0 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.50mm Standard @Elegoo N3Max 1.0 nozzle.json new file mode 100644 index 00000000000..922578180e5 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.50mm Standard @Elegoo N3Max 1.0 nozzle.json @@ -0,0 +1,30 @@ +{ + "type": "process", + "name": "0.50mm Standard @Elegoo N3Max 1.0 nozzle", + "inherits": "fdm_process_elegoo_10050", + "from": "system", + "setting_id": "PEN3Max10050", + "instantiation": "true", + "filename_format": "EN3Max_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "gap_infill_speed": "30", + "initial_layer_infill_speed": "50", + "initial_layer_speed": "30", + "inner_wall_speed": "60", + "internal_bridge_speed": "100%", + "internal_solid_infill_speed": "60", + "outer_wall_acceleration": "500", + "outer_wall_speed": "30", + "overhang_2_4_speed": "30", + "overhang_3_4_speed": "20", + "skirt_speed": "30", + "sparse_infill_speed": "60", + "support_interface_speed": "30", + "support_speed": "60", + "top_surface_speed": "30", + "default_acceleration": "700", + "top_surface_acceleration": "700", + "travel_speed": "150", + "compatible_printers": [ + "Elegoo Neptune 3 Max 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.50mm Standard @Elegoo N3Plus 1.0 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.50mm Standard @Elegoo N3Plus 1.0 nozzle.json new file mode 100644 index 00000000000..f5fd1c19278 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.50mm Standard @Elegoo N3Plus 1.0 nozzle.json @@ -0,0 +1,30 @@ +{ + "type": "process", + "name": "0.50mm Standard @Elegoo N3Plus 1.0 nozzle", + "inherits": "fdm_process_elegoo_10050", + "from": "system", + "setting_id": "PEN3Plus10050", + "instantiation": "true", + "filename_format": "EN3Plus_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "default_acceleration": "1000", + "gap_infill_speed": "30", + "initial_layer_infill_speed": "50", + "initial_layer_speed": "30", + "inner_wall_speed": "60", + "internal_bridge_speed": "100%", + "internal_solid_infill_speed": "60", + "outer_wall_acceleration": "500", + "outer_wall_speed": "30", + "overhang_2_4_speed": "30", + "overhang_3_4_speed": "20", + "skirt_speed": "30", + "sparse_infill_speed": "60", + "support_interface_speed": "30", + "support_speed": "60", + "top_surface_acceleration": "1000", + "top_surface_speed": "30", + "travel_speed": "200", + "compatible_printers": [ + "Elegoo Neptune 3 Plus 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.50mm Standard @Elegoo N3Pro 1.0 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.50mm Standard @Elegoo N3Pro 1.0 nozzle.json new file mode 100644 index 00000000000..7e296aa7243 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.50mm Standard @Elegoo N3Pro 1.0 nozzle.json @@ -0,0 +1,30 @@ +{ + "type": "process", + "name": "0.50mm Standard @Elegoo N3Pro 1.0 nozzle", + "inherits": "fdm_process_elegoo_10050", + "from": "system", + "setting_id": "PEN3Pro10050", + "instantiation": "true", + "filename_format": "EN3Pro_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "default_acceleration": "1000", + "gap_infill_speed": "30", + "initial_layer_infill_speed": "50", + "initial_layer_speed": "30", + "inner_wall_speed": "60", + "internal_bridge_speed": "100%", + "internal_solid_infill_speed": "60", + "outer_wall_acceleration": "500", + "outer_wall_speed": "30", + "overhang_2_4_speed": "30", + "overhang_3_4_speed": "20", + "skirt_speed": "30", + "sparse_infill_speed": "60", + "support_interface_speed": "30", + "support_speed": "60", + "top_surface_acceleration": "1000", + "top_surface_speed": "30", + "travel_speed": "200", + "compatible_printers": [ + "Elegoo Neptune 3 Pro 1.0 nozzle" + ] +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.60mm Draft @Elegoo N3Max 1.0 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.60mm Draft @Elegoo N3Max 1.0 nozzle.json new file mode 100644 index 00000000000..829278f87c3 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.60mm Draft @Elegoo N3Max 1.0 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.60mm Draft @Elegoo N3Max 1.0 nozzle", + "inherits": "0.50mm Standard @Elegoo N3Max 1.0 nozzle", + "layer_height": "0.6", + "settings_id": "PEN3Max10060", + "instantiation": "true" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.60mm Draft @Elegoo N3Plus 1.0 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.60mm Draft @Elegoo N3Plus 1.0 nozzle.json new file mode 100644 index 00000000000..1b7d57401ae --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.60mm Draft @Elegoo N3Plus 1.0 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.60mm Draft @Elegoo N3Plus 1.0 nozzle", + "inherits": "0.50mm Standard @Elegoo N3Plus 1.0 nozzle", + "layer_height": "0.6", + "settings_id": "PEN3Plus10060", + "instantiation": "true" +} diff --git a/resources/profiles/Elegoo/process/EN3SERIES/0.60mm Draft @Elegoo N3Pro 1.0 nozzle.json b/resources/profiles/Elegoo/process/EN3SERIES/0.60mm Draft @Elegoo N3Pro 1.0 nozzle.json new file mode 100644 index 00000000000..9fb7fd2514d --- /dev/null +++ b/resources/profiles/Elegoo/process/EN3SERIES/0.60mm Draft @Elegoo N3Pro 1.0 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.60mm Draft @Elegoo N3Pro 1.0 nozzle", + "inherits": "0.50mm Standard @Elegoo N3Pro 1.0 nozzle", + "layer_height": "0.6", + "settings_id": "PEN3Pro10060", + "instantiation": "true" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4 (0.2 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4 (0.2 nozzle).json deleted file mode 100644 index 03ef802c309..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4 (0.2 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.08mm Extra Fine @Elegoo Neptune4 (0.2 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.08", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "9", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.2", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.2", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.22", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.25", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.25", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.25", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.08", - "support_filament": "0", - "support_line_width": "0.2", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.2", - "top_shell_layers": "11", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 (0.2 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4 (0.4 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4 (0.4 nozzle).json deleted file mode 100644 index 9f51a415b8c..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4 (0.4 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.08mm Extra Fine @Elegoo Neptune4 (0.4 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.08", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "9", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.08", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "11", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 (0.4 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4 (0.6 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4 (0.6 nozzle).json deleted file mode 100644 index d59e81f0261..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4 (0.6 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.08mm Extra Fine @Elegoo Neptune4 (0.6 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.08", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "9", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.6", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.6", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.62", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.65", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.65", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.65", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.08", - "support_filament": "0", - "support_line_width": "0.55", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.56", - "top_shell_layers": "11", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 (0.6 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4 (0.8 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4 (0.8 nozzle).json deleted file mode 100644 index c587b3b314f..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4 (0.8 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.08mm Extra Fine @Elegoo Neptune4 (0.8 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.08", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "9", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.8", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.8", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.82", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.85", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.85", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.85", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.08", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.78", - "top_shell_layers": "11", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 (0.8 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4 Plus (0.2 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4 Plus (0.2 nozzle).json deleted file mode 100644 index 5ca57710075..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4 Plus (0.2 nozzle).json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "process", - "name": "0.08mm Extra Fine @Elegoo Neptune4 Plus (0.2 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.08", - "bottom_shell_layers": "9", - "outer_wall_line_width": "0.2", - "line_width": "0.2", - "initial_layer_line_width": "0.22", - "sparse_infill_line_width": "0.25", - "inner_wall_line_width": "0.25", - "internal_solid_infill_line_width": "0.25", - "resolution": "0.012", - "support_top_z_distance": "0.08", - "support_line_width": "0.2", - "support_interface_spacing": "0.2", - "top_surface_line_width": "0.2", - "top_shell_layers": "11", - "top_shell_thickness": "0.8", - "compatible_printers": [ - "Elegoo Neptune 4 Plus (0.2 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4 Plus (0.4 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4 Plus (0.4 nozzle).json deleted file mode 100644 index a781126edc8..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4 Plus (0.4 nozzle).json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "process", - "name": "0.08mm Extra Fine @Elegoo Neptune4 Plus (0.4 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.08", - "bottom_shell_layers": "9", - "outer_wall_line_width": "0.4", - "line_width": "0.4", - "initial_layer_line_width": "0.42", - "sparse_infill_line_width": "0.45", - "inner_wall_line_width": "0.45", - "internal_solid_infill_line_width": "0.45", - "resolution": "0.012", - "support_top_z_distance": "0.08", - "support_line_width": "0.38", - "support_interface_spacing": "0.2", - "top_surface_line_width": "0.38", - "top_shell_layers": "11", - "top_shell_thickness": "0.8", - "compatible_printers": [ - "Elegoo Neptune 4 Plus (0.4 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4 Plus (0.6 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4 Plus (0.6 nozzle).json deleted file mode 100644 index cfb478c246c..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4 Plus (0.6 nozzle).json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "process", - "name": "0.08mm Extra Fine @Elegoo Neptune4 Plus (0.6 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.08", - "bottom_shell_layers": "9", - "outer_wall_line_width": "0.6", - "line_width": "0.6", - "initial_layer_line_width": "0.62", - "sparse_infill_line_width": "0.65", - "inner_wall_line_width": "0.65", - "internal_solid_infill_line_width": "0.65", - "resolution": "0.012", - "support_top_z_distance": "0.08", - "support_line_width": "0.55", - "support_interface_spacing": "0.2", - "top_surface_line_width": "0.56", - "top_shell_layers": "11", - "top_shell_thickness": "0.8", - "compatible_printers": [ - "Elegoo Neptune 4 Plus (0.6 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4 Plus (0.8 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4 Plus (0.8 nozzle).json deleted file mode 100644 index 37d50fe1dd4..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4 Plus (0.8 nozzle).json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "process", - "name": "0.08mm Extra Fine @Elegoo Neptune4 Plus (0.8 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.08", - "bottom_shell_layers": "9", - "outer_wall_line_width": "0.8", - "line_width": "0.8", - "initial_layer_line_width": "0.82", - "sparse_infill_line_width": "0.85", - "inner_wall_line_width": "0.85", - "internal_solid_infill_line_width": "0.85", - "resolution": "0.012", - "support_top_z_distance": "0.08", - "support_line_width": "0.78", - "support_interface_spacing": "0.2", - "top_surface_line_width": "0.78", - "top_shell_layers": "11", - "top_shell_thickness": "0.8", - "compatible_printers": [ - "Elegoo Neptune 4 Plus (0.8 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4Max (0.2 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4Max (0.2 nozzle).json deleted file mode 100644 index 717d9bd08b0..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4Max (0.2 nozzle).json +++ /dev/null @@ -1,90 +0,0 @@ -{ - "type": "process", - "name": "0.08mm Extra Fine @Elegoo Neptune4Max (0.2 nozzle)", - "inherits": "fdm_process_neptune4max_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.08", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "9", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.2", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.2", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.22", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.25", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "travel_speed": "300", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.25", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.25", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.08", - "support_filament": "0", - "support_line_width": "0.2", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.2", - "top_shell_layers": "11", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Max (0.2 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4Max (0.4 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4Max (0.4 nozzle).json deleted file mode 100644 index 395309579f1..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4Max (0.4 nozzle).json +++ /dev/null @@ -1,90 +0,0 @@ -{ - "type": "process", - "name": "0.08mm Extra Fine @Elegoo Neptune4Max (0.4 nozzle)", - "inherits": "fdm_process_neptune4max_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.08", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "9", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "travel_speed": "300", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.08", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "11", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Max (0.4 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4Max (0.6 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4Max (0.6 nozzle).json deleted file mode 100644 index 117d5f1f6da..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4Max (0.6 nozzle).json +++ /dev/null @@ -1,90 +0,0 @@ -{ - "type": "process", - "name": "0.08mm Extra Fine @Elegoo Neptune4Max (0.6 nozzle)", - "inherits": "fdm_process_neptune4max_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.08", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "9", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.6", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.6", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.62", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.65", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "travel_speed": "300", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.65", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.65", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.08", - "support_filament": "0", - "support_line_width": "0.55", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.56", - "top_shell_layers": "11", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Max (0.6 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4Max (0.8 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4Max (0.8 nozzle).json deleted file mode 100644 index 12a7beca108..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4Max (0.8 nozzle).json +++ /dev/null @@ -1,90 +0,0 @@ -{ - "type": "process", - "name": "0.08mm Extra Fine @Elegoo Neptune4Max (0.8 nozzle)", - "inherits": "fdm_process_neptune4max_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.08", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "9", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.8", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.8", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.82", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.85", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "travel_speed": "300", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.85", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.85", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.08", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.78", - "top_shell_layers": "11", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Max (0.8 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4Pro (0.2 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4Pro (0.2 nozzle).json deleted file mode 100644 index 291c5e8521c..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4Pro (0.2 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.08mm Extra Fine @Elegoo Neptune4Pro (0.2 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.08", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "9", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.2", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.2", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.22", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.25", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.25", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.25", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.08", - "support_filament": "0", - "support_line_width": "0.2", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.2", - "top_shell_layers": "11", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Pro (0.2 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4Pro (0.4 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4Pro (0.4 nozzle).json deleted file mode 100644 index e1e831dd9b5..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4Pro (0.4 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.08mm Extra Fine @Elegoo Neptune4Pro (0.4 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.08", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "9", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.08", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "11", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Pro (0.4 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4Pro (0.6 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4Pro (0.6 nozzle).json deleted file mode 100644 index 5fa3c5dad28..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4Pro (0.6 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.08mm Extra Fine @Elegoo Neptune4Pro (0.6 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.08", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "9", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.6", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.6", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.62", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.65", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.65", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.65", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.08", - "support_filament": "0", - "support_line_width": "0.55", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.56", - "top_shell_layers": "11", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Pro (0.6 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4Pro (0.8 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4Pro (0.8 nozzle).json deleted file mode 100644 index 4c3534a1572..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Extra Fine @Elegoo Neptune4Pro (0.8 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.08mm Extra Fine @Elegoo Neptune4Pro (0.8 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.08", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "9", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.8", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.8", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.82", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.85", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.85", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.85", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.08", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.78", - "top_shell_layers": "11", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Pro (0.8 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Optimal @Elegoo N4 0.2 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Optimal @Elegoo N4 0.2 nozzle.json new file mode 100644 index 00000000000..d39591c28bc --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Optimal @Elegoo N4 0.2 nozzle.json @@ -0,0 +1,9 @@ +{ + "type": "process", + "name": "0.08mm Optimal @Elegoo N4 0.2 nozzle", + "inherits": "0.10mm Standard @Elegoo N4 0.2 nozzle", + "instantiation": "true", + "layer_height": "0.08", + "settings_id": "PEN402008", + "renamed_from": "0.08mm Extra Fine @Elegoo Neptune4 (0.2 nozzle);0.16mm Optimal @Elegoo Neptune4 (0.2 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Optimal @Elegoo N4Max 0.2 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Optimal @Elegoo N4Max 0.2 nozzle.json new file mode 100644 index 00000000000..162f7d7ad51 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Optimal @Elegoo N4Max 0.2 nozzle.json @@ -0,0 +1,9 @@ +{ + "type": "process", + "name": "0.08mm Optimal @Elegoo N4Max 0.2 nozzle", + "inherits": "0.10mm Standard @Elegoo N4Max 0.2 nozzle", + "instantiation": "true", + "layer_height": "0.08", + "settings_id": "PEN4Max02008", + "renamed_from": "0.08mm Extra Fine @Elegoo Neptune4Max (0.2 nozzle);0.16mm Optimal @Elegoo Neptune4Max (0.2 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Optimal @Elegoo N4Plus 0.2 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Optimal @Elegoo N4Plus 0.2 nozzle.json new file mode 100644 index 00000000000..faf500f9403 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Optimal @Elegoo N4Plus 0.2 nozzle.json @@ -0,0 +1,9 @@ +{ + "type": "process", + "name": "0.08mm Optimal @Elegoo N4Plus 0.2 nozzle", + "inherits": "0.10mm Standard @Elegoo N4Plus 0.2 nozzle", + "instantiation": "true", + "layer_height": "0.08", + "settings_id": "PEN4Plus02008", + "renamed_from": "0.08mm Extra Fine @Elegoo Neptune4 Plus (0.2 nozzle);0.16mm Optimal @Elegoo Neptune4 Plus (0.2 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Optimal @Elegoo N4Pro 0.2 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Optimal @Elegoo N4Pro 0.2 nozzle.json new file mode 100644 index 00000000000..d13921c5fd5 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.08mm Optimal @Elegoo N4Pro 0.2 nozzle.json @@ -0,0 +1,9 @@ +{ + "type": "process", + "name": "0.08mm Optimal @Elegoo N4Pro 0.2 nozzle", + "inherits": "0.10mm Standard @Elegoo N4Pro 0.2 nozzle", + "instantiation": "true", + "layer_height": "0.08", + "settings_id": "PEN4Pro02008", + "renamed_from": "0.08mm Extra Fine @Elegoo Neptune4Pro (0.2 nozzle);0.16mm Optimal @Elegoo Neptune4Pro (0.2 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.10mm Standard @Elegoo N4 0.2 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.10mm Standard @Elegoo N4 0.2 nozzle.json new file mode 100644 index 00000000000..723b1211a23 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.10mm Standard @Elegoo N4 0.2 nozzle.json @@ -0,0 +1,17 @@ +{ + "type": "process", + "name": "0.10mm Standard @Elegoo N4 0.2 nozzle", + "inherits": "fdm_process_elegoo_02010", + "from": "system", + "setting_id": "PEN402010", + "instantiation": "true", + "filename_format": "EN4_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "elefant_foot_compensation": "0.15", + "compatible_printers": [ + "Elegoo Neptune 4 0.2 nozzle" + ], + "default_acceleration": "6000", + "min_width_top_surface": "50%", + "outer_wall_acceleration": "5000", + "renamed_from": "0.20mm Standard @Elegoo Neptune4 (0.2 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.10mm Standard @Elegoo N4Max 0.2 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.10mm Standard @Elegoo N4Max 0.2 nozzle.json new file mode 100644 index 00000000000..34c1eee4c52 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.10mm Standard @Elegoo N4Max 0.2 nozzle.json @@ -0,0 +1,17 @@ +{ + "type": "process", + "name": "0.10mm Standard @Elegoo N4Max 0.2 nozzle", + "inherits": "fdm_process_elegoo_02010", + "from": "system", + "setting_id": "PEN4Max02010", + "instantiation": "true", + "filename_format": "EN4Max_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "elefant_foot_compensation": "0.15", + "compatible_printers": [ + "Elegoo Neptune 4 Max 0.2 nozzle" + ], + "default_acceleration": "3000", + "min_width_top_surface": "50%", + "outer_wall_acceleration": "1500", + "renamed_from": "0.20mm Standard @Elegoo Neptune4Max (0.2 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.10mm Standard @Elegoo N4Plus 0.2 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.10mm Standard @Elegoo N4Plus 0.2 nozzle.json new file mode 100644 index 00000000000..49a0a1799b0 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.10mm Standard @Elegoo N4Plus 0.2 nozzle.json @@ -0,0 +1,17 @@ +{ + "type": "process", + "name": "0.10mm Standard @Elegoo N4Plus 0.2 nozzle", + "inherits": "fdm_process_elegoo_02010", + "from": "system", + "setting_id": "PEN4Plus02010", + "instantiation": "true", + "filename_format": "EN4Plus_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "elefant_foot_compensation": "0.15", + "compatible_printers": [ + "Elegoo Neptune 4 Plus 0.2 nozzle" + ], + "default_acceleration": "5000", + "min_width_top_surface": "50%", + "outer_wall_acceleration": "2500", + "renamed_from": "0.20mm Standard @Elegoo Neptune4 Plus (0.2 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.10mm Standard @Elegoo N4Pro 0.2 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.10mm Standard @Elegoo N4Pro 0.2 nozzle.json new file mode 100644 index 00000000000..d0bc1739748 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.10mm Standard @Elegoo N4Pro 0.2 nozzle.json @@ -0,0 +1,17 @@ +{ + "type": "process", + "name": "0.10mm Standard @Elegoo N4Pro 0.2 nozzle", + "inherits": "fdm_process_elegoo_02010", + "from": "system", + "setting_id": "PEN4Pro02010", + "instantiation": "true", + "filename_format": "EN4Pro_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "elefant_foot_compensation": "0.15", + "compatible_printers": [ + "Elegoo Neptune 4 Pro 0.2 nozzle" + ], + "default_acceleration": "6000", + "min_width_top_surface": "50%", + "outer_wall_acceleration": "5000", + "renamed_from": "0.20mm Standard @Elegoo Neptune4Pro (0.2 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Draft @Elegoo N4 0.2 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Draft @Elegoo N4 0.2 nozzle.json new file mode 100644 index 00000000000..92379888873 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Draft @Elegoo N4 0.2 nozzle.json @@ -0,0 +1,9 @@ +{ + "type": "process", + "name": "0.12mm Draft @Elegoo N4 0.2 nozzle", + "inherits": "0.10mm Standard @Elegoo N4 0.2 nozzle", + "instantiation": "true", + "layer_height": "0.12", + "settings_id": "PEN402012", + "renamed_from": "0.12mm Fine @Elegoo Neptune4 (0.2 nozzle);0.24mm Draft @Elegoo Neptune4 (0.2 nozzle);0.28mm Extra Draft @Elegoo Neptune4 (0.2 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Draft @Elegoo N4Max 0.2 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Draft @Elegoo N4Max 0.2 nozzle.json new file mode 100644 index 00000000000..b9ff0b2ffb1 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Draft @Elegoo N4Max 0.2 nozzle.json @@ -0,0 +1,9 @@ +{ + "type": "process", + "name": "0.12mm Draft @Elegoo N4Max 0.2 nozzle", + "inherits": "0.10mm Standard @Elegoo N4Max 0.2 nozzle", + "instantiation": "true", + "layer_height": "0.12", + "settings_id": "PEN4Max02012", + "renamed_from": "0.12mm Fine @Elegoo Neptune4Max (0.2 nozzle);0.24mm Draft @Elegoo Neptune4Max (0.2 nozzle);0.28mm Extra Draft @Elegoo Neptune4Max (0.2 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Draft @Elegoo N4Plus 0.2 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Draft @Elegoo N4Plus 0.2 nozzle.json new file mode 100644 index 00000000000..cc0ee5a4206 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Draft @Elegoo N4Plus 0.2 nozzle.json @@ -0,0 +1,9 @@ +{ + "type": "process", + "name": "0.12mm Draft @Elegoo N4Plus 0.2 nozzle", + "inherits": "0.10mm Standard @Elegoo N4Plus 0.2 nozzle", + "instantiation": "true", + "layer_height": "0.12", + "settings_id": "PEN4Plus02012", + "renamed_from": "0.12mm Fine @Elegoo Neptune4 Plus (0.2 nozzle);0.24mm Draft @Elegoo Neptune4 Plus (0.2 nozzle);0.28mm Extra Draft @Elegoo Neptune4 Plus (0.2 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Draft @Elegoo N4Pro 0.2 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Draft @Elegoo N4Pro 0.2 nozzle.json new file mode 100644 index 00000000000..62fdc845ced --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Draft @Elegoo N4Pro 0.2 nozzle.json @@ -0,0 +1,9 @@ +{ + "type": "process", + "name": "0.12mm Draft @Elegoo N4Pro 0.2 nozzle", + "inherits": "0.10mm Standard @Elegoo N4Pro 0.2 nozzle", + "instantiation": "true", + "layer_height": "0.12", + "settings_id": "PEN4Pro02012", + "renamed_from": "0.12mm Fine @Elegoo Neptune4Pro (0.2 nozzle);0.24mm Draft @Elegoo Neptune4Pro (0.2 nozzle);0.28mm Extra Draft @Elegoo Neptune4Pro (0.2 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo N4 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo N4 0.4 nozzle.json new file mode 100644 index 00000000000..c168a6c718b --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo N4 0.4 nozzle.json @@ -0,0 +1,9 @@ +{ + "from": "system", + "inherits": "0.20mm Standard @Elegoo N4 0.4 nozzle", + "instantiation": "true", + "name": "0.12mm Fine @Elegoo N4 0.4 nozzle", + "layer_height": "0.12", + "wall_loops": "3", + "renamed_from": "0.08mm Extra Fine @Elegoo Neptune4 (0.4 nozzle);0.12mm Fine @Elegoo Neptune4 (0.4 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo N4Max 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo N4Max 0.4 nozzle.json new file mode 100644 index 00000000000..03a2ef96031 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo N4Max 0.4 nozzle.json @@ -0,0 +1,9 @@ +{ + "from": "system", + "inherits": "0.20mm Standard @Elegoo N4Max 0.4 nozzle", + "instantiation": "true", + "name": "0.12mm Fine @Elegoo N4Max 0.4 nozzle", + "layer_height": "0.12", + "wall_loops": "3", + "renamed_from": "0.08mm Extra Fine @Elegoo Neptune4Max (0.4 nozzle);0.12mm Fine @Elegoo Neptune4Max (0.4 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo N4Plus 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo N4Plus 0.4 nozzle.json new file mode 100644 index 00000000000..2aacf1e4b66 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo N4Plus 0.4 nozzle.json @@ -0,0 +1,9 @@ +{ + "from": "system", + "inherits": "0.20mm Standard @Elegoo N4Plus 0.4 nozzle", + "instantiation": "true", + "name": "0.12mm Fine @Elegoo N4Plus 0.4 nozzle", + "layer_height": "0.12", + "wall_loops": "3", + "renamed_from": "0.08mm Extra Fine @Elegoo Neptune4 Plus (0.4 nozzle);0.12mm Fine @Elegoo Neptune4 Plus (0.4 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo N4Pro 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo N4Pro 0.4 nozzle.json new file mode 100644 index 00000000000..b36898acded --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo N4Pro 0.4 nozzle.json @@ -0,0 +1,9 @@ +{ + "from": "system", + "inherits": "0.20mm Standard @Elegoo N4Pro 0.4 nozzle", + "instantiation": "true", + "name": "0.12mm Fine @Elegoo N4Pro 0.4 nozzle", + "layer_height": "0.12", + "wall_loops": "3", + "renamed_from": "0.08mm Extra Fine @Elegoo Neptune4Pro (0.4 nozzle);0.12mm Fine @Elegoo Neptune4Pro (0.4 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4 (0.2 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4 (0.2 nozzle).json deleted file mode 100644 index 4ed29ce978f..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4 (0.2 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.12mm Fine @Elegoo Neptune4 (0.2 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.12", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "6", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.2", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.2", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.22", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.25", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.25", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.25", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.12", - "support_filament": "0", - "support_line_width": "0.2", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.2", - "top_shell_layers": "7", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 (0.2 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4 (0.4 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4 (0.4 nozzle).json deleted file mode 100644 index c1c5c5aeed0..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4 (0.4 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.12mm Fine @Elegoo Neptune4 (0.4 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.12", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "6", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.12", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "7", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 (0.4 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4 (0.6 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4 (0.6 nozzle).json deleted file mode 100644 index bf610f57343..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4 (0.6 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.12mm Fine @Elegoo Neptune4 (0.6 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.12", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "6", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.6", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.6", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.62", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.65", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.65", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.65", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.12", - "support_filament": "0", - "support_line_width": "0.55", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.56", - "top_shell_layers": "7", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 (0.6 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4 (0.8 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4 (0.8 nozzle).json deleted file mode 100644 index 80e2197149b..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4 (0.8 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.12mm Fine @Elegoo Neptune4 (0.8 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.12", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "6", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.8", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.8", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.82", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.85", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.85", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.85", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.12", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.78", - "top_shell_layers": "7", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 (0.8 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4 Plus (0.2 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4 Plus (0.2 nozzle).json deleted file mode 100644 index c8697db4f24..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4 Plus (0.2 nozzle).json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "process", - "name": "0.12mm Fine @Elegoo Neptune4 Plus (0.2 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.12", - "bottom_shell_layers": "6", - "outer_wall_line_width": "0.2", - "line_width": "0.2", - "initial_layer_line_width": "0.22", - "sparse_infill_line_width": "0.25", - "inner_wall_line_width": "0.25", - "internal_solid_infill_line_width": "0.25", - "resolution": "0.012", - "support_top_z_distance": "0.12", - "support_line_width": "0.2", - "support_interface_spacing": "0.2", - "top_surface_line_width": "0.2", - "top_shell_layers": "7", - "top_shell_thickness": "0.8", - "compatible_printers": [ - "Elegoo Neptune 4 Plus (0.2 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4 Plus (0.4 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4 Plus (0.4 nozzle).json deleted file mode 100644 index 7f866bb85f6..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4 Plus (0.4 nozzle).json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "process", - "name": "0.12mm Fine @Elegoo Neptune4 Plus (0.4 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.12", - "bottom_shell_layers": "6", - "outer_wall_line_width": "0.4", - "line_width": "0.4", - "initial_layer_line_width": "0.42", - "sparse_infill_line_width": "0.45", - "inner_wall_line_width": "0.45", - "internal_solid_infill_line_width": "0.45", - "resolution": "0.012", - "support_top_z_distance": "0.12", - "support_line_width": "0.38", - "support_interface_spacing": "0.2", - "top_surface_line_width": "0.38", - "top_shell_layers": "7", - "top_shell_thickness": "0.8", - "compatible_printers": [ - "Elegoo Neptune 4 Plus (0.4 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4 Plus (0.6 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4 Plus (0.6 nozzle).json deleted file mode 100644 index 95b1c254eca..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4 Plus (0.6 nozzle).json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "process", - "name": "0.12mm Fine @Elegoo Neptune4 Plus (0.6 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.12", - "bottom_shell_layers": "6", - "outer_wall_line_width": "0.6", - "line_width": "0.6", - "initial_layer_line_width": "0.62", - "sparse_infill_line_width": "0.65", - "inner_wall_line_width": "0.65", - "internal_solid_infill_line_width": "0.65", - "resolution": "0.012", - "support_top_z_distance": "0.12", - "support_line_width": "0.55", - "support_interface_spacing": "0.2", - "top_surface_line_width": "0.56", - "top_shell_layers": "7", - "top_shell_thickness": "0.8", - "compatible_printers": [ - "Elegoo Neptune 4 Plus (0.6 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4 Plus (0.8 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4 Plus (0.8 nozzle).json deleted file mode 100644 index d8c143f4cc0..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4 Plus (0.8 nozzle).json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "process", - "name": "0.12mm Fine @Elegoo Neptune4 Plus (0.8 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.12", - "bottom_shell_layers": "6", - "outer_wall_line_width": "0.8", - "line_width": "0.8", - "initial_layer_line_width": "0.82", - "sparse_infill_line_width": "0.85", - "inner_wall_line_width": "0.85", - "internal_solid_infill_line_width": "0.85", - "resolution": "0.012", - "support_top_z_distance": "0.12", - "support_line_width": "0.78", - "support_interface_spacing": "0.2", - "top_surface_line_width": "0.78", - "top_shell_layers": "7", - "top_shell_thickness": "0.8", - "compatible_printers": [ - "Elegoo Neptune 4 Plus (0.8 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4Max (0.2 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4Max (0.2 nozzle).json deleted file mode 100644 index f19dcdf79be..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4Max (0.2 nozzle).json +++ /dev/null @@ -1,90 +0,0 @@ -{ - "type": "process", - "name": "0.12mm Fine @Elegoo Neptune4Max (0.2 nozzle)", - "inherits": "fdm_process_neptune4max_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.12", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "6", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.2", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.2", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.22", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.25", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "travel_speed": "300", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.25", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.25", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.12", - "support_filament": "0", - "support_line_width": "0.2", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.2", - "top_shell_layers": "7", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Max (0.2 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4Max (0.4 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4Max (0.4 nozzle).json deleted file mode 100644 index d38b3adfe6c..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4Max (0.4 nozzle).json +++ /dev/null @@ -1,90 +0,0 @@ -{ - "type": "process", - "name": "0.12mm Fine @Elegoo Neptune4Max (0.4 nozzle)", - "inherits": "fdm_process_neptune4max_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.12", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "6", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "travel_speed": "300", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.12", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "7", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Max (0.4 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4Max (0.6 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4Max (0.6 nozzle).json deleted file mode 100644 index f6388f5fc3b..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4Max (0.6 nozzle).json +++ /dev/null @@ -1,90 +0,0 @@ -{ - "type": "process", - "name": "0.12mm Fine @Elegoo Neptune4Max (0.6 nozzle)", - "inherits": "fdm_process_neptune4max_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.12", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "6", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.6", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.6", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.62", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.65", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "travel_speed": "300", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.65", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.65", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.12", - "support_filament": "0", - "support_line_width": "0.55", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.56", - "top_shell_layers": "7", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Max (0.6 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4Max (0.8 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4Max (0.8 nozzle).json deleted file mode 100644 index 56e3aafd63a..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4Max (0.8 nozzle).json +++ /dev/null @@ -1,90 +0,0 @@ -{ - "type": "process", - "name": "0.12mm Fine @Elegoo Neptune4Max (0.8 nozzle)", - "inherits": "fdm_process_neptune4max_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.12", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "6", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.8", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.8", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.82", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.85", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "travel_speed": "300", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.85", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.85", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.12", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.78", - "top_shell_layers": "7", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Max (0.8 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4Pro (0.2 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4Pro (0.2 nozzle).json deleted file mode 100644 index d1dbb79ad3e..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4Pro (0.2 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.12mm Fine @Elegoo Neptune4Pro (0.2 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.12", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "6", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.2", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.2", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.22", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.25", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.25", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.25", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.12", - "support_filament": "0", - "support_line_width": "0.2", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.2", - "top_shell_layers": "7", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Pro (0.2 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4Pro (0.4 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4Pro (0.4 nozzle).json deleted file mode 100644 index 65f8fb7b6ee..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4Pro (0.4 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.12mm Fine @Elegoo Neptune4Pro (0.4 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.12", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "6", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.12", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "7", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Pro (0.4 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4Pro (0.6 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4Pro (0.6 nozzle).json deleted file mode 100644 index aa50eb1916d..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4Pro (0.6 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.12mm Fine @Elegoo Neptune4Pro (0.6 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.12", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "6", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.6", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.6", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.62", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.65", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.65", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.65", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.12", - "support_filament": "0", - "support_line_width": "0.55", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.56", - "top_shell_layers": "7", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Pro (0.6 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4Pro (0.8 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4Pro (0.8 nozzle).json deleted file mode 100644 index 14acf54c29f..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.12mm Fine @Elegoo Neptune4Pro (0.8 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.12mm Fine @Elegoo Neptune4Pro (0.8 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.12", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "6", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.8", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.8", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.82", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.85", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.85", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.85", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.12", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.78", - "top_shell_layers": "7", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Pro (0.8 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo N4 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo N4 0.4 nozzle.json new file mode 100644 index 00000000000..953a1580558 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo N4 0.4 nozzle.json @@ -0,0 +1,8 @@ +{ + "from": "system", + "inherits": "0.20mm Standard @Elegoo N4 0.4 nozzle", + "instantiation": "true", + "name": "0.16mm Optimal @Elegoo N4 0.4 nozzle", + "layer_height": "0.16", + "renamed_from": "0.16mm Optimal @Elegoo Neptune4 (0.4 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo N4Max 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo N4Max 0.4 nozzle.json new file mode 100644 index 00000000000..5ea2ecf9acc --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo N4Max 0.4 nozzle.json @@ -0,0 +1,8 @@ +{ + "from": "system", + "inherits": "0.20mm Standard @Elegoo N4Max 0.4 nozzle", + "instantiation": "true", + "name": "0.16mm Optimal @Elegoo N4Max 0.4 nozzle", + "layer_height": "0.16", + "renamed_from": "0.16mm Optimal @Elegoo Neptune4Max (0.4 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo N4Plus 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo N4Plus 0.4 nozzle.json new file mode 100644 index 00000000000..9f61440b65e --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo N4Plus 0.4 nozzle.json @@ -0,0 +1,8 @@ +{ + "from": "system", + "inherits": "0.20mm Standard @Elegoo N4Plus 0.4 nozzle", + "instantiation": "true", + "name": "0.16mm Optimal @Elegoo N4Plus 0.4 nozzle", + "layer_height": "0.16", + "renamed_from": "0.16mm Optimal @Elegoo Neptune4 Plus (0.4 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo N4Pro 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo N4Pro 0.4 nozzle.json new file mode 100644 index 00000000000..f4b22685255 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo N4Pro 0.4 nozzle.json @@ -0,0 +1,8 @@ +{ + "from": "system", + "inherits": "0.20mm Standard @Elegoo N4Pro 0.4 nozzle", + "instantiation": "true", + "name": "0.16mm Optimal @Elegoo N4Pro 0.4 nozzle", + "layer_height": "0.16", + "renamed_from": "0.16mm Optimal @Elegoo Neptune4Pro (0.4 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4 (0.2 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4 (0.2 nozzle).json deleted file mode 100644 index e1bbc0badc3..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4 (0.2 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.16mm Optimal @Elegoo Neptune4 (0.2 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.16", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "4", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.2", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.2", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.22", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.25", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.25", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.25", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.16", - "support_filament": "0", - "support_line_width": "0.2", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.2", - "top_shell_layers": "5", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 (0.2 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4 (0.4 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4 (0.4 nozzle).json deleted file mode 100644 index 514e67964e7..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4 (0.4 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.16mm Optimal @Elegoo Neptune4 (0.4 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.16", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "4", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.16", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "5", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 (0.4 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4 (0.6 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4 (0.6 nozzle).json deleted file mode 100644 index ad600a0479e..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4 (0.6 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.16mm Optimal @Elegoo Neptune4 (0.6 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.16", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "4", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.6", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.6", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.62", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.65", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.65", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.65", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.16", - "support_filament": "0", - "support_line_width": "0.55", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.56", - "top_shell_layers": "5", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 (0.6 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4 (0.8 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4 (0.8 nozzle).json deleted file mode 100644 index 95c8b11acce..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4 (0.8 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.16mm Optimal @Elegoo Neptune4 (0.8 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.16", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "4", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.8", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.8", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.82", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.85", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.85", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.85", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.16", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.78", - "top_shell_layers": "5", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 (0.8 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4 Plus (0.2 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4 Plus (0.2 nozzle).json deleted file mode 100644 index 3f7187e4156..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4 Plus (0.2 nozzle).json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "process", - "name": "0.16mm Optimal @Elegoo Neptune4 Plus (0.2 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.16", - "bottom_shell_layers": "4", - "outer_wall_line_width": "0.2", - "line_width": "0.2", - "initial_layer_line_width": "0.22", - "sparse_infill_line_width": "0.25", - "inner_wall_line_width": "0.25", - "internal_solid_infill_line_width": "0.25", - "resolution": "0.012", - "support_top_z_distance": "0.16", - "support_line_width": "0.2", - "support_interface_spacing": "0.2", - "top_surface_line_width": "0.2", - "top_shell_layers": "5", - "top_shell_thickness": "0.8", - "compatible_printers": [ - "Elegoo Neptune 4 Plus (0.2 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4 Plus (0.4 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4 Plus (0.4 nozzle).json deleted file mode 100644 index eba1d9e1cc6..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4 Plus (0.4 nozzle).json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "process", - "name": "0.16mm Optimal @Elegoo Neptune4 Plus (0.4 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.16", - "bottom_shell_layers": "4", - "outer_wall_line_width": "0.4", - "line_width": "0.4", - "initial_layer_line_width": "0.42", - "sparse_infill_line_width": "0.45", - "inner_wall_line_width": "0.45", - "internal_solid_infill_line_width": "0.45", - "resolution": "0.012", - "support_top_z_distance": "0.16", - "support_line_width": "0.38", - "support_interface_spacing": "0.2", - "top_surface_line_width": "0.38", - "top_shell_layers": "5", - "top_shell_thickness": "0.8", - "compatible_printers": [ - "Elegoo Neptune 4 Plus (0.4 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4 Plus (0.6 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4 Plus (0.6 nozzle).json deleted file mode 100644 index bc3839e5a2f..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4 Plus (0.6 nozzle).json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "process", - "name": "0.16mm Optimal @Elegoo Neptune4 Plus (0.6 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.16", - "bottom_shell_layers": "4", - "outer_wall_line_width": "0.6", - "line_width": "0.6", - "initial_layer_line_width": "0.62", - "sparse_infill_line_width": "0.65", - "inner_wall_line_width": "0.65", - "internal_solid_infill_line_width": "0.65", - "resolution": "0.012", - "support_top_z_distance": "0.16", - "support_line_width": "0.55", - "support_interface_spacing": "0.2", - "top_surface_line_width": "0.56", - "top_shell_layers": "5", - "top_shell_thickness": "0.8", - "compatible_printers": [ - "Elegoo Neptune 4 Plus (0.6 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4 Plus (0.8 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4 Plus (0.8 nozzle).json deleted file mode 100644 index 9547fbe1b4d..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4 Plus (0.8 nozzle).json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "process", - "name": "0.16mm Optimal @Elegoo Neptune4 Plus (0.8 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.16", - "bottom_shell_layers": "4", - "outer_wall_line_width": "0.8", - "line_width": "0.8", - "initial_layer_line_width": "0.82", - "sparse_infill_line_width": "0.85", - "inner_wall_line_width": "0.85", - "internal_solid_infill_line_width": "0.85", - "resolution": "0.012", - "support_top_z_distance": "0.16", - "support_line_width": "0.78", - "support_interface_spacing": "0.2", - "top_surface_line_width": "0.78", - "top_shell_layers": "5", - "top_shell_thickness": "0.8", - "compatible_printers": [ - "Elegoo Neptune 4 Plus (0.8 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4Max (0.2 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4Max (0.2 nozzle).json deleted file mode 100644 index e8b77541113..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4Max (0.2 nozzle).json +++ /dev/null @@ -1,90 +0,0 @@ -{ - "type": "process", - "name": "0.16mm Optimal @Elegoo Neptune4Max (0.2 nozzle)", - "inherits": "fdm_process_neptune4max_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.16", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "4", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.2", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.2", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.22", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.25", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "travel_speed": "300", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.25", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.25", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.16", - "support_filament": "0", - "support_line_width": "0.2", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.2", - "top_shell_layers": "5", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Max (0.2 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4Max (0.4 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4Max (0.4 nozzle).json deleted file mode 100644 index 0bcb92caa14..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4Max (0.4 nozzle).json +++ /dev/null @@ -1,90 +0,0 @@ -{ - "type": "process", - "name": "0.16mm Optimal @Elegoo Neptune4Max (0.4 nozzle)", - "inherits": "fdm_process_neptune4max_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.16", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "4", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "travel_speed": "300", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.16", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "5", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Max (0.4 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4Max (0.6 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4Max (0.6 nozzle).json deleted file mode 100644 index 847460cd127..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4Max (0.6 nozzle).json +++ /dev/null @@ -1,90 +0,0 @@ -{ - "type": "process", - "name": "0.16mm Optimal @Elegoo Neptune4Max (0.6 nozzle)", - "inherits": "fdm_process_neptune4max_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.16", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "4", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.6", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.6", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.62", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.65", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "travel_speed": "300", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.65", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.65", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.16", - "support_filament": "0", - "support_line_width": "0.55", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.56", - "top_shell_layers": "5", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Max (0.6 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4Max (0.8 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4Max (0.8 nozzle).json deleted file mode 100644 index 8538973ef2d..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4Max (0.8 nozzle).json +++ /dev/null @@ -1,90 +0,0 @@ -{ - "type": "process", - "name": "0.16mm Optimal @Elegoo Neptune4Max (0.8 nozzle)", - "inherits": "fdm_process_neptune4max_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.16", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "4", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.8", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.8", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.82", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.85", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "travel_speed": "300", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.85", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.85", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.16", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.78", - "top_shell_layers": "5", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Max (0.8 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4Pro (0.2 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4Pro (0.2 nozzle).json deleted file mode 100644 index 3e9c07350e5..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4Pro (0.2 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.16mm Optimal @Elegoo Neptune4Pro (0.2 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.16", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "4", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.2", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.2", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.22", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.25", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.25", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.25", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.16", - "support_filament": "0", - "support_line_width": "0.2", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.2", - "top_shell_layers": "5", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Pro (0.2 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4Pro (0.4 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4Pro (0.4 nozzle).json deleted file mode 100644 index 2788327580e..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4Pro (0.4 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.16mm Optimal @Elegoo Neptune4Pro (0.4 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.16", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "4", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.16", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "5", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Pro (0.4 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4Pro (0.6 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4Pro (0.6 nozzle).json deleted file mode 100644 index 5cdd31bc28d..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4Pro (0.6 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.16mm Optimal @Elegoo Neptune4Pro (0.6 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.16", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "4", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.6", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.6", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.62", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.65", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.65", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.65", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.16", - "support_filament": "0", - "support_line_width": "0.55", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.56", - "top_shell_layers": "5", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Pro (0.6 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4Pro (0.8 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4Pro (0.8 nozzle).json deleted file mode 100644 index 40fa72a01fe..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.16mm Optimal @Elegoo Neptune4Pro (0.8 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.16mm Optimal @Elegoo Neptune4Pro (0.8 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.16", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "4", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.8", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.8", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.82", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.85", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.85", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.85", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.16", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.78", - "top_shell_layers": "5", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Pro (0.8 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo N4 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo N4 0.4 nozzle.json new file mode 100644 index 00000000000..7fa5fc41d1d --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo N4 0.4 nozzle.json @@ -0,0 +1,17 @@ +{ + "type": "process", + "setting_id": "PEN404020", + "name": "0.20mm Standard @Elegoo N4 0.4 nozzle", + "from": "system", + "inherits": "fdm_process_elegoo_04020", + "instantiation": "true", + "filename_format": "EN4_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "default_acceleration": "6000", + "outer_wall_acceleration": "5000", + "top_surface_acceleration": "2000", + "min_width_top_surface": "50%", + "compatible_printers": [ + "Elegoo Neptune 4 0.4 nozzle" + ], + "renamed_from": "0.20mm Standard @Elegoo Neptune4 (0.4 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo N4Max 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo N4Max 0.4 nozzle.json new file mode 100644 index 00000000000..5c10b66ed17 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo N4Max 0.4 nozzle.json @@ -0,0 +1,17 @@ +{ + "type": "process", + "setting_id": "PEN4Max04020", + "name": "0.20mm Standard @Elegoo N4Max 0.4 nozzle", + "from": "system", + "inherits": "fdm_process_elegoo_04020", + "instantiation": "true", + "filename_format": "EN4Max_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "default_acceleration": "3000", + "outer_wall_acceleration": "1500", + "top_surface_acceleration": "2000", + "min_width_top_surface": "50%", + "compatible_printers": [ + "Elegoo Neptune 4 Max 0.4 nozzle" + ], + "renamed_from": "0.20mm Standard @Elegoo Neptune4Max (0.4 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo N4Plus 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo N4Plus 0.4 nozzle.json new file mode 100644 index 00000000000..65048a36e72 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo N4Plus 0.4 nozzle.json @@ -0,0 +1,17 @@ +{ + "type": "process", + "setting_id": "PEN4Plus04020", + "name": "0.20mm Standard @Elegoo N4Plus 0.4 nozzle", + "from": "system", + "inherits": "fdm_process_elegoo_04020", + "instantiation": "true", + "filename_format": "EN4Plus_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "default_acceleration": "5000", + "outer_wall_acceleration": "2500", + "top_surface_acceleration": "2000", + "min_width_top_surface": "50%", + "compatible_printers": [ + "Elegoo Neptune 4 Plus 0.4 nozzle" + ], + "renamed_from": "0.20mm Standard @Elegoo Neptune4 Plus (0.4 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo N4Pro 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo N4Pro 0.4 nozzle.json new file mode 100644 index 00000000000..f08d2190df9 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo N4Pro 0.4 nozzle.json @@ -0,0 +1,17 @@ +{ + "type": "process", + "setting_id": "PEN4Pro04020", + "name": "0.20mm Standard @Elegoo N4Pro 0.4 nozzle", + "from": "system", + "inherits": "fdm_process_elegoo_04020", + "instantiation": "true", + "filename_format": "EN4Pro_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "default_acceleration": "6000", + "outer_wall_acceleration": "5000", + "top_surface_acceleration": "2000", + "min_width_top_surface": "50%", + "compatible_printers": [ + "Elegoo Neptune 4 Pro 0.4 nozzle" + ], + "renamed_from": "0.20mm Standard @Elegoo Neptune4Pro (0.4 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4 (0.2 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4 (0.2 nozzle).json deleted file mode 100644 index d34b6f02be3..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4 (0.2 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.20mm Standard @Elegoo Neptune4 (0.2 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.2", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.2", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.2", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.22", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.25", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.25", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.25", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.2", - "support_filament": "0", - "support_line_width": "0.2", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.2", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 (0.2 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4 (0.4 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4 (0.4 nozzle).json deleted file mode 100644 index 32d88812c51..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4 (0.4 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.20mm Standard @Elegoo Neptune4 (0.4 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.2", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.2", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 (0.4 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4 (0.6 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4 (0.6 nozzle).json deleted file mode 100644 index 511f0885597..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4 (0.6 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.20mm Standard @Elegoo Neptune4 (0.6 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.2", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.6", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.6", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.62", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.65", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.65", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.65", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.2", - "support_filament": "0", - "support_line_width": "0.55", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.56", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 (0.6 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4 (0.8 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4 (0.8 nozzle).json deleted file mode 100644 index 0346ea24625..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4 (0.8 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.20mm Standard @Elegoo Neptune4 (0.8 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.2", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.8", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.8", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.82", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.85", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.85", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.85", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.2", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.78", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 (0.8 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4 Plus (0.2 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4 Plus (0.2 nozzle).json deleted file mode 100644 index 6c7f3ef4f1b..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4 Plus (0.2 nozzle).json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "process", - "name": "0.20mm Standard @Elegoo Neptune4 Plus (0.2 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.2", - "bottom_shell_layers": "3", - "outer_wall_line_width": "0.2", - "line_width": "0.2", - "initial_layer_line_width": "0.22", - "sparse_infill_line_width": "0.25", - "inner_wall_line_width": "0.25", - "internal_solid_infill_line_width": "0.25", - "resolution": "0.012", - "support_top_z_distance": "0.2", - "support_line_width": "0.2", - "support_interface_spacing": "0.2", - "top_surface_line_width": "0.2", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "compatible_printers": [ - "Elegoo Neptune 4 Plus (0.2 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4 Plus (0.4 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4 Plus (0.4 nozzle).json deleted file mode 100644 index 20b4b8c31f5..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4 Plus (0.4 nozzle).json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "process", - "name": "0.20mm Standard @Elegoo Neptune4 Plus (0.4 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.2", - "bottom_shell_layers": "3", - "outer_wall_line_width": "0.4", - "line_width": "0.4", - "initial_layer_line_width": "0.42", - "sparse_infill_line_width": "0.45", - "inner_wall_line_width": "0.45", - "internal_solid_infill_line_width": "0.45", - "resolution": "0.012", - "support_top_z_distance": "0.2", - "support_line_width": "0.38", - "support_interface_spacing": "0.2", - "top_surface_line_width": "0.38", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "compatible_printers": [ - "Elegoo Neptune 4 Plus (0.4 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4 Plus (0.6 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4 Plus (0.6 nozzle).json deleted file mode 100644 index 68d3c27a330..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4 Plus (0.6 nozzle).json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "process", - "name": "0.20mm Standard @Elegoo Neptune4 Plus (0.6 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.2", - "bottom_shell_layers": "3", - "outer_wall_line_width": "0.6", - "line_width": "0.6", - "initial_layer_line_width": "0.62", - "sparse_infill_line_width": "0.65", - "inner_wall_line_width": "0.65", - "internal_solid_infill_line_width": "0.65", - "resolution": "0.012", - "support_top_z_distance": "0.2", - "support_line_width": "0.55", - "support_interface_spacing": "0.2", - "top_surface_line_width": "0.56", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "compatible_printers": [ - "Elegoo Neptune 4 Plus (0.6 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4 Plus (0.8 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4 Plus (0.8 nozzle).json deleted file mode 100644 index cb2fa36664c..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4 Plus (0.8 nozzle).json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "process", - "name": "0.20mm Standard @Elegoo Neptune4 Plus (0.8 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.2", - "bottom_shell_layers": "3", - "outer_wall_line_width": "0.8", - "line_width": "0.8", - "initial_layer_line_width": "0.82", - "sparse_infill_line_width": "0.85", - "inner_wall_line_width": "0.85", - "internal_solid_infill_line_width": "0.85", - "resolution": "0.012", - "support_top_z_distance": "0.2", - "support_line_width": "0.78", - "support_interface_spacing": "0.2", - "top_surface_line_width": "0.78", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "compatible_printers": [ - "Elegoo Neptune 4 Plus (0.8 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4Max (0.2 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4Max (0.2 nozzle).json deleted file mode 100644 index e3c93a7a7eb..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4Max (0.2 nozzle).json +++ /dev/null @@ -1,90 +0,0 @@ -{ - "type": "process", - "name": "0.20mm Standard @Elegoo Neptune4Max (0.2 nozzle)", - "inherits": "fdm_process_neptune4max_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.2", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.2", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.2", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.22", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.25", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "travel_speed": "300", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.25", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.25", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.2", - "support_filament": "0", - "support_line_width": "0.2", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.2", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Max (0.2 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4Max (0.4 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4Max (0.4 nozzle).json deleted file mode 100644 index cd18e274be1..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4Max (0.4 nozzle).json +++ /dev/null @@ -1,90 +0,0 @@ -{ - "type": "process", - "name": "0.20mm Standard @Elegoo Neptune4Max (0.4 nozzle)", - "inherits": "fdm_process_neptune4max_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.2", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "travel_speed": "300", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.2", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Max (0.4 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4Max (0.6 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4Max (0.6 nozzle).json deleted file mode 100644 index 49760c92889..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4Max (0.6 nozzle).json +++ /dev/null @@ -1,90 +0,0 @@ -{ - "type": "process", - "name": "0.20mm Standard @Elegoo Neptune4Max (0.6 nozzle)", - "inherits": "fdm_process_neptune4max_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.2", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.6", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.6", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.62", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.65", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "travel_speed": "300", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.65", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.65", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.2", - "support_filament": "0", - "support_line_width": "0.55", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.56", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Max (0.6 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4Max (0.8 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4Max (0.8 nozzle).json deleted file mode 100644 index 3f0dcd6ce79..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4Max (0.8 nozzle).json +++ /dev/null @@ -1,90 +0,0 @@ -{ - "type": "process", - "name": "0.20mm Standard @Elegoo Neptune4Max (0.8 nozzle)", - "inherits": "fdm_process_neptune4max_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.2", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.8", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.8", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.82", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.85", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "travel_speed": "300", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.85", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.85", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.2", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.78", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Max (0.8 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4Pro (0.2 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4Pro (0.2 nozzle).json deleted file mode 100644 index f83bc0d285f..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4Pro (0.2 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.20mm Standard @Elegoo Neptune4Pro (0.2 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.2", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.2", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.2", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.22", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.25", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.25", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.25", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.2", - "support_filament": "0", - "support_line_width": "0.2", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.2", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Pro (0.2 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4Pro (0.4 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4Pro (0.4 nozzle).json deleted file mode 100644 index ddfba2b29ad..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4Pro (0.4 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.20mm Standard @Elegoo Neptune4Pro (0.4 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.2", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.2", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Pro (0.4 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4Pro (0.6 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4Pro (0.6 nozzle).json deleted file mode 100644 index fe6ae1e3be3..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4Pro (0.6 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.20mm Standard @Elegoo Neptune4Pro (0.6 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.2", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.6", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.6", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.62", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.65", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.65", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.65", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.2", - "support_filament": "0", - "support_line_width": "0.55", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.56", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Pro (0.6 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4Pro (0.8 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4Pro (0.8 nozzle).json deleted file mode 100644 index 5929811ad04..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Standard @Elegoo Neptune4Pro (0.8 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.20mm Standard @Elegoo Neptune4Pro (0.8 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.2", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.8", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.8", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.82", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.85", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.85", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.85", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.2", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.78", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Pro (0.8 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Strength @Elegoo N4 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Strength @Elegoo N4 0.4 nozzle.json new file mode 100644 index 00000000000..9d3d4676724 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Strength @Elegoo N4 0.4 nozzle.json @@ -0,0 +1,9 @@ +{ + "from": "system", + "inherits": "0.20mm Standard @Elegoo N4 0.4 nozzle", + "name": "0.20mm Strength @Elegoo N4 0.4 nozzle", + "wall_sequence": "inner-outer-inner wall", + "instantiation": "true", + "reduce_crossing_wall": "1", + "wall_loops": "6" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Strength @Elegoo N4Max 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Strength @Elegoo N4Max 0.4 nozzle.json new file mode 100644 index 00000000000..c7eb5a4257a --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Strength @Elegoo N4Max 0.4 nozzle.json @@ -0,0 +1,9 @@ +{ + "from": "system", + "inherits": "0.20mm Standard @Elegoo N4Max 0.4 nozzle", + "name": "0.20mm Strength @Elegoo N4Max 0.4 nozzle", + "wall_sequence": "inner-outer-inner wall", + "instantiation": "true", + "reduce_crossing_wall": "1", + "wall_loops": "6" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Strength @Elegoo N4Plus 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Strength @Elegoo N4Plus 0.4 nozzle.json new file mode 100644 index 00000000000..a946e44bcf0 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Strength @Elegoo N4Plus 0.4 nozzle.json @@ -0,0 +1,9 @@ +{ + "from": "system", + "inherits": "0.20mm Standard @Elegoo N4Plus 0.4 nozzle", + "name": "0.20mm Strength @Elegoo N4Plus 0.4 nozzle", + "wall_sequence": "inner-outer-inner wall", + "instantiation": "true", + "reduce_crossing_wall": "1", + "wall_loops": "6" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Strength @Elegoo N4Pro 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Strength @Elegoo N4Pro 0.4 nozzle.json new file mode 100644 index 00000000000..0de850fbc8f --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.20mm Strength @Elegoo N4Pro 0.4 nozzle.json @@ -0,0 +1,9 @@ +{ + "from": "system", + "inherits": "0.20mm Standard @Elegoo N4Pro 0.4 nozzle", + "name": "0.20mm Strength @Elegoo N4Pro 0.4 nozzle", + "wall_sequence": "inner-outer-inner wall", + "instantiation": "true", + "reduce_crossing_wall": "1", + "wall_loops": "6" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo N4 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo N4 0.4 nozzle.json new file mode 100644 index 00000000000..a40f510b099 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo N4 0.4 nozzle.json @@ -0,0 +1,8 @@ +{ + "from": "system", + "inherits": "0.20mm Standard @Elegoo N4 0.4 nozzle", + "name": "0.24mm Draft @Elegoo N4 0.4 nozzle", + "instantiation": "true", + "layer_height": "0.24", + "renamed_from": "0.24mm Draft @Elegoo Neptune4 (0.4 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo N4Max 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo N4Max 0.4 nozzle.json new file mode 100644 index 00000000000..fabc66714b1 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo N4Max 0.4 nozzle.json @@ -0,0 +1,8 @@ +{ + "from": "system", + "inherits": "0.20mm Standard @Elegoo N4Max 0.4 nozzle", + "name": "0.24mm Draft @Elegoo N4Max 0.4 nozzle", + "instantiation": "true", + "layer_height": "0.24", + "renamed_from": "0.24mm Draft @Elegoo Neptune4Max (0.4 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo N4Plus 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo N4Plus 0.4 nozzle.json new file mode 100644 index 00000000000..531775a2771 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo N4Plus 0.4 nozzle.json @@ -0,0 +1,8 @@ +{ + "from": "system", + "inherits": "0.20mm Standard @Elegoo N4Plus 0.4 nozzle", + "name": "0.24mm Draft @Elegoo N4Plus 0.4 nozzle", + "instantiation": "true", + "layer_height": "0.24", + "renamed_from": "0.24mm Draft @Elegoo Neptune4 Plus (0.4 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo N4Pro 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo N4Pro 0.4 nozzle.json new file mode 100644 index 00000000000..3c31c7c37c9 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo N4Pro 0.4 nozzle.json @@ -0,0 +1,8 @@ +{ + "from": "system", + "inherits": "0.20mm Standard @Elegoo N4Pro 0.4 nozzle", + "name": "0.24mm Draft @Elegoo N4Pro 0.4 nozzle", + "instantiation": "true", + "layer_height": "0.24", + "renamed_from": "0.24mm Draft @Elegoo Neptune4Pro (0.4 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4 (0.2 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4 (0.2 nozzle).json deleted file mode 100644 index a84475a6f06..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4 (0.2 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.24mm Draft @Elegoo Neptune4 (0.2 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.24", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.2", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.2", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.22", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.25", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.25", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.25", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.24", - "support_filament": "0", - "support_line_width": "0.2", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.25", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 (0.2 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4 (0.4 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4 (0.4 nozzle).json deleted file mode 100644 index 2dd837653dd..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4 (0.4 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.24mm Draft @Elegoo Neptune4 (0.4 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.24", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.24", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.45", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 (0.4 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4 (0.6 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4 (0.6 nozzle).json deleted file mode 100644 index 13919f2165a..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4 (0.6 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.24mm Draft @Elegoo Neptune4 (0.6 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.24", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.6", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.6", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.62", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.65", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.65", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.65", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.24", - "support_filament": "0", - "support_line_width": "0.55", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.65", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 (0.6 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4 (0.8 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4 (0.8 nozzle).json deleted file mode 100644 index 8f0bd6179f2..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4 (0.8 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.24mm Draft @Elegoo Neptune4 (0.8 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.24", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.8", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.8", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.82", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.85", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.85", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.85", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.24", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.85", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 (0.8 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4 Plus (0.2 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4 Plus (0.2 nozzle).json deleted file mode 100644 index 217b26d9e24..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4 Plus (0.2 nozzle).json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "process", - "name": "0.24mm Draft @Elegoo Neptune4 Plus (0.2 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.24", - "bottom_shell_layers": "3", - "outer_wall_line_width": "0.2", - "line_width": "0.2", - "initial_layer_line_width": "0.22", - "sparse_infill_line_width": "0.25", - "inner_wall_line_width": "0.25", - "internal_solid_infill_line_width": "0.25", - "resolution": "0.012", - "support_top_z_distance": "0.24", - "support_line_width": "0.2", - "support_interface_spacing": "0.2", - "top_surface_line_width": "0.2", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "compatible_printers": [ - "Elegoo Neptune 4 Plus (0.2 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4 Plus (0.4 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4 Plus (0.4 nozzle).json deleted file mode 100644 index e60a7ecc61f..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4 Plus (0.4 nozzle).json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "process", - "name": "0.24mm Draft @Elegoo Neptune4 Plus (0.4 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.24", - "bottom_shell_layers": "3", - "outer_wall_line_width": "0.4", - "line_width": "0.4", - "initial_layer_line_width": "0.42", - "sparse_infill_line_width": "0.45", - "inner_wall_line_width": "0.45", - "internal_solid_infill_line_width": "0.45", - "resolution": "0.012", - "support_top_z_distance": "0.24", - "support_line_width": "0.38", - "support_interface_spacing": "0.2", - "top_surface_line_width": "0.38", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "compatible_printers": [ - "Elegoo Neptune 4 Plus (0.4 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4 Plus (0.6 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4 Plus (0.6 nozzle).json deleted file mode 100644 index 126081d8b12..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4 Plus (0.6 nozzle).json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "process", - "name": "0.24mm Draft @Elegoo Neptune4 Plus (0.6 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.24", - "bottom_shell_layers": "3", - "outer_wall_line_width": "0.6", - "line_width": "0.6", - "initial_layer_line_width": "0.62", - "sparse_infill_line_width": "0.65", - "inner_wall_line_width": "0.65", - "internal_solid_infill_line_width": "0.65", - "resolution": "0.012", - "support_top_z_distance": "0.24", - "support_line_width": "0.55", - "support_interface_spacing": "0.2", - "top_surface_line_width": "0.56", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "compatible_printers": [ - "Elegoo Neptune 4 Plus (0.6 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4 Plus (0.8 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4 Plus (0.8 nozzle).json deleted file mode 100644 index 5f5b327c9f0..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4 Plus (0.8 nozzle).json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "process", - "name": "0.24mm Draft @Elegoo Neptune4 Plus (0.8 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.24", - "bottom_shell_layers": "3", - "outer_wall_line_width": "0.8", - "line_width": "0.8", - "initial_layer_line_width": "0.82", - "sparse_infill_line_width": "0.85", - "inner_wall_line_width": "0.85", - "internal_solid_infill_line_width": "0.85", - "resolution": "0.012", - "support_top_z_distance": "0.24", - "support_line_width": "0.78", - "support_interface_spacing": "0.2", - "top_surface_line_width": "0.78", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "compatible_printers": [ - "Elegoo Neptune 4 Plus (0.8 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4Max (0.2 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4Max (0.2 nozzle).json deleted file mode 100644 index 238d4458dea..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4Max (0.2 nozzle).json +++ /dev/null @@ -1,90 +0,0 @@ -{ - "type": "process", - "name": "0.24mm Draft @Elegoo Neptune4Max (0.2 nozzle)", - "inherits": "fdm_process_neptune4max_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.24", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.2", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.2", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.22", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.25", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "travel_speed": "300", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.25", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.25", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.24", - "support_filament": "0", - "support_line_width": "0.2", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.25", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Max (0.2 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4Max (0.4 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4Max (0.4 nozzle).json deleted file mode 100644 index 174f2271a13..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4Max (0.4 nozzle).json +++ /dev/null @@ -1,90 +0,0 @@ -{ - "type": "process", - "name": "0.24mm Draft @Elegoo Neptune4Max (0.4 nozzle)", - "inherits": "fdm_process_neptune4max_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.24", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "travel_speed": "300", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.24", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.45", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Max (0.4 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4Max (0.6 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4Max (0.6 nozzle).json deleted file mode 100644 index a9f45f80133..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4Max (0.6 nozzle).json +++ /dev/null @@ -1,90 +0,0 @@ -{ - "type": "process", - "name": "0.24mm Draft @Elegoo Neptune4Max (0.6 nozzle)", - "inherits": "fdm_process_neptune4max_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.24", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.6", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.6", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.62", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.65", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "travel_speed": "300", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.65", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.65", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.24", - "support_filament": "0", - "support_line_width": "0.55", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.65", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Max (0.6 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4Max (0.8 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4Max (0.8 nozzle).json deleted file mode 100644 index cd6a7938727..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4Max (0.8 nozzle).json +++ /dev/null @@ -1,90 +0,0 @@ -{ - "type": "process", - "name": "0.24mm Draft @Elegoo Neptune4Max (0.8 nozzle)", - "inherits": "fdm_process_neptune4max_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.24", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.8", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.8", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.82", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.85", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "travel_speed": "300", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.85", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.85", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.24", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.85", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Max (0.8 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4Pro (0.2 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4Pro (0.2 nozzle).json deleted file mode 100644 index 2dc4537118e..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4Pro (0.2 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.24mm Draft @Elegoo Neptune4Pro (0.2 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.24", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.2", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.2", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.22", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.25", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.25", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.25", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.24", - "support_filament": "0", - "support_line_width": "0.2", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.25", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Pro (0.2 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4Pro (0.4 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4Pro (0.4 nozzle).json deleted file mode 100644 index ce017fedb68..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4Pro (0.4 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.24mm Draft @Elegoo Neptune4Pro (0.4 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.24", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.24", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.45", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Pro (0.4 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4Pro (0.6 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4Pro (0.6 nozzle).json deleted file mode 100644 index b5f5148cdef..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4Pro (0.6 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.24mm Draft @Elegoo Neptune4Pro (0.6 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.24", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.6", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.6", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.62", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.65", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.65", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.65", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.24", - "support_filament": "0", - "support_line_width": "0.55", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.65", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Pro (0.6 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4Pro (0.8 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4Pro (0.8 nozzle).json deleted file mode 100644 index b7125f2c2ef..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Draft @Elegoo Neptune4Pro (0.8 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.24mm Draft @Elegoo Neptune4Pro (0.8 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.24", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.8", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.8", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.82", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.85", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.85", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.85", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.24", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.85", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Pro (0.8 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Fine @Elegoo N4 0.8 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Fine @Elegoo N4 0.8 nozzle.json new file mode 100644 index 00000000000..07aafaccc31 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Fine @Elegoo N4 0.8 nozzle.json @@ -0,0 +1,9 @@ +{ + "type": "process", + "name": "0.24mm Fine @Elegoo N4 0.8 nozzle", + "inherits": "0.40mm Standard @Elegoo N4 0.8 nozzle", + "instantiation": "true", + "layer_height": "0.24", + "settings_id": "PEN408024", + "renamed_from": "0.08mm Extra Fine @Elegoo Neptune4 (0.8 nozzle);0.12mm Fine @Elegoo Neptune4 (0.8 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Fine @Elegoo N4Max 0.8 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Fine @Elegoo N4Max 0.8 nozzle.json new file mode 100644 index 00000000000..cde306b66fb --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Fine @Elegoo N4Max 0.8 nozzle.json @@ -0,0 +1,9 @@ +{ + "type": "process", + "name": "0.24mm Fine @Elegoo N4Max 0.8 nozzle", + "instantiation": "true", + "inherits": "0.40mm Standard @Elegoo N4Max 0.8 nozzle", + "layer_height": "0.24", + "settings_id": "PEN4Max08024", + "renamed_from": "0.08mm Extra Fine @Elegoo Neptune4Max (0.8 nozzle);0.12mm Fine @Elegoo Neptune4Max (0.8 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Fine @Elegoo N4Plus 0.8 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Fine @Elegoo N4Plus 0.8 nozzle.json new file mode 100644 index 00000000000..1bac0538318 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Fine @Elegoo N4Plus 0.8 nozzle.json @@ -0,0 +1,9 @@ +{ + "type": "process", + "name": "0.24mm Fine @Elegoo N4Plus 0.8 nozzle", + "inherits": "0.40mm Standard @Elegoo N4Plus 0.8 nozzle", + "instantiation": "true", + "layer_height": "0.24", + "settings_id": "PEN4Plus08024", + "renamed_from": "0.08mm Extra Fine @Elegoo Neptune4 Plus (0.8 nozzle);0.12mm Fine @Elegoo Neptune4 Plus (0.8 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Fine @Elegoo N4Pro 0.8 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Fine @Elegoo N4Pro 0.8 nozzle.json new file mode 100644 index 00000000000..74285194171 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Fine @Elegoo N4Pro 0.8 nozzle.json @@ -0,0 +1,9 @@ +{ + "type": "process", + "name": "0.24mm Fine @Elegoo N4Pro 0.8 nozzle", + "inherits": "0.40mm Standard @Elegoo N4Pro 0.8 nozzle", + "instantiation": "true", + "layer_height": "0.24", + "settings_id": "PEN4Pro08024", + "renamed_from": "0.08mm Extra Fine @Elegoo Neptune4Pro (0.8 nozzle);0.12mm Fine @Elegoo Neptune4Pro (0.8 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Optimal @Elegoo N4 0.6 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Optimal @Elegoo N4 0.6 nozzle.json new file mode 100644 index 00000000000..38177c8a6e7 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Optimal @Elegoo N4 0.6 nozzle.json @@ -0,0 +1,9 @@ +{ + "type": "process", + "name": "0.24mm Optimal @Elegoo N4 0.6 nozzle", + "inherits": "0.30mm Standard @Elegoo N4 0.6 nozzle", + "instantiation": "true", + "layer_height": "0.24", + "settings_id": "PEN406024", + "renamed_from": "0.08mm Extra Fine @Elegoo Neptune4 (0.6 nozzle);0.12mm Fine @Elegoo Neptune4 (0.6 nozzle);0.16mm Optimal @Elegoo Neptune4 (0.6 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Optimal @Elegoo N4Max 0.6 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Optimal @Elegoo N4Max 0.6 nozzle.json new file mode 100644 index 00000000000..d8716bfd678 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Optimal @Elegoo N4Max 0.6 nozzle.json @@ -0,0 +1,9 @@ +{ + "type": "process", + "name": "0.24mm Optimal @Elegoo N4Max 0.6 nozzle", + "inherits": "0.30mm Standard @Elegoo N4Max 0.6 nozzle", + "instantiation": "true", + "layer_height": "0.24", + "settings_id": "PEN4Max06024", + "renamed_from": "0.08mm Extra Fine @Elegoo Neptune4Max (0.6 nozzle);0.12mm Fine @Elegoo Neptune4Max (0.6 nozzle);0.16mm Optimal @Elegoo Neptune4Max (0.6 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Optimal @Elegoo N4Plus 0.6 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Optimal @Elegoo N4Plus 0.6 nozzle.json new file mode 100644 index 00000000000..2a18986f225 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Optimal @Elegoo N4Plus 0.6 nozzle.json @@ -0,0 +1,9 @@ +{ + "type": "process", + "name": "0.24mm Optimal @Elegoo N4Plus 0.6 nozzle", + "inherits": "0.30mm Standard @Elegoo N4Plus 0.6 nozzle", + "instantiation": "true", + "layer_height": "0.24", + "settings_id": "PEN4Plus06024", + "renamed_from": "0.08mm Extra Fine @Elegoo Neptune4 Plus (0.6 nozzle);0.12mm Fine @Elegoo Neptune4 Plus (0.6 nozzle);0.16mm Optimal @Elegoo Neptune4 Plus (0.6 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Optimal @Elegoo N4Pro 0.6 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Optimal @Elegoo N4Pro 0.6 nozzle.json new file mode 100644 index 00000000000..f926a87f5d2 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.24mm Optimal @Elegoo N4Pro 0.6 nozzle.json @@ -0,0 +1,9 @@ +{ + "type": "process", + "name": "0.24mm Optimal @Elegoo N4Pro 0.6 nozzle", + "inherits": "0.30mm Standard @Elegoo N4Pro 0.6 nozzle", + "instantiation": "true", + "layer_height": "0.24", + "settings_id": "PEN4Pro06024", + "renamed_from": "0.08mm Extra Fine @Elegoo Neptune4Pro (0.6 nozzle);0.12mm Fine @Elegoo Neptune4Pro (0.6 nozzle);0.16mm Optimal @Elegoo Neptune4Pro (0.6 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo N4 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo N4 0.4 nozzle.json new file mode 100644 index 00000000000..272c2369b5f --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo N4 0.4 nozzle.json @@ -0,0 +1,8 @@ +{ + "from": "system", + "inherits": "0.20mm Standard @Elegoo N4 0.4 nozzle", + "name": "0.28mm Extra Draft @Elegoo N4 0.4 nozzle", + "instantiation": "true", + "layer_height": "0.28", + "renamed_from": "0.28mm Extra Draft @Elegoo Neptune4 (0.4 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo N4Max 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo N4Max 0.4 nozzle.json new file mode 100644 index 00000000000..28f860bbc03 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo N4Max 0.4 nozzle.json @@ -0,0 +1,8 @@ +{ + "from": "system", + "inherits": "0.20mm Standard @Elegoo N4Max 0.4 nozzle", + "name": "0.28mm Extra Draft @Elegoo N4Max 0.4 nozzle", + "instantiation": "true", + "layer_height": "0.28", + "renamed_from": "0.28mm Extra Draft @Elegoo Neptune4Max (0.4 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo N4Plus 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo N4Plus 0.4 nozzle.json new file mode 100644 index 00000000000..cc6e3a6cc14 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo N4Plus 0.4 nozzle.json @@ -0,0 +1,8 @@ +{ + "from": "system", + "inherits": "0.20mm Standard @Elegoo N4Plus 0.4 nozzle", + "name": "0.28mm Extra Draft @Elegoo N4Plus 0.4 nozzle", + "instantiation": "true", + "layer_height": "0.28", + "renamed_from": "0.28mm Extra Draft @Elegoo Neptune4 Plus (0.4 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo N4Pro 0.4 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo N4Pro 0.4 nozzle.json new file mode 100644 index 00000000000..1ad7d319294 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo N4Pro 0.4 nozzle.json @@ -0,0 +1,8 @@ +{ + "from": "system", + "inherits": "0.20mm Standard @Elegoo N4Pro 0.4 nozzle", + "name": "0.28mm Extra Draft @Elegoo N4Pro 0.4 nozzle", + "instantiation": "true", + "layer_height": "0.28", + "renamed_from": "0.28mm Extra Draft @Elegoo Neptune4Pro (0.4 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4 (0.2 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4 (0.2 nozzle).json deleted file mode 100644 index 428aa54fd88..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4 (0.2 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.28mm Extra Draft @Elegoo Neptune4 (0.2 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.28", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.2", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.2", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.22", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.25", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.25", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.25", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.28", - "support_filament": "0", - "support_line_width": "0.2", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.25", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 (0.2 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4 (0.4 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4 (0.4 nozzle).json deleted file mode 100644 index cf56bc4612a..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4 (0.4 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.28mm Extra Draft @Elegoo Neptune4 (0.4 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.28", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.28", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.45", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 (0.4 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4 (0.6 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4 (0.6 nozzle).json deleted file mode 100644 index 1ba778cdca6..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4 (0.6 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.28mm Extra Draft @Elegoo Neptune4 (0.6 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.28", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.6", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.6", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.62", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.65", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.65", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.65", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.28", - "support_filament": "0", - "support_line_width": "0.55", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.65", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 (0.6 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4 (0.8 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4 (0.8 nozzle).json deleted file mode 100644 index a35d5f73c41..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4 (0.8 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.28mm Extra Draft @Elegoo Neptune4 (0.8 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.28", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.8", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.8", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.82", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.85", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.85", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.85", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.28", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.85", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 (0.8 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4 Plus (0.2 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4 Plus (0.2 nozzle).json deleted file mode 100644 index 782d215aee5..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4 Plus (0.2 nozzle).json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "process", - "name": "0.28mm Extra Draft @Elegoo Neptune4 Plus (0.2 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.28", - "bottom_shell_layers": "3", - "outer_wall_line_width": "0.2", - "line_width": "0.2", - "initial_layer_line_width": "0.22", - "sparse_infill_line_width": "0.25", - "inner_wall_line_width": "0.25", - "internal_solid_infill_line_width": "0.25", - "resolution": "0.012", - "support_top_z_distance": "0.28", - "support_line_width": "0.2", - "support_interface_spacing": "0.2", - "top_surface_line_width": "0.2", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "compatible_printers": [ - "Elegoo Neptune 4 Plus (0.2 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4 Plus (0.4 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4 Plus (0.4 nozzle).json deleted file mode 100644 index 11840aae8f0..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4 Plus (0.4 nozzle).json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "process", - "name": "0.28mm Extra Draft @Elegoo Neptune4 Plus (0.4 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.28", - "bottom_shell_layers": "3", - "outer_wall_line_width": "0.4", - "line_width": "0.4", - "initial_layer_line_width": "0.42", - "sparse_infill_line_width": "0.45", - "inner_wall_line_width": "0.45", - "internal_solid_infill_line_width": "0.45", - "resolution": "0.012", - "support_top_z_distance": "0.28", - "support_line_width": "0.38", - "support_interface_spacing": "0.2", - "top_surface_line_width": "0.38", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "compatible_printers": [ - "Elegoo Neptune 4 Plus (0.4 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4 Plus (0.6 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4 Plus (0.6 nozzle).json deleted file mode 100644 index 5bf1fcc090c..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4 Plus (0.6 nozzle).json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "process", - "name": "0.28mm Extra Draft @Elegoo Neptune4 Plus (0.6 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.28", - "bottom_shell_layers": "3", - "outer_wall_line_width": "0.6", - "line_width": "0.6", - "initial_layer_line_width": "0.62", - "sparse_infill_line_width": "0.65", - "inner_wall_line_width": "0.65", - "internal_solid_infill_line_width": "0.65", - "resolution": "0.012", - "support_top_z_distance": "0.28", - "support_line_width": "0.55", - "support_interface_spacing": "0.2", - "top_surface_line_width": "0.56", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "compatible_printers": [ - "Elegoo Neptune 4 Plus (0.6 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4 Plus (0.8 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4 Plus (0.8 nozzle).json deleted file mode 100644 index 85c3223a25a..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4 Plus (0.8 nozzle).json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "process", - "name": "0.28mm Extra Draft @Elegoo Neptune4 Plus (0.8 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.28", - "bottom_shell_layers": "3", - "outer_wall_line_width": "0.8", - "line_width": "0.8", - "initial_layer_line_width": "0.82", - "sparse_infill_line_width": "0.85", - "inner_wall_line_width": "0.85", - "internal_solid_infill_line_width": "0.85", - "resolution": "0.012", - "support_top_z_distance": "0.28", - "support_line_width": "0.78", - "support_interface_spacing": "0.2", - "top_surface_line_width": "0.78", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "compatible_printers": [ - "Elegoo Neptune 4 Plus (0.8 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4Max (0.2 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4Max (0.2 nozzle).json deleted file mode 100644 index f968325fed2..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4Max (0.2 nozzle).json +++ /dev/null @@ -1,90 +0,0 @@ -{ - "type": "process", - "name": "0.28mm Extra Draft @Elegoo Neptune4Max (0.2 nozzle)", - "inherits": "fdm_process_neptune4max_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.28", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.2", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.2", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.22", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.25", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "travel_speed": "300", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.25", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.25", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.28", - "support_filament": "0", - "support_line_width": "0.2", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.25", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Max (0.2 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4Max (0.4 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4Max (0.4 nozzle).json deleted file mode 100644 index 7aa2917c31c..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4Max (0.4 nozzle).json +++ /dev/null @@ -1,90 +0,0 @@ -{ - "type": "process", - "name": "0.28mm Extra Draft @Elegoo Neptune4Max (0.4 nozzle)", - "inherits": "fdm_process_neptune4max_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.28", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "travel_speed": "300", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.28", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.45", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Max (0.4 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4Max (0.6 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4Max (0.6 nozzle).json deleted file mode 100644 index 339e094911e..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4Max (0.6 nozzle).json +++ /dev/null @@ -1,90 +0,0 @@ -{ - "type": "process", - "name": "0.28mm Extra Draft @Elegoo Neptune4Max (0.6 nozzle)", - "inherits": "fdm_process_neptune4max_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.28", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.6", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.6", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.62", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.65", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "travel_speed": "300", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.65", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.65", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.28", - "support_filament": "0", - "support_line_width": "0.55", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.65", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Max (0.6 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4Max (0.8 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4Max (0.8 nozzle).json deleted file mode 100644 index 4852250fc31..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4Max (0.8 nozzle).json +++ /dev/null @@ -1,90 +0,0 @@ -{ - "type": "process", - "name": "0.28mm Extra Draft @Elegoo Neptune4Max (0.8 nozzle)", - "inherits": "fdm_process_neptune4max_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.28", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.8", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.8", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.82", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.85", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "travel_speed": "300", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.85", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.85", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.28", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.85", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Max (0.8 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4Pro (0.2 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4Pro (0.2 nozzle).json deleted file mode 100644 index 273ab0c490b..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4Pro (0.2 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.28mm Extra Draft @Elegoo Neptune4Pro (0.2 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.28", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.2", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.2", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.22", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.25", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.25", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.25", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.28", - "support_filament": "0", - "support_line_width": "0.2", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.25", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Pro (0.2 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4Pro (0.4 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4Pro (0.4 nozzle).json deleted file mode 100644 index 26aa26ef988..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4Pro (0.4 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.28mm Extra Draft @Elegoo Neptune4Pro (0.4 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.28", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.28", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.45", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Pro (0.4 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4Pro (0.6 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4Pro (0.6 nozzle).json deleted file mode 100644 index 7998b22ed46..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4Pro (0.6 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.28mm Extra Draft @Elegoo Neptune4Pro (0.6 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.28", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.6", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.6", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.62", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.65", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.65", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.65", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.28", - "support_filament": "0", - "support_line_width": "0.55", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.65", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "support_interface_speed": "60", - "support_speed": "60", - "compatible_printers": [ - "Elegoo Neptune 4 Pro (0.6 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4Pro (0.8 nozzle).json b/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4Pro (0.8 nozzle).json deleted file mode 100644 index 23f7b641c58..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/0.28mm Extra Draft @Elegoo Neptune4Pro (0.8 nozzle).json +++ /dev/null @@ -1,89 +0,0 @@ -{ - "type": "process", - "name": "0.28mm Extra Draft @Elegoo Neptune4Pro (0.8 nozzle)", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "setting_id": "GP004", - "instantiation": "true", - "layer_height": "0.28", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "3", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.8", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.8", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.82", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.85", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.85", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.85", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.28", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "60", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.85", - "top_shell_layers": "4", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "compatible_printers": [ - "Elegoo Neptune 4 Pro (0.8 nozzle)" - ] -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.30mm Fine @Elegoo N4 1.0 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.30mm Fine @Elegoo N4 1.0 nozzle.json new file mode 100644 index 00000000000..15f7ee62369 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.30mm Fine @Elegoo N4 1.0 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.30mm Fine @Elegoo N4 1.0 nozzle", + "inherits": "0.50mm Standard @Elegoo N4 1.0 nozzle", + "instantiation": "true", + "layer_height": "0.3", + "settings_id": "PEN410030" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.30mm Fine @Elegoo N4Max 1.0 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.30mm Fine @Elegoo N4Max 1.0 nozzle.json new file mode 100644 index 00000000000..cce0306a49b --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.30mm Fine @Elegoo N4Max 1.0 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.30mm Fine @Elegoo N4Max 1.0 nozzle", + "inherits": "0.50mm Standard @Elegoo N4Max 1.0 nozzle", + "instantiation": "true", + "layer_height": "0.3", + "settings_id": "PEN4Max10030" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.30mm Fine @Elegoo N4Plus 1.0 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.30mm Fine @Elegoo N4Plus 1.0 nozzle.json new file mode 100644 index 00000000000..93242a56a96 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.30mm Fine @Elegoo N4Plus 1.0 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.30mm Fine @Elegoo N4Plus 1.0 nozzle", + "inherits": "0.50mm Standard @Elegoo N4Plus 1.0 nozzle", + "instantiation": "true", + "layer_height": "0.3", + "settings_id": "PEN4Plus10030" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.30mm Fine @Elegoo N4Pro 1.0 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.30mm Fine @Elegoo N4Pro 1.0 nozzle.json new file mode 100644 index 00000000000..6f173eb96ba --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.30mm Fine @Elegoo N4Pro 1.0 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.30mm Fine @Elegoo N4Pro 1.0 nozzle", + "inherits": "0.50mm Standard @Elegoo N4Pro 1.0 nozzle", + "instantiation": "true", + "layer_height": "0.3", + "settings_id": "PEN4Pro10030" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.30mm Standard @Elegoo N4 0.6 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.30mm Standard @Elegoo N4 0.6 nozzle.json new file mode 100644 index 00000000000..a4e6bd5921e --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.30mm Standard @Elegoo N4 0.6 nozzle.json @@ -0,0 +1,16 @@ +{ + "type": "process", + "name": "0.30mm Standard @Elegoo N4 0.6 nozzle", + "inherits": "fdm_process_elegoo_06030", + "from": "system", + "setting_id": "PEN406030", + "instantiation": "true", + "filename_format": "EN4_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "compatible_printers": [ + "Elegoo Neptune 4 0.6 nozzle" + ], + "default_acceleration": "6000", + "min_width_top_surface": "50%", + "outer_wall_acceleration": "5000", + "renamed_from": "0.20mm Standard @Elegoo Neptune4 (0.6 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.30mm Standard @Elegoo N4Max 0.6 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.30mm Standard @Elegoo N4Max 0.6 nozzle.json new file mode 100644 index 00000000000..1e2ca7c8898 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.30mm Standard @Elegoo N4Max 0.6 nozzle.json @@ -0,0 +1,16 @@ +{ + "type": "process", + "name": "0.30mm Standard @Elegoo N4Max 0.6 nozzle", + "inherits": "fdm_process_elegoo_06030", + "from": "system", + "setting_id": "PEN4Max06030", + "instantiation": "true", + "filename_format": "EN4Max_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "compatible_printers": [ + "Elegoo Neptune 4 Max 0.6 nozzle" + ], + "default_acceleration": "3000", + "min_width_top_surface": "50%", + "outer_wall_acceleration": "1500", + "renamed_from": "0.20mm Standard @Elegoo Neptune4Max (0.6 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.30mm Standard @Elegoo N4Plus 0.6 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.30mm Standard @Elegoo N4Plus 0.6 nozzle.json new file mode 100644 index 00000000000..e40635dcdf8 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.30mm Standard @Elegoo N4Plus 0.6 nozzle.json @@ -0,0 +1,16 @@ +{ + "type": "process", + "name": "0.30mm Standard @Elegoo N4Plus 0.6 nozzle", + "inherits": "fdm_process_elegoo_06030", + "from": "system", + "setting_id": "PEN4Plus06030", + "instantiation": "true", + "filename_format": "EN4Plus_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "compatible_printers": [ + "Elegoo Neptune 4 Plus 0.6 nozzle" + ], + "default_acceleration": "5000", + "min_width_top_surface": "50%", + "outer_wall_acceleration": "2500", + "renamed_from": "0.20mm Standard @Elegoo Neptune4 Plus (0.6 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.30mm Standard @Elegoo N4Pro 0.6 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.30mm Standard @Elegoo N4Pro 0.6 nozzle.json new file mode 100644 index 00000000000..f97ea71506c --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.30mm Standard @Elegoo N4Pro 0.6 nozzle.json @@ -0,0 +1,16 @@ +{ + "type": "process", + "name": "0.30mm Standard @Elegoo N4Pro 0.6 nozzle", + "inherits": "fdm_process_elegoo_06030", + "from": "system", + "setting_id": "PEN4Pro06030", + "instantiation": "true", + "filename_format": "EN4Pro_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "compatible_printers": [ + "Elegoo Neptune 4 Pro 0.6 nozzle" + ], + "default_acceleration": "6000", + "min_width_top_surface": "50%", + "outer_wall_acceleration": "5000", + "renamed_from": "0.20mm Standard @Elegoo Neptune4Pro (0.6 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.32mm Optimal @Elegoo N4 0.8 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.32mm Optimal @Elegoo N4 0.8 nozzle.json new file mode 100644 index 00000000000..1507f37e6d0 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.32mm Optimal @Elegoo N4 0.8 nozzle.json @@ -0,0 +1,9 @@ +{ + "type": "process", + "name": "0.32mm Optimal @Elegoo N4 0.8 nozzle", + "inherits": "0.40mm Standard @Elegoo N4 0.8 nozzle", + "instantiation": "true", + "layer_height": "0.32", + "settings_id": "PEN408032", + "renamed_from": "0.16mm Optimal @Elegoo Neptune4 (0.8 nozzle);0.28mm Extra Draft @Elegoo Neptune4 (0.8 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.32mm Optimal @Elegoo N4Max 0.8 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.32mm Optimal @Elegoo N4Max 0.8 nozzle.json new file mode 100644 index 00000000000..6553b8e0679 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.32mm Optimal @Elegoo N4Max 0.8 nozzle.json @@ -0,0 +1,9 @@ +{ + "type": "process", + "name": "0.32mm Optimal @Elegoo N4Max 0.8 nozzle", + "inherits": "0.40mm Standard @Elegoo N4Max 0.8 nozzle", + "instantiation": "true", + "layer_height": "0.32", + "settings_id": "PEN4Max08032", + "renamed_from": "0.16mm Optimal @Elegoo Neptune4Max (0.8 nozzle);0.28mm Extra Draft @Elegoo Neptune4Max (0.8 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.32mm Optimal @Elegoo N4Plus 0.8 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.32mm Optimal @Elegoo N4Plus 0.8 nozzle.json new file mode 100644 index 00000000000..55fb5cf4537 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.32mm Optimal @Elegoo N4Plus 0.8 nozzle.json @@ -0,0 +1,9 @@ +{ + "type": "process", + "name": "0.32mm Optimal @Elegoo N4Plus 0.8 nozzle", + "inherits": "0.40mm Standard @Elegoo N4Plus 0.8 nozzle", + "instantiation": "true", + "layer_height": "0.32", + "settings_id": "PEN4Plus08032", + "renamed_from": "0.16mm Optimal @Elegoo Neptune4 Plus (0.8 nozzle);0.28mm Extra Draft @Elegoo Neptune4 Plus (0.8 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.32mm Optimal @Elegoo N4Pro 0.8 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.32mm Optimal @Elegoo N4Pro 0.8 nozzle.json new file mode 100644 index 00000000000..84cfe1bc2f6 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.32mm Optimal @Elegoo N4Pro 0.8 nozzle.json @@ -0,0 +1,9 @@ +{ + "type": "process", + "name": "0.32mm Optimal @Elegoo N4Pro 0.8 nozzle", + "inherits": "0.40mm Standard @Elegoo N4Pro 0.8 nozzle", + "instantiation": "true", + "layer_height": "0.32", + "settings_id": "PEN4Pro08032", + "renamed_from": "0.16mm Optimal @Elegoo Neptune4Pro (0.8 nozzle);0.28mm Extra Draft @Elegoo Neptune4Pro (0.8 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.36mm Draft @Elegoo N4 0.6 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.36mm Draft @Elegoo N4 0.6 nozzle.json new file mode 100644 index 00000000000..e8946859817 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.36mm Draft @Elegoo N4 0.6 nozzle.json @@ -0,0 +1,9 @@ +{ + "type": "process", + "name": "0.36mm Draft @Elegoo N4 0.6 nozzle", + "inherits": "0.30mm Standard @Elegoo N4 0.6 nozzle", + "instantiation": "true", + "layer_height": "0.36", + "settings_id": "PEN406036", + "renamed_from": "0.24mm Draft @Elegoo Neptune4 (0.6 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.36mm Draft @Elegoo N4Max 0.6 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.36mm Draft @Elegoo N4Max 0.6 nozzle.json new file mode 100644 index 00000000000..2cd4e276418 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.36mm Draft @Elegoo N4Max 0.6 nozzle.json @@ -0,0 +1,9 @@ +{ + "type": "process", + "name": "0.36mm Draft @Elegoo N4Max 0.6 nozzle", + "inherits": "0.30mm Standard @Elegoo N4Max 0.6 nozzle", + "instantiation": "true", + "layer_height": "0.36", + "settings_id": "PEN4Max06036", + "renamed_from": "0.24mm Draft @Elegoo Neptune4Max (0.6 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.36mm Draft @Elegoo N4Plus 0.6 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.36mm Draft @Elegoo N4Plus 0.6 nozzle.json new file mode 100644 index 00000000000..d076a53a455 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.36mm Draft @Elegoo N4Plus 0.6 nozzle.json @@ -0,0 +1,9 @@ +{ + "type": "process", + "name": "0.36mm Draft @Elegoo N4Plus 0.6 nozzle", + "inherits": "0.30mm Standard @Elegoo N4Plus 0.6 nozzle", + "instantiation": "true", + "layer_height": "0.36", + "settings_id": "PEN4Plus06036", + "renamed_from": "0.24mm Draft @Elegoo Neptune4 Plus (0.6 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.36mm Draft @Elegoo N4Pro 0.6 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.36mm Draft @Elegoo N4Pro 0.6 nozzle.json new file mode 100644 index 00000000000..84aeaeb74c2 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.36mm Draft @Elegoo N4Pro 0.6 nozzle.json @@ -0,0 +1,9 @@ +{ + "type": "process", + "name": "0.36mm Draft @Elegoo N4Pro 0.6 nozzle", + "inherits": "0.30mm Standard @Elegoo N4Pro 0.6 nozzle", + "instantiation": "true", + "layer_height": "0.36", + "settings_id": "PEN4Pro06036", + "renamed_from": "0.24mm Draft @Elegoo Neptune4Pro (0.6 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.40mm Optimal @Elegoo N4 1.0 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.40mm Optimal @Elegoo N4 1.0 nozzle.json new file mode 100644 index 00000000000..4f019d2d762 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.40mm Optimal @Elegoo N4 1.0 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.40mm Optimal @Elegoo N4 1.0 nozzle", + "inherits": "0.50mm Standard @Elegoo N4 1.0 nozzle", + "instantiation": "true", + "layer_height": "0.4", + "settings_id": "PEN410040" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.40mm Optimal @Elegoo N4Max 1.0 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.40mm Optimal @Elegoo N4Max 1.0 nozzle.json new file mode 100644 index 00000000000..1be61172013 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.40mm Optimal @Elegoo N4Max 1.0 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.40mm Optimal @Elegoo N4Max 1.0 nozzle", + "inherits": "0.50mm Standard @Elegoo N4Max 1.0 nozzle", + "instantiation": "true", + "layer_height": "0.4", + "settings_id": "PEN4Max10040" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.40mm Optimal @Elegoo N4Plus 1.0 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.40mm Optimal @Elegoo N4Plus 1.0 nozzle.json new file mode 100644 index 00000000000..f439c9f829b --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.40mm Optimal @Elegoo N4Plus 1.0 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.40mm Optimal @Elegoo N4Plus 1.0 nozzle", + "inherits": "0.50mm Standard @Elegoo N4Plus 1.0 nozzle", + "instantiation": "true", + "layer_height": "0.4", + "settings_id": "PEN4Plus10040" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.40mm Optimal @Elegoo N4Pro 1.0 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.40mm Optimal @Elegoo N4Pro 1.0 nozzle.json new file mode 100644 index 00000000000..599d7d9ae97 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.40mm Optimal @Elegoo N4Pro 1.0 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.40mm Optimal @Elegoo N4Pro 1.0 nozzle", + "inherits": "0.50mm Standard @Elegoo N4Pro 1.0 nozzle", + "instantiation": "true", + "layer_height": "0.4", + "settings_id": "PEN4Pro10040" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.40mm Standard @Elegoo N4 0.8 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.40mm Standard @Elegoo N4 0.8 nozzle.json new file mode 100644 index 00000000000..15058a29b21 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.40mm Standard @Elegoo N4 0.8 nozzle.json @@ -0,0 +1,16 @@ +{ + "type": "process", + "name": "0.40mm Standard @Elegoo N4 0.8 nozzle", + "inherits": "fdm_process_elegoo_08040", + "from": "system", + "setting_id": "PEN408040", + "instantiation": "true", + "filename_format": "EN4_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "compatible_printers": [ + "Elegoo Neptune 4 0.8 nozzle" + ], + "default_acceleration": "6000", + "min_width_top_surface": "50%", + "outer_wall_acceleration": "5000", + "renamed_from": "0.20mm Standard @Elegoo Neptune4 (0.8 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.40mm Standard @Elegoo N4Max 0.8 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.40mm Standard @Elegoo N4Max 0.8 nozzle.json new file mode 100644 index 00000000000..908bb3b1909 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.40mm Standard @Elegoo N4Max 0.8 nozzle.json @@ -0,0 +1,16 @@ +{ + "type": "process", + "name": "0.40mm Standard @Elegoo N4Max 0.8 nozzle", + "inherits": "fdm_process_elegoo_08040", + "from": "system", + "setting_id": "PEN4Max08040", + "instantiation": "true", + "filename_format": "EN4Max_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "compatible_printers": [ + "Elegoo Neptune 4 Max 0.8 nozzle" + ], + "default_acceleration": "3000", + "min_width_top_surface": "50%", + "outer_wall_acceleration": "1500", + "renamed_from": "0.20mm Standard @Elegoo Neptune4Max (0.8 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.40mm Standard @Elegoo N4Plus 0.8 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.40mm Standard @Elegoo N4Plus 0.8 nozzle.json new file mode 100644 index 00000000000..f30cbf4af40 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.40mm Standard @Elegoo N4Plus 0.8 nozzle.json @@ -0,0 +1,16 @@ +{ + "type": "process", + "name": "0.40mm Standard @Elegoo N4Plus 0.8 nozzle", + "inherits": "fdm_process_elegoo_08040", + "from": "system", + "setting_id": "PEN4Plus08040", + "instantiation": "true", + "filename_format": "EN4Plus_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "compatible_printers": [ + "Elegoo Neptune 4 Plus 0.8 nozzle" + ], + "default_acceleration": "5000", + "min_width_top_surface": "50%", + "outer_wall_acceleration": "2500", + "renamed_from": "0.20mm Standard @Elegoo Neptune4 Plus (0.8 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.40mm Standard @Elegoo N4Pro 0.8 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.40mm Standard @Elegoo N4Pro 0.8 nozzle.json new file mode 100644 index 00000000000..97438369549 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.40mm Standard @Elegoo N4Pro 0.8 nozzle.json @@ -0,0 +1,16 @@ +{ + "type": "process", + "name": "0.40mm Standard @Elegoo N4Pro 0.8 nozzle", + "inherits": "fdm_process_elegoo_08040", + "from": "system", + "setting_id": "PEN4Pro08040", + "instantiation": "true", + "filename_format": "EN4Pro_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "compatible_printers": [ + "Elegoo Neptune 4 Pro 0.8 nozzle" + ], + "default_acceleration": "6000", + "min_width_top_surface": "50%", + "outer_wall_acceleration": "5000", + "renamed_from": "0.20mm Standard @Elegoo Neptune4Pro (0.8 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.42mm Extra Draft @Elegoo N4 0.6 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.42mm Extra Draft @Elegoo N4 0.6 nozzle.json new file mode 100644 index 00000000000..84e25cd1584 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.42mm Extra Draft @Elegoo N4 0.6 nozzle.json @@ -0,0 +1,9 @@ +{ + "type": "process", + "name": "0.42mm Extra Draft @Elegoo N4 0.6 nozzle", + "inherits": "0.30mm Standard @Elegoo N4 0.6 nozzle", + "instantiation": "true", + "layer_height": "0.42", + "settings_id": "PEN406042", + "renamed_from": "0.28mm Extra Draft @Elegoo Neptune4 (0.6 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.42mm Extra Draft @Elegoo N4Max 0.6 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.42mm Extra Draft @Elegoo N4Max 0.6 nozzle.json new file mode 100644 index 00000000000..e60d236b1d6 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.42mm Extra Draft @Elegoo N4Max 0.6 nozzle.json @@ -0,0 +1,9 @@ +{ + "type": "process", + "name": "0.42mm Extra Draft @Elegoo N4Max 0.6 nozzle", + "inherits": "0.30mm Standard @Elegoo N4Max 0.6 nozzle", + "instantiation": "true", + "layer_height": "0.42", + "settings_id": "PEN4Max06042", + "renamed_from": "0.28mm Extra Draft @Elegoo Neptune4Max (0.6 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.42mm Extra Draft @Elegoo N4Plus 0.6 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.42mm Extra Draft @Elegoo N4Plus 0.6 nozzle.json new file mode 100644 index 00000000000..93de50e8f52 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.42mm Extra Draft @Elegoo N4Plus 0.6 nozzle.json @@ -0,0 +1,9 @@ +{ + "type": "process", + "name": "0.42mm Extra Draft @Elegoo N4Plus 0.6 nozzle", + "inherits": "0.30mm Standard @Elegoo N4Plus 0.6 nozzle", + "instantiation": "true", + "layer_height": "0.42", + "settings_id": "PEN4Plus06042", + "renamed_from": "0.28mm Extra Draft @Elegoo Neptune4 Plus (0.6 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.42mm Extra Draft @Elegoo N4Pro 0.6 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.42mm Extra Draft @Elegoo N4Pro 0.6 nozzle.json new file mode 100644 index 00000000000..16f0520ea56 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.42mm Extra Draft @Elegoo N4Pro 0.6 nozzle.json @@ -0,0 +1,9 @@ +{ + "type": "process", + "name": "0.42mm Extra Draft @Elegoo N4Pro 0.6 nozzle", + "inherits": "0.30mm Standard @Elegoo N4Pro 0.6 nozzle", + "instantiation": "true", + "layer_height": "0.42", + "settings_id": "PEN4Pro06042", + "renamed_from": "0.28mm Extra Draft @Elegoo Neptune4Pro (0.6 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.48mm Draft @Elegoo N4 0.8 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.48mm Draft @Elegoo N4 0.8 nozzle.json new file mode 100644 index 00000000000..67b282e375b --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.48mm Draft @Elegoo N4 0.8 nozzle.json @@ -0,0 +1,9 @@ +{ + "type": "process", + "name": "0.48mm Draft @Elegoo N4 0.8 nozzle", + "inherits": "0.40mm Standard @Elegoo N4 0.8 nozzle", + "instantiation": "true", + "layer_height": "0.48", + "settings_id": "PEN408048", + "renamed_from": "0.24mm Draft @Elegoo Neptune4 (0.8 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.48mm Draft @Elegoo N4Max 0.8 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.48mm Draft @Elegoo N4Max 0.8 nozzle.json new file mode 100644 index 00000000000..41504b055d7 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.48mm Draft @Elegoo N4Max 0.8 nozzle.json @@ -0,0 +1,9 @@ +{ + "type": "process", + "name": "0.48mm Draft @Elegoo N4Max 0.8 nozzle", + "inherits": "0.40mm Standard @Elegoo N4Max 0.8 nozzle", + "instantiation": "true", + "layer_height": "0.48", + "settings_id": "PEN4Max08048", + "renamed_from": "0.24mm Draft @Elegoo Neptune4Max (0.8 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.48mm Draft @Elegoo N4Plus 0.8 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.48mm Draft @Elegoo N4Plus 0.8 nozzle.json new file mode 100644 index 00000000000..0bb6e5f8eed --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.48mm Draft @Elegoo N4Plus 0.8 nozzle.json @@ -0,0 +1,9 @@ +{ + "type": "process", + "name": "0.48mm Draft @Elegoo N4Plus 0.8 nozzle", + "inherits": "0.40mm Standard @Elegoo N4Plus 0.8 nozzle", + "instantiation": "true", + "layer_height": "0.48", + "settings_id": "PEN4Plus08048", + "renamed_from": "0.24mm Draft @Elegoo Neptune4 Plus (0.8 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.48mm Draft @Elegoo N4Pro 0.8 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.48mm Draft @Elegoo N4Pro 0.8 nozzle.json new file mode 100644 index 00000000000..8bb92eda1c2 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.48mm Draft @Elegoo N4Pro 0.8 nozzle.json @@ -0,0 +1,9 @@ +{ + "type": "process", + "name": "0.48mm Draft @Elegoo N4Pro 0.8 nozzle", + "inherits": "0.40mm Standard @Elegoo N4Pro 0.8 nozzle", + "instantiation": "true", + "layer_height": "0.48", + "settings_id": "PEN4Pro08048", + "renamed_from": "0.24mm Draft @Elegoo Neptune4Pro (0.8 nozzle)" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.50mm Standard @Elegoo N4 1.0 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.50mm Standard @Elegoo N4 1.0 nozzle.json new file mode 100644 index 00000000000..8ad0f87da41 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.50mm Standard @Elegoo N4 1.0 nozzle.json @@ -0,0 +1,15 @@ +{ + "type": "process", + "name": "0.50mm Standard @Elegoo N4 1.0 nozzle", + "inherits": "fdm_process_elegoo_10050", + "from": "system", + "setting_id": "PEN410050", + "instantiation": "true", + "filename_format": "EN4_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "compatible_printers": [ + "Elegoo Neptune 4 1.0 nozzle" + ], + "default_acceleration": "6000", + "min_width_top_surface": "50%", + "outer_wall_acceleration": "5000" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.50mm Standard @Elegoo N4Max 1.0 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.50mm Standard @Elegoo N4Max 1.0 nozzle.json new file mode 100644 index 00000000000..6bbb25a0225 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.50mm Standard @Elegoo N4Max 1.0 nozzle.json @@ -0,0 +1,15 @@ +{ + "type": "process", + "name": "0.50mm Standard @Elegoo N4Max 1.0 nozzle", + "inherits": "fdm_process_elegoo_10050", + "from": "system", + "setting_id": "PEN4Max10050", + "instantiation": "true", + "filename_format": "EN4Max_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "compatible_printers": [ + "Elegoo Neptune 4 Max 1.0 nozzle" + ], + "default_acceleration": "3000", + "min_width_top_surface": "50%", + "outer_wall_acceleration": "1500" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.50mm Standard @Elegoo N4Plus 1.0 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.50mm Standard @Elegoo N4Plus 1.0 nozzle.json new file mode 100644 index 00000000000..e9250cf0c18 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.50mm Standard @Elegoo N4Plus 1.0 nozzle.json @@ -0,0 +1,15 @@ +{ + "type": "process", + "name": "0.50mm Standard @Elegoo N4Plus 1.0 nozzle", + "inherits": "fdm_process_elegoo_10050", + "from": "system", + "setting_id": "PEN4Plus10050", + "instantiation": "true", + "filename_format": "EN4Plus_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "compatible_printers": [ + "Elegoo Neptune 4 Plus 1.0 nozzle" + ], + "default_acceleration": "5000", + "min_width_top_surface": "50%", + "outer_wall_acceleration": "2500" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.50mm Standard @Elegoo N4Pro 1.0 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.50mm Standard @Elegoo N4Pro 1.0 nozzle.json new file mode 100644 index 00000000000..d2b0a1489c5 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.50mm Standard @Elegoo N4Pro 1.0 nozzle.json @@ -0,0 +1,15 @@ +{ + "type": "process", + "name": "0.50mm Standard @Elegoo N4Pro 1.0 nozzle", + "inherits": "fdm_process_elegoo_10050", + "from": "system", + "setting_id": "PEN4Pro10050", + "instantiation": "true", + "filename_format": "EN4Pro_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", + "compatible_printers": [ + "Elegoo Neptune 4 Pro 1.0 nozzle" + ], + "default_acceleration": "6000", + "min_width_top_surface": "50%", + "outer_wall_acceleration": "5000" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.60mm Draft @Elegoo N4 1.0 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.60mm Draft @Elegoo N4 1.0 nozzle.json new file mode 100644 index 00000000000..6aa656f8108 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.60mm Draft @Elegoo N4 1.0 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.60mm Draft @Elegoo N4 1.0 nozzle", + "inherits": "0.50mm Standard @Elegoo N4 1.0 nozzle", + "instantiation": "true", + "layer_height": "0.6", + "settings_id": "PEN410060" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.60mm Draft @Elegoo N4Max 1.0 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.60mm Draft @Elegoo N4Max 1.0 nozzle.json new file mode 100644 index 00000000000..e6d2591dd95 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.60mm Draft @Elegoo N4Max 1.0 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.60mm Draft @Elegoo N4Max 1.0 nozzle", + "inherits": "0.50mm Standard @Elegoo N4Max 1.0 nozzle", + "instantiation": "true", + "layer_height": "0.6", + "settings_id": "PEN4Max10060" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.60mm Draft @Elegoo N4Plus 1.0 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.60mm Draft @Elegoo N4Plus 1.0 nozzle.json new file mode 100644 index 00000000000..b30d5f60f40 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.60mm Draft @Elegoo N4Plus 1.0 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.60mm Draft @Elegoo N4Plus 1.0 nozzle", + "inherits": "0.50mm Standard @Elegoo N4Plus 1.0 nozzle", + "instantiation": "true", + "layer_height": "0.6", + "settings_id": "PEN4Plus10060" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/0.60mm Draft @Elegoo N4Pro 1.0 nozzle.json b/resources/profiles/Elegoo/process/EN4SERIES/0.60mm Draft @Elegoo N4Pro 1.0 nozzle.json new file mode 100644 index 00000000000..7ed9c5d98b4 --- /dev/null +++ b/resources/profiles/Elegoo/process/EN4SERIES/0.60mm Draft @Elegoo N4Pro 1.0 nozzle.json @@ -0,0 +1,8 @@ +{ + "type": "process", + "name": "0.60mm Draft @Elegoo N4Pro 1.0 nozzle", + "inherits": "0.50mm Standard @Elegoo N4Pro 1.0 nozzle", + "instantiation": "true", + "layer_height": "0.6", + "settings_id": "PEN4Pro10060" +} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/fdm_process_neptune4_common.json b/resources/profiles/Elegoo/process/EN4SERIES/fdm_process_neptune4_common.json deleted file mode 100644 index 883fd265502..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/fdm_process_neptune4_common.json +++ /dev/null @@ -1,115 +0,0 @@ -{ - "type": "process", - "name": "fdm_process_neptune4_common", - "inherits": "fdm_process_elegoo_common", - "from": "system", - "instantiation": "false", - "layer_height": "0.08", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", - "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "9", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "internal_bridge_speed": "70", - "brim_width": "0", - "brim_object_gap": "0.1", - "compatible_printers_condition": "", - "print_sequence": "by layer", - "bridge_no_support": "0", - "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.2", - "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.2", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.22", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.25", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", - "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", - "detect_overhang_wall": "1", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", - "resolution": "0.012", - "support_type": "normal(auto)", - "support_style": "default", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.08", - "support_filament": "0", - "support_line_width": "0.2", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", - "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "60", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "150", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", - "tree_support_branch_angle": "45", - "tree_support_wall_count": "0", - "detect_thin_wall": "0", - "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.2", - "top_shell_layers": "11", - "top_shell_thickness": "0.8", - "enable_prime_tower": "1", - "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "default_acceleration": "5000", - "top_surface_acceleration": "2000", - "initial_layer_acceleration": "1000", - "travel_acceleration": "5000", - "inner_wall_acceleration": "3000", - "outer_wall_acceleration": "3000", - "accel_to_decel_factor": "50%", - "default_jerk": "9", - "initial_layer_jerk": "7", - "outer_wall_jerk": "7", - "infill_jerk": "9", - "travel_jerk": "9", - "inner_wall_jerk": "7", - "top_surface_jerk": "7", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "50", - "overhang_3_4_speed": "30", - "overhang_4_4_speed": "10", - "initial_layer_speed": "50", - "initial_layer_infill_speed": "80", - "outer_wall_speed": "120", - "inner_wall_speed": "200", - "internal_solid_infill_speed": "200", - "top_surface_speed": "120", - "gap_infill_speed": "120", - "sparse_infill_speed": "200", - "travel_speed": "350", - "exclude_object": "1" -} diff --git a/resources/profiles/Elegoo/process/EN4SERIES/fdm_process_neptune4max_common.json b/resources/profiles/Elegoo/process/EN4SERIES/fdm_process_neptune4max_common.json deleted file mode 100644 index 52a9dc58edb..00000000000 --- a/resources/profiles/Elegoo/process/EN4SERIES/fdm_process_neptune4max_common.json +++ /dev/null @@ -1,35 +0,0 @@ -{ - "type": "process", - "name": "fdm_process_neptune4max_common", - "inherits": "fdm_process_neptune4_common", - "from": "system", - "instantiation": "false", - "default_acceleration": "3000", - "top_surface_acceleration": "2000", - "initial_layer_acceleration": "1000", - "inner_wall_acceleration": "2000", - "outer_wall_acceleration": "2000", - "travel_acceleration": "3000", - "accel_to_decel_factor": "50%", - "default_jerk": "7", - "initial_layer_jerk": "7", - "outer_wall_jerk": "6", - "inner_wall_jerk": "6", - "infill_jerk": "7", - "travel_jerk": "7", - "top_surface_jerk": "7", - "overhang_1_4_speed": "0", - "overhang_2_4_speed": "50", - "overhang_3_4_speed": "30", - "overhang_4_4_speed": "10", - "initial_layer_speed": "50", - "initial_layer_infill_speed": "80", - "outer_wall_speed": "120", - "inner_wall_speed": "160", - "internal_solid_infill_speed": "200", - "top_surface_speed": "120", - "gap_infill_speed": "120", - "sparse_infill_speed": "200", - "travel_speed": "300", - "exclude_object": "1" -} diff --git a/resources/profiles/Elegoo/process/EOSGIGA/0.16mm Optimal @Elegoo Giga 0.4 nozzle.json b/resources/profiles/Elegoo/process/EOSGIGA/0.16mm Optimal @Elegoo Giga 0.4 nozzle.json index f78e63d0ce5..8667a1bbc99 100644 --- a/resources/profiles/Elegoo/process/EOSGIGA/0.16mm Optimal @Elegoo Giga 0.4 nozzle.json +++ b/resources/profiles/Elegoo/process/EOSGIGA/0.16mm Optimal @Elegoo Giga 0.4 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.16mm Optimal @Elegoo Giga 0.4 nozzle", "inherits": "0.20mm Standard @Elegoo Giga 0.4 nozzle", + "layer_height": "0.16", "instantiation": "true", - "layer_height": "0.16" + "name": "0.16mm Optimal @Elegoo Giga 0.4 nozzle" } diff --git a/resources/profiles/Elegoo/process/EOSGIGA/0.18mm Fine @Elegoo Giga 0.6 nozzle.json b/resources/profiles/Elegoo/process/EOSGIGA/0.18mm Fine @Elegoo Giga 0.6 nozzle.json index 5a9614a73e5..1e52b73ec6d 100644 --- a/resources/profiles/Elegoo/process/EOSGIGA/0.18mm Fine @Elegoo Giga 0.6 nozzle.json +++ b/resources/profiles/Elegoo/process/EOSGIGA/0.18mm Fine @Elegoo Giga 0.6 nozzle.json @@ -1,9 +1,8 @@ { - "type": "process", - "name": "0.18mm Fine @Elegoo Giga 0.6 nozzle", "inherits": "0.30mm Standard @Elegoo Giga 0.6 nozzle", - "instantiation": "true", "layer_height": "0.18", + "instantiation": "true", + "name": "0.18mm Fine @Elegoo Giga 0.6 nozzle", "compatible_printers": [ "Elegoo OrangeStorm Giga 0.6 nozzle" ] diff --git a/resources/profiles/Elegoo/process/EOSGIGA/0.20mm Standard @Elegoo Giga 0.4 nozzle.json b/resources/profiles/Elegoo/process/EOSGIGA/0.20mm Standard @Elegoo Giga 0.4 nozzle.json index 9c2e53fd24c..e1ad8c344ad 100644 --- a/resources/profiles/Elegoo/process/EOSGIGA/0.20mm Standard @Elegoo Giga 0.4 nozzle.json +++ b/resources/profiles/Elegoo/process/EOSGIGA/0.20mm Standard @Elegoo Giga 0.4 nozzle.json @@ -5,7 +5,8 @@ "from": "system", "setting_id": "PEOSG04020", "instantiation": "true", - "filename_format": "EOGiga1_{nozzle_diameter[0]}_{input_filename_base}_{filament_type[0]}{layer_height}_{print_time}.gcode", + "default_acceleration": "3000", + "filename_format": "EOGiga1_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", "initial_layer_print_height": "0.25", "print_flow_ratio": "1.0", "compatible_printers": [ diff --git a/resources/profiles/Elegoo/process/EOSGIGA/0.20mm Strength @Elegoo Giga 0.4 nozzle.json b/resources/profiles/Elegoo/process/EOSGIGA/0.20mm Strength @Elegoo Giga 0.4 nozzle.json index 4639f509665..7acb40bb703 100644 --- a/resources/profiles/Elegoo/process/EOSGIGA/0.20mm Strength @Elegoo Giga 0.4 nozzle.json +++ b/resources/profiles/Elegoo/process/EOSGIGA/0.20mm Strength @Elegoo Giga 0.4 nozzle.json @@ -1,7 +1,8 @@ { - "type": "process", - "name": "0.20mm Strength @Elegoo Giga 0.4 nozzle", "inherits": "0.20mm Standard @Elegoo Giga 0.4 nozzle", + "name": "0.20mm Strength @Elegoo Giga 0.4 nozzle", + "wall_sequence": "inner-outer-inner wall", + "reduce_crossing_wall": "1", "instantiation": "true", "wall_loops": "6" } diff --git a/resources/profiles/Elegoo/process/EOSGIGA/0.24mm Draft @Elegoo Giga 0.4 nozzle.json b/resources/profiles/Elegoo/process/EOSGIGA/0.24mm Draft @Elegoo Giga 0.4 nozzle.json index b55626d530b..4b9c599c72d 100644 --- a/resources/profiles/Elegoo/process/EOSGIGA/0.24mm Draft @Elegoo Giga 0.4 nozzle.json +++ b/resources/profiles/Elegoo/process/EOSGIGA/0.24mm Draft @Elegoo Giga 0.4 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.24mm Draft @Elegoo Giga 0.4 nozzle", "inherits": "0.20mm Standard @Elegoo Giga 0.4 nozzle", + "layer_height": "0.24", "instantiation": "true", - "layer_height": "0.24" + "name": "0.24mm Draft @Elegoo Giga 0.4 nozzle" } diff --git a/resources/profiles/Elegoo/process/EOSGIGA/0.24mm Fine @Elegoo Giga 0.8 nozzle.json b/resources/profiles/Elegoo/process/EOSGIGA/0.24mm Fine @Elegoo Giga 0.8 nozzle.json index 62e6e9961c1..559d02aad44 100644 --- a/resources/profiles/Elegoo/process/EOSGIGA/0.24mm Fine @Elegoo Giga 0.8 nozzle.json +++ b/resources/profiles/Elegoo/process/EOSGIGA/0.24mm Fine @Elegoo Giga 0.8 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.24mm Fine @Elegoo Giga 0.8 nozzle", "inherits": "0.40mm Standard @Elegoo Giga 0.8 nozzle", + "layer_height": "0.24", "instantiation": "true", - "layer_height": "0.24" + "name": "0.24mm Fine @Elegoo Giga 0.8 nozzle" } diff --git a/resources/profiles/Elegoo/process/EOSGIGA/0.24mm Optimal @Elegoo Giga 0.6 nozzle.json b/resources/profiles/Elegoo/process/EOSGIGA/0.24mm Optimal @Elegoo Giga 0.6 nozzle.json index e712afb2f02..5386ff6e49f 100644 --- a/resources/profiles/Elegoo/process/EOSGIGA/0.24mm Optimal @Elegoo Giga 0.6 nozzle.json +++ b/resources/profiles/Elegoo/process/EOSGIGA/0.24mm Optimal @Elegoo Giga 0.6 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.24mm Optimal @Elegoo Giga 0.6 nozzle", "inherits": "0.30mm Standard @Elegoo Giga 0.6 nozzle", + "layer_height": "0.24", "instantiation": "true", - "layer_height": "0.24" + "name": "0.24mm Optimal @Elegoo Giga 0.6 nozzle" } diff --git a/resources/profiles/Elegoo/process/EOSGIGA/0.28mm Extra Draft @Elegoo Giga 0.4 nozzle.json b/resources/profiles/Elegoo/process/EOSGIGA/0.28mm Extra Draft @Elegoo Giga 0.4 nozzle.json index 8fe71974baf..c661130a05d 100644 --- a/resources/profiles/Elegoo/process/EOSGIGA/0.28mm Extra Draft @Elegoo Giga 0.4 nozzle.json +++ b/resources/profiles/Elegoo/process/EOSGIGA/0.28mm Extra Draft @Elegoo Giga 0.4 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.28mm Extra Draft @Elegoo Giga 0.4 nozzle", "inherits": "0.20mm Standard @Elegoo Giga 0.4 nozzle", + "layer_height": "0.28", "instantiation": "true", - "layer_height": "0.28" + "name": "0.28mm Extra Draft @Elegoo Giga 0.4 nozzle" } diff --git a/resources/profiles/Elegoo/process/EOSGIGA/0.30mm Fine @Elegoo Giga 1.0 nozzle.json b/resources/profiles/Elegoo/process/EOSGIGA/0.30mm Fine @Elegoo Giga 1.0 nozzle.json index 2f333fa7183..8531d718b54 100644 --- a/resources/profiles/Elegoo/process/EOSGIGA/0.30mm Fine @Elegoo Giga 1.0 nozzle.json +++ b/resources/profiles/Elegoo/process/EOSGIGA/0.30mm Fine @Elegoo Giga 1.0 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.30mm Fine @Elegoo Giga 1.0 nozzle", "inherits": "0.50mm Standard @Elegoo Giga 1.0 nozzle", + "layer_height": "0.3", "instantiation": "true", - "layer_height": "0.3" + "name": "0.30mm Fine @Elegoo Giga 1.0 nozzle" } diff --git a/resources/profiles/Elegoo/process/EOSGIGA/0.30mm Standard @Elegoo Giga 0.6 nozzle.json b/resources/profiles/Elegoo/process/EOSGIGA/0.30mm Standard @Elegoo Giga 0.6 nozzle.json index ea40f055276..3f16262ffd1 100644 --- a/resources/profiles/Elegoo/process/EOSGIGA/0.30mm Standard @Elegoo Giga 0.6 nozzle.json +++ b/resources/profiles/Elegoo/process/EOSGIGA/0.30mm Standard @Elegoo Giga 0.6 nozzle.json @@ -6,15 +6,14 @@ "setting_id": "PEOSG06030", "instantiation": "true", "default_acceleration": "3000", - "filename_format": "EOGiga1_{nozzle_diameter[0]}_{input_filename_base}_{filament_type[0]}{layer_height}_{print_time}.gcode", + "filename_format": "EOGiga1_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", "initial_layer_acceleration": "1000", - "inner_wall_acceleration": "3000", + "is_custom_defined": "0", "make_overhang_printable_angle": "90", "outer_wall_acceleration": "2000", "resolution": "0.05", "thick_internal_bridges": "0", "top_shell_layers": "4", - "travel_acceleration": "3000", "travel_speed": "300", "detect_thin_wall": "0", "bridge_speed": "50", diff --git a/resources/profiles/Elegoo/process/EOSGIGA/0.30mm Strength @Elegoo Giga 0.6 nozzle.json b/resources/profiles/Elegoo/process/EOSGIGA/0.30mm Strength @Elegoo Giga 0.6 nozzle.json index c74737452aa..f6737db3096 100644 --- a/resources/profiles/Elegoo/process/EOSGIGA/0.30mm Strength @Elegoo Giga 0.6 nozzle.json +++ b/resources/profiles/Elegoo/process/EOSGIGA/0.30mm Strength @Elegoo Giga 0.6 nozzle.json @@ -1,7 +1,8 @@ { - "type": "process", - "name": "0.30mm Strength @Elegoo Giga 0.6 nozzle", "inherits": "0.30mm Standard @Elegoo Giga 0.6 nozzle", + "name": "0.30mm Strength @Elegoo Giga 0.6 nozzle", + "wall_sequence": "inner-outer-inner wall", + "reduce_crossing_wall": "1", "instantiation": "true", "wall_loops": "5" } diff --git a/resources/profiles/Elegoo/process/EOSGIGA/0.32mm Optimal @Elegoo Giga 0.8 nozzle.json b/resources/profiles/Elegoo/process/EOSGIGA/0.32mm Optimal @Elegoo Giga 0.8 nozzle.json index 581f8126a40..8358b1841ec 100644 --- a/resources/profiles/Elegoo/process/EOSGIGA/0.32mm Optimal @Elegoo Giga 0.8 nozzle.json +++ b/resources/profiles/Elegoo/process/EOSGIGA/0.32mm Optimal @Elegoo Giga 0.8 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.32mm Optimal @Elegoo Giga 0.8 nozzle", "inherits": "0.40mm Standard @Elegoo Giga 0.8 nozzle", + "layer_height": "0.32", "instantiation": "true", - "layer_height": "0.32" + "name": "0.32mm Optimal @Elegoo Giga 0.8 nozzle" } diff --git a/resources/profiles/Elegoo/process/EOSGIGA/0.36mm Draft @Elegoo Giga 0.6 nozzle.json b/resources/profiles/Elegoo/process/EOSGIGA/0.36mm Draft @Elegoo Giga 0.6 nozzle.json index d925d73debf..81ccb6eb3cf 100644 --- a/resources/profiles/Elegoo/process/EOSGIGA/0.36mm Draft @Elegoo Giga 0.6 nozzle.json +++ b/resources/profiles/Elegoo/process/EOSGIGA/0.36mm Draft @Elegoo Giga 0.6 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.36mm Draft @Elegoo Giga 0.6 nozzle", "inherits": "0.30mm Standard @Elegoo Giga 0.6 nozzle", + "layer_height": "0.36", "instantiation": "true", - "layer_height": "0.36" + "name": "0.36mm Draft @Elegoo Giga 0.6 nozzle" } diff --git a/resources/profiles/Elegoo/process/EOSGIGA/0.40mm Optimal @Elegoo Giga 1.0 nozzle.json b/resources/profiles/Elegoo/process/EOSGIGA/0.40mm Optimal @Elegoo Giga 1.0 nozzle.json index 8f5d07edcb4..9d1d99ea00c 100644 --- a/resources/profiles/Elegoo/process/EOSGIGA/0.40mm Optimal @Elegoo Giga 1.0 nozzle.json +++ b/resources/profiles/Elegoo/process/EOSGIGA/0.40mm Optimal @Elegoo Giga 1.0 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.40mm Optimal @Elegoo Giga 1.0 nozzle", "inherits": "0.50mm Standard @Elegoo Giga 1.0 nozzle", + "layer_height": "0.4", "instantiation": "true", - "layer_height": "0.4" + "name": "0.40mm Optimal @Elegoo Giga 1.0 nozzle" } diff --git a/resources/profiles/Elegoo/process/EOSGIGA/0.40mm Standard @Elegoo Giga 0.8 nozzle.json b/resources/profiles/Elegoo/process/EOSGIGA/0.40mm Standard @Elegoo Giga 0.8 nozzle.json index ab84abdbf87..f5001c8a5ad 100644 --- a/resources/profiles/Elegoo/process/EOSGIGA/0.40mm Standard @Elegoo Giga 0.8 nozzle.json +++ b/resources/profiles/Elegoo/process/EOSGIGA/0.40mm Standard @Elegoo Giga 0.8 nozzle.json @@ -6,15 +6,13 @@ "setting_id": "PEOSG08040", "instantiation": "true", "default_acceleration": "3000", - "filename_format": "EOGiga1_{nozzle_diameter[0]}_{input_filename_base}_{filament_type[0]}{layer_height}_{print_time}.gcode", + "filename_format": "EOGiga1_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", "initial_layer_acceleration": "1000", - "inner_wall_acceleration": "3000", "make_overhang_printable_angle": "90", "outer_wall_acceleration": "2000", "resolution": "0.05", "thick_internal_bridges": "0", "top_shell_layers": "4", - "travel_acceleration": "3000", "initial_layer_infill_speed": "60", "initial_layer_speed": "45", "travel_speed": "300", diff --git a/resources/profiles/Elegoo/process/EOSGIGA/0.42mm Extra Draft @Elegoo Giga 0.6 nozzle.json b/resources/profiles/Elegoo/process/EOSGIGA/0.42mm Extra Draft @Elegoo Giga 0.6 nozzle.json index 3fbaacdaa49..e69eae78530 100644 --- a/resources/profiles/Elegoo/process/EOSGIGA/0.42mm Extra Draft @Elegoo Giga 0.6 nozzle.json +++ b/resources/profiles/Elegoo/process/EOSGIGA/0.42mm Extra Draft @Elegoo Giga 0.6 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.42mm Extra Draft @Elegoo Giga 0.6 nozzle", "inherits": "0.30mm Standard @Elegoo Giga 0.6 nozzle", + "layer_height": "0.42", "instantiation": "true", - "layer_height": "0.42" + "name": "0.42mm Extra Draft @Elegoo Giga 0.6 nozzle" } diff --git a/resources/profiles/Elegoo/process/EOSGIGA/0.48mm Draft @Elegoo Giga 0.8 nozzle.json b/resources/profiles/Elegoo/process/EOSGIGA/0.48mm Draft @Elegoo Giga 0.8 nozzle.json index 1fd6f0d2dc6..460d3a49480 100644 --- a/resources/profiles/Elegoo/process/EOSGIGA/0.48mm Draft @Elegoo Giga 0.8 nozzle.json +++ b/resources/profiles/Elegoo/process/EOSGIGA/0.48mm Draft @Elegoo Giga 0.8 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.48mm Draft @Elegoo Giga 0.8 nozzle", "inherits": "0.40mm Standard @Elegoo Giga 0.8 nozzle", + "layer_height": "0.48", "instantiation": "true", - "layer_height": "0.48" + "name": "0.48mm Draft @Elegoo Giga 0.8 nozzle" } diff --git a/resources/profiles/Elegoo/process/EOSGIGA/0.50mm Standard @Elegoo Giga 1.0 nozzle.json b/resources/profiles/Elegoo/process/EOSGIGA/0.50mm Standard @Elegoo Giga 1.0 nozzle.json index f0e4b1625f1..dd40cac3243 100644 --- a/resources/profiles/Elegoo/process/EOSGIGA/0.50mm Standard @Elegoo Giga 1.0 nozzle.json +++ b/resources/profiles/Elegoo/process/EOSGIGA/0.50mm Standard @Elegoo Giga 1.0 nozzle.json @@ -1,20 +1,17 @@ { - "type": "process", - "name": "0.50mm Standard @Elegoo Giga 1.0 nozzle", "inherits": "fdm_process_elegoo_10050", + "name": "0.50mm Standard @Elegoo Giga 1.0 nozzle", "from": "system", "setting_id": "PEOSG10050", "instantiation": "true", "default_acceleration": "3000", - "filename_format": "EOGiga1_{nozzle_diameter[0]}_{input_filename_base}_{filament_type[0]}{layer_height}_{print_time}.gcode", + "filename_format": "EOGiga1_{nozzle_diameter[0]}_{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", "initial_layer_acceleration": "1000", - "inner_wall_acceleration": "3000", "make_overhang_printable_angle": "90", "outer_wall_acceleration": "2000", "resolution": "0.05", "thick_internal_bridges": "0", "top_shell_layers": "4", - "travel_acceleration": "3000", "travel_speed": "300", "detect_thin_wall": "0", "bridge_speed": "20", diff --git a/resources/profiles/Elegoo/process/EOSGIGA/0.56mm Extra Draft @Elegoo Giga 0.8 nozzle.json b/resources/profiles/Elegoo/process/EOSGIGA/0.56mm Extra Draft @Elegoo Giga 0.8 nozzle.json index ef04483ace6..9003b1cdb3b 100644 --- a/resources/profiles/Elegoo/process/EOSGIGA/0.56mm Extra Draft @Elegoo Giga 0.8 nozzle.json +++ b/resources/profiles/Elegoo/process/EOSGIGA/0.56mm Extra Draft @Elegoo Giga 0.8 nozzle.json @@ -1,6 +1,5 @@ { - "type": "process", - "name": "0.56mm Extra Draft @Elegoo Giga 0.8 nozzle", "inherits": "0.40mm Standard @Elegoo Giga 0.8 nozzle", - "instantiation": "true" + "instantiation": "true", + "name": "0.56mm Extra Draft @Elegoo Giga 0.8 nozzle" } diff --git a/resources/profiles/Elegoo/process/EOSGIGA/0.60mm Draft @Elegoo Giga 1.0 nozzle.json b/resources/profiles/Elegoo/process/EOSGIGA/0.60mm Draft @Elegoo Giga 1.0 nozzle.json index 480cf6db885..1d50fcf903d 100644 --- a/resources/profiles/Elegoo/process/EOSGIGA/0.60mm Draft @Elegoo Giga 1.0 nozzle.json +++ b/resources/profiles/Elegoo/process/EOSGIGA/0.60mm Draft @Elegoo Giga 1.0 nozzle.json @@ -1,7 +1,6 @@ { - "type": "process", - "name": "0.60mm Draft @Elegoo Giga 1.0 nozzle", "inherits": "0.50mm Standard @Elegoo Giga 1.0 nozzle", + "layer_height": "0.6", "instantiation": "true", - "layer_height": "0.6" + "name": "0.60mm Draft @Elegoo Giga 1.0 nozzle" } diff --git a/resources/profiles/Elegoo/process/fdm_process_common.json b/resources/profiles/Elegoo/process/fdm_process_common.json index a3fe34bea48..a2bd0ea5f13 100644 --- a/resources/profiles/Elegoo/process/fdm_process_common.json +++ b/resources/profiles/Elegoo/process/fdm_process_common.json @@ -8,33 +8,34 @@ "bridge_flow": "0.95", "bridge_speed": "25", "brim_width": "5", - "compatible_printers": [], "print_sequence": "by layer", "default_acceleration": "10000", + "travel_acceleration": "0", + "inner_wall_acceleration": "0", "bridge_no_support": "0", "elefant_foot_compensation": "0.1", - "outer_wall_line_width": "0.4", + "outer_wall_line_width": "0.42", "outer_wall_speed": "120", "line_width": "0.45", "infill_direction": "45", "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", + "sparse_infill_pattern": "grid", "initial_layer_line_width": "0.42", "initial_layer_print_height": "0.2", "initial_layer_speed": "20", "gap_infill_speed": "30", "infill_combination": "0", "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", + "infill_wall_overlap": "15%", "sparse_infill_speed": "50", + "overhang_speed_classic": "1", "interface_shells": "0", "detect_overhang_wall": "0", - "reduce_infill_retraction": "0", + "reduce_infill_retraction": "1", "filename_format": "{input_filename_base}.gcode", - "wall_loops": "3", + "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", @@ -54,17 +55,31 @@ "support_interface_top_layers": "2", "support_interface_spacing": "0", "support_interface_speed": "80", - "support_base_pattern": "rectilinear", + "support_interface_pattern": "auto", + "support_base_pattern": "default", "support_base_pattern_spacing": "2", "support_speed": "40", - "support_threshold_angle": "30", + "support_threshold_angle": "40", "support_object_xy_distance": "0.5", + "tree_support_angle_slow": "30", + "tree_support_branch_angle_organic": "45", + "tree_support_branch_diameter_double_wall": "10", + "tree_support_branch_distance_organic": "5", + "tree_support_tip_diameter": "2", "detect_thin_wall": "0", - "top_surface_line_width": "0.4", + "top_surface_line_width": "0.42", "top_surface_speed": "30", "travel_speed": "400", - "enable_prime_tower": "1", + "enable_prime_tower": "0", "prime_tower_width": "60", "xy_hole_compensation": "0", - "xy_contour_compensation": "0" + "xy_contour_compensation": "0", + "role_based_wipe_speed": "1", + "detect_narrow_internal_solid_infill": "1", + "top_shell_thickness": "0.8", + "bottom_shell_thickness": "0.8", + "gap_fill_target": "everywhere", + "filter_out_gap_fill": "1", + "ensure_vertical_shell_thickness": "ensure_all", + "compatible_printers": [] } diff --git a/resources/profiles/Elegoo/process/fdm_process_elegoo_02010.json b/resources/profiles/Elegoo/process/fdm_process_elegoo_02010.json index 615c0eeccd3..30fa79753b3 100644 --- a/resources/profiles/Elegoo/process/fdm_process_elegoo_02010.json +++ b/resources/profiles/Elegoo/process/fdm_process_elegoo_02010.json @@ -24,6 +24,7 @@ "sparse_infill_speed": "100", "inner_wall_speed": "100", "internal_solid_infill_speed": "100", + "is_custom_defined": "0", "outer_wall_speed": "60", "top_surface_speed": "80" } diff --git a/resources/profiles/Elegoo/process/fdm_process_elegoo_common.json b/resources/profiles/Elegoo/process/fdm_process_elegoo_common.json index 60b3fc8eab2..2ca6daf45b0 100644 --- a/resources/profiles/Elegoo/process/fdm_process_elegoo_common.json +++ b/resources/profiles/Elegoo/process/fdm_process_elegoo_common.json @@ -4,100 +4,91 @@ "inherits": "fdm_process_common", "from": "system", "instantiation": "false", - "adaptive_layer_height": "1", - "reduce_crossing_wall": "0", "max_travel_detour_distance": "0", "bottom_surface_pattern": "monotonic", - "bottom_shell_layers": "9", - "bottom_shell_thickness": "0", - "bridge_flow": "0.95", - "bridge_speed": "25", - "brim_width": "0", + "bottom_shell_layers": "4", + "bridge_speed": "50", "brim_object_gap": "0.1", "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "200", - "top_surface_acceleration": "30", - "bridge_no_support": "0", "draft_shield": "disabled", - "elefant_foot_compensation": "0.1", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.4", + "elefant_foot_compensation": "0.05", + "enable_arc_fitting": "1", + "outer_wall_acceleration": "5000", "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.4", - "infill_direction": "45", - "sparse_infill_density": "15%", - "sparse_infill_pattern": "crosshatch", - "initial_layer_acceleration": "20", - "travel_acceleration": "200", - "inner_wall_acceleration": "200", - "initial_layer_line_width": "0.42", - "initial_layer_print_height": "0.2", - "infill_combination": "0", - "sparse_infill_line_width": "0.45", - "infill_wall_overlap": "25%", - "interface_shells": "0", - "ironing_flow": "15%", - "ironing_spacing": "0.1", - "ironing_speed": "15", + "line_width": "0.42", + "internal_bridge_support_thickness": "0.8", + "initial_layer_acceleration": "500", + "initial_layer_line_width": "0.5", + "initial_layer_speed": "30", + "gap_infill_speed": "50", + "sparse_infill_speed": "250", + "ironing_flow": "10%", + "ironing_spacing": "0.15", + "ironing_speed": "30", "ironing_type": "no ironing", - "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{layer_height}mm_{filament_type[0]}_{printer_model}_{print_time}.gcode", + "layer_height": "0.2", + "filename_format": "{input_filename_base}_{filament_name}_{layer_height}_{print_time}.gcode", "detect_overhang_wall": "1", "overhang_1_4_speed": "0", - "overhang_2_4_speed": "20", - "overhang_3_4_speed": "15", + "overhang_2_4_speed": "50", + "overhang_3_4_speed": "30", "overhang_4_4_speed": "10", - "inner_wall_line_width": "0.45", - "wall_loops": "3", - "print_settings_id": "", - "raft_layers": "0", + "only_one_wall_top": "1", + "inner_wall_speed": "150", "seam_position": "aligned", - "skirt_distance": "1", - "skirt_height": "2", - "skirt_loops": "1", - "minimum_sparse_infill_area": "25", - "internal_solid_infill_line_width": "0.45", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "0", + "skirt_height": "1", + "skirt_loops": "0", + "sparse_infill_density": "15%", + "sparse_infill_pattern": "cubic", + "top_bottom_infill_wall_overlap": "5%", + "infill_anchor": "400%", + "infill_anchor_max": "40", + "minimum_sparse_infill_area": "15", + "internal_solid_infill_line_width": "0.42", + "internal_solid_infill_speed": "150", + "initial_layer_infill_speed": "60", "resolution": "0.012", "support_type": "normal(auto)", "support_style": "default", - "support_on_build_plate_only": "0", "support_top_z_distance": "0.2", - "support_filament": "0", - "support_line_width": "0.38", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "2", + "support_bottom_z_distance": "0.2", "support_interface_bottom_layers": "2", - "support_interface_spacing": "0.2", - "support_interface_speed": "100", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2", - "support_speed": "40", + "support_interface_spacing": "0.5", + "support_expansion": "0", + "support_base_pattern_spacing": "2.5", + "support_speed": "150", "support_threshold_angle": "30", "support_object_xy_distance": "0.35", + "tree_support_branch_diameter": "2", "tree_support_branch_angle": "45", "tree_support_wall_count": "0", - "detect_thin_wall": "0", "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.38", + "top_surface_acceleration": "2000", + "top_surface_speed": "200", "top_shell_layers": "3", - "top_shell_thickness": "0.8", - "initial_layer_speed": "20", - "initial_layer_infill_speed": "20", - "outer_wall_speed": "25", - "inner_wall_speed": "40", - "internal_solid_infill_speed": "40", - "top_surface_speed": "30", - "gap_infill_speed": "30", - "sparse_infill_speed": "50", - "travel_speed": "150", - "enable_prime_tower": "1", + "travel_speed": "500", "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "60", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0" + "prime_tower_width": "35", + "wall_generator": "classic", + "compatible_printers": [], + "detect_narrow_internal_solid_infill": "1", + "extra_perimeters_on_overhangs": "0", + "seam_slope_conditional": "1", + "seam_slope_inner_walls": "1", + "accel_to_decel_enable": "0", + "precise_outer_wall": "0", + "seam_slope_min_length": "0", + "bridge_flow": "0.95", + "internal_bridge_flow": "0.95", + "role_based_wipe_speed": "0", + "seam_slope_type": "none", + "wipe_on_loops": "0", + "gcode_label_objects": "0", + "staggered_inner_seams": "0", + "wipe_before_external_loop": "0", + "exclude_object": "1", + "wipe_speed": "100%", + "print_flow_ratio": "0.97", + "wall_sequence": "inner wall/outer wall", + "wipe_tower_wall_type": "rib" } diff --git a/resources/profiles/Eryone/process/0.20mm Standard @Thinker X400.json b/resources/profiles/Eryone/process/0.20mm Standard @Thinker X400.json index 86d6e635bcf..4eae544e9d9 100644 --- a/resources/profiles/Eryone/process/0.20mm Standard @Thinker X400.json +++ b/resources/profiles/Eryone/process/0.20mm Standard @Thinker X400.json @@ -144,10 +144,10 @@ "slowdown_for_curled_perimeters": "0", "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.54", "sparse_infill_pattern": "crosshatch", "sparse_infill_speed": "250", @@ -208,7 +208,7 @@ "tree_support_top_rate": "30%", "tree_support_wall_count": "2", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_infill_order": "inner wall/outer wall/infill", "wall_loops": "2", diff --git a/resources/profiles/Eryone/process/fdm_process_eryone_ER20_common.json b/resources/profiles/Eryone/process/fdm_process_eryone_ER20_common.json index c97410b1cf7..4f142e89e0b 100644 --- a/resources/profiles/Eryone/process/fdm_process_eryone_ER20_common.json +++ b/resources/profiles/Eryone/process/fdm_process_eryone_ER20_common.json @@ -136,10 +136,10 @@ "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "20%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "gyroid", "sparse_infill_speed": "80", diff --git a/resources/profiles/Flashforge.json b/resources/profiles/Flashforge.json index d198488a090..6604fe6f54d 100644 --- a/resources/profiles/Flashforge.json +++ b/resources/profiles/Flashforge.json @@ -9,10 +9,6 @@ "name": "Flashforge AD5X", "sub_path": "machine/Flashforge AD5X.json" }, - { - "name": "Flashforge Artemis", - "sub_path": "machine/Flashforge Artemis.json" - }, { "name": "Flashforge Adventurer 3 Series", "sub_path": "machine/Flashforge Adventurer 3 Series.json" @@ -29,6 +25,18 @@ "name": "Flashforge Adventurer 5M Pro", "sub_path": "machine/Flashforge Adventurer 5M Pro.json" }, + { + "name": "Flashforge Artemis", + "sub_path": "machine/Flashforge Artemis.json" + }, + { + "name": "Flashforge Creator 5", + "sub_path": "machine/Flashforge Creator 5.json" + }, + { + "name": "Flashforge Creator 5 Pro", + "sub_path": "machine/Flashforge Creator 5 Pro.json" + }, { "name": "Flashforge Guider 2s", "sub_path": "machine/Flashforge Guider 2s.json" @@ -44,14 +52,6 @@ { "name": "Flashforge Guider4 Pro", "sub_path": "machine/Flashforge Guider4 Pro.json" - }, - { - "name": "Flashforge Creator 5", - "sub_path":"machine/Flashforge Creator 5.json" - }, - { - "name": "Flashforge Creator 5 Pro", - "sub_path":"machine/Flashforge Creator 5 Pro.json" } ], "process_list": [ @@ -171,6 +171,10 @@ "name": "0.12mm Fine @Flashforge AD5M Pro 0.4 Nozzle", "sub_path": "process/0.12mm Fine @Flashforge AD5M Pro 0.4 Nozzle.json" }, + { + "name": "0.12mm Standard @FF C5", + "sub_path": "process/0.12mm Standard @FF C5.json" + }, { "name": "0.12mm Standard @Flashforge AD5M Pro 0.25 Nozzle", "sub_path": "process/0.12mm Standard @Flashforge AD5M Pro 0.25 Nozzle.json" @@ -187,10 +191,18 @@ "name": "0.16mm Standard @FF G4P", "sub_path": "process/0.16mm Standard @FF G4P.json" }, + { + "name": "0.18mm Standard @FF C5 0.6 nozzle", + "sub_path": "process/0.18mm Standard @FF C5 0.6 nozzle.json" + }, { "name": "0.20mm Standard @FF AD5X", "sub_path": "process/0.20mm Standard @FF AD5X.json" }, + { + "name": "0.20mm Standard @FF C5", + "sub_path": "process/0.20mm Standard @FF C5.json" + }, { "name": "0.20mm Standard @FF G4", "sub_path": "process/0.20mm Standard @FF G4.json" @@ -207,6 +219,10 @@ "name": "0.24mm Draft @Flashforge AD5M Pro 0.4 Nozzle", "sub_path": "process/0.24mm Draft @Flashforge AD5M Pro 0.4 Nozzle.json" }, + { + "name": "0.24mm Standard @FF C5", + "sub_path": "process/0.24mm Standard @FF C5.json" + }, { "name": "0.24mm Standard @FF G4", "sub_path": "process/0.24mm Standard @FF G4.json" @@ -215,6 +231,26 @@ "name": "0.24mm Standard @FF G4P", "sub_path": "process/0.24mm Standard @FF G4P.json" }, + { + "name": "0.30mm Standard @FF C5 0.6 nozzle", + "sub_path": "process/0.30mm Standard @FF C5 0.6 nozzle.json" + }, + { + "name": "0.32mm Standard @FF C5 0.8 nozzle", + "sub_path": "process/0.32mm Standard @FF C5 0.8 nozzle.json" + }, + { + "name": "0.42mm Standard @FF C5 0.6 nozzle", + "sub_path": "process/0.42mm Standard @FF C5 0.6 nozzle.json" + }, + { + "name": "0.48mm Standard @FF C5 0.8 nozzle", + "sub_path": "process/0.48mm Standard @FF C5 0.8 nozzle.json" + }, + { + "name": "0.4mm Standard @FF C5 0.8 nozzle", + "sub_path": "process/0.4mm Standard @FF C5 0.8 nozzle.json" + }, { "name": "0.12mm Fine @Flashforge G3U 0.4 Nozzle", "sub_path": "process/0.12mm Fine @Flashforge G3U 0.4 Nozzle.json" @@ -482,42 +518,6 @@ { "name": "0.56mm Draft @FF AD5X 0.8 nozzle", "sub_path": "process/0.56mm Draft @FF AD5X 0.8 nozzle.json" - }, - { - "name": "0.12mm Standard @FF C5", - "sub_path": "process/0.12mm Standard @FF C5.json" - }, - { - "name": "0.20mm Standard @FF C5", - "sub_path": "process/0.20mm Standard @FF C5.json" - }, - { - "name": "0.24mm Standard @FF C5", - "sub_path": "process/0.24mm Standard @FF C5.json" - }, - { - "name": "0.18mm Standard @FF C5 0.6 nozzle", - "sub_path": "process/0.18mm Standard @FF C5 0.6 nozzle.json" - }, - { - "name": "0.30mm Standard @FF C5 0.6 nozzle", - "sub_path": "process/0.30mm Standard @FF C5 0.6 nozzle.json" - }, - { - "name": "0.42mm Standard @FF C5 0.6 nozzle", - "sub_path": "process/0.42mm Standard @FF C5 0.6 nozzle.json" - }, - { - "name": "0.32mm Standard @FF C5 0.8 nozzle", - "sub_path": "process/0.32mm Standard @FF C5 0.8 nozzle.json" - }, - { - "name": "0.48mm Standard @FF C5 0.8 nozzle", - "sub_path": "process/0.48mm Standard @FF C5 0.8 nozzle.json" - }, - { - "name": "0.4mm Standard @FF C5 0.8 nozzle", - "sub_path": "process/0.4mm Standard @FF C5 0.8 nozzle.json" } ], "filament_list": [ @@ -569,6 +569,10 @@ "name": "Flashforge PETG", "sub_path": "filament/Flashforge/Flashforge PETG @FF AD3.json" }, + { + "name": "Generic PETG @Flashforge Artemis", + "sub_path": "filament/Flashforge Generic PETG @Flashforge Artemis.json" + }, { "name": "SUNLU PETG @base", "sub_path": "filament/SUNLU/SUNLU PETG @base.json" @@ -2497,302 +2501,302 @@ "name": "Flashforge ABS Basic @FF C5", "sub_path": "filament/Flashforge ABS Basic @FF C5.json" }, - { - "name": "Flashforge ABS-GF @FF C5", - "sub_path": "filament/Flashforge ABS-GF @FF C5.json" - }, - { - "name": "Flashforge ASA Basic @FF C5", - "sub_path": "filament/Flashforge ASA Basic @FF C5.json" - }, - { - "name": "Flashforge ASA-CF @FF C5", - "sub_path": "filament/Flashforge ASA-CF @FF C5.json" - }, - { - "name": "Flashforge ASA-GF @FF C5", - "sub_path": "filament/Flashforge ASA-GF @FF C5.json" - }, - { - "name": "Flashforge HIPS @FF C5", - "sub_path": "filament/Flashforge HIPS @FF C5.json" - }, - { - "name": "Flashforge HS PETG @FF C5", - "sub_path": "filament/Flashforge HS PETG @FF C5.json" - }, - { - "name": "Flashforge HS PLA @FF C5", - "sub_path": "filament/Flashforge HS PLA @FF C5.json" - }, - { - "name": "Flashforge PA-CF @FF C5", - "sub_path": "filament/Flashforge PA-CF @FF C5.json" - }, - { - "name": "Flashforge PAHT-CF @FF C5", - "sub_path": "filament/Flashforge PAHT-CF @FF C5.json" - }, - { - "name": "Flashforge PET-CF @FF C5", - "sub_path": "filament/Flashforge PET-CF @FF C5.json" - }, - { - "name": "Flashforge PETG Pro @FF C5", - "sub_path": "filament/Flashforge PETG Pro @FF C5.json" - }, - { - "name": "Flashforge PETG Transparent @FF C5", - "sub_path": "filament/Flashforge PETG Transparent @FF C5.json" - }, - { - "name": "Flashforge PETG-CF @FF C5", - "sub_path": "filament/Flashforge PETG-CF @FF C5.json" - }, - { - "name": "Flashforge PLA Matte @FF C5", - "sub_path": "filament/Flashforge PLA Matte @FF C5.json" - }, - { - "name": "Flashforge PLA Metal @FF C5", - "sub_path": "filament/Flashforge PLA Metal @FF C5.json" - }, - { - "name": "Flashforge PLA Pro @FF C5", - "sub_path": "filament/Flashforge PLA Pro @FF C5.json" - }, - { - "name": "Flashforge PLA Basic @FF C5", - "sub_path": "filament/Flashforge PLA Basic @FF C5.json" - }, - { - "name": "Flashforge PLA Color Change @FF C5", - "sub_path": "filament/Flashforge PLA Color Change @FF C5.json" - }, - { - "name": "Flashforge PLA Galaxy @FF C5", - "sub_path": "filament/Flashforge PLA Galaxy @FF C5.json" - }, - { - "name": "Flashforge PLA Luminous @FF C5", - "sub_path": "filament/Flashforge PLA Luminous @FF C5.json" - }, - { - "name": "Flashforge PLA Silk @FF C5", - "sub_path": "filament/Flashforge PLA Silk @FF C5.json" - }, - { - "name": "Flashforge PLA-CF @FF C5", - "sub_path": "filament/Flashforge PLA-CF @FF C5.json" - }, - { - "name": "Flashforge PPA-CF @FF C5", - "sub_path": "filament/Flashforge PPA-CF @FF C5.json" - }, - { - "name": "Flashforge PPS-CF @FF C5", - "sub_path": "filament/Flashforge PPS-CF @FF C5.json" - }, - { - "name": "Flashforge PVA @FF C5", - "sub_path": "filament/Flashforge PVA @FF C5.json" - }, - { - "name": "Flashforge TPU-64D @FF C5", - "sub_path": "filament/Flashforge TPU-64D @FF C5.json" - }, - { - "name": "Flashforge TPU-90A @FF C5", - "sub_path": "filament/Flashforge TPU-90A @FF C5.json" - }, - { - "name": "Flashforge TPU-95A @FF C5", - "sub_path": "filament/Flashforge TPU-95A @FF C5.json" - }, - { - "name": "FusRock PAHT-CF @FF C5", - "sub_path": "filament/FusRock PAHT-CF @FF C5.json" - }, - { - "name": "FusRock S-Multi @FF C5", - "sub_path": "filament/FusRock S-Multi @FF C5.json" - }, - { - "name": "FusRock S-PAHT @FF C5", - "sub_path": "filament/FusRock S-PAHT @FF C5.json" - }, - { - "name": "Generic BVOH @FF C5", - "sub_path": "filament/Generic BVOH @FF C5.json" - }, - { - "name": "Generic PLA @FF C5", - "sub_path": "filament/Generic PLA @FF C5.json" - }, - { - "name": "Generic PLA Silk @FF C5", - "sub_path": "filament/Generic PLA Silk @FF C5.json" - }, - { - "name": "Generic TPU-64D @FF C5", - "sub_path": "filament/Generic TPU-64D @FF C5.json" - }, - { - "name": "Generic TPU-90A @FF C5", - "sub_path": "filament/Generic TPU-90A @FF C5.json" - }, - { - "name": "Generic TPU-95A @FF C5", - "sub_path": "filament/Generic TPU-95A @FF C5.json" - }, { "name": "Flashforge ABS Basic @FF C5P", "sub_path": "filament/Flashforge ABS Basic @FF C5P.json" }, + { + "name": "Flashforge ABS-GF @FF C5", + "sub_path": "filament/Flashforge ABS-GF @FF C5.json" + }, { "name": "Flashforge ABS-GF @FF C5P", "sub_path": "filament/Flashforge ABS-GF @FF C5P.json" }, + { + "name": "Flashforge ASA Basic @FF C5", + "sub_path": "filament/Flashforge ASA Basic @FF C5.json" + }, { "name": "Flashforge ASA Basic @FF C5P", "sub_path": "filament/Flashforge ASA Basic @FF C5P.json" }, + { + "name": "Flashforge ASA-CF @FF C5", + "sub_path": "filament/Flashforge ASA-CF @FF C5.json" + }, { "name": "Flashforge ASA-CF @FF C5P", "sub_path": "filament/Flashforge ASA-CF @FF C5P.json" }, + { + "name": "Flashforge ASA-GF @FF C5", + "sub_path": "filament/Flashforge ASA-GF @FF C5.json" + }, { "name": "Flashforge ASA-GF @FF C5P", "sub_path": "filament/Flashforge ASA-GF @FF C5P.json" }, + { + "name": "Flashforge HIPS @FF C5", + "sub_path": "filament/Flashforge HIPS @FF C5.json" + }, { "name": "Flashforge HIPS @FF C5P", "sub_path": "filament/Flashforge HIPS @FF C5P.json" }, + { + "name": "Flashforge HS PETG @FF C5", + "sub_path": "filament/Flashforge HS PETG @FF C5.json" + }, { "name": "Flashforge HS PETG @FF C5P", "sub_path": "filament/Flashforge HS PETG @FF C5P.json" }, + { + "name": "Flashforge HS PLA @FF C5", + "sub_path": "filament/Flashforge HS PLA @FF C5.json" + }, { "name": "Flashforge HS PLA @FF C5P", "sub_path": "filament/Flashforge HS PLA @FF C5P.json" }, + { + "name": "Flashforge PA-CF @FF C5", + "sub_path": "filament/Flashforge PA-CF @FF C5.json" + }, { "name": "Flashforge PA-CF @FF C5P", "sub_path": "filament/Flashforge PA-CF @FF C5P.json" }, + { + "name": "Flashforge PAHT-CF @FF C5", + "sub_path": "filament/Flashforge PAHT-CF @FF C5.json" + }, { "name": "Flashforge PAHT-CF @FF C5P", "sub_path": "filament/Flashforge PAHT-CF @FF C5P.json" }, + { + "name": "Flashforge PET-CF @FF C5", + "sub_path": "filament/Flashforge PET-CF @FF C5.json" + }, { "name": "Flashforge PET-CF @FF C5P", "sub_path": "filament/Flashforge PET-CF @FF C5P.json" }, + { + "name": "Flashforge PETG Pro @FF C5", + "sub_path": "filament/Flashforge PETG Pro @FF C5.json" + }, { "name": "Flashforge PETG Pro @FF C5P", "sub_path": "filament/Flashforge PETG Pro @FF C5P.json" }, + { + "name": "Flashforge PETG Transparent @FF C5", + "sub_path": "filament/Flashforge PETG Transparent @FF C5.json" + }, { "name": "Flashforge PETG Transparent @FF C5P", "sub_path": "filament/Flashforge PETG Transparent @FF C5P.json" }, + { + "name": "Flashforge PETG-CF @FF C5", + "sub_path": "filament/Flashforge PETG-CF @FF C5.json" + }, { "name": "Flashforge PETG-CF @FF C5P", "sub_path": "filament/Flashforge PETG-CF @FF C5P.json" }, + { + "name": "Flashforge PLA Matte @FF C5", + "sub_path": "filament/Flashforge PLA Matte @FF C5.json" + }, { "name": "Flashforge PLA Matte @FF C5P", "sub_path": "filament/Flashforge PLA Matte @FF C5P.json" }, + { + "name": "Flashforge PLA Metal @FF C5", + "sub_path": "filament/Flashforge PLA Metal @FF C5.json" + }, { "name": "Flashforge PLA Metal @FF C5P", "sub_path": "filament/Flashforge PLA Metal @FF C5P.json" }, + { + "name": "Flashforge PLA Pro @FF C5", + "sub_path": "filament/Flashforge PLA Pro @FF C5.json" + }, { "name": "Flashforge PLA Pro @FF C5P", "sub_path": "filament/Flashforge PLA Pro @FF C5P.json" }, + { + "name": "Flashforge PLA Basic @FF C5", + "sub_path": "filament/Flashforge PLA Basic @FF C5.json" + }, { "name": "Flashforge PLA Basic @FF C5P", "sub_path": "filament/Flashforge PLA Basic @FF C5P.json" }, + { + "name": "Flashforge PLA Color Change @FF C5", + "sub_path": "filament/Flashforge PLA Color Change @FF C5.json" + }, { "name": "Flashforge PLA Color Change @FF C5P", "sub_path": "filament/Flashforge PLA Color Change @FF C5P.json" }, + { + "name": "Flashforge PLA Galaxy @FF C5", + "sub_path": "filament/Flashforge PLA Galaxy @FF C5.json" + }, { "name": "Flashforge PLA Galaxy @FF C5P", "sub_path": "filament/Flashforge PLA Galaxy @FF C5P.json" }, + { + "name": "Flashforge PLA Luminous @FF C5", + "sub_path": "filament/Flashforge PLA Luminous @FF C5.json" + }, { "name": "Flashforge PLA Luminous @FF C5P", "sub_path": "filament/Flashforge PLA Luminous @FF C5P.json" }, + { + "name": "Flashforge PLA Silk @FF C5", + "sub_path": "filament/Flashforge PLA Silk @FF C5.json" + }, { "name": "Flashforge PLA Silk @FF C5P", "sub_path": "filament/Flashforge PLA Silk @FF C5P.json" }, + { + "name": "Flashforge PLA-CF @FF C5", + "sub_path": "filament/Flashforge PLA-CF @FF C5.json" + }, { "name": "Flashforge PLA-CF @FF C5P", "sub_path": "filament/Flashforge PLA-CF @FF C5P.json" }, + { + "name": "Flashforge PPA-CF @FF C5", + "sub_path": "filament/Flashforge PPA-CF @FF C5.json" + }, { "name": "Flashforge PPA-CF @FF C5P", "sub_path": "filament/Flashforge PPA-CF @FF C5P.json" }, + { + "name": "Flashforge PPS-CF @FF C5", + "sub_path": "filament/Flashforge PPS-CF @FF C5.json" + }, { "name": "Flashforge PPS-CF @FF C5P", "sub_path": "filament/Flashforge PPS-CF @FF C5P.json" }, + { + "name": "Flashforge PVA @FF C5", + "sub_path": "filament/Flashforge PVA @FF C5.json" + }, { "name": "Flashforge PVA @FF C5P", "sub_path": "filament/Flashforge PVA @FF C5P.json" }, + { + "name": "Flashforge TPU-64D @FF C5", + "sub_path": "filament/Flashforge TPU-64D @FF C5.json" + }, { "name": "Flashforge TPU-64D @FF C5P", "sub_path": "filament/Flashforge TPU-64D @FF C5P.json" }, + { + "name": "Flashforge TPU-90A @FF C5", + "sub_path": "filament/Flashforge TPU-90A @FF C5.json" + }, { "name": "Flashforge TPU-90A @FF C5P", "sub_path": "filament/Flashforge TPU-90A @FF C5P.json" }, + { + "name": "Flashforge TPU-95A @FF C5", + "sub_path": "filament/Flashforge TPU-95A @FF C5.json" + }, { "name": "Flashforge TPU-95A @FF C5P", "sub_path": "filament/Flashforge TPU-95A @FF C5P.json" }, + { + "name": "FusRock PAHT-CF @FF C5", + "sub_path": "filament/FusRock PAHT-CF @FF C5.json" + }, { "name": "FusRock PAHT-CF @FF C5P", "sub_path": "filament/FusRock PAHT-CF @FF C5P.json" }, + { + "name": "FusRock S-Multi @FF C5", + "sub_path": "filament/FusRock S-Multi @FF C5.json" + }, { "name": "FusRock S-Multi @FF C5P", "sub_path": "filament/FusRock S-Multi @FF C5P.json" }, + { + "name": "FusRock S-PAHT @FF C5", + "sub_path": "filament/FusRock S-PAHT @FF C5.json" + }, { "name": "FusRock S-PAHT @FF C5P", "sub_path": "filament/FusRock S-PAHT @FF C5P.json" }, + { + "name": "Generic BVOH @FF C5", + "sub_path": "filament/Generic BVOH @FF C5.json" + }, { "name": "Generic BVOH @FF C5P", "sub_path": "filament/Generic BVOH @FF C5P.json" }, + { + "name": "Generic PLA @FF C5", + "sub_path": "filament/Generic PLA @FF C5.json" + }, { "name": "Generic PLA @FF C5P", "sub_path": "filament/Generic PLA @FF C5P.json" }, + { + "name": "Generic PLA Silk @FF C5", + "sub_path": "filament/Generic PLA Silk @FF C5.json" + }, { "name": "Generic PLA Silk @FF C5P", "sub_path": "filament/Generic PLA Silk @FF C5P.json" }, + { + "name": "Generic TPU-64D @FF C5", + "sub_path": "filament/Generic TPU-64D @FF C5.json" + }, { "name": "Generic TPU-64D @FF C5P", "sub_path": "filament/Generic TPU-64D @FF C5P.json" }, + { + "name": "Generic TPU-90A @FF C5", + "sub_path": "filament/Generic TPU-90A @FF C5.json" + }, { "name": "Generic TPU-90A @FF C5P", "sub_path": "filament/Generic TPU-90A @FF C5P.json" }, + { + "name": "Generic TPU-95A @FF C5", + "sub_path": "filament/Generic TPU-95A @FF C5.json" + }, { "name": "Generic TPU-95A @FF C5P", "sub_path": "filament/Generic TPU-95A @FF C5P.json" @@ -2923,6 +2927,30 @@ "name": "Flashforge AD5X 0.4 nozzle", "sub_path": "machine/Flashforge AD5X 0.4 nozzle.json" }, + { + "name": "Flashforge Creator 5 0.4 nozzle", + "sub_path": "machine/Flashforge Creator 5 0.4 nozzle.json" + }, + { + "name": "Flashforge Creator 5 0.6 nozzle", + "sub_path": "machine/Flashforge Creator 5 0.6 nozzle.json" + }, + { + "name": "Flashforge Creator 5 0.8 nozzle", + "sub_path": "machine/Flashforge Creator 5 0.8 nozzle.json" + }, + { + "name": "Flashforge Creator 5 Pro 0.4 nozzle", + "sub_path": "machine/Flashforge Creator 5 Pro 0.4 nozzle.json" + }, + { + "name": "Flashforge Creator 5 Pro 0.6 nozzle", + "sub_path": "machine/Flashforge Creator 5 Pro 0.6 nozzle.json" + }, + { + "name": "Flashforge Creator 5 Pro 0.8 nozzle", + "sub_path": "machine/Flashforge Creator 5 Pro 0.8 nozzle.json" + }, { "name": "Flashforge Guider4 0.4 nozzle", "sub_path": "machine/Flashforge Guider4 0.4 nozzle.json" @@ -2970,30 +2998,6 @@ { "name": "Flashforge Guider4 Pro 0.8 HF nozzle", "sub_path": "machine/Flashforge Guider4 Pro 0.8 HF nozzle.json" - }, - { - "name": "Flashforge Creator 5 0.4 nozzle", - "sub_path": "machine/Flashforge Creator 5 0.4 nozzle.json" - }, - { - "name": "Flashforge Creator 5 0.6 nozzle", - "sub_path": "machine/Flashforge Creator 5 0.6 nozzle.json" - }, - { - "name": "Flashforge Creator 5 0.8 nozzle", - "sub_path": "machine/Flashforge Creator 5 0.8 nozzle.json" - }, - { - "name": "Flashforge Creator 5 Pro 0.4 nozzle", - "sub_path": "machine/Flashforge Creator 5 Pro 0.4 nozzle.json" - }, - { - "name": "Flashforge Creator 5 Pro 0.6 nozzle", - "sub_path": "machine/Flashforge Creator 5 Pro 0.6 nozzle.json" - }, - { - "name": "Flashforge Creator 5 Pro 0.8 nozzle", - "sub_path": "machine/Flashforge Creator 5 Pro 0.8 nozzle.json" } ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge ABS Basic @FF C5.json b/resources/profiles/Flashforge/filament/Flashforge ABS Basic @FF C5.json index c968d061d04..5e8a02a3977 100644 --- a/resources/profiles/Flashforge/filament/Flashforge ABS Basic @FF C5.json +++ b/resources/profiles/Flashforge/filament/Flashforge ABS Basic @FF C5.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge ABS Basic @FF C5", + "inherits": "Generic ABS @System", + "from": "system", + "instantiation": "true", "compatible_printers": [ "Flashforge Creator 5 0.4 nozzle", "Flashforge Creator 5 0.6 nozzle", @@ -31,17 +36,12 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", "hot_plate_temp": [ "110" ], "hot_plate_temp_initial_layer": [ "110" ], - "inherits": "Generic ABS @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge ABS Basic @FF C5", "nozzle_temperature": [ "270" ], @@ -65,6 +65,5 @@ ], "textured_plate_temp_initial_layer": [ "110" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge ABS Basic @FF C5P.json b/resources/profiles/Flashforge/filament/Flashforge ABS Basic @FF C5P.json index 575741dfc70..5702d2d9152 100644 --- a/resources/profiles/Flashforge/filament/Flashforge ABS Basic @FF C5P.json +++ b/resources/profiles/Flashforge/filament/Flashforge ABS Basic @FF C5P.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge ABS Basic @FF C5P", + "inherits": "Generic ABS @System", + "from": "system", + "instantiation": "true", "activate_chamber_temp_control": [ "1" ], @@ -37,17 +42,12 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", "hot_plate_temp": [ "110" ], "hot_plate_temp_initial_layer": [ "110" ], - "inherits": "Generic ABS @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge ABS Basic @FF C5P", "nozzle_temperature": [ "270" ], @@ -71,6 +71,5 @@ ], "textured_plate_temp_initial_layer": [ "110" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge ABS-GF @FF C5.json b/resources/profiles/Flashforge/filament/Flashforge ABS-GF @FF C5.json index 3d1230c8985..96d5d067d46 100644 --- a/resources/profiles/Flashforge/filament/Flashforge ABS-GF @FF C5.json +++ b/resources/profiles/Flashforge/filament/Flashforge ABS-GF @FF C5.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge ABS-GF @FF C5", + "inherits": "Generic ABS @System", + "from": "system", + "instantiation": "true", "compatible_printers": [ "Flashforge Creator 5 0.4 nozzle", "Flashforge Creator 5 0.6 nozzle", @@ -37,17 +42,12 @@ "filament_type": [ "ABS-GF" ], - "from": "system", "hot_plate_temp": [ "110" ], "hot_plate_temp_initial_layer": [ "110" ], - "inherits": "Generic ABS @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge ABS-GF @FF C5", "nozzle_temperature": [ "270" ], @@ -71,6 +71,5 @@ ], "textured_plate_temp_initial_layer": [ "110" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge ABS-GF @FF C5P.json b/resources/profiles/Flashforge/filament/Flashforge ABS-GF @FF C5P.json index f52fcfc6bd1..822e3454359 100644 --- a/resources/profiles/Flashforge/filament/Flashforge ABS-GF @FF C5P.json +++ b/resources/profiles/Flashforge/filament/Flashforge ABS-GF @FF C5P.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge ABS-GF @FF C5P", + "inherits": "Generic ABS @System", + "from": "system", + "instantiation": "true", "activate_chamber_temp_control": [ "1" ], @@ -43,17 +48,12 @@ "filament_type": [ "ABS-GF" ], - "from": "system", "hot_plate_temp": [ "110" ], "hot_plate_temp_initial_layer": [ "110" ], - "inherits": "Generic ABS @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge ABS-GF @FF C5P", "nozzle_temperature": [ "270" ], @@ -77,6 +77,5 @@ ], "textured_plate_temp_initial_layer": [ "110" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge ASA Basic @FF C5.json b/resources/profiles/Flashforge/filament/Flashforge ASA Basic @FF C5.json index f026b053e33..393132a800d 100644 --- a/resources/profiles/Flashforge/filament/Flashforge ASA Basic @FF C5.json +++ b/resources/profiles/Flashforge/filament/Flashforge ASA Basic @FF C5.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge ASA Basic @FF C5", + "inherits": "Generic ABS @System", + "from": "system", + "instantiation": "true", "compatible_printers": [ "Flashforge Creator 5 0.4 nozzle", "Flashforge Creator 5 0.6 nozzle", @@ -34,17 +39,12 @@ "filament_type": [ "ASA" ], - "from": "system", "hot_plate_temp": [ "110" ], "hot_plate_temp_initial_layer": [ "110" ], - "inherits": "Generic ABS @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge ASA Basic @FF C5", "nozzle_temperature": [ "270" ], @@ -68,6 +68,5 @@ ], "textured_plate_temp_initial_layer": [ "110" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge ASA Basic @FF C5P.json b/resources/profiles/Flashforge/filament/Flashforge ASA Basic @FF C5P.json index c1bdeb24071..f706b524e70 100644 --- a/resources/profiles/Flashforge/filament/Flashforge ASA Basic @FF C5P.json +++ b/resources/profiles/Flashforge/filament/Flashforge ASA Basic @FF C5P.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge ASA Basic @FF C5P", + "inherits": "Generic ABS @System", + "from": "system", + "instantiation": "true", "activate_chamber_temp_control": [ "1" ], @@ -40,17 +45,12 @@ "filament_type": [ "ASA" ], - "from": "system", "hot_plate_temp": [ "110" ], "hot_plate_temp_initial_layer": [ "110" ], - "inherits": "Generic ABS @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge ASA Basic @FF C5P", "nozzle_temperature": [ "270" ], @@ -74,6 +74,5 @@ ], "textured_plate_temp_initial_layer": [ "110" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge ASA-CF @FF C5.json b/resources/profiles/Flashforge/filament/Flashforge ASA-CF @FF C5.json index 91cb1bb3ec0..71bc7aa427d 100644 --- a/resources/profiles/Flashforge/filament/Flashforge ASA-CF @FF C5.json +++ b/resources/profiles/Flashforge/filament/Flashforge ASA-CF @FF C5.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge ASA-CF @FF C5", + "inherits": "Generic ABS @System", + "from": "system", + "instantiation": "true", "compatible_printers": [ "Flashforge Creator 5 0.4 nozzle", "Flashforge Creator 5 0.6 nozzle", @@ -37,17 +42,12 @@ "filament_type": [ "ASA-CF" ], - "from": "system", "hot_plate_temp": [ "110" ], "hot_plate_temp_initial_layer": [ "110" ], - "inherits": "Generic ABS @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge ASA-CF @FF C5", "nozzle_temperature": [ "270" ], @@ -71,6 +71,5 @@ ], "textured_plate_temp_initial_layer": [ "110" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge ASA-CF @FF C5P.json b/resources/profiles/Flashforge/filament/Flashforge ASA-CF @FF C5P.json index 786ae041e4b..e5f84a43d53 100644 --- a/resources/profiles/Flashforge/filament/Flashforge ASA-CF @FF C5P.json +++ b/resources/profiles/Flashforge/filament/Flashforge ASA-CF @FF C5P.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge ASA-CF @FF C5P", + "inherits": "Generic ABS @System", + "from": "system", + "instantiation": "true", "activate_chamber_temp_control": [ "1" ], @@ -43,17 +48,12 @@ "filament_type": [ "ASA-CF" ], - "from": "system", "hot_plate_temp": [ "110" ], "hot_plate_temp_initial_layer": [ "110" ], - "inherits": "Generic ABS @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge ASA-CF @FF C5P", "nozzle_temperature": [ "270" ], @@ -77,6 +77,5 @@ ], "textured_plate_temp_initial_layer": [ "110" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge ASA-GF @FF C5.json b/resources/profiles/Flashforge/filament/Flashforge ASA-GF @FF C5.json index 348b1e29bdf..4f1df3e3c3e 100644 --- a/resources/profiles/Flashforge/filament/Flashforge ASA-GF @FF C5.json +++ b/resources/profiles/Flashforge/filament/Flashforge ASA-GF @FF C5.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge ASA-GF @FF C5", + "inherits": "Generic ABS @System", + "from": "system", + "instantiation": "true", "compatible_printers": [ "Flashforge Creator 5 0.4 nozzle", "Flashforge Creator 5 0.6 nozzle", @@ -37,17 +42,12 @@ "filament_type": [ "ASA-GF" ], - "from": "system", "hot_plate_temp": [ "110" ], "hot_plate_temp_initial_layer": [ "110" ], - "inherits": "Generic ABS @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge ASA-GF @FF C5", "nozzle_temperature": [ "270" ], @@ -71,6 +71,5 @@ ], "textured_plate_temp_initial_layer": [ "110" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge ASA-GF @FF C5P.json b/resources/profiles/Flashforge/filament/Flashforge ASA-GF @FF C5P.json index 02a0c5a05a0..6cdd349d1ae 100644 --- a/resources/profiles/Flashforge/filament/Flashforge ASA-GF @FF C5P.json +++ b/resources/profiles/Flashforge/filament/Flashforge ASA-GF @FF C5P.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge ASA-GF @FF C5P", + "inherits": "Generic ABS @System", + "from": "system", + "instantiation": "true", "activate_chamber_temp_control": [ "1" ], @@ -43,17 +48,12 @@ "filament_type": [ "ASA-GF" ], - "from": "system", "hot_plate_temp": [ "110" ], "hot_plate_temp_initial_layer": [ "110" ], - "inherits": "Generic ABS @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge ASA-GF @FF C5P", "nozzle_temperature": [ "270" ], @@ -77,6 +77,5 @@ ], "textured_plate_temp_initial_layer": [ "110" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge HIPS @FF C5.json b/resources/profiles/Flashforge/filament/Flashforge HIPS @FF C5.json index cb1bf8aa70f..3120b0e0174 100644 --- a/resources/profiles/Flashforge/filament/Flashforge HIPS @FF C5.json +++ b/resources/profiles/Flashforge/filament/Flashforge HIPS @FF C5.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge HIPS @FF C5", + "inherits": "Generic HIPS @System", + "from": "system", + "instantiation": "true", "compatible_printers": [ "Flashforge Creator 5 0.4 nozzle", "Flashforge Creator 5 0.6 nozzle", @@ -34,17 +39,12 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", "hot_plate_temp": [ "110" ], "hot_plate_temp_initial_layer": [ "110" ], - "inherits": "Generic HIPS @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge HIPS @FF C5", "nozzle_temperature": [ "270" ], @@ -68,6 +68,5 @@ ], "textured_plate_temp_initial_layer": [ "110" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge HIPS @FF C5P.json b/resources/profiles/Flashforge/filament/Flashforge HIPS @FF C5P.json index df9269f3063..78224dd1f6f 100644 --- a/resources/profiles/Flashforge/filament/Flashforge HIPS @FF C5P.json +++ b/resources/profiles/Flashforge/filament/Flashforge HIPS @FF C5P.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge HIPS @FF C5P", + "inherits": "Generic HIPS @System", + "from": "system", + "instantiation": "true", "compatible_printers": [ "Flashforge Creator 5 Pro 0.4 nozzle", "Flashforge Creator 5 Pro 0.6 nozzle", @@ -34,17 +39,12 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", "hot_plate_temp": [ "110" ], "hot_plate_temp_initial_layer": [ "110" ], - "inherits": "Generic HIPS @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge HIPS @FF C5P", "nozzle_temperature": [ "270" ], @@ -68,6 +68,5 @@ ], "textured_plate_temp_initial_layer": [ "110" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge HS PETG @FF C5.json b/resources/profiles/Flashforge/filament/Flashforge HS PETG @FF C5.json index 45183ef8926..9080d0185db 100644 --- a/resources/profiles/Flashforge/filament/Flashforge HS PETG @FF C5.json +++ b/resources/profiles/Flashforge/filament/Flashforge HS PETG @FF C5.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge HS PETG @FF C5", + "inherits": "Generic PETG HF @System", + "from": "system", + "instantiation": "true", "close_fan_the_first_x_layers": [ "2" ], @@ -49,17 +54,12 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", "hot_plate_temp": [ "85" ], "hot_plate_temp_initial_layer": [ "85" ], - "inherits": "Generic PETG HF @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge HS PETG @FF C5", "nozzle_temperature": [ "235" ], @@ -89,6 +89,5 @@ ], "textured_plate_temp_initial_layer": [ "85" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge HS PETG @FF C5P.json b/resources/profiles/Flashforge/filament/Flashforge HS PETG @FF C5P.json index ccb435580bf..de8a43145a4 100644 --- a/resources/profiles/Flashforge/filament/Flashforge HS PETG @FF C5P.json +++ b/resources/profiles/Flashforge/filament/Flashforge HS PETG @FF C5P.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge HS PETG @FF C5P", + "inherits": "Generic PETG HF @System", + "from": "system", + "instantiation": "true", "activate_air_filtration": [ "1" ], @@ -52,17 +57,12 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", "hot_plate_temp": [ "85" ], "hot_plate_temp_initial_layer": [ "85" ], - "inherits": "Generic PETG HF @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge HS PETG @FF C5P", "nozzle_temperature": [ "235" ], @@ -92,6 +92,5 @@ ], "textured_plate_temp_initial_layer": [ "85" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge HS PLA @FF C5.json b/resources/profiles/Flashforge/filament/Flashforge HS PLA @FF C5.json index c0f3d4b45f9..5f69bbc5578 100644 --- a/resources/profiles/Flashforge/filament/Flashforge HS PLA @FF C5.json +++ b/resources/profiles/Flashforge/filament/Flashforge HS PLA @FF C5.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge HS PLA @FF C5", + "inherits": "Generic PLA @System", + "from": "system", + "instantiation": "true", "additional_cooling_fan_speed": [ "40" ], @@ -43,17 +48,12 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", "hot_plate_temp": [ "65" ], "hot_plate_temp_initial_layer": [ "65" ], - "inherits": "Generic PLA @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge HS PLA @FF C5", "nozzle_temperature": [ "210" ], @@ -77,6 +77,5 @@ ], "textured_plate_temp_initial_layer": [ "65" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge HS PLA @FF C5P.json b/resources/profiles/Flashforge/filament/Flashforge HS PLA @FF C5P.json index 7d10c20e3db..a91076bb1ff 100644 --- a/resources/profiles/Flashforge/filament/Flashforge HS PLA @FF C5P.json +++ b/resources/profiles/Flashforge/filament/Flashforge HS PLA @FF C5P.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge HS PLA @FF C5P", + "inherits": "Generic PLA @System", + "from": "system", + "instantiation": "true", "activate_air_filtration": [ "1" ], @@ -46,11 +51,6 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", - "inherits": "Generic PLA @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge HS PLA @FF C5P", "nozzle_temperature": [ "210" ], @@ -68,6 +68,5 @@ ], "supertack_plate_temp_initial_layer": [ "40" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge PA-CF @FF C5.json b/resources/profiles/Flashforge/filament/Flashforge PA-CF @FF C5.json index 3450226a3ac..c58ad5586e5 100644 --- a/resources/profiles/Flashforge/filament/Flashforge PA-CF @FF C5.json +++ b/resources/profiles/Flashforge/filament/Flashforge PA-CF @FF C5.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge PA-CF @FF C5", + "inherits": "Generic PA-CF @System", + "from": "system", + "instantiation": "true", "compatible_printers": [ "Flashforge Creator 5 0.4 nozzle", "Flashforge Creator 5 0.6 nozzle", @@ -19,11 +24,6 @@ "filament_start_gcode": [ "; filament start gcode\n" ], - "from": "system", - "inherits": "Generic PA-CF @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge PA-CF @FF C5", "nozzle_temperature": [ "290" ], @@ -41,6 +41,5 @@ ], "textured_cool_plate_temp_initial_layer": [ "0" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge PA-CF @FF C5P.json b/resources/profiles/Flashforge/filament/Flashforge PA-CF @FF C5P.json index 81731d010a2..65f0cac2a83 100644 --- a/resources/profiles/Flashforge/filament/Flashforge PA-CF @FF C5P.json +++ b/resources/profiles/Flashforge/filament/Flashforge PA-CF @FF C5P.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge PA-CF @FF C5P", + "inherits": "Generic PA-CF @System", + "from": "system", + "instantiation": "true", "activate_chamber_temp_control": [ "1" ], @@ -28,11 +33,6 @@ "filament_start_gcode": [ "; filament start gcode\n" ], - "from": "system", - "inherits": "Generic PA-CF @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge PA-CF @FF C5P", "nozzle_temperature": [ "290" ], @@ -50,6 +50,5 @@ ], "textured_cool_plate_temp_initial_layer": [ "0" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge PAHT-CF @FF C5.json b/resources/profiles/Flashforge/filament/Flashforge PAHT-CF @FF C5.json index 57d4154a976..7d02bfecb35 100644 --- a/resources/profiles/Flashforge/filament/Flashforge PAHT-CF @FF C5.json +++ b/resources/profiles/Flashforge/filament/Flashforge PAHT-CF @FF C5.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge PAHT-CF @FF C5", + "inherits": "Generic PA-CF @System", + "from": "system", + "instantiation": "true", "compatible_printers": [ "Flashforge Creator 5 0.4 nozzle", "Flashforge Creator 5 0.6 nozzle", @@ -43,17 +48,12 @@ "filament_type": [ "PAHT-CF" ], - "from": "system", "hot_plate_temp": [ "80" ], "hot_plate_temp_initial_layer": [ "80" ], - "inherits": "Generic PA-CF @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge PAHT-CF @FF C5", "nozzle_temperature": [ "310" ], @@ -77,6 +77,5 @@ ], "textured_plate_temp_initial_layer": [ "80" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge PAHT-CF @FF C5P.json b/resources/profiles/Flashforge/filament/Flashforge PAHT-CF @FF C5P.json index fd51059ca42..63ab8b0fc10 100644 --- a/resources/profiles/Flashforge/filament/Flashforge PAHT-CF @FF C5P.json +++ b/resources/profiles/Flashforge/filament/Flashforge PAHT-CF @FF C5P.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge PAHT-CF @FF C5P", + "inherits": "Generic PA-CF @System", + "from": "system", + "instantiation": "true", "activate_chamber_temp_control": [ "1" ], @@ -49,17 +54,12 @@ "filament_type": [ "PAHT-CF" ], - "from": "system", "hot_plate_temp": [ "80" ], "hot_plate_temp_initial_layer": [ "80" ], - "inherits": "Generic PA-CF @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge PAHT-CF @FF C5P", "nozzle_temperature": [ "310" ], @@ -83,6 +83,5 @@ ], "textured_plate_temp_initial_layer": [ "80" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge PET-CF @FF C5.json b/resources/profiles/Flashforge/filament/Flashforge PET-CF @FF C5.json index ad6dc92e5d0..dc97d5fb24c 100644 --- a/resources/profiles/Flashforge/filament/Flashforge PET-CF @FF C5.json +++ b/resources/profiles/Flashforge/filament/Flashforge PET-CF @FF C5.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge PET-CF @FF C5", + "inherits": "Generic PETG-CF @System", + "from": "system", + "instantiation": "true", "compatible_printers": [ "Flashforge Creator 5 0.4 nozzle", "Flashforge Creator 5 0.6 nozzle", @@ -49,17 +54,12 @@ "filament_type": [ "PET-CF" ], - "from": "system", "hot_plate_temp": [ "100" ], "hot_plate_temp_initial_layer": [ "100" ], - "inherits": "Generic PETG-CF @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge PET-CF @FF C5", "nozzle_temperature": [ "270" ], @@ -101,6 +101,5 @@ ], "textured_plate_temp_initial_layer": [ "100" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge PET-CF @FF C5P.json b/resources/profiles/Flashforge/filament/Flashforge PET-CF @FF C5P.json index a39fe33edf8..581b764bf7f 100644 --- a/resources/profiles/Flashforge/filament/Flashforge PET-CF @FF C5P.json +++ b/resources/profiles/Flashforge/filament/Flashforge PET-CF @FF C5P.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge PET-CF @FF C5P", + "inherits": "Generic PETG-CF @System", + "from": "system", + "instantiation": "true", "activate_chamber_temp_control": [ "1" ], @@ -55,17 +60,12 @@ "filament_type": [ "PET-CF" ], - "from": "system", "hot_plate_temp": [ "100" ], "hot_plate_temp_initial_layer": [ "100" ], - "inherits": "Generic PETG-CF @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge PET-CF @FF C5P", "nozzle_temperature": [ "270" ], @@ -107,6 +107,5 @@ ], "textured_plate_temp_initial_layer": [ "100" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge PETG Pro @FF C5.json b/resources/profiles/Flashforge/filament/Flashforge PETG Pro @FF C5.json index 2c5c05a3025..45550b6593c 100644 --- a/resources/profiles/Flashforge/filament/Flashforge PETG Pro @FF C5.json +++ b/resources/profiles/Flashforge/filament/Flashforge PETG Pro @FF C5.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge PETG Pro @FF C5", + "inherits": "Generic PETG @System", + "from": "system", + "instantiation": "true", "compatible_printers": [ "Flashforge Creator 5 0.4 nozzle", "Flashforge Creator 5 0.6 nozzle", @@ -43,17 +48,12 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", "hot_plate_temp": [ "85" ], "hot_plate_temp_initial_layer": [ "85" ], - "inherits": "Generic PETG @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge PETG Pro @FF C5", "overhang_fan_speed": [ "90" ], @@ -83,6 +83,5 @@ ], "textured_plate_temp_initial_layer": [ "85" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge PETG Pro @FF C5P.json b/resources/profiles/Flashforge/filament/Flashforge PETG Pro @FF C5P.json index 6c24e2d9846..db7f2ba5f93 100644 --- a/resources/profiles/Flashforge/filament/Flashforge PETG Pro @FF C5P.json +++ b/resources/profiles/Flashforge/filament/Flashforge PETG Pro @FF C5P.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge PETG Pro @FF C5P", + "inherits": "Generic PETG @System", + "from": "system", + "instantiation": "true", "activate_air_filtration": [ "1" ], @@ -46,17 +51,12 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", "hot_plate_temp": [ "85" ], "hot_plate_temp_initial_layer": [ "85" ], - "inherits": "Generic PETG @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge PETG Pro @FF C5P", "overhang_fan_speed": [ "90" ], @@ -86,6 +86,5 @@ ], "textured_plate_temp_initial_layer": [ "85" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge PETG Transparent @FF C5.json b/resources/profiles/Flashforge/filament/Flashforge PETG Transparent @FF C5.json index f6c13784ccb..b45e1bcf782 100644 --- a/resources/profiles/Flashforge/filament/Flashforge PETG Transparent @FF C5.json +++ b/resources/profiles/Flashforge/filament/Flashforge PETG Transparent @FF C5.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge PETG Transparent @FF C5", + "inherits": "Generic PETG @System", + "from": "system", + "instantiation": "true", "compatible_printers": [ "Flashforge Creator 5 0.4 nozzle", "Flashforge Creator 5 0.6 nozzle", @@ -43,17 +48,12 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", "hot_plate_temp": [ "85" ], "hot_plate_temp_initial_layer": [ "85" ], - "inherits": "Generic PETG @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge PETG Transparent @FF C5", "overhang_fan_speed": [ "90" ], @@ -83,6 +83,5 @@ ], "textured_plate_temp_initial_layer": [ "85" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge PETG Transparent @FF C5P.json b/resources/profiles/Flashforge/filament/Flashforge PETG Transparent @FF C5P.json index fa89020acfb..cadd737312b 100644 --- a/resources/profiles/Flashforge/filament/Flashforge PETG Transparent @FF C5P.json +++ b/resources/profiles/Flashforge/filament/Flashforge PETG Transparent @FF C5P.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge PETG Transparent @FF C5P", + "inherits": "Generic PETG @System", + "from": "system", + "instantiation": "true", "activate_air_filtration": [ "1" ], @@ -46,17 +51,12 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", "hot_plate_temp": [ "85" ], "hot_plate_temp_initial_layer": [ "85" ], - "inherits": "Generic PETG @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge PETG Transparent @FF C5P", "overhang_fan_speed": [ "90" ], @@ -86,6 +86,5 @@ ], "textured_plate_temp_initial_layer": [ "85" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge PETG-CF @FF C5.json b/resources/profiles/Flashforge/filament/Flashforge PETG-CF @FF C5.json index e75db4d5cbb..8ffc379fbdb 100644 --- a/resources/profiles/Flashforge/filament/Flashforge PETG-CF @FF C5.json +++ b/resources/profiles/Flashforge/filament/Flashforge PETG-CF @FF C5.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge PETG-CF @FF C5", + "inherits": "Generic PETG-CF @System", + "from": "system", + "instantiation": "true", "compatible_printers": [ "Flashforge Creator 5 0.4 nozzle", "Flashforge Creator 5 0.6 nozzle", @@ -46,17 +51,12 @@ "filament_type": [ "PETG-CF" ], - "from": "system", "hot_plate_temp": [ "85" ], "hot_plate_temp_initial_layer": [ "85" ], - "inherits": "Generic PETG-CF @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge PETG-CF @FF C5", "nozzle_temperature": [ "250" ], @@ -86,6 +86,5 @@ ], "textured_plate_temp_initial_layer": [ "85" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge PETG-CF @FF C5P.json b/resources/profiles/Flashforge/filament/Flashforge PETG-CF @FF C5P.json index 5457bc7ffda..9b025a5485a 100644 --- a/resources/profiles/Flashforge/filament/Flashforge PETG-CF @FF C5P.json +++ b/resources/profiles/Flashforge/filament/Flashforge PETG-CF @FF C5P.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge PETG-CF @FF C5P", + "inherits": "Generic PETG-CF @System", + "from": "system", + "instantiation": "true", "compatible_printers": [ "Flashforge Creator 5 Pro 0.4 nozzle", "Flashforge Creator 5 Pro 0.6 nozzle", @@ -46,17 +51,12 @@ "filament_type": [ "PETG-CF" ], - "from": "system", "hot_plate_temp": [ "85" ], "hot_plate_temp_initial_layer": [ "85" ], - "inherits": "Generic PETG-CF @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge PETG-CF @FF C5P", "nozzle_temperature": [ "250" ], @@ -86,6 +86,5 @@ ], "textured_plate_temp_initial_layer": [ "85" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge PLA Matte @FF C5.json b/resources/profiles/Flashforge/filament/Flashforge PLA Matte @FF C5.json index 6146d89bb19..d3c8f3cd536 100644 --- a/resources/profiles/Flashforge/filament/Flashforge PLA Matte @FF C5.json +++ b/resources/profiles/Flashforge/filament/Flashforge PLA Matte @FF C5.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge PLA Matte @FF C5", + "inherits": "Generic PLA @System", + "from": "system", + "instantiation": "true", "additional_cooling_fan_speed": [ "40" ], @@ -43,17 +48,12 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", "hot_plate_temp": [ "65" ], "hot_plate_temp_initial_layer": [ "65" ], - "inherits": "Generic PLA @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge PLA Matte @FF C5", "nozzle_temperature": [ "210" ], @@ -77,6 +77,5 @@ ], "textured_plate_temp_initial_layer": [ "65" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge PLA Matte @FF C5P.json b/resources/profiles/Flashforge/filament/Flashforge PLA Matte @FF C5P.json index c57402a1140..b2dd3dd2c30 100644 --- a/resources/profiles/Flashforge/filament/Flashforge PLA Matte @FF C5P.json +++ b/resources/profiles/Flashforge/filament/Flashforge PLA Matte @FF C5P.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge PLA Matte @FF C5P", + "inherits": "Generic PLA @System", + "from": "system", + "instantiation": "true", "activate_air_filtration": [ "1" ], @@ -46,11 +51,6 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", - "inherits": "Generic PLA @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge PLA Matte @FF C5P", "nozzle_temperature": [ "210" ], @@ -68,6 +68,5 @@ ], "supertack_plate_temp_initial_layer": [ "40" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge PLA Metal @FF C5.json b/resources/profiles/Flashforge/filament/Flashforge PLA Metal @FF C5.json index 97cb1c789f6..2223ad18edd 100644 --- a/resources/profiles/Flashforge/filament/Flashforge PLA Metal @FF C5.json +++ b/resources/profiles/Flashforge/filament/Flashforge PLA Metal @FF C5.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge PLA Metal @FF C5", + "inherits": "Generic PLA @System", + "from": "system", + "instantiation": "true", "additional_cooling_fan_speed": [ "40" ], @@ -43,17 +48,12 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", "hot_plate_temp": [ "65" ], "hot_plate_temp_initial_layer": [ "65" ], - "inherits": "Generic PLA @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge PLA Metal @FF C5", "pressure_advance": [ "0.025" ], @@ -74,6 +74,5 @@ ], "textured_plate_temp_initial_layer": [ "65" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge PLA Metal @FF C5P.json b/resources/profiles/Flashforge/filament/Flashforge PLA Metal @FF C5P.json index 4d3ffe0551a..2a3b4cc0a5e 100644 --- a/resources/profiles/Flashforge/filament/Flashforge PLA Metal @FF C5P.json +++ b/resources/profiles/Flashforge/filament/Flashforge PLA Metal @FF C5P.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge PLA Metal @FF C5P", + "inherits": "Generic PLA @System", + "from": "system", + "instantiation": "true", "activate_air_filtration": [ "1" ], @@ -46,11 +51,6 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", - "inherits": "Generic PLA @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge PLA Metal @FF C5P", "pressure_advance": [ "0.025" ], @@ -65,6 +65,5 @@ ], "supertack_plate_temp_initial_layer": [ "40" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge PLA Pro @FF C5.json b/resources/profiles/Flashforge/filament/Flashforge PLA Pro @FF C5.json index be7f2c551fd..ff5499d3ea1 100644 --- a/resources/profiles/Flashforge/filament/Flashforge PLA Pro @FF C5.json +++ b/resources/profiles/Flashforge/filament/Flashforge PLA Pro @FF C5.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge PLA Pro @FF C5", + "inherits": "Generic PLA @System", + "from": "system", + "instantiation": "true", "additional_cooling_fan_speed": [ "40" ], @@ -43,17 +48,12 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", "hot_plate_temp": [ "65" ], "hot_plate_temp_initial_layer": [ "65" ], - "inherits": "Generic PLA @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge PLA Pro @FF C5", "nozzle_temperature": [ "210" ], @@ -77,6 +77,5 @@ ], "textured_plate_temp_initial_layer": [ "65" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge PLA Pro @FF C5P.json b/resources/profiles/Flashforge/filament/Flashforge PLA Pro @FF C5P.json index c8f91848b9a..391dc6956ce 100644 --- a/resources/profiles/Flashforge/filament/Flashforge PLA Pro @FF C5P.json +++ b/resources/profiles/Flashforge/filament/Flashforge PLA Pro @FF C5P.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge PLA Pro @FF C5P", + "inherits": "Generic PLA @System", + "from": "system", + "instantiation": "true", "activate_air_filtration": [ "1" ], @@ -46,11 +51,6 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", - "inherits": "Generic PLA @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge PLA Pro @FF C5P", "nozzle_temperature": [ "210" ], @@ -68,6 +68,5 @@ ], "supertack_plate_temp_initial_layer": [ "40" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge PLA Basic @FF C5.json b/resources/profiles/Flashforge/filament/Flashforge PLA Basic @FF C5.json index 69225281e2e..7b1d2a8cd0b 100644 --- a/resources/profiles/Flashforge/filament/Flashforge PLA Basic @FF C5.json +++ b/resources/profiles/Flashforge/filament/Flashforge PLA Basic @FF C5.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge PLA Basic @FF C5", + "inherits": "Generic PLA @System", + "from": "system", + "instantiation": "true", "additional_cooling_fan_speed": [ "40" ], @@ -79,17 +84,12 @@ "filament_unloading_speed_start": [ "30" ], - "from": "system", "hot_plate_temp": [ "65" ], "hot_plate_temp_initial_layer": [ "65" ], - "inherits": "Generic PLA @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge PLA Basic @FF C5", "nozzle_temperature": [ "210" ], @@ -113,6 +113,5 @@ ], "textured_plate_temp_initial_layer": [ "65" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge PLA Basic @FF C5P.json b/resources/profiles/Flashforge/filament/Flashforge PLA Basic @FF C5P.json index 56af8d423e7..5b4318ff48b 100644 --- a/resources/profiles/Flashforge/filament/Flashforge PLA Basic @FF C5P.json +++ b/resources/profiles/Flashforge/filament/Flashforge PLA Basic @FF C5P.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge PLA Basic @FF C5P", + "inherits": "Generic PLA @System", + "from": "system", + "instantiation": "true", "activate_air_filtration": [ "1" ], @@ -46,11 +51,6 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", - "inherits": "Generic PLA @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge PLA Basic @FF C5P", "nozzle_temperature": [ "210" ], @@ -68,6 +68,5 @@ ], "supertack_plate_temp_initial_layer": [ "40" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge PLA Color Change @FF C5.json b/resources/profiles/Flashforge/filament/Flashforge PLA Color Change @FF C5.json index 7de6428c4bd..ec44796d821 100644 --- a/resources/profiles/Flashforge/filament/Flashforge PLA Color Change @FF C5.json +++ b/resources/profiles/Flashforge/filament/Flashforge PLA Color Change @FF C5.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge PLA Color Change @FF C5", + "inherits": "Generic PLA @System", + "from": "system", + "instantiation": "true", "additional_cooling_fan_speed": [ "40" ], @@ -43,17 +48,12 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", "hot_plate_temp": [ "65" ], "hot_plate_temp_initial_layer": [ "65" ], - "inherits": "Generic PLA @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge PLA Color Change @FF C5", "nozzle_temperature": [ "210" ], @@ -77,6 +77,5 @@ ], "textured_plate_temp_initial_layer": [ "65" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge PLA Color Change @FF C5P.json b/resources/profiles/Flashforge/filament/Flashforge PLA Color Change @FF C5P.json index f904a396649..66aa7e4aa7b 100644 --- a/resources/profiles/Flashforge/filament/Flashforge PLA Color Change @FF C5P.json +++ b/resources/profiles/Flashforge/filament/Flashforge PLA Color Change @FF C5P.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge PLA Color Change @FF C5P", + "inherits": "Generic PLA @System", + "from": "system", + "instantiation": "true", "activate_air_filtration": [ "1" ], @@ -46,11 +51,6 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", - "inherits": "Generic PLA @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge PLA Color Change @FF C5P", "nozzle_temperature": [ "210" ], @@ -68,6 +68,5 @@ ], "supertack_plate_temp_initial_layer": [ "40" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge PLA Galaxy @FF C5.json b/resources/profiles/Flashforge/filament/Flashforge PLA Galaxy @FF C5.json index cdd5c775960..0d334c83407 100644 --- a/resources/profiles/Flashforge/filament/Flashforge PLA Galaxy @FF C5.json +++ b/resources/profiles/Flashforge/filament/Flashforge PLA Galaxy @FF C5.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge PLA Galaxy @FF C5", + "inherits": "Generic PLA @System", + "from": "system", + "instantiation": "true", "additional_cooling_fan_speed": [ "40" ], @@ -43,17 +48,12 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", "hot_plate_temp": [ "65" ], "hot_plate_temp_initial_layer": [ "65" ], - "inherits": "Generic PLA @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge PLA Galaxy @FF C5", "nozzle_temperature": [ "210" ], @@ -77,6 +77,5 @@ ], "textured_plate_temp_initial_layer": [ "65" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge PLA Galaxy @FF C5P.json b/resources/profiles/Flashforge/filament/Flashforge PLA Galaxy @FF C5P.json index 8eb54c68781..83018f8a0fb 100644 --- a/resources/profiles/Flashforge/filament/Flashforge PLA Galaxy @FF C5P.json +++ b/resources/profiles/Flashforge/filament/Flashforge PLA Galaxy @FF C5P.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge PLA Galaxy @FF C5P", + "inherits": "Generic PLA @System", + "from": "system", + "instantiation": "true", "activate_air_filtration": [ "1" ], @@ -46,11 +51,6 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", - "inherits": "Generic PLA @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge PLA Galaxy @FF C5P", "nozzle_temperature": [ "210" ], @@ -68,6 +68,5 @@ ], "supertack_plate_temp_initial_layer": [ "40" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge PLA Luminous @FF C5.json b/resources/profiles/Flashforge/filament/Flashforge PLA Luminous @FF C5.json index f1df56198c7..71702bc1dbc 100644 --- a/resources/profiles/Flashforge/filament/Flashforge PLA Luminous @FF C5.json +++ b/resources/profiles/Flashforge/filament/Flashforge PLA Luminous @FF C5.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge PLA Luminous @FF C5", + "inherits": "Generic PLA @System", + "from": "system", + "instantiation": "true", "additional_cooling_fan_speed": [ "40" ], @@ -43,17 +48,12 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", "hot_plate_temp": [ "65" ], "hot_plate_temp_initial_layer": [ "65" ], - "inherits": "Generic PLA @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge PLA Luminous @FF C5", "nozzle_temperature": [ "210" ], @@ -77,6 +77,5 @@ ], "textured_plate_temp_initial_layer": [ "65" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge PLA Luminous @FF C5P.json b/resources/profiles/Flashforge/filament/Flashforge PLA Luminous @FF C5P.json index bc42abfb94a..2da74bbfac4 100644 --- a/resources/profiles/Flashforge/filament/Flashforge PLA Luminous @FF C5P.json +++ b/resources/profiles/Flashforge/filament/Flashforge PLA Luminous @FF C5P.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge PLA Luminous @FF C5P", + "inherits": "Generic PLA @System", + "from": "system", + "instantiation": "true", "activate_air_filtration": [ "1" ], @@ -46,11 +51,6 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", - "inherits": "Generic PLA @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge PLA Luminous @FF C5P", "nozzle_temperature": [ "210" ], @@ -68,6 +68,5 @@ ], "supertack_plate_temp_initial_layer": [ "40" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge PLA Silk @FF C5.json b/resources/profiles/Flashforge/filament/Flashforge PLA Silk @FF C5.json index 56bfa0073cf..f038743dede 100644 --- a/resources/profiles/Flashforge/filament/Flashforge PLA Silk @FF C5.json +++ b/resources/profiles/Flashforge/filament/Flashforge PLA Silk @FF C5.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge PLA Silk @FF C5", + "inherits": "Generic PLA Silk @System", + "from": "system", + "instantiation": "true", "additional_cooling_fan_speed": [ "40" ], @@ -49,17 +54,12 @@ "filament_type": [ "SILK" ], - "from": "system", "hot_plate_temp": [ "65" ], "hot_plate_temp_initial_layer": [ "65" ], - "inherits": "Generic PLA Silk @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge PLA Silk @FF C5", "nozzle_temperature": [ "230" ], @@ -80,6 +80,5 @@ ], "textured_plate_temp_initial_layer": [ "65" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge PLA Silk @FF C5P.json b/resources/profiles/Flashforge/filament/Flashforge PLA Silk @FF C5P.json index ab4c8e146de..3216d5dbf9a 100644 --- a/resources/profiles/Flashforge/filament/Flashforge PLA Silk @FF C5P.json +++ b/resources/profiles/Flashforge/filament/Flashforge PLA Silk @FF C5P.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge PLA Silk @FF C5P", + "inherits": "Generic PLA Silk @System", + "from": "system", + "instantiation": "true", "activate_air_filtration": [ "1" ], @@ -52,11 +57,6 @@ "filament_type": [ "SILK" ], - "from": "system", - "inherits": "Generic PLA Silk @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge PLA Silk @FF C5P", "nozzle_temperature": [ "230" ], @@ -71,6 +71,5 @@ ], "supertack_plate_temp_initial_layer": [ "40" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge PLA-CF @FF C5.json b/resources/profiles/Flashforge/filament/Flashforge PLA-CF @FF C5.json index 88ba85c4335..811b8c1a61c 100644 --- a/resources/profiles/Flashforge/filament/Flashforge PLA-CF @FF C5.json +++ b/resources/profiles/Flashforge/filament/Flashforge PLA-CF @FF C5.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge PLA-CF @FF C5", + "inherits": "Generic PLA-CF @System", + "from": "system", + "instantiation": "true", "additional_cooling_fan_speed": [ "40" ], @@ -43,17 +48,12 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", "hot_plate_temp": [ "65" ], "hot_plate_temp_initial_layer": [ "65" ], - "inherits": "Generic PLA-CF @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge PLA-CF @FF C5", "pressure_advance": [ "0.0225" ], @@ -74,6 +74,5 @@ ], "textured_plate_temp_initial_layer": [ "65" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge PLA-CF @FF C5P.json b/resources/profiles/Flashforge/filament/Flashforge PLA-CF @FF C5P.json index 20a13f620d3..79ff969101e 100644 --- a/resources/profiles/Flashforge/filament/Flashforge PLA-CF @FF C5P.json +++ b/resources/profiles/Flashforge/filament/Flashforge PLA-CF @FF C5P.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge PLA-CF @FF C5P", + "inherits": "Generic PLA-CF @System", + "from": "system", + "instantiation": "true", "activate_air_filtration": [ "1" ], @@ -46,11 +51,6 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", - "inherits": "Generic PLA-CF @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge PLA-CF @FF C5P", "pressure_advance": [ "0.0225" ], @@ -65,6 +65,5 @@ ], "supertack_plate_temp_initial_layer": [ "40" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge PPA-CF @FF C5.json b/resources/profiles/Flashforge/filament/Flashforge PPA-CF @FF C5.json index b0a8031a826..729ed514fe8 100644 --- a/resources/profiles/Flashforge/filament/Flashforge PPA-CF @FF C5.json +++ b/resources/profiles/Flashforge/filament/Flashforge PPA-CF @FF C5.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge PPA-CF @FF C5", + "inherits": "Generic PPA-GF @System", + "from": "system", + "instantiation": "true", "compatible_printers": [ "Flashforge Creator 5 0.4 nozzle", "Flashforge Creator 5 0.6 nozzle", @@ -22,16 +27,10 @@ "filament_type": [ "PPA-CF" ], - "from": "system", - "inherits": "Generic PPA-GF @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge PPA-CF @FF C5", "textured_cool_plate_temp": [ "0" ], "textured_cool_plate_temp_initial_layer": [ "0" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge PPA-CF @FF C5P.json b/resources/profiles/Flashforge/filament/Flashforge PPA-CF @FF C5P.json index e7150739f15..f1c1fe9b343 100644 --- a/resources/profiles/Flashforge/filament/Flashforge PPA-CF @FF C5P.json +++ b/resources/profiles/Flashforge/filament/Flashforge PPA-CF @FF C5P.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge PPA-CF @FF C5P", + "inherits": "Generic PPA-GF @System", + "from": "system", + "instantiation": "true", "activate_chamber_temp_control": [ "1" ], @@ -28,16 +33,10 @@ "filament_type": [ "PPA-CF" ], - "from": "system", - "inherits": "Generic PPA-GF @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge PPA-CF @FF C5P", "textured_cool_plate_temp": [ "0" ], "textured_cool_plate_temp_initial_layer": [ "0" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge PPS-CF @FF C5.json b/resources/profiles/Flashforge/filament/Flashforge PPS-CF @FF C5.json index 63d98120444..b3dd501dce0 100644 --- a/resources/profiles/Flashforge/filament/Flashforge PPS-CF @FF C5.json +++ b/resources/profiles/Flashforge/filament/Flashforge PPS-CF @FF C5.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge PPS-CF @FF C5", + "inherits": "Generic PPA-GF @System", + "from": "system", + "instantiation": "true", "compatible_printers": [ "Flashforge Creator 5 0.4 nozzle", "Flashforge Creator 5 0.6 nozzle", @@ -34,17 +39,12 @@ "filament_type": [ "PPS-CF" ], - "from": "system", "hot_plate_temp": [ "110" ], "hot_plate_temp_initial_layer": [ "110" ], - "inherits": "Generic PPA-GF @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge PPS-CF @FF C5", "nozzle_temperature": [ "320" ], @@ -68,6 +68,5 @@ ], "textured_plate_temp_initial_layer": [ "110" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge PPS-CF @FF C5P.json b/resources/profiles/Flashforge/filament/Flashforge PPS-CF @FF C5P.json index bdfe15555ec..5a0b980d5df 100644 --- a/resources/profiles/Flashforge/filament/Flashforge PPS-CF @FF C5P.json +++ b/resources/profiles/Flashforge/filament/Flashforge PPS-CF @FF C5P.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge PPS-CF @FF C5P", + "inherits": "Generic PPA-GF @System", + "from": "system", + "instantiation": "true", "activate_chamber_temp_control": [ "1" ], @@ -40,17 +45,12 @@ "filament_type": [ "PPS-CF" ], - "from": "system", "hot_plate_temp": [ "110" ], "hot_plate_temp_initial_layer": [ "110" ], - "inherits": "Generic PPA-GF @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge PPS-CF @FF C5P", "nozzle_temperature": [ "320" ], @@ -74,6 +74,5 @@ ], "textured_plate_temp_initial_layer": [ "110" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge PVA @FF C5.json b/resources/profiles/Flashforge/filament/Flashforge PVA @FF C5.json index e8e43d85872..a9919871d10 100644 --- a/resources/profiles/Flashforge/filament/Flashforge PVA @FF C5.json +++ b/resources/profiles/Flashforge/filament/Flashforge PVA @FF C5.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge PVA @FF C5", + "inherits": "Generic PVA @System", + "from": "system", + "instantiation": "true", "additional_cooling_fan_speed": [ "40" ], @@ -46,17 +51,12 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", "hot_plate_temp": [ "60" ], "hot_plate_temp_initial_layer": [ "60" ], - "inherits": "Generic PVA @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge PVA @FF C5", "nozzle_temperature": [ "240" ], @@ -83,6 +83,5 @@ ], "textured_plate_temp_initial_layer": [ "60" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge PVA @FF C5P.json b/resources/profiles/Flashforge/filament/Flashforge PVA @FF C5P.json index acf26323fd1..2a2a042ba48 100644 --- a/resources/profiles/Flashforge/filament/Flashforge PVA @FF C5P.json +++ b/resources/profiles/Flashforge/filament/Flashforge PVA @FF C5P.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge PVA @FF C5P", + "inherits": "Generic PVA @System", + "from": "system", + "instantiation": "true", "activate_air_filtration": [ "1" ], @@ -49,17 +54,12 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", "hot_plate_temp": [ "60" ], "hot_plate_temp_initial_layer": [ "60" ], - "inherits": "Generic PVA @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge PVA @FF C5P", "nozzle_temperature": [ "240" ], @@ -86,6 +86,5 @@ ], "textured_plate_temp_initial_layer": [ "60" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge TPU-64D @FF C5.json b/resources/profiles/Flashforge/filament/Flashforge TPU-64D @FF C5.json index ff059df85b8..429b6150218 100644 --- a/resources/profiles/Flashforge/filament/Flashforge TPU-64D @FF C5.json +++ b/resources/profiles/Flashforge/filament/Flashforge TPU-64D @FF C5.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge TPU-64D @FF C5", + "inherits": "Generic TPU @System", + "from": "system", + "instantiation": "true", "additional_cooling_fan_speed": [ "40" ], @@ -52,7 +57,6 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", "filament_type": [ "TPU-64D" ], @@ -62,10 +66,6 @@ "hot_plate_temp_initial_layer": [ "40" ], - "inherits": "Generic TPU @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge TPU-64D @FF C5", "nozzle_temperature": [ "230" ], @@ -101,6 +101,5 @@ ], "textured_plate_temp_initial_layer": [ "40" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge TPU-64D @FF C5P.json b/resources/profiles/Flashforge/filament/Flashforge TPU-64D @FF C5P.json index c0e82895a02..1268b7f71c0 100644 --- a/resources/profiles/Flashforge/filament/Flashforge TPU-64D @FF C5P.json +++ b/resources/profiles/Flashforge/filament/Flashforge TPU-64D @FF C5P.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge TPU-64D @FF C5P", + "inherits": "Generic TPU @System", + "from": "system", + "instantiation": "true", "activate_air_filtration": [ "1" ], @@ -55,14 +60,9 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", "filament_type": [ "TPU-64D" ], - "inherits": "Generic TPU @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge TPU-64D @FF C5P", "nozzle_temperature": [ "230" ], @@ -92,6 +92,5 @@ ], "textured_cool_plate_temp_initial_layer": [ "35" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge TPU-90A @FF C5.json b/resources/profiles/Flashforge/filament/Flashforge TPU-90A @FF C5.json index 1d7ab71d485..23e5178dcf7 100644 --- a/resources/profiles/Flashforge/filament/Flashforge TPU-90A @FF C5.json +++ b/resources/profiles/Flashforge/filament/Flashforge TPU-90A @FF C5.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge TPU-90A @FF C5", + "inherits": "Generic TPU @System", + "from": "system", + "instantiation": "true", "additional_cooling_fan_speed": [ "40" ], @@ -49,7 +54,6 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", "filament_type": [ "TPU-90A" ], @@ -59,10 +63,6 @@ "hot_plate_temp_initial_layer": [ "40" ], - "inherits": "Generic TPU @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge TPU-90A @FF C5", "nozzle_temperature": [ "230" ], @@ -98,6 +98,5 @@ ], "textured_plate_temp_initial_layer": [ "40" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge TPU-90A @FF C5P.json b/resources/profiles/Flashforge/filament/Flashforge TPU-90A @FF C5P.json index 12f27b5fe3a..7e8b19044a4 100644 --- a/resources/profiles/Flashforge/filament/Flashforge TPU-90A @FF C5P.json +++ b/resources/profiles/Flashforge/filament/Flashforge TPU-90A @FF C5P.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge TPU-90A @FF C5P", + "inherits": "Generic TPU @System", + "from": "system", + "instantiation": "true", "activate_air_filtration": [ "1" ], @@ -52,7 +57,6 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", "filament_type": [ "TPU-90A" ], @@ -62,10 +66,6 @@ "hot_plate_temp_initial_layer": [ "40" ], - "inherits": "Generic TPU @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge TPU-90A @FF C5P", "nozzle_temperature": [ "230" ], @@ -101,6 +101,5 @@ ], "textured_plate_temp_initial_layer": [ "40" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge TPU-95A @FF C5.json b/resources/profiles/Flashforge/filament/Flashforge TPU-95A @FF C5.json index aff2e2515bb..26f22d1c3e1 100644 --- a/resources/profiles/Flashforge/filament/Flashforge TPU-95A @FF C5.json +++ b/resources/profiles/Flashforge/filament/Flashforge TPU-95A @FF C5.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge TPU-95A @FF C5", + "inherits": "Generic TPU @System", + "from": "system", + "instantiation": "true", "additional_cooling_fan_speed": [ "40" ], @@ -52,7 +57,6 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", "filament_type": [ "TPU-95A" ], @@ -62,10 +66,6 @@ "hot_plate_temp_initial_layer": [ "40" ], - "inherits": "Generic TPU @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge TPU-95A @FF C5", "nozzle_temperature": [ "230" ], @@ -101,6 +101,5 @@ ], "textured_plate_temp_initial_layer": [ "40" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Flashforge TPU-95A @FF C5P.json b/resources/profiles/Flashforge/filament/Flashforge TPU-95A @FF C5P.json index 167761c85ec..ae7b0a0440a 100644 --- a/resources/profiles/Flashforge/filament/Flashforge TPU-95A @FF C5P.json +++ b/resources/profiles/Flashforge/filament/Flashforge TPU-95A @FF C5P.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Flashforge TPU-95A @FF C5P", + "inherits": "Generic TPU @System", + "from": "system", + "instantiation": "true", "activate_air_filtration": [ "1" ], @@ -58,11 +63,6 @@ "filament_type": [ "TPU-95A" ], - "from": "system", - "inherits": "Generic TPU @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Flashforge TPU-95A @FF C5P", "nozzle_temperature": [ "230" ], @@ -92,6 +92,5 @@ ], "textured_cool_plate_temp_initial_layer": [ "35" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/FusRock PAHT-CF @FF C5.json b/resources/profiles/Flashforge/filament/FusRock PAHT-CF @FF C5.json index d6174a7f7b2..59f426577bc 100644 --- a/resources/profiles/Flashforge/filament/FusRock PAHT-CF @FF C5.json +++ b/resources/profiles/Flashforge/filament/FusRock PAHT-CF @FF C5.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "FusRock PAHT-CF @FF C5", + "inherits": "Generic PA-CF @System", + "from": "system", + "instantiation": "true", "compatible_printers": [ "Flashforge Creator 5 0.4 nozzle", "Flashforge Creator 5 0.6 nozzle", @@ -43,17 +48,12 @@ "filament_type": [ "PAHT-CF" ], - "from": "system", "hot_plate_temp": [ "80" ], "hot_plate_temp_initial_layer": [ "80" ], - "inherits": "Generic PA-CF @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "FusRock PAHT-CF @FF C5", "nozzle_temperature": [ "310" ], @@ -77,6 +77,5 @@ ], "textured_plate_temp_initial_layer": [ "80" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/FusRock PAHT-CF @FF C5P.json b/resources/profiles/Flashforge/filament/FusRock PAHT-CF @FF C5P.json index e192d805e63..f12b4318954 100644 --- a/resources/profiles/Flashforge/filament/FusRock PAHT-CF @FF C5P.json +++ b/resources/profiles/Flashforge/filament/FusRock PAHT-CF @FF C5P.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "FusRock PAHT-CF @FF C5P", + "inherits": "Generic PA-CF @System", + "from": "system", + "instantiation": "true", "activate_chamber_temp_control": [ "1" ], @@ -49,17 +54,12 @@ "filament_type": [ "PAHT-CF" ], - "from": "system", "hot_plate_temp": [ "80" ], "hot_plate_temp_initial_layer": [ "80" ], - "inherits": "Generic PA-CF @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "FusRock PAHT-CF @FF C5P", "nozzle_temperature": [ "310" ], @@ -83,6 +83,5 @@ ], "textured_plate_temp_initial_layer": [ "80" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/FusRock S-Multi @FF C5.json b/resources/profiles/Flashforge/filament/FusRock S-Multi @FF C5.json index 18bb30c3f66..b4607c69628 100644 --- a/resources/profiles/Flashforge/filament/FusRock S-Multi @FF C5.json +++ b/resources/profiles/Flashforge/filament/FusRock S-Multi @FF C5.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "FusRock S-Multi @FF C5", + "inherits": "Generic PETG-CF @System", + "from": "system", + "instantiation": "true", "compatible_printers": [ "Flashforge Creator 5 0.4 nozzle", "Flashforge Creator 5 0.6 nozzle", @@ -52,11 +57,6 @@ "filament_type": [ "S-Multi" ], - "from": "system", - "inherits": "Generic PETG-CF @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "FusRock S-Multi @FF C5", "nozzle_temperature": [ "280" ], @@ -92,6 +92,5 @@ ], "textured_cool_plate_temp_initial_layer": [ "0" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/FusRock S-Multi @FF C5P.json b/resources/profiles/Flashforge/filament/FusRock S-Multi @FF C5P.json index 2d01387e082..f0ce99f2751 100644 --- a/resources/profiles/Flashforge/filament/FusRock S-Multi @FF C5P.json +++ b/resources/profiles/Flashforge/filament/FusRock S-Multi @FF C5P.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "FusRock S-Multi @FF C5P", + "inherits": "Generic PETG-CF @System", + "from": "system", + "instantiation": "true", "activate_chamber_temp_control": [ "1" ], @@ -58,11 +63,6 @@ "filament_type": [ "S-Multi" ], - "from": "system", - "inherits": "Generic PETG-CF @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "FusRock S-Multi @FF C5P", "nozzle_temperature": [ "280" ], @@ -98,6 +98,5 @@ ], "textured_cool_plate_temp_initial_layer": [ "0" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/FusRock S-PAHT @FF C5.json b/resources/profiles/Flashforge/filament/FusRock S-PAHT @FF C5.json index 9d135b9a473..28129198fd0 100644 --- a/resources/profiles/Flashforge/filament/FusRock S-PAHT @FF C5.json +++ b/resources/profiles/Flashforge/filament/FusRock S-PAHT @FF C5.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "FusRock S-PAHT @FF C5", + "inherits": "Generic PA-CF @System", + "from": "system", + "instantiation": "true", "compatible_printers": [ "Flashforge Creator 5 0.4 nozzle", "Flashforge Creator 5 0.6 nozzle", @@ -46,17 +51,12 @@ "filament_type": [ "S-PAHT" ], - "from": "system", "hot_plate_temp": [ "80" ], "hot_plate_temp_initial_layer": [ "80" ], - "inherits": "Generic PA-CF @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "FusRock S-PAHT @FF C5", "nozzle_temperature_range_high": [ "280" ], @@ -74,6 +74,5 @@ ], "textured_plate_temp_initial_layer": [ "80" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/FusRock S-PAHT @FF C5P.json b/resources/profiles/Flashforge/filament/FusRock S-PAHT @FF C5P.json index 71168d54781..e10d36f4d96 100644 --- a/resources/profiles/Flashforge/filament/FusRock S-PAHT @FF C5P.json +++ b/resources/profiles/Flashforge/filament/FusRock S-PAHT @FF C5P.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "FusRock S-PAHT @FF C5P", + "inherits": "Generic PA-CF @System", + "from": "system", + "instantiation": "true", "activate_chamber_temp_control": [ "1" ], @@ -52,17 +57,12 @@ "filament_type": [ "S-PAHT" ], - "from": "system", "hot_plate_temp": [ "80" ], "hot_plate_temp_initial_layer": [ "80" ], - "inherits": "Generic PA-CF @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "FusRock S-PAHT @FF C5P", "nozzle_temperature_range_high": [ "280" ], @@ -80,6 +80,5 @@ ], "textured_plate_temp_initial_layer": [ "80" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Generic BVOH @FF C5.json b/resources/profiles/Flashforge/filament/Generic BVOH @FF C5.json index 8fad84d066a..aa49b32140d 100644 --- a/resources/profiles/Flashforge/filament/Generic BVOH @FF C5.json +++ b/resources/profiles/Flashforge/filament/Generic BVOH @FF C5.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Generic BVOH @FF C5", + "inherits": "Generic BVOH @System", + "from": "system", + "instantiation": "true", "additional_cooling_fan_speed": [ "40" ], @@ -40,17 +45,12 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", "hot_plate_temp": [ "60" ], "hot_plate_temp_initial_layer": [ "60" ], - "inherits": "Generic BVOH @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Generic BVOH @FF C5", "pressure_advance": [ "0.0225" ], @@ -68,6 +68,5 @@ ], "textured_plate_temp_initial_layer": [ "60" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Generic BVOH @FF C5P.json b/resources/profiles/Flashforge/filament/Generic BVOH @FF C5P.json index 3051872ad49..a1ed3fc676a 100644 --- a/resources/profiles/Flashforge/filament/Generic BVOH @FF C5P.json +++ b/resources/profiles/Flashforge/filament/Generic BVOH @FF C5P.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Generic BVOH @FF C5P", + "inherits": "Generic BVOH @System", + "from": "system", + "instantiation": "true", "activate_air_filtration": [ "1" ], @@ -43,17 +48,12 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", "hot_plate_temp": [ "60" ], "hot_plate_temp_initial_layer": [ "60" ], - "inherits": "Generic BVOH @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Generic BVOH @FF C5P", "pressure_advance": [ "0.0225" ], @@ -68,6 +68,5 @@ ], "textured_plate_temp": [ "60" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Generic PLA @FF C5.json b/resources/profiles/Flashforge/filament/Generic PLA @FF C5.json index 2d96efda81e..33b1fda5200 100644 --- a/resources/profiles/Flashforge/filament/Generic PLA @FF C5.json +++ b/resources/profiles/Flashforge/filament/Generic PLA @FF C5.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Generic PLA @FF C5", + "inherits": "Generic PLA @System", + "from": "system", + "instantiation": "true", "additional_cooling_fan_speed": [ "40" ], @@ -79,17 +84,12 @@ "filament_unloading_speed_start": [ "30" ], - "from": "system", "hot_plate_temp": [ "65" ], "hot_plate_temp_initial_layer": [ "65" ], - "inherits": "Generic PLA @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Generic PLA @FF C5", "nozzle_temperature": [ "210" ], @@ -113,6 +113,5 @@ ], "textured_plate_temp_initial_layer": [ "65" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Generic PLA @FF C5P.json b/resources/profiles/Flashforge/filament/Generic PLA @FF C5P.json index bc17ef43e09..046f966eb8b 100644 --- a/resources/profiles/Flashforge/filament/Generic PLA @FF C5P.json +++ b/resources/profiles/Flashforge/filament/Generic PLA @FF C5P.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Generic PLA @FF C5P", + "inherits": "Generic PLA @System", + "from": "system", + "instantiation": "true", "activate_air_filtration": [ "1" ], @@ -46,11 +51,6 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", - "inherits": "Generic PLA @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Generic PLA @FF C5P", "nozzle_temperature": [ "210" ], @@ -68,6 +68,5 @@ ], "supertack_plate_temp_initial_layer": [ "40" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Generic PLA Silk @FF C5.json b/resources/profiles/Flashforge/filament/Generic PLA Silk @FF C5.json index 99cd9f1e7d2..7e8a2939e4f 100644 --- a/resources/profiles/Flashforge/filament/Generic PLA Silk @FF C5.json +++ b/resources/profiles/Flashforge/filament/Generic PLA Silk @FF C5.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Generic PLA Silk @FF C5", + "inherits": "Generic PLA Silk @System", + "from": "system", + "instantiation": "true", "additional_cooling_fan_speed": [ "40" ], @@ -49,17 +54,12 @@ "filament_type": [ "SILK" ], - "from": "system", "hot_plate_temp": [ "65" ], "hot_plate_temp_initial_layer": [ "65" ], - "inherits": "Generic PLA Silk @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Generic PLA Silk @FF C5", "nozzle_temperature": [ "230" ], @@ -80,6 +80,5 @@ ], "textured_plate_temp_initial_layer": [ "65" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Generic PLA Silk @FF C5P.json b/resources/profiles/Flashforge/filament/Generic PLA Silk @FF C5P.json index ffcd8984927..9bb4eca5350 100644 --- a/resources/profiles/Flashforge/filament/Generic PLA Silk @FF C5P.json +++ b/resources/profiles/Flashforge/filament/Generic PLA Silk @FF C5P.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Generic PLA Silk @FF C5P", + "inherits": "Generic PLA Silk @System", + "from": "system", + "instantiation": "true", "activate_air_filtration": [ "1" ], @@ -52,11 +57,6 @@ "filament_type": [ "SILK" ], - "from": "system", - "inherits": "Generic PLA Silk @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Generic PLA Silk @FF C5P", "nozzle_temperature": [ "230" ], @@ -71,6 +71,5 @@ ], "supertack_plate_temp_initial_layer": [ "40" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Generic TPU-64D @FF C5.json b/resources/profiles/Flashforge/filament/Generic TPU-64D @FF C5.json index 0af57da7954..52ff5a781bb 100644 --- a/resources/profiles/Flashforge/filament/Generic TPU-64D @FF C5.json +++ b/resources/profiles/Flashforge/filament/Generic TPU-64D @FF C5.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Generic TPU-64D @FF C5", + "inherits": "Generic TPU @System", + "from": "system", + "instantiation": "true", "additional_cooling_fan_speed": [ "40" ], @@ -52,7 +57,6 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", "filament_type": [ "TPU-64D" ], @@ -62,10 +66,6 @@ "hot_plate_temp_initial_layer": [ "40" ], - "inherits": "Generic TPU @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Generic TPU-64D @FF C5", "nozzle_temperature": [ "230" ], @@ -101,6 +101,5 @@ ], "textured_plate_temp_initial_layer": [ "40" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Generic TPU-64D @FF C5P.json b/resources/profiles/Flashforge/filament/Generic TPU-64D @FF C5P.json index 3a495efe007..ac2c137b8e3 100644 --- a/resources/profiles/Flashforge/filament/Generic TPU-64D @FF C5P.json +++ b/resources/profiles/Flashforge/filament/Generic TPU-64D @FF C5P.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Generic TPU-64D @FF C5P", + "inherits": "Generic TPU @System", + "from": "system", + "instantiation": "true", "activate_air_filtration": [ "1" ], @@ -55,14 +60,9 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", "filament_type": [ "TPU-64D" ], - "inherits": "Generic TPU @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Generic TPU-64D @FF C5P", "nozzle_temperature": [ "230" ], @@ -92,6 +92,5 @@ ], "textured_cool_plate_temp_initial_layer": [ "35" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Generic TPU-90A @FF C5.json b/resources/profiles/Flashforge/filament/Generic TPU-90A @FF C5.json index 94bf73abcf1..14010fffa79 100644 --- a/resources/profiles/Flashforge/filament/Generic TPU-90A @FF C5.json +++ b/resources/profiles/Flashforge/filament/Generic TPU-90A @FF C5.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Generic TPU-90A @FF C5", + "inherits": "Generic TPU @System", + "from": "system", + "instantiation": "true", "additional_cooling_fan_speed": [ "40" ], @@ -49,7 +54,6 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", "filament_type": [ "TPU-90A" ], @@ -59,10 +63,6 @@ "hot_plate_temp_initial_layer": [ "40" ], - "inherits": "Generic TPU @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Generic TPU-90A @FF C5", "nozzle_temperature": [ "230" ], @@ -98,6 +98,5 @@ ], "textured_plate_temp_initial_layer": [ "40" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Generic TPU-90A @FF C5P.json b/resources/profiles/Flashforge/filament/Generic TPU-90A @FF C5P.json index d27531402f7..c02fac4cbec 100644 --- a/resources/profiles/Flashforge/filament/Generic TPU-90A @FF C5P.json +++ b/resources/profiles/Flashforge/filament/Generic TPU-90A @FF C5P.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Generic TPU-90A @FF C5P", + "inherits": "Generic TPU @System", + "from": "system", + "instantiation": "true", "activate_air_filtration": [ "1" ], @@ -52,14 +57,9 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", "filament_type": [ "TPU-90A" ], - "inherits": "Generic TPU @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Generic TPU-90A @FF C5P", "nozzle_temperature": [ "230" ], @@ -89,6 +89,5 @@ ], "textured_cool_plate_temp_initial_layer": [ "35" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Generic TPU-95A @FF C5.json b/resources/profiles/Flashforge/filament/Generic TPU-95A @FF C5.json index 2f62a048c84..e9e53a08908 100644 --- a/resources/profiles/Flashforge/filament/Generic TPU-95A @FF C5.json +++ b/resources/profiles/Flashforge/filament/Generic TPU-95A @FF C5.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Generic TPU-95A @FF C5", + "inherits": "Generic TPU @System", + "from": "system", + "instantiation": "true", "additional_cooling_fan_speed": [ "40" ], @@ -52,7 +57,6 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", "filament_type": [ "TPU-95A" ], @@ -62,10 +66,6 @@ "hot_plate_temp_initial_layer": [ "40" ], - "inherits": "Generic TPU @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Generic TPU-95A @FF C5", "nozzle_temperature": [ "230" ], @@ -101,6 +101,5 @@ ], "textured_plate_temp_initial_layer": [ "40" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/filament/Generic TPU-95A @FF C5P.json b/resources/profiles/Flashforge/filament/Generic TPU-95A @FF C5P.json index f5c8532ed60..aaa43fac525 100644 --- a/resources/profiles/Flashforge/filament/Generic TPU-95A @FF C5P.json +++ b/resources/profiles/Flashforge/filament/Generic TPU-95A @FF C5P.json @@ -1,4 +1,9 @@ { + "type": "filament", + "name": "Generic TPU-95A @FF C5P", + "inherits": "Generic TPU @System", + "from": "system", + "instantiation": "true", "activate_air_filtration": [ "1" ], @@ -55,14 +60,9 @@ "filament_start_gcode": [ "; filament start gcode" ], - "from": "system", "filament_type": [ "TPU-95A" ], - "inherits": "Generic TPU @System", - "instantiation": "true", - "is_custom_defined": "0", - "name": "Generic TPU-95A @FF C5P", "nozzle_temperature": [ "230" ], @@ -92,6 +92,5 @@ ], "textured_cool_plate_temp_initial_layer": [ "35" - ], - "version": "2.3.0.3" + ] } diff --git a/resources/profiles/Flashforge/machine/Flashforge Creator 5 0.4 nozzle.json b/resources/profiles/Flashforge/machine/Flashforge Creator 5 0.4 nozzle.json index 9dda6e29d5a..333694e1b00 100644 --- a/resources/profiles/Flashforge/machine/Flashforge Creator 5 0.4 nozzle.json +++ b/resources/profiles/Flashforge/machine/Flashforge Creator 5 0.4 nozzle.json @@ -1,6 +1,10 @@ { "type": "machine", + "name": "Flashforge Creator 5 0.4 nozzle", + "inherits": "Flashforge Adventurer 5M Pro 0.4 Nozzle", + "from": "system", "setting_id": "GM001", + "instantiation": "true", "adaptive_bed_mesh_margin": "0", "auxiliary_fan": "1", "bbl_use_printhost": "0", @@ -52,14 +56,10 @@ "fan_kickstart": "0", "fan_speedup_overhangs": "1", "fan_speedup_time": "0", - "from": "system", "gcode_flavor": "klipper", "head_wrap_detect_zone": [], "high_current_on_filament_swap": "0", "host_type": "octoprint", - "inherits": "Flashforge Adventurer 5M Pro 0.4 Nozzle", - "instantiation": "true", - "is_custom_defined": "0", "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", "long_retractions_when_cut": [ "0", @@ -160,7 +160,6 @@ "0.08" ], "min_resonance_avoidance_speed": "70", - "name": "Flashforge Creator 5 0.4 nozzle", "nozzle_diameter": [ "0.4", "0.4", @@ -284,7 +283,6 @@ "upward_compatible_machine": [], "use_firmware_retraction": "0", "use_relative_e_distances": "1", - "version": "2.1.1.0", "wipe": [ "1", "1", diff --git a/resources/profiles/Flashforge/machine/Flashforge Creator 5 0.6 nozzle.json b/resources/profiles/Flashforge/machine/Flashforge Creator 5 0.6 nozzle.json index dba82cc8a98..a90a6379f30 100644 --- a/resources/profiles/Flashforge/machine/Flashforge Creator 5 0.6 nozzle.json +++ b/resources/profiles/Flashforge/machine/Flashforge Creator 5 0.6 nozzle.json @@ -1,6 +1,10 @@ { "type": "machine", + "name": "Flashforge Creator 5 0.6 nozzle", + "inherits": "Flashforge Adventurer 5M Pro 0.4 Nozzle", + "from": "system", "setting_id": "GM001", + "instantiation": "true", "adaptive_bed_mesh_margin": "0", "auxiliary_fan": "1", "bbl_use_printhost": "0", @@ -52,15 +56,10 @@ "fan_kickstart": "0", "fan_speedup_overhangs": "1", "fan_speedup_time": "0", - "from": "system", "gcode_flavor": "klipper", - "head_wrap_detect_zone": [ - ], + "head_wrap_detect_zone": [], "high_current_on_filament_swap": "0", "host_type": "octoprint", - "inherits": "Flashforge Adventurer 5M Pro 0.4 Nozzle", - "instantiation": "true", - "is_custom_defined": "0", "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", "long_retractions_when_cut": [ "0", @@ -161,7 +160,6 @@ "0.08" ], "min_resonance_avoidance_speed": "70", - "name": "Flashforge Creator 5 0.6 nozzle", "nozzle_diameter": [ "0.6", "0.6", @@ -282,11 +280,9 @@ "3", "3" ], - "upward_compatible_machine": [ - ], + "upward_compatible_machine": [], "use_firmware_retraction": "0", "use_relative_e_distances": "1", - "version": "2.1.1.0", "wipe": [ "1", "1", diff --git a/resources/profiles/Flashforge/machine/Flashforge Creator 5 0.8 nozzle.json b/resources/profiles/Flashforge/machine/Flashforge Creator 5 0.8 nozzle.json index 429559534ee..ed2e7620942 100644 --- a/resources/profiles/Flashforge/machine/Flashforge Creator 5 0.8 nozzle.json +++ b/resources/profiles/Flashforge/machine/Flashforge Creator 5 0.8 nozzle.json @@ -1,4 +1,9 @@ { + "type": "machine", + "name": "Flashforge Creator 5 0.8 nozzle", + "inherits": "Flashforge Adventurer 5M Pro 0.4 Nozzle", + "from": "system", + "instantiation": "true", "adaptive_bed_mesh_margin": "0", "auxiliary_fan": "1", "bbl_use_printhost": "0", @@ -50,15 +55,10 @@ "fan_kickstart": "0", "fan_speedup_overhangs": "1", "fan_speedup_time": "0", - "from": "system", "gcode_flavor": "klipper", - "head_wrap_detect_zone": [ - ], + "head_wrap_detect_zone": [], "high_current_on_filament_swap": "0", "host_type": "octoprint", - "inherits": "Flashforge Adventurer 5M Pro 0.4 Nozzle", - "instantiation": "true", - "is_custom_defined": "0", "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", "long_retractions_when_cut": [ "0", @@ -159,7 +159,6 @@ "0.08" ], "min_resonance_avoidance_speed": "70", - "name": "Flashforge Creator 5 0.8 nozzle", "nozzle_diameter": [ "0.8", "0.8", @@ -280,11 +279,9 @@ "3", "3" ], - "upward_compatible_machine": [ - ], + "upward_compatible_machine": [], "use_firmware_retraction": "0", "use_relative_e_distances": "1", - "version": "2.1.1.0", "wipe": [ "1", "1", diff --git a/resources/profiles/Flashforge/machine/Flashforge Creator 5 Pro 0.4 nozzle.json b/resources/profiles/Flashforge/machine/Flashforge Creator 5 Pro 0.4 nozzle.json index f805363cfb9..589c1f5a021 100644 --- a/resources/profiles/Flashforge/machine/Flashforge Creator 5 Pro 0.4 nozzle.json +++ b/resources/profiles/Flashforge/machine/Flashforge Creator 5 Pro 0.4 nozzle.json @@ -1,4 +1,9 @@ { + "type": "machine", + "name": "Flashforge Creator 5 Pro 0.4 nozzle", + "inherits": "Flashforge Adventurer 5M Pro 0.4 Nozzle", + "from": "system", + "instantiation": "true", "adaptive_bed_mesh_margin": "0", "auxiliary_fan": "1", "bbl_use_printhost": "0", @@ -50,14 +55,10 @@ "fan_kickstart": "0", "fan_speedup_overhangs": "1", "fan_speedup_time": "0", - "from": "system", "gcode_flavor": "klipper", "head_wrap_detect_zone": [], "high_current_on_filament_swap": "0", "host_type": "octoprint", - "inherits": "Flashforge Adventurer 5M Pro 0.4 Nozzle", - "instantiation": "true", - "is_custom_defined": "0", "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", "long_retractions_when_cut": [ "0", @@ -158,7 +159,6 @@ "0.08" ], "min_resonance_avoidance_speed": "70", - "name": "Flashforge Creator 5 Pro 0.4 nozzle", "nozzle_diameter": [ "0.4", "0.4", @@ -282,7 +282,6 @@ "upward_compatible_machine": [], "use_firmware_retraction": "0", "use_relative_e_distances": "1", - "version": "2.1.1.0", "wipe": [ "1", "1", diff --git a/resources/profiles/Flashforge/machine/Flashforge Creator 5 Pro 0.6 nozzle.json b/resources/profiles/Flashforge/machine/Flashforge Creator 5 Pro 0.6 nozzle.json index 07243946f11..416f3545e2d 100644 --- a/resources/profiles/Flashforge/machine/Flashforge Creator 5 Pro 0.6 nozzle.json +++ b/resources/profiles/Flashforge/machine/Flashforge Creator 5 Pro 0.6 nozzle.json @@ -1,4 +1,9 @@ { + "type": "machine", + "name": "Flashforge Creator 5 Pro 0.6 nozzle", + "inherits": "Flashforge Adventurer 5M Pro 0.4 Nozzle", + "from": "system", + "instantiation": "true", "adaptive_bed_mesh_margin": "0", "auxiliary_fan": "1", "bbl_use_printhost": "0", @@ -50,15 +55,10 @@ "fan_kickstart": "0", "fan_speedup_overhangs": "1", "fan_speedup_time": "0", - "from": "system", "gcode_flavor": "klipper", - "head_wrap_detect_zone": [ - ], + "head_wrap_detect_zone": [], "high_current_on_filament_swap": "0", "host_type": "octoprint", - "inherits": "Flashforge Adventurer 5M Pro 0.4 Nozzle", - "instantiation": "true", - "is_custom_defined": "0", "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", "long_retractions_when_cut": [ "0", @@ -159,7 +159,6 @@ "0.08" ], "min_resonance_avoidance_speed": "70", - "name": "Flashforge Creator 5 Pro 0.6 nozzle", "nozzle_diameter": [ "0.6", "0.6", @@ -280,11 +279,9 @@ "3", "3" ], - "upward_compatible_machine": [ - ], + "upward_compatible_machine": [], "use_firmware_retraction": "0", "use_relative_e_distances": "1", - "version": "2.1.1.0", "wipe": [ "1", "1", diff --git a/resources/profiles/Flashforge/machine/Flashforge Creator 5 Pro 0.8 nozzle.json b/resources/profiles/Flashforge/machine/Flashforge Creator 5 Pro 0.8 nozzle.json index fb1bf112485..d72e8c892c5 100644 --- a/resources/profiles/Flashforge/machine/Flashforge Creator 5 Pro 0.8 nozzle.json +++ b/resources/profiles/Flashforge/machine/Flashforge Creator 5 Pro 0.8 nozzle.json @@ -1,4 +1,9 @@ { + "type": "machine", + "name": "Flashforge Creator 5 Pro 0.8 nozzle", + "inherits": "Flashforge Adventurer 5M Pro 0.4 Nozzle", + "from": "system", + "instantiation": "true", "adaptive_bed_mesh_margin": "0", "auxiliary_fan": "1", "bbl_use_printhost": "0", @@ -50,15 +55,10 @@ "fan_kickstart": "0", "fan_speedup_overhangs": "1", "fan_speedup_time": "0", - "from": "system", "gcode_flavor": "klipper", - "head_wrap_detect_zone": [ - ], + "head_wrap_detect_zone": [], "high_current_on_filament_swap": "0", "host_type": "octoprint", - "inherits": "Flashforge Adventurer 5M Pro 0.4 Nozzle", - "instantiation": "true", - "is_custom_defined": "0", "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", "long_retractions_when_cut": [ "0", @@ -159,7 +159,6 @@ "0.08" ], "min_resonance_avoidance_speed": "70", - "name": "Flashforge Creator 5 Pro 0.8 nozzle", "nozzle_diameter": [ "0.8", "0.8", @@ -280,11 +279,9 @@ "3", "3" ], - "upward_compatible_machine": [ - ], + "upward_compatible_machine": [], "use_firmware_retraction": "0", "use_relative_e_distances": "1", - "version": "2.1.1.0", "wipe": [ "1", "1", diff --git a/resources/profiles/Flashforge/process/0.12mm Standard @FF C5.json b/resources/profiles/Flashforge/process/0.12mm Standard @FF C5.json index 08ccf13d192..7e982a4986e 100644 --- a/resources/profiles/Flashforge/process/0.12mm Standard @FF C5.json +++ b/resources/profiles/Flashforge/process/0.12mm Standard @FF C5.json @@ -1,4 +1,9 @@ { + "type": "process", + "name": "0.12mm Standard @FF C5", + "inherits": "0.20mm Standard @Flashforge AD5M Pro 0.4 Nozzle", + "from": "system", + "instantiation": "true", "bridge_speed": "35", "compatible_printers": [ "Flashforge Creator 5 0.4 nozzle", @@ -10,18 +15,13 @@ "enable_prime_tower": "1", "filename_format": "{input_filename_base}_{filament_type[initial_tool]}_{print_time}.gcode", "filter_out_gap_fill": "0.1", - "from": "system", "gap_fill_target": "topbottom", "infill_wall_overlap": "15%", - "inherits": "0.20mm Standard @Flashforge AD5M Pro 0.4 Nozzle", "initial_layer_print_height": "0.25", "inner_wall_acceleration": "10000", - "instantiation": "true", "internal_solid_infill_pattern": "rectilinear", - "is_custom_defined": "0", "layer_height": "0.12", "max_travel_detour_distance": "300", - "name": "0.12mm Standard @FF C5", "only_one_wall_top": "1", "ooze_prevention": "1", "overhang_1_4_speed": "50", @@ -41,7 +41,6 @@ "support_interface_spacing": "0.2", "support_top_z_distance": "0.2", "support_type": "tree(auto)", - "version": "2.1.1.0", "wipe_tower_cone_angle": "12", "wipe_tower_extra_flow": "105%", "wipe_tower_extra_rib_length": "10", diff --git a/resources/profiles/Flashforge/process/0.18mm Standard @FF C5 0.6 nozzle.json b/resources/profiles/Flashforge/process/0.18mm Standard @FF C5 0.6 nozzle.json index 2ec1a216929..c57be392418 100644 --- a/resources/profiles/Flashforge/process/0.18mm Standard @FF C5 0.6 nozzle.json +++ b/resources/profiles/Flashforge/process/0.18mm Standard @FF C5 0.6 nozzle.json @@ -1,4 +1,9 @@ { + "type": "process", + "name": "0.18mm Standard @FF C5 0.6 nozzle", + "inherits": "0.20mm Standard @Flashforge AD5M Pro 0.4 Nozzle", + "from": "system", + "instantiation": "true", "compatible_printers": [ "Flashforge Creator 5 0.6 nozzle", "Flashforge Creator 5 Pro 0.6 nozzle" @@ -8,11 +13,9 @@ "enable_prime_tower": "1", "filename_format": "{input_filename_base}_{filament_type[initial_tool]}_{print_time}.gcode", "filter_out_gap_fill": "0.1", - "from": "system", "gap_fill_target": "topbottom", "gap_infill_speed": "150", "infill_wall_overlap": "15%", - "inherits": "0.20mm Standard @Flashforge AD5M Pro 0.4 Nozzle", "initial_layer_infill_speed": "55", "initial_layer_line_width": "0.62", "initial_layer_print_height": "0.3", @@ -20,15 +23,12 @@ "inner_wall_acceleration": "10000", "inner_wall_line_width": "0.62", "inner_wall_speed": "150", - "instantiation": "true", "internal_solid_infill_line_width": "0.62", "internal_solid_infill_pattern": "rectilinear", "internal_solid_infill_speed": "150", - "is_custom_defined": "0", "layer_height": "0.18", "line_width": "0.62", "max_travel_detour_distance": "300", - "name": "0.18mm Standard @FF C5 0.6 nozzle", "only_one_wall_top": "1", "ooze_prevention": "1", "outer_wall_line_width": "0.62", @@ -55,7 +55,6 @@ "top_shell_layers": "3", "top_surface_line_width": "0.62", "top_surface_speed": "150", - "version": "2.1.1.0", "wipe_tower_cone_angle": "12", "wipe_tower_extra_rib_length": "10", "wipe_tower_extra_spacing": "120%", diff --git a/resources/profiles/Flashforge/process/0.20mm Standard @FF C5.json b/resources/profiles/Flashforge/process/0.20mm Standard @FF C5.json index f740a590b71..a24ace1fa4f 100644 --- a/resources/profiles/Flashforge/process/0.20mm Standard @FF C5.json +++ b/resources/profiles/Flashforge/process/0.20mm Standard @FF C5.json @@ -1,4 +1,9 @@ { + "type": "process", + "name": "0.20mm Standard @FF C5", + "inherits": "0.20mm Standard @Flashforge AD5M Pro 0.4 Nozzle", + "from": "system", + "instantiation": "true", "compatible_printers": [ "Flashforge Creator 5 0.4 nozzle", "Flashforge Creator 5 Pro 0.4 nozzle" @@ -9,17 +14,12 @@ "enable_prime_tower": "1", "filename_format": "{input_filename_base}_{filament_type[initial_tool]}_{print_time}.gcode", "filter_out_gap_fill": "0.1", - "from": "system", "gap_fill_target": "topbottom", "infill_wall_overlap": "15%", - "inherits": "0.20mm Standard @Flashforge AD5M Pro 0.4 Nozzle", "initial_layer_print_height": "0.25", "inner_wall_acceleration": "10000", - "instantiation": "true", "internal_solid_infill_pattern": "rectilinear", - "is_custom_defined": "0", "max_travel_detour_distance": "300", - "name": "0.20mm Standard @FF C5", "only_one_wall_top": "1", "ooze_prevention": "1", "overhang_1_4_speed": "50", @@ -40,7 +40,6 @@ "support_interface_spacing": "0.2", "support_top_z_distance": "0.2", "support_type": "tree(auto)", - "version": "2.1.1.0", "wipe_tower_cone_angle": "12", "wipe_tower_extra_rib_length": "10", "wipe_tower_extra_spacing": "120%", diff --git a/resources/profiles/Flashforge/process/0.20mm Standard @Flashforge G3U 0.4 Nozzle.json b/resources/profiles/Flashforge/process/0.20mm Standard @Flashforge G3U 0.4 Nozzle.json index 79727d2e616..5891d54b67a 100644 --- a/resources/profiles/Flashforge/process/0.20mm Standard @Flashforge G3U 0.4 Nozzle.json +++ b/resources/profiles/Flashforge/process/0.20mm Standard @Flashforge G3U 0.4 Nozzle.json @@ -147,10 +147,10 @@ "slowdown_for_curled_perimeters": "0", "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "crosshatch", "sparse_infill_speed": "270", @@ -212,7 +212,7 @@ "tree_support_top_rate": "30%", "tree_support_wall_count": "0", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_infill_order": "inner wall/outer wall/infill", "wall_loops": "2", diff --git a/resources/profiles/Flashforge/process/0.24mm Standard @FF C5.json b/resources/profiles/Flashforge/process/0.24mm Standard @FF C5.json index 5a59cd51d53..a701add8fa7 100644 --- a/resources/profiles/Flashforge/process/0.24mm Standard @FF C5.json +++ b/resources/profiles/Flashforge/process/0.24mm Standard @FF C5.json @@ -1,4 +1,9 @@ { + "type": "process", + "name": "0.24mm Standard @FF C5", + "inherits": "0.20mm Standard @Flashforge AD5M Pro 0.4 Nozzle", + "from": "system", + "instantiation": "true", "bridge_speed": "35", "compatible_printers": [ "Flashforge Creator 5 0.4 nozzle", @@ -10,20 +15,15 @@ "enable_prime_tower": "1", "filename_format": "{input_filename_base}_{filament_type[initial_tool]}_{print_time}.gcode", "filter_out_gap_fill": "0.1", - "from": "system", "gap_fill_target": "topbottom", "infill_wall_overlap": "15%", - "inherits": "0.20mm Standard @Flashforge AD5M Pro 0.4 Nozzle", "initial_layer_print_height": "0.25", "inner_wall_acceleration": "10000", "inner_wall_speed": "230", - "instantiation": "true", "internal_solid_infill_pattern": "rectilinear", "internal_solid_infill_speed": "230", - "is_custom_defined": "0", "layer_height": "0.24", "max_travel_detour_distance": "300", - "name": "0.24mm Standard @FF C5", "only_one_wall_top": "1", "ooze_prevention": "1", "overhang_1_4_speed": "50", @@ -44,7 +44,6 @@ "support_interface_spacing": "0.2", "support_top_z_distance": "0.2", "support_type": "tree(auto)", - "version": "2.1.1.0", "wipe_tower_cone_angle": "12", "wipe_tower_extra_rib_length": "10", "wipe_tower_extra_spacing": "120%", diff --git a/resources/profiles/Flashforge/process/0.30mm Standard @FF C5 0.6 nozzle.json b/resources/profiles/Flashforge/process/0.30mm Standard @FF C5 0.6 nozzle.json index 1db533beb4a..07500f7c66b 100644 --- a/resources/profiles/Flashforge/process/0.30mm Standard @FF C5 0.6 nozzle.json +++ b/resources/profiles/Flashforge/process/0.30mm Standard @FF C5 0.6 nozzle.json @@ -1,4 +1,9 @@ { + "type": "process", + "name": "0.30mm Standard @FF C5 0.6 nozzle", + "inherits": "0.20mm Standard @Flashforge AD5M Pro 0.4 Nozzle", + "from": "system", + "instantiation": "true", "compatible_printers": [ "Flashforge Creator 5 0.6 nozzle", "Flashforge Creator 5 Pro 0.6 nozzle" @@ -8,11 +13,9 @@ "enable_prime_tower": "1", "filename_format": "{input_filename_base}_{filament_type[initial_tool]}_{print_time}.gcode", "filter_out_gap_fill": "0.1", - "from": "system", "gap_fill_target": "topbottom", "gap_infill_speed": "150", "infill_wall_overlap": "15%", - "inherits": "0.20mm Standard @Flashforge AD5M Pro 0.4 Nozzle", "initial_layer_infill_speed": "55", "initial_layer_line_width": "0.62", "initial_layer_print_height": "0.3", @@ -20,15 +23,12 @@ "inner_wall_acceleration": "10000", "inner_wall_line_width": "0.62", "inner_wall_speed": "150", - "instantiation": "true", "internal_solid_infill_line_width": "0.62", "internal_solid_infill_pattern": "rectilinear", "internal_solid_infill_speed": "150", - "is_custom_defined": "0", "layer_height": "0.3", "line_width": "0.62", "max_travel_detour_distance": "300", - "name": "0.30mm Standard @FF C5 0.6 nozzle", "only_one_wall_top": "1", "ooze_prevention": "1", "outer_wall_line_width": "0.62", @@ -57,7 +57,6 @@ "top_shell_layers": "3", "top_surface_line_width": "0.62", "top_surface_speed": "150", - "version": "2.1.1.0", "wipe_tower_cone_angle": "12", "wipe_tower_extra_rib_length": "10", "wipe_tower_extra_spacing": "120%", diff --git a/resources/profiles/Flashforge/process/0.32mm Standard @FF C5 0.8 nozzle.json b/resources/profiles/Flashforge/process/0.32mm Standard @FF C5 0.8 nozzle.json index c8caa9ee027..41c0d4ce186 100644 --- a/resources/profiles/Flashforge/process/0.32mm Standard @FF C5 0.8 nozzle.json +++ b/resources/profiles/Flashforge/process/0.32mm Standard @FF C5 0.8 nozzle.json @@ -1,4 +1,9 @@ { + "type": "process", + "name": "0.32mm Standard @FF C5 0.8 nozzle", + "inherits": "0.20mm Standard @Flashforge AD5M Pro 0.4 Nozzle", + "from": "system", + "instantiation": "true", "compatible_printers": [ "Flashforge Creator 5 0.6 nozzle", "Flashforge Creator 5 Pro 0.6 nozzle" @@ -8,11 +13,9 @@ "enable_prime_tower": "1", "filename_format": "{input_filename_base}_{filament_type[initial_tool]}_{print_time}.gcode", "filter_out_gap_fill": "0.1", - "from": "system", "gap_fill_target": "topbottom", "gap_infill_speed": "150", "infill_wall_overlap": "15%", - "inherits": "0.20mm Standard @Flashforge AD5M Pro 0.4 Nozzle", "initial_layer_infill_speed": "55", "initial_layer_line_width": "0.82", "initial_layer_print_height": "0.4", @@ -20,15 +23,12 @@ "inner_wall_acceleration": "10000", "inner_wall_line_width": "0.82", "inner_wall_speed": "150", - "instantiation": "true", "internal_solid_infill_line_width": "0.82", "internal_solid_infill_pattern": "rectilinear", "internal_solid_infill_speed": "150", - "is_custom_defined": "0", "layer_height": "0.32", "line_width": "0.82", "max_travel_detour_distance": "300", - "name": "0.32mm Standard @FF C5 0.8 nozzle", "only_one_wall_top": "1", "ooze_prevention": "1", "outer_wall_line_width": "0.82", @@ -58,7 +58,6 @@ "top_shell_layers": "3", "top_surface_line_width": "0.82", "top_surface_speed": "150", - "version": "2.1.1.0", "wipe_tower_cone_angle": "12", "wipe_tower_extra_rib_length": "10", "wipe_tower_extra_spacing": "120%", diff --git a/resources/profiles/Flashforge/process/0.42mm Standard @FF C5 0.6 nozzle.json b/resources/profiles/Flashforge/process/0.42mm Standard @FF C5 0.6 nozzle.json index 16e44f7573d..ff359ca50ff 100644 --- a/resources/profiles/Flashforge/process/0.42mm Standard @FF C5 0.6 nozzle.json +++ b/resources/profiles/Flashforge/process/0.42mm Standard @FF C5 0.6 nozzle.json @@ -1,4 +1,9 @@ { + "type": "process", + "name": "0.42mm Standard @FF C5 0.6 nozzle", + "inherits": "0.20mm Standard @Flashforge AD5M Pro 0.4 Nozzle", + "from": "system", + "instantiation": "true", "compatible_printers": [ "Flashforge Creator 5 0.6 nozzle", "Flashforge Creator 5 Pro 0.6 nozzle" @@ -8,11 +13,9 @@ "enable_prime_tower": "1", "filename_format": "{input_filename_base}_{filament_type[initial_tool]}_{print_time}.gcode", "filter_out_gap_fill": "0.1", - "from": "system", "gap_fill_target": "topbottom", "gap_infill_speed": "150", "infill_wall_overlap": "15%", - "inherits": "0.20mm Standard @Flashforge AD5M Pro 0.4 Nozzle", "initial_layer_infill_speed": "55", "initial_layer_line_width": "0.62", "initial_layer_print_height": "0.3", @@ -20,15 +23,12 @@ "inner_wall_acceleration": "10000", "inner_wall_line_width": "0.62", "inner_wall_speed": "150", - "instantiation": "true", "internal_solid_infill_line_width": "0.62", "internal_solid_infill_pattern": "rectilinear", "internal_solid_infill_speed": "150", - "is_custom_defined": "0", "layer_height": "0.42", "line_width": "0.62", "max_travel_detour_distance": "300", - "name": "0.42mm Standard @FF C5 0.6 nozzle", "only_one_wall_top": "1", "ooze_prevention": "1", "outer_wall_line_width": "0.62", @@ -57,7 +57,6 @@ "top_shell_layers": "3", "top_surface_line_width": "0.62", "top_surface_speed": "150", - "version": "2.1.1.0", "wipe_tower_cone_angle": "12", "wipe_tower_extra_rib_length": "10", "wipe_tower_extra_spacing": "120%", diff --git a/resources/profiles/Flashforge/process/0.48mm Standard @FF C5 0.8 nozzle.json b/resources/profiles/Flashforge/process/0.48mm Standard @FF C5 0.8 nozzle.json index 9c752fc3a1f..90e707d1f21 100644 --- a/resources/profiles/Flashforge/process/0.48mm Standard @FF C5 0.8 nozzle.json +++ b/resources/profiles/Flashforge/process/0.48mm Standard @FF C5 0.8 nozzle.json @@ -1,4 +1,9 @@ { + "type": "process", + "name": "0.48mm Standard @FF C5 0.8 nozzle", + "inherits": "0.20mm Standard @Flashforge AD5M Pro 0.4 Nozzle", + "from": "system", + "instantiation": "true", "compatible_printers": [ "Flashforge Creator 5 0.8 nozzle", "Flashforge Creator 5 Pro 0.8 nozzle" @@ -8,11 +13,9 @@ "enable_prime_tower": "1", "filename_format": "{input_filename_base}_{filament_type[initial_tool]}_{print_time}.gcode", "filter_out_gap_fill": "0.1", - "from": "system", "gap_fill_target": "topbottom", "gap_infill_speed": "150", "infill_wall_overlap": "15%", - "inherits": "0.20mm Standard @Flashforge AD5M Pro 0.4 Nozzle", "initial_layer_infill_speed": "55", "initial_layer_line_width": "0.82", "initial_layer_print_height": "0.4", @@ -20,15 +23,12 @@ "inner_wall_acceleration": "10000", "inner_wall_line_width": "0.82", "inner_wall_speed": "150", - "instantiation": "true", "internal_solid_infill_line_width": "0.82", "internal_solid_infill_pattern": "rectilinear", "internal_solid_infill_speed": "150", - "is_custom_defined": "0", "layer_height": "0.48", "line_width": "0.82", "max_travel_detour_distance": "300", - "name": "0.48mm Standard @FF C5 0.8 nozzle", "only_one_wall_top": "1", "ooze_prevention": "1", "outer_wall_line_width": "0.82", @@ -58,7 +58,6 @@ "top_shell_layers": "3", "top_surface_line_width": "0.82", "top_surface_speed": "150", - "version": "2.1.1.0", "wipe_tower_cone_angle": "12", "wipe_tower_extra_rib_length": "10", "wipe_tower_extra_spacing": "120%", diff --git a/resources/profiles/Flashforge/process/0.4mm Standard @FF C5 0.8 nozzle.json b/resources/profiles/Flashforge/process/0.4mm Standard @FF C5 0.8 nozzle.json index cdb23170233..20f40cf0480 100644 --- a/resources/profiles/Flashforge/process/0.4mm Standard @FF C5 0.8 nozzle.json +++ b/resources/profiles/Flashforge/process/0.4mm Standard @FF C5 0.8 nozzle.json @@ -1,4 +1,9 @@ { + "type": "process", + "name": "0.4mm Standard @FF C5 0.8 nozzle", + "inherits": "0.20mm Standard @Flashforge AD5M Pro 0.4 Nozzle", + "from": "system", + "instantiation": "true", "compatible_printers": [ "Flashforge Creator 5 0.8 nozzle", "Flashforge Creator 5 Pro 0.8 nozzle" @@ -8,11 +13,9 @@ "enable_prime_tower": "1", "filename_format": "{input_filename_base}_{filament_type[initial_tool]}_{print_time}.gcode", "filter_out_gap_fill": "0.1", - "from": "system", "gap_fill_target": "topbottom", "gap_infill_speed": "150", "infill_wall_overlap": "15%", - "inherits": "0.20mm Standard @Flashforge AD5M Pro 0.4 Nozzle", "initial_layer_infill_speed": "55", "initial_layer_line_width": "0.82", "initial_layer_print_height": "0.4", @@ -20,15 +23,12 @@ "inner_wall_acceleration": "10000", "inner_wall_line_width": "0.82", "inner_wall_speed": "150", - "instantiation": "true", "internal_solid_infill_line_width": "0.82", "internal_solid_infill_pattern": "rectilinear", "internal_solid_infill_speed": "150", - "is_custom_defined": "0", "layer_height": "0.4", "line_width": "0.82", "max_travel_detour_distance": "300", - "name": "0.4mm Standard @FF C5 0.8 nozzle", "only_one_wall_top": "1", "ooze_prevention": "1", "outer_wall_line_width": "0.82", @@ -58,7 +58,6 @@ "top_shell_layers": "3", "top_surface_line_width": "0.82", "top_surface_speed": "150", - "version": "2.1.1.0", "wipe_tower_cone_angle": "12", "wipe_tower_extra_rib_length": "10", "wipe_tower_extra_spacing": "120%", diff --git a/resources/profiles/FlyingBear/process/Ghost7/fdm_process_common_Ghost7.json b/resources/profiles/FlyingBear/process/Ghost7/fdm_process_common_Ghost7.json index 695ecc7379a..e21d9fa213a 100644 --- a/resources/profiles/FlyingBear/process/Ghost7/fdm_process_common_Ghost7.json +++ b/resources/profiles/FlyingBear/process/Ghost7/fdm_process_common_Ghost7.json @@ -121,10 +121,10 @@ "slowdown_for_curled_perimeters": "0", "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "grid", "spiral_mode": "0", @@ -181,7 +181,7 @@ "tree_support_tip_diameter": "0.8", "tree_support_top_rate": "30%", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_infill_order": "inner wall/outer wall/infill", "wall_loops": "2", diff --git a/resources/profiles/FlyingBear/process/S1/fdm_process_common_S1.json b/resources/profiles/FlyingBear/process/S1/fdm_process_common_S1.json index c1cf3fb0ad7..869f9a48cd7 100644 --- a/resources/profiles/FlyingBear/process/S1/fdm_process_common_S1.json +++ b/resources/profiles/FlyingBear/process/S1/fdm_process_common_S1.json @@ -121,10 +121,10 @@ "slowdown_for_curled_perimeters": "0", "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "crosshatch", "spiral_mode": "0", @@ -181,7 +181,7 @@ "tree_support_tip_diameter": "0.8", "tree_support_top_rate": "30%", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_infill_order": "inner wall/outer wall/infill", "wall_loops": "2", diff --git a/resources/profiles/FlyingBear/process/fdm_process_common.json b/resources/profiles/FlyingBear/process/fdm_process_common.json index 63bb2fb7d84..719fe2ed2d8 100644 --- a/resources/profiles/FlyingBear/process/fdm_process_common.json +++ b/resources/profiles/FlyingBear/process/fdm_process_common.json @@ -121,10 +121,10 @@ "slowdown_for_curled_perimeters": "0", "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "crosshatch", "spiral_mode": "0", @@ -181,7 +181,7 @@ "tree_support_tip_diameter": "0.8", "tree_support_top_rate": "30%", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_infill_order": "inner wall/outer wall/infill", "wall_loops": "2", diff --git a/resources/profiles/Ginger Additive/process/fdm_process_common.json b/resources/profiles/Ginger Additive/process/fdm_process_common.json index e19d8fc0e3b..1034df13151 100644 --- a/resources/profiles/Ginger Additive/process/fdm_process_common.json +++ b/resources/profiles/Ginger Additive/process/fdm_process_common.json @@ -178,10 +178,10 @@ ], "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "20%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "3", "sparse_infill_pattern": "cubic", "sparse_infill_speed": "100", @@ -247,7 +247,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "arachne", "wall_loops": "2", "wall_sequence": "inner wall/outer wall", diff --git a/resources/profiles/InfiMech/process/EX+APS/fdm_process_common_EX+APS.json b/resources/profiles/InfiMech/process/EX+APS/fdm_process_common_EX+APS.json index 4f95b7828ca..596797e0bb3 100644 --- a/resources/profiles/InfiMech/process/EX+APS/fdm_process_common_EX+APS.json +++ b/resources/profiles/InfiMech/process/EX+APS/fdm_process_common_EX+APS.json @@ -121,10 +121,10 @@ "slowdown_for_curled_perimeters": "0", "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "grid", "spiral_mode": "0", @@ -181,7 +181,7 @@ "tree_support_tip_diameter": "0.8", "tree_support_top_rate": "30%", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_infill_order": "inner wall/outer wall/infill", "wall_loops": "2", diff --git a/resources/profiles/InfiMech/process/EX/fdm_process_common_EX.json b/resources/profiles/InfiMech/process/EX/fdm_process_common_EX.json index 454e329779b..f8ac5261ae5 100644 --- a/resources/profiles/InfiMech/process/EX/fdm_process_common_EX.json +++ b/resources/profiles/InfiMech/process/EX/fdm_process_common_EX.json @@ -121,10 +121,10 @@ "slowdown_for_curled_perimeters": "0", "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "grid", "spiral_mode": "0", @@ -181,7 +181,7 @@ "tree_support_tip_diameter": "0.8", "tree_support_top_rate": "30%", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_infill_order": "inner wall/outer wall/infill", "wall_loops": "2", diff --git a/resources/profiles/InfiMech/process/HSN/fdm_process_common_HSN.json b/resources/profiles/InfiMech/process/HSN/fdm_process_common_HSN.json index 82855d95236..fd0d9f15f06 100644 --- a/resources/profiles/InfiMech/process/HSN/fdm_process_common_HSN.json +++ b/resources/profiles/InfiMech/process/HSN/fdm_process_common_HSN.json @@ -121,10 +121,10 @@ "slowdown_for_curled_perimeters": "0", "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "crosshatch", "spiral_mode": "0", @@ -181,7 +181,7 @@ "tree_support_tip_diameter": "0.8", "tree_support_top_rate": "30%", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_infill_order": "inner wall/outer wall/infill", "wall_loops": "2", diff --git a/resources/profiles/InfiMech/process/fdm_process_common.json b/resources/profiles/InfiMech/process/fdm_process_common.json index 63bb2fb7d84..719fe2ed2d8 100644 --- a/resources/profiles/InfiMech/process/fdm_process_common.json +++ b/resources/profiles/InfiMech/process/fdm_process_common.json @@ -121,10 +121,10 @@ "slowdown_for_curled_perimeters": "0", "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "crosshatch", "spiral_mode": "0", @@ -181,7 +181,7 @@ "tree_support_tip_diameter": "0.8", "tree_support_top_rate": "30%", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_infill_order": "inner wall/outer wall/infill", "wall_loops": "2", diff --git a/resources/profiles/Kingroon/process/fdm_process_common.json b/resources/profiles/Kingroon/process/fdm_process_common.json index cbb0dfe7387..dc3ef0890c5 100644 --- a/resources/profiles/Kingroon/process/fdm_process_common.json +++ b/resources/profiles/Kingroon/process/fdm_process_common.json @@ -117,10 +117,10 @@ "slow_down_layers": "0", "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "crosshatch", "sparse_infill_speed": "100", @@ -171,7 +171,7 @@ "tree_support_brim_width": "3", "tree_support_wall_count": "0", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "arachne", "wall_infill_order": "inner wall/outer wall/infill", "wall_loops": "3", diff --git a/resources/profiles/LH.json b/resources/profiles/LH.json index 27c489033dc..5ee887d550f 100644 --- a/resources/profiles/LH.json +++ b/resources/profiles/LH.json @@ -23,53 +23,53 @@ "name": "fdm_process_lh_common", "sub_path": "process/fdm_process_lh_common.json" }, - { - "name": "0.20mm Daily @LH Stinger", - "sub_path": "process/0.20mm Daily @LH Stinger.json" - }, - { - "name": "0.25mm Vase Mode @LH Stinger", - "sub_path": "process/0.25mm Vase Mode @LH Stinger.json" - }, - { - "name": "0.20mm TPU @LH Stinger", - "sub_path": "process/0.20mm TPU @LH Stinger.json" - }, - { - "name": "0.20mm Strength @LH Stinger", - "sub_path": "process/0.20mm Strength @LH Stinger.json" - }, - { - "name": "0.20mm Speed @LH Stinger", - "sub_path": "process/0.20mm Speed @LH Stinger.json" - }, - { - "name": "0.20mm Solid @LH Stinger", - "sub_path": "process/0.20mm Solid @LH Stinger.json" - }, - { - "name": "0.20mm Quiet @LH Stinger", - "sub_path": "process/0.20mm Quiet @LH Stinger.json" - }, - { - "name": "0.20mm PETG @LH Stinger", - "sub_path": "process/0.20mm PETG @LH Stinger.json" - }, - { - "name": "0.20mm MMU @LH Stinger", - "sub_path": "process/0.20mm MMU @LH Stinger.json" - }, { "name": "0.10mm HueForge @LH Stinger", "sub_path": "process/0.10mm HueForge @LH Stinger.json" }, + { + "name": "0.14mm Detail @LH Stinger", + "sub_path": "process/0.14mm Detail @LH Stinger.json" + }, { "name": "0.14mm Detail Strength @LH Stinger", "sub_path": "process/0.14mm Detail Strength @LH Stinger.json" }, { - "name": "0.14mm Detail @LH Stinger", - "sub_path": "process/0.14mm Detail @LH Stinger.json" + "name": "0.20mm Daily @LH Stinger", + "sub_path": "process/0.20mm Daily @LH Stinger.json" + }, + { + "name": "0.20mm MMU @LH Stinger", + "sub_path": "process/0.20mm MMU @LH Stinger.json" + }, + { + "name": "0.20mm PETG @LH Stinger", + "sub_path": "process/0.20mm PETG @LH Stinger.json" + }, + { + "name": "0.20mm Quiet @LH Stinger", + "sub_path": "process/0.20mm Quiet @LH Stinger.json" + }, + { + "name": "0.20mm Solid @LH Stinger", + "sub_path": "process/0.20mm Solid @LH Stinger.json" + }, + { + "name": "0.20mm Speed @LH Stinger", + "sub_path": "process/0.20mm Speed @LH Stinger.json" + }, + { + "name": "0.20mm Strength @LH Stinger", + "sub_path": "process/0.20mm Strength @LH Stinger.json" + }, + { + "name": "0.20mm TPU @LH Stinger", + "sub_path": "process/0.20mm TPU @LH Stinger.json" + }, + { + "name": "0.25mm Vase Mode @LH Stinger", + "sub_path": "process/0.25mm Vase Mode @LH Stinger.json" } ], "filament_list": [ @@ -101,37 +101,37 @@ "name": "fdm_filament_tpu", "sub_path": "filament/fdm_filament_tpu.json" }, - { - "name": "LHS ASA", - "sub_path": "filament/LHS ASA.json" - }, { "name": "LHS ABS", "sub_path": "filament/LHS ABS.json" }, { - "name": "LHS TPU", - "sub_path": "filament/LHS TPU.json" + "name": "LHS ASA", + "sub_path": "filament/LHS ASA.json" }, { - "name": "LHS PLA", - "sub_path": "filament/LHS PLA.json" - }, - { - "name": "LHS TPU Foamy 78A", - "sub_path": "filament/LHS TPU Foamy 78A.json" - }, - { - "name": "LHS PETG", - "sub_path": "filament/LHS PETG.json" + "name": "LHS PC CF", + "sub_path": "filament/LHS PC CF.json" }, { "name": "LHS PCTG", "sub_path": "filament/LHS PCTG.json" }, { - "name": "LHS PC CF", - "sub_path": "filament/LHS PC CF.json" + "name": "LHS PETG", + "sub_path": "filament/LHS PETG.json" + }, + { + "name": "LHS PLA", + "sub_path": "filament/LHS PLA.json" + }, + { + "name": "LHS TPU", + "sub_path": "filament/LHS TPU.json" + }, + { + "name": "LHS TPU Foamy 78A", + "sub_path": "filament/LHS TPU Foamy 78A.json" } ], "machine_list": [ @@ -143,17 +143,17 @@ "name": "fdm_lh_common", "sub_path": "machine/fdm_lh_common.json" }, - { - "name": "fdm_lh_mmu_common", - "sub_path": "machine/fdm_lh_mmu_common.json" - }, { "name": "LH Stinger 0.4 nozzle", "sub_path": "machine/LH Stinger 0.4 nozzle.json" }, + { + "name": "fdm_lh_mmu_common", + "sub_path": "machine/fdm_lh_mmu_common.json" + }, { "name": "LH Stinger MMU 0.4 nozzle", "sub_path": "machine/LH Stinger MMU 0.4 nozzle.json" } ] -} \ No newline at end of file +} diff --git a/resources/profiles/LH/filament/LHS PC CF.json b/resources/profiles/LH/filament/LHS PC CF.json index ec749abf64d..522214492fe 100644 --- a/resources/profiles/LH/filament/LHS PC CF.json +++ b/resources/profiles/LH/filament/LHS PC CF.json @@ -1,11 +1,11 @@ { - "name": "LHS PC CF", "type": "filament", - "filament_id": "LHF_pccf", - "setting_id": "LHF_S_pccf", - "from": "system", - "instantiation": "true", + "name": "LHS PC CF", "inherits": "fdm_filament_pla", + "from": "system", + "setting_id": "LHF_S_pccf", + "filament_id": "LHF_pccf", + "instantiation": "true", "compatible_printers": [ "LH Stinger 0.4 nozzle", "LH Stinger MMU 0.4 nozzle" @@ -88,7 +88,6 @@ "hot_plate_temp_initial_layer": [ "105" ], - "is_custom_defined": "0", "nozzle_temperature": [ "300" ], @@ -119,4 +118,4 @@ "temperature_vitrification": [ "140" ] -} \ No newline at end of file +} diff --git a/resources/profiles/LH/process/fdm_process_lh_common.json b/resources/profiles/LH/process/fdm_process_lh_common.json index 49ea02fee81..6e09abf5fbc 100644 --- a/resources/profiles/LH/process/fdm_process_lh_common.json +++ b/resources/profiles/LH/process/fdm_process_lh_common.json @@ -28,6 +28,7 @@ "initial_layer_line_width": "0.5", "initial_layer_speed": "60", "initial_layer_travel_speed": "300", + "initial_layer_travel_acceleration": "4000", "inner_wall_acceleration": "20000", "inner_wall_jerk": "15", "inner_wall_line_width": "0.4", diff --git a/resources/profiles/OrcaFilamentLibrary.json b/resources/profiles/OrcaFilamentLibrary.json index 62ff05b0c5b..3a0072476b4 100644 --- a/resources/profiles/OrcaFilamentLibrary.json +++ b/resources/profiles/OrcaFilamentLibrary.json @@ -116,6 +116,18 @@ "name": "COEX ABS PRIME @base", "sub_path": "filament/COEX/COEX ABS PRIME @base.json" }, + { + "name": "DREMC ABS @base", + "sub_path": "filament/DREMC/DREMC ABS @base.json" + }, + { + "name": "DREMC ABS+ @base", + "sub_path": "filament/DREMC/DREMC ABS+ @base.json" + }, + { + "name": "DREMC ABS-GF @base", + "sub_path": "filament/DREMC/DREMC ABS-GF @base.json" + }, { "name": "Elegoo ABS @base", "sub_path": "filament/Elegoo/Elegoo ABS @base.json" @@ -160,6 +172,18 @@ "name": "COEX ASA PRIME @base", "sub_path": "filament/COEX/COEX ASA PRIME @base.json" }, + { + "name": "DREMC ASA @base", + "sub_path": "filament/DREMC/DREMC ASA @base.json" + }, + { + "name": "DREMC ASA CF @base", + "sub_path": "filament/DREMC/DREMC ASA CF @base.json" + }, + { + "name": "DREMC ASA GF @base", + "sub_path": "filament/DREMC/DREMC ASA GF @base.json" + }, { "name": "Elas ASA @base", "sub_path": "filament/Elas/Elas ASA @base.json" @@ -240,6 +264,22 @@ "name": "COEX NYLEX UNFILLED @base", "sub_path": "filament/COEX/COEX NYLEX UNFILLED @base.json" }, + { + "name": "DREMC PA12-CF @base", + "sub_path": "filament/DREMC/DREMC PA12-CF @base.json" + }, + { + "name": "DREMC PA6-CF @base", + "sub_path": "filament/DREMC/DREMC PA6-CF @base.json" + }, + { + "name": "Elegoo PAHT @base", + "sub_path": "filament/Elegoo/Elegoo PAHT @base.json" + }, + { + "name": "FILL3D PA @base", + "sub_path": "filament/FILL3D/FILL3D PA @base.json" + }, { "name": "Fiberon PA12-CF @base", "sub_path": "filament/Polymaker/Fiberon PA12-CF @base.json" @@ -264,10 +304,6 @@ "name": "Generic PA-CF @System", "sub_path": "filament/Generic PA-CF @System.json" }, - { - "name": "Elegoo PAHT @base", - "sub_path": "filament/Elegoo/Elegoo PAHT @base.json" - }, { "name": "Bambu PC @base", "sub_path": "filament/Bambu/Bambu PC @base.json" @@ -328,6 +364,14 @@ "name": "COEX PETG @base", "sub_path": "filament/COEX/COEX PETG @base.json" }, + { + "name": "DREMC PET-CF @base", + "sub_path": "filament/DREMC/DREMC PET-CF @base.json" + }, + { + "name": "DREMC PETG @base", + "sub_path": "filament/DREMC/DREMC PETG @base.json" + }, { "name": "Elas PETG Basic @base", "sub_path": "filament/Elas/Elas PETG Basic @base.json" @@ -336,18 +380,6 @@ "name": "Elegoo PETG @base", "sub_path": "filament/Elegoo/Elegoo PETG @base.json" }, - { - "name": "Elegoo PETG PRO @base", - "sub_path": "filament/Elegoo/Elegoo PETG PRO @base.json" - }, - { - "name": "Elegoo PETG-CF @base", - "sub_path": "filament/Elegoo/Elegoo PETG-CF @base.json" - }, - { - "name": "Elegoo Rapid PETG @base", - "sub_path": "filament/Elegoo/Elegoo Rapid PETG @base.json" - }, { "name": "Eolas Prints PETG @System", "sub_path": "filament/Eolas Prints/Eolas Prints PETG @System.json" @@ -364,6 +396,14 @@ "name": "FDplast PETG @base", "sub_path": "filament/FDplast/FDplast PETG @base.json" }, + { + "name": "FILL3D PETG @base", + "sub_path": "filament/FILL3D/FILL3D PETG @base.json" + }, + { + "name": "FILL3D PETG CF @base", + "sub_path": "filament/FILL3D/FILL3D PETG CF @base.json" + }, { "name": "Fiberon PET-CF @base", "sub_path": "filament/Polymaker/Fiberon PET-CF @base.json" @@ -388,6 +428,10 @@ "name": "Generic PETG-CF @System", "sub_path": "filament/Generic PETG-CF @System.json" }, + { + "name": "GreenGate3D PETG @base", + "sub_path": "filament/GreenGate3D/GreenGate3D PETG @base.json" + }, { "name": "NIT PETG @base", "sub_path": "filament/NIT/NIT PETG @base.json" @@ -492,6 +536,14 @@ "name": "COEX PLA PRIME @base", "sub_path": "filament/COEX/COEX PLA PRIME @base.json" }, + { + "name": "DREMC PLA+ @base", + "sub_path": "filament/DREMC/DREMC PLA+ @base.json" + }, + { + "name": "DREMC PLA+ HS @base", + "sub_path": "filament/DREMC/DREMC PLA HS @base.json" + }, { "name": "Elas PLA Basic @base", "sub_path": "filament/Elas/Elas PLA Basic @base.json" @@ -504,22 +556,6 @@ "name": "Elegoo PLA @base", "sub_path": "filament/Elegoo/Elegoo PLA @base.json" }, - { - "name": "Elegoo PLA Matte @base", - "sub_path": "filament/Elegoo/Elegoo PLA Matte @base.json" - }, - { - "name": "Elegoo PLA Silk @base", - "sub_path": "filament/Elegoo/Elegoo PLA Silk @base.json" - }, - { - "name": "Elegoo PLA-CF @base", - "sub_path": "filament/Elegoo/Elegoo PLA-CF @base.json" - }, - { - "name": "Elegoo Rapid PLA+ @base", - "sub_path": "filament/Elegoo/Elegoo Rapid PLA+ @base.json" - }, { "name": "Eolas Prints PLA Antibacterial @System", "sub_path": "filament/Eolas Prints/Eolas Prints PLA Antibacterial @System.json" @@ -560,6 +596,10 @@ "name": "FDplast PLA @base", "sub_path": "filament/FDplast/FDplast PLA @base.json" }, + { + "name": "FILL3D PLA Basic @base", + "sub_path": "filament/FILL3D/FILL3D PLA Basic @base.json" + }, { "name": "FILL3D PLA Turbo @base", "sub_path": "filament/FILL3D/FILL3D PLA Turbo @base.json" @@ -768,6 +808,14 @@ "name": "fdm_filament_pla_silk", "sub_path": "filament/base/fdm_filament_pla_silk.json" }, + { + "name": "FILL3D PP @base", + "sub_path": "filament/FILL3D/FILL3D PP @base.json" + }, + { + "name": "FILL3D PPCF @base", + "sub_path": "filament/FILL3D/FILL3D PPCF @base.json" + }, { "name": "Generic PP @System", "sub_path": "filament/Generic PP @System.json" @@ -784,6 +832,10 @@ "name": "Bambu PPA-CF @base", "sub_path": "filament/Bambu/Bambu PPA-CF @base.json" }, + { + "name": "DREMC PPA-CF @base", + "sub_path": "filament/DREMC/DREMC PPA-CF @base.json" + }, { "name": "Generic PPA-CF @System", "sub_path": "filament/Generic PPA-CF @System.json" @@ -837,8 +889,8 @@ "sub_path": "filament/COEX/COEX TPU 60A @base.json" }, { - "name": "Elegoo TPU 95A @base", - "sub_path": "filament/Elegoo/Elegoo TPU 95A @base.json" + "name": "DREMC TPU 95A @base", + "sub_path": "filament/DREMC/DREMC TPU 95A @base.json" }, { "name": "Elegoo TPU @base", @@ -892,6 +944,22 @@ "name": "COEX ABS PRIME @System", "sub_path": "filament/COEX/COEX ABS PRIME @System.json" }, + { + "name": "DREMC ABS @System", + "sub_path": "filament/DREMC/DREMC ABS @System.json" + }, + { + "name": "DREMC ABS+ @System", + "sub_path": "filament/DREMC/DREMC ABS+ @System.json" + }, + { + "name": "DREMC ABS-GF @System", + "sub_path": "filament/DREMC/DREMC ABS-GF @System.json" + }, + { + "name": "Elegoo ABS @System", + "sub_path": "filament/Elegoo/Elegoo ABS @System.json" + }, { "name": "FDplast ABS @System", "sub_path": "filament/FDplast/FDplast ABS @System.json" @@ -924,6 +992,18 @@ "name": "COEX ASA PRIME @System", "sub_path": "filament/COEX/COEX ASA PRIME @System.json" }, + { + "name": "DREMC ASA @System", + "sub_path": "filament/DREMC/DREMC ASA @System.json" + }, + { + "name": "DREMC ASA CF @System", + "sub_path": "filament/DREMC/DREMC ASA CF @System.json" + }, + { + "name": "DREMC ASA GF @System", + "sub_path": "filament/DREMC/DREMC ASA GF @System.json" + }, { "name": "Elas ASA @System", "sub_path": "filament/Elas/Elas ASA @System.json" @@ -932,6 +1012,10 @@ "name": "Elegoo ASA @System", "sub_path": "filament/Elegoo/Elegoo ASA @System.json" }, + { + "name": "Elegoo ASA-CF @System", + "sub_path": "filament/Elegoo/Elegoo ASA-CF @System.json" + }, { "name": "Overture ASA @System", "sub_path": "filament/Overture/Overture ASA @System.json" @@ -976,6 +1060,22 @@ "name": "COEX NYLEX PA6-CF @System", "sub_path": "filament/COEX/COEX NYLEX PA6-CF @System.json" }, + { + "name": "DREMC PA12-CF @System", + "sub_path": "filament/DREMC/DREMC PA12-CF @System.json" + }, + { + "name": "DREMC PA6-CF @System", + "sub_path": "filament/DREMC/DREMC PA6-CF @System.json" + }, + { + "name": "Elegoo PAHT-CF @System", + "sub_path": "filament/Elegoo/Elegoo PAHT-CF @System.json" + }, + { + "name": "FILL3D PA @System", + "sub_path": "filament/FILL3D/FILL3D PA @System.json" + }, { "name": "Fiberon PA12-CF @System", "sub_path": "filament/Polymaker/Fiberon PA12-CF @System.json" @@ -1000,6 +1100,14 @@ "name": "Bambu PC FR @System", "sub_path": "filament/Bambu/Bambu PC FR @System.json" }, + { + "name": "Elegoo PC @System", + "sub_path": "filament/Elegoo/Elegoo PC @System.json" + }, + { + "name": "Elegoo PC-FR @System", + "sub_path": "filament/Elegoo/Elegoo PC-FR @System.json" + }, { "name": "COEX PCTG PRIME @System", "sub_path": "filament/COEX/COEX PCTG PRIME @System.json" @@ -1040,18 +1148,46 @@ "name": "COEX PETG @System", "sub_path": "filament/COEX/COEX PETG @System.json" }, + { + "name": "DREMC PET-CF @System", + "sub_path": "filament/DREMC/DREMC PET-CF @System.json" + }, + { + "name": "DREMC PETG @System", + "sub_path": "filament/DREMC/DREMC PETG @System.json" + }, { "name": "Elas PETG Basic @System", "sub_path": "filament/Elas/Elas PETG Basic @System.json" }, + { + "name": "Elegoo PET-CF @System", + "sub_path": "filament/Elegoo/Elegoo PET-CF @System.json" + }, + { + "name": "Elegoo PETG @System", + "sub_path": "filament/Elegoo/Elegoo PETG @System.json" + }, + { + "name": "Elegoo PETG HF @System", + "sub_path": "filament/Elegoo/Elegoo PETG HF @System.json" + }, { "name": "Elegoo PETG PRO @System", "sub_path": "filament/Elegoo/Elegoo PETG PRO @System.json" }, + { + "name": "Elegoo PETG Translucent @System", + "sub_path": "filament/Elegoo/Elegoo PETG Translucent @System.json" + }, { "name": "Elegoo PETG-CF @System", "sub_path": "filament/Elegoo/Elegoo PETG-CF @System.json" }, + { + "name": "Elegoo PETG-GF @System", + "sub_path": "filament/Elegoo/Elegoo PETG-GF @System.json" + }, { "name": "Elegoo Rapid PETG @System", "sub_path": "filament/Elegoo/Elegoo Rapid PETG @System.json" @@ -1060,6 +1196,14 @@ "name": "FDplast PETG @System", "sub_path": "filament/FDplast/FDplast PETG @System.json" }, + { + "name": "FILL3D PETG @System", + "sub_path": "filament/FILL3D/FILL3D PETG @System.json" + }, + { + "name": "FILL3D PETG CF @System", + "sub_path": "filament/FILL3D/FILL3D PETG CF @System.json" + }, { "name": "Fiberon PET-CF @System", "sub_path": "filament/Polymaker/Fiberon PET-CF @System.json" @@ -1072,6 +1216,10 @@ "name": "Fiberon PETG-rCF @System", "sub_path": "filament/Polymaker/Fiberon PETG-rCF @System.json" }, + { + "name": "GreenGate3D PETG @System", + "sub_path": "filament/GreenGate3D/GreenGate3D PETG @System.json" + }, { "name": "NIT PETG @System", "sub_path": "filament/NIT/NIT PETG @System.json" @@ -1172,6 +1320,14 @@ "name": "COEX PLA PRIME @System", "sub_path": "filament/COEX/COEX PLA PRIME @System.json" }, + { + "name": "DREMC PLA+ @System", + "sub_path": "filament/DREMC/DREMC PLA+ @System.json" + }, + { + "name": "DREMC PLA+ HS @System", + "sub_path": "filament/DREMC/DREMC PLA HS @System.json" + }, { "name": "Elas PLA Basic @System", "sub_path": "filament/Elas/Elas PLA Basic @System.json" @@ -1184,6 +1340,54 @@ "name": "Elegoo PLA @System", "sub_path": "filament/Elegoo/Elegoo PLA @System.json" }, + { + "name": "Elegoo PLA Basic @System", + "sub_path": "filament/Elegoo/Elegoo PLA Basic @System.json" + }, + { + "name": "Elegoo PLA Galaxy @System", + "sub_path": "filament/Elegoo/Elegoo PLA Galaxy @System.json" + }, + { + "name": "Elegoo PLA Glow @System", + "sub_path": "filament/Elegoo/Elegoo PLA Glow @System.json" + }, + { + "name": "Elegoo PLA Marble @System", + "sub_path": "filament/Elegoo/Elegoo PLA Marble @System.json" + }, + { + "name": "Elegoo PLA Matte @System", + "sub_path": "filament/Elegoo/Elegoo PLA Matte @System.json" + }, + { + "name": "Elegoo PLA PRO @System", + "sub_path": "filament/Elegoo/Elegoo PLA PRO @System.json" + }, + { + "name": "Elegoo PLA Silk @System", + "sub_path": "filament/Elegoo/Elegoo PLA Silk @System.json" + }, + { + "name": "Elegoo PLA Sparkle @System", + "sub_path": "filament/Elegoo/Elegoo PLA Sparkle @System.json" + }, + { + "name": "Elegoo PLA Translucent2 @System", + "sub_path": "filament/Elegoo/Elegoo PLA Translucent2 @System.json" + }, + { + "name": "Elegoo PLA Wood @System", + "sub_path": "filament/Elegoo/Elegoo PLA Wood @System.json" + }, + { + "name": "Elegoo PLA+ @System", + "sub_path": "filament/Elegoo/Elegoo PLA+ @System.json" + }, + { + "name": "Elegoo PLA-CF @System", + "sub_path": "filament/Elegoo/Elegoo PLA-CF @System.json" + }, { "name": "Elegoo Rapid PLA+ @System", "sub_path": "filament/Elegoo/Elegoo Rapid PLA+ @System.json" @@ -1192,57 +1396,13 @@ "name": "FDplast PLA @System", "sub_path": "filament/FDplast/FDplast PLA @System.json" }, - { - "name": "FILL3D PLA Turbo @System", - "sub_path": "filament/FILL3D/FILL3D PLA Turbo @System.json" - }, - { - "name": "FILL3D PLA Basic @base", - "sub_path": "filament/FILL3D/FILL3D PLA Basic @base.json" - }, { "name": "FILL3D PLA Basic @System", "sub_path": "filament/FILL3D/FILL3D PLA Basic @System.json" }, { - "name": "FILL3D PETG @base", - "sub_path": "filament/FILL3D/FILL3D PETG @base.json" - }, - { - "name": "FILL3D PETG @System", - "sub_path": "filament/FILL3D/FILL3D PETG @System.json" - }, - { - "name": "FILL3D PETG CF @base", - "sub_path": "filament/FILL3D/FILL3D PETG CF @base.json" - }, - { - "name": "FILL3D PETG CF @System", - "sub_path": "filament/FILL3D/FILL3D PETG CF @System.json" - }, - { - "name": "FILL3D PP @base", - "sub_path": "filament/FILL3D/FILL3D PP @base.json" - }, - { - "name": "FILL3D PP @System", - "sub_path": "filament/FILL3D/FILL3D PP @System.json" - }, - { - "name": "FILL3D PPCF @base", - "sub_path": "filament/FILL3D/FILL3D PPCF @base.json" - }, - { - "name": "FILL3D PPCF @System", - "sub_path": "filament/FILL3D/FILL3D PPCF @System.json" - }, - { - "name": "FILL3D PA @base", - "sub_path": "filament/FILL3D/FILL3D PA @base.json" - }, - { - "name": "FILL3D PA @System", - "sub_path": "filament/FILL3D/FILL3D PA @System.json" + "name": "FILL3D PLA Turbo @System", + "sub_path": "filament/FILL3D/FILL3D PLA Turbo @System.json" }, { "name": "NIT PLA @System", @@ -1440,10 +1600,22 @@ "name": "Generic PLA Silk @System", "sub_path": "filament/Generic PLA Silk @System.json" }, + { + "name": "FILL3D PP @System", + "sub_path": "filament/FILL3D/FILL3D PP @System.json" + }, + { + "name": "FILL3D PPCF @System", + "sub_path": "filament/FILL3D/FILL3D PPCF @System.json" + }, { "name": "Bambu PPA-CF @System", "sub_path": "filament/Bambu/Bambu PPA-CF @System.json" }, + { + "name": "DREMC PPA-CF @System", + "sub_path": "filament/DREMC/DREMC PPA-CF @System.json" + }, { "name": "Bambu PVA @System", "sub_path": "filament/Bambu/Bambu PVA @System.json" @@ -1476,6 +1648,14 @@ "name": "COEX TPU 60A @System", "sub_path": "filament/COEX/COEX TPU 60A @System.json" }, + { + "name": "DREMC TPU 95A @System", + "sub_path": "filament/DREMC/DREMC TPU 95A @System.json" + }, + { + "name": "Elegoo Rapid TPU 95A @System", + "sub_path": "filament/Elegoo/Elegoo Rapid TPU 95A @System.json" + }, { "name": "Elegoo TPU 95A @System", "sub_path": "filament/Elegoo/Elegoo TPU 95A @System.json" @@ -1499,14 +1679,6 @@ { "name": "COEX PLA+Silk @System", "sub_path": "filament/COEX/COEX PLA+Silk @System.json" - }, - { - "name": "GreenGate3D PETG @base", - "sub_path": "filament/GreenGate3D/GreenGate3D PETG @base.json" - }, - { - "name": "GreenGate3D PETG @System", - "sub_path": "filament/GreenGate3D/GreenGate3D PETG @System.json" } ], "process_list": [], diff --git a/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC ABS @System.json b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC ABS @System.json new file mode 100644 index 00000000000..bb6f1ebd946 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC ABS @System.json @@ -0,0 +1,9 @@ +{ + "type": "filament", + "name": "DREMC ABS @System", + "inherits": "DREMC ABS @base", + "from": "system", + "setting_id": "DREMC003", + "instantiation": "false", + "compatible_printers": [] +} \ No newline at end of file diff --git a/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC ABS @base.json b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC ABS @base.json new file mode 100644 index 00000000000..b4835fdeca2 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC ABS @base.json @@ -0,0 +1,35 @@ +{ + "type": "filament", + "name": "DREMC ABS @base", + "inherits": "fdm_filament_abs", + "from": "system", + "filament_id": "DREMC003", + "instantiation": "false", + "filament_cost": [ + "24" + ], + "filament_density": [ + "1.06" + ], + "filament_flow_ratio": [ + "0.95" + ], + "filament_shrink": [ + "99.7" + ], + "fan_max_speed": [ + "20" + ], + "overhang_fan_speed": [ + "50" + ], + "filament_max_volumetric_speed": [ + "20" + ], + "chamber_temperature": [ + "60" + ], + "filament_vendor": [ + "DREMC" + ] +} \ No newline at end of file diff --git a/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC ABS+ @System.json b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC ABS+ @System.json new file mode 100644 index 00000000000..1eb4fcd0762 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC ABS+ @System.json @@ -0,0 +1,9 @@ +{ + "type": "filament", + "name": "DREMC ABS+ @System", + "inherits": "DREMC ABS+ @base", + "from": "system", + "setting_id": "DREMC004", + "instantiation": "false", + "compatible_printers": [] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC ABS+ @base.json b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC ABS+ @base.json new file mode 100644 index 00000000000..f9b2cd2c405 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC ABS+ @base.json @@ -0,0 +1,26 @@ +{ + "type": "filament", + "name": "DREMC ABS+ @base", + "inherits": "fdm_filament_abs", + "from": "system", + "filament_id": "DREMC004", + "instantiation": "false", + "filament_cost": [ + "24" + ], + "filament_density": [ + "1.06" + ], + "filament_flow_ratio": [ + "0.93" + ], + "filament_shrink": [ + "99.7" + ], + "filament_max_volumetric_speed": [ + "20" + ], + "filament_vendor": [ + "DREMC" + ] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC ABS-GF @System.json b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC ABS-GF @System.json new file mode 100644 index 00000000000..73ffb7f3633 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC ABS-GF @System.json @@ -0,0 +1,15 @@ +{ + "type": "filament", + "name": "DREMC ABS-GF @System", + "inherits": "DREMC ABS-GF @base", + "from": "system", + "setting_id": "DREMC009", + "instantiation": "true", + "filament_long_retractions_when_cut": [ + "1" + ], + "filament_retraction_distances_when_cut": [ + "18" + ], + "compatible_printers": [] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC ABS-GF @base.json b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC ABS-GF @base.json new file mode 100644 index 00000000000..b5917c922e4 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC ABS-GF @base.json @@ -0,0 +1,44 @@ +{ + "type": "filament", + "name": "DREMC ABS-GF @base", + "inherits": "fdm_filament_abs", + "from": "system", + "filament_id": "DREMC009", + "instantiation": "false", + "fan_cooling_layer_time": [ + "12" + ], + "fan_max_speed": [ + "30" + ], + "filament_cost": [ + "40" + ], + "filament_density": [ + "1.12" + ], + "filament_flow_ratio": [ + "0.95" + ], + "filament_shrink": [ + "99.7" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "filament_type": [ + "ABS-GF" + ], + "filament_vendor": [ + "DREMC" + ], + "overhang_fan_speed": [ + "30" + ], + "overhang_fan_threshold": [ + "10%" + ], + "slow_down_layer_time": [ + "4" + ] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC ASA @System.json b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC ASA @System.json new file mode 100644 index 00000000000..b4026708dab --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC ASA @System.json @@ -0,0 +1,9 @@ +{ + "type": "filament", + "name": "DREMC ASA @System", + "inherits": "DREMC ASA @base", + "from": "system", + "setting_id": "DREMC005", + "instantiation": "false", + "compatible_printers": [] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC ASA @base.json b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC ASA @base.json new file mode 100644 index 00000000000..324e4844374 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC ASA @base.json @@ -0,0 +1,44 @@ +{ + "type": "filament", + "name": "DREMC ASA @base", + "inherits": "fdm_filament_asa", + "from": "system", + "filament_id": "DREMC005", + "instantiation": "false", + "eng_plate_temp": [ + "110" + ], + "eng_plate_temp_initial_layer": [ + "110" + ], + "filament_cost": [ + "36" + ], + "filament_density": [ + "1.09" + ], + "filament_flow_ratio": [ + "0.94" + ], + "filament_shrink": [ + "99.7" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "filament_vendor": [ + "DREMC" + ], + "hot_plate_temp": [ + "110" + ], + "hot_plate_temp_initial_layer": [ + "110" + ], + "textured_plate_temp": [ + "110" + ], + "textured_plate_temp_initial_layer": [ + "110" + ] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC ASA CF @System.json b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC ASA CF @System.json new file mode 100644 index 00000000000..dd81c1f531b --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC ASA CF @System.json @@ -0,0 +1,9 @@ +{ + "type": "filament", + "name": "DREMC ASA CF @System", + "inherits": "DREMC ASA CF @base", + "from": "system", + "setting_id": "DREMC012_00", + "instantiation": "false", + "compatible_printers": [] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC ASA CF @base.json b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC ASA CF @base.json new file mode 100644 index 00000000000..b15fa0f629d --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC ASA CF @base.json @@ -0,0 +1,50 @@ +{ + "type": "filament", + "name": "DREMC ASA CF @base", + "inherits": "fdm_filament_asa", + "from": "system", + "filament_id": "DREMC012", + "instantiation": "false", + "eng_plate_temp": [ + "110" + ], + "eng_plate_temp_initial_layer": [ + "110" + ], + "filament_cost": [ + "48" + ], + "filament_density": [ + "1.09" + ], + "filament_flow_ratio": [ + "0.92" + ], + "filament_shrink": [ + "99.7" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "filament_vendor": [ + "DREMC" + ], + "hot_plate_temp": [ + "110" + ], + "hot_plate_temp_initial_layer": [ + "110" + ], + "textured_plate_temp": [ + "110" + ], + "textured_plate_temp_initial_layer": [ + "110" + ], + "nozzle_temperature": [ + "265" + ], + "nozzle_temperature_initial_layer": [ + "265" + ] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC ASA GF @System.json b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC ASA GF @System.json new file mode 100644 index 00000000000..c751f9e86c2 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC ASA GF @System.json @@ -0,0 +1,9 @@ +{ + "type": "filament", + "name": "DREMC ASA GF @System", + "inherits": "DREMC ASA GF @base", + "from": "system", + "setting_id": "DREMC013_00", + "instantiation": "false", + "compatible_printers": [] +} \ No newline at end of file diff --git a/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC ASA GF @base.json b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC ASA GF @base.json new file mode 100644 index 00000000000..11f4e56de48 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC ASA GF @base.json @@ -0,0 +1,50 @@ +{ + "type": "filament", + "name": "DREMC ASA GF @base", + "inherits": "fdm_filament_asa", + "from": "system", + "filament_id": "DREMC013", + "instantiation": "false", + "eng_plate_temp": [ + "110" + ], + "eng_plate_temp_initial_layer": [ + "110" + ], + "filament_cost": [ + "36" + ], + "filament_density": [ + "1.12" + ], + "filament_flow_ratio": [ + "0.92" + ], + "filament_shrink": [ + "99.7" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "filament_vendor": [ + "DREMC" + ], + "hot_plate_temp": [ + "110" + ], + "hot_plate_temp_initial_layer": [ + "110" + ], + "textured_plate_temp": [ + "110" + ], + "textured_plate_temp_initial_layer": [ + "110" + ], + "nozzle_temperature": [ + "270" + ], + "nozzle_temperature_initial_layer": [ + "270" + ] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PA12-CF @System.json b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PA12-CF @System.json new file mode 100644 index 00000000000..a187a36efde --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PA12-CF @System.json @@ -0,0 +1,9 @@ +{ + "type": "filament", + "name": "DREMC PA12-CF @System", + "inherits": "DREMC PA12-CF @base", + "from": "system", + "setting_id": "DREMC007", + "instantiation": "false", + "compatible_printers": [] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PA12-CF @base.json b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PA12-CF @base.json new file mode 100644 index 00000000000..aee897f4027 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PA12-CF @base.json @@ -0,0 +1,59 @@ +{ + "type": "filament", + "name": "DREMC PA12-CF @base", + "inherits": "fdm_filament_pa", + "from": "system", + "filament_id": "DREMC007", + "instantiation": "false", + "fan_cooling_layer_time": [ + "15" + ], + "fan_max_speed": [ + "100" + ], + "filament_cost": [ + "105" + ], + "filament_density": [ + "1.06" + ], + "filament_flow_ratio": [ + "0.95" + ], + "filament_max_volumetric_speed": [ + "14" + ], + "filament_type": [ + "PA-CF" + ], + "filament_vendor": [ + "DREMC" + ], + "full_fan_speed_layer": [ + "2" + ], + "nozzle_temperature": [ + "290" + ], + "nozzle_temperature_initial_layer": [ + "290" + ], + "nozzle_temperature_range_low": [ + "260" + ], + "overhang_fan_speed": [ + "100" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "temperature_vitrification": [ + "131" + ], + "textured_plate_temp": [ + "80" + ], + "textured_plate_temp_initial_layer": [ + "80" + ] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PA6-CF @System.json b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PA6-CF @System.json new file mode 100644 index 00000000000..00ee3751c51 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PA6-CF @System.json @@ -0,0 +1,9 @@ +{ + "type": "filament", + "name": "DREMC PA6-CF @System", + "inherits": "DREMC PA6-CF @base", + "from": "system", + "setting_id": "DREMC006", + "instantiation": "true", + "compatible_printers": [] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PA6-CF @base.json b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PA6-CF @base.json new file mode 100644 index 00000000000..7d693fc142b --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PA6-CF @base.json @@ -0,0 +1,53 @@ +{ + "type": "filament", + "name": "DREMC PA6-CF @base", + "inherits": "fdm_filament_pa", + "from": "system", + "filament_id": "DREMC006", + "instantiation": "false", + "fan_cooling_layer_time": [ + "15" + ], + "filament_cost": [ + "68" + ], + "filament_density": [ + "1.25" + ], + "filament_flow_ratio": [ + "0.95" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "filament_type": [ + "PA6-CF" + ], + "filament_vendor": [ + "DREMC" + ], + "nozzle_temperature": [ + "270" + ], + "nozzle_temperature_initial_layer": [ + "270" + ], + "nozzle_temperature_range_low": [ + "260" + ], + "overhang_fan_speed": [ + "100" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "temperature_vitrification": [ + "215" + ], + "textured_plate_temp": [ + "90" + ], + "textured_plate_temp_initial_layer": [ + "90" + ] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PET-CF @System.json b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PET-CF @System.json new file mode 100644 index 00000000000..5b277a22afe --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PET-CF @System.json @@ -0,0 +1,9 @@ +{ + "type": "filament", + "name": "DREMC PET-CF @System", + "inherits": "DREMC PET-CF @base", + "from": "system", + "setting_id": "DREMC008", + "instantiation": "false", + "compatible_printers": [] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PET-CF @base.json b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PET-CF @base.json new file mode 100644 index 00000000000..cc568e5ad68 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PET-CF @base.json @@ -0,0 +1,86 @@ +{ + "type": "filament", + "name": "DREMC PET-CF @base", + "inherits": "fdm_filament_pet", + "from": "system", + "filament_id": "DREMC008", + "instantiation": "false", + "cool_plate_temp": [ + "0" + ], + "cool_plate_temp_initial_layer": [ + "0" + ], + "eng_plate_temp": [ + "70" + ], + "eng_plate_temp_initial_layer": [ + "70" + ], + "fan_cooling_layer_time": [ + "242" + ], + "fan_min_speed": [ + "0" + ], + "filament_cost": [ + "70" + ], + "filament_density": [ + "1.3" + ], + "filament_flow_ratio": [ + "0.95" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "filament_type": [ + "PET-CF" + ], + "filament_vendor": [ + "DREMC" + ], + "hot_plate_temp": [ + "70" + ], + "hot_plate_temp_initial_layer": [ + "70" + ], + "nozzle_temperature": [ + "300" + ], + "nozzle_temperature_initial_layer": [ + "300" + ], + "nozzle_temperature_range_high": [ + "300" + ], + "nozzle_temperature_range_low": [ + "270" + ], + "required_nozzle_HRC": [ + "40" + ], + "supertack_plate_temp": [ + "80" + ], + "supertack_plate_temp_initial_layer": [ + "80" + ], + "slow_down_layer_time": [ + "5" + ], + "slow_down_min_speed": [ + "10" + ], + "temperature_vitrification": [ + "147" + ], + "textured_plate_temp": [ + "70" + ], + "textured_plate_temp_initial_layer": [ + "70" + ] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PETG @System.json b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PETG @System.json new file mode 100644 index 00000000000..e5c8e669cbc --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PETG @System.json @@ -0,0 +1,15 @@ +{ + "type": "filament", + "name": "DREMC PETG @System", + "inherits": "DREMC PETG @base", + "from": "system", + "setting_id": "DREMC002", + "instantiation": "false", + "filament_max_volumetric_speed": [ + "20" + ], + "nozzle_temperature_range_high": [ + "270" + ], + "compatible_printers": [] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PETG @base.json b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PETG @base.json new file mode 100644 index 00000000000..840e0104f37 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PETG @base.json @@ -0,0 +1,59 @@ +{ + "type": "filament", + "name": "DREMC PETG @base", + "inherits": "fdm_filament_pet", + "from": "system", + "filament_id": "DREMC002", + "instantiation": "false", + "cool_plate_temp": [ + "0" + ], + "cool_plate_temp_initial_layer": [ + "0" + ], + "eng_plate_temp": [ + "70" + ], + "eng_plate_temp_initial_layer": [ + "70" + ], + "fan_cooling_layer_time": [ + "30" + ], + "fan_max_speed": [ + "90" + ], + "fan_min_speed": [ + "20" + ], + "filament_flow_ratio": [ + "0.95" + ], + "filament_vendor": [ + "DREMC" + ], + "hot_plate_temp": [ + "70" + ], + "hot_plate_temp_initial_layer": [ + "70" + ], + "overhang_fan_speed": [ + "50" + ], + "overhang_fan_threshold": [ + "10%" + ], + "slow_down_layer_time": [ + "12" + ], + "slow_down_min_speed": [ + "10" + ], + "textured_plate_temp": [ + "70" + ], + "textured_plate_temp_initial_layer": [ + "70" + ] +} \ No newline at end of file diff --git a/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PLA HS @System.json b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PLA HS @System.json new file mode 100644 index 00000000000..b2b78aa204f --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PLA HS @System.json @@ -0,0 +1,12 @@ +{ + "type": "filament", + "name": "DREMC PLA+ HS @System", + "inherits": "DREMC PLA+ @base", + "from": "system", + "setting_id": "DREMC011", + "instantiation": "false", + "filament_max_volumetric_speed": [ + "22" + ], + "compatible_printers": [] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PLA HS @base.json b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PLA HS @base.json new file mode 100644 index 00000000000..cb2f3e166de --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PLA HS @base.json @@ -0,0 +1,20 @@ +{ + "type": "filament", + "name": "DREMC PLA+ HS @base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "DREMC011", + "instantiation": "false", + "filament_cost": [ + "26" + ], + "filament_density": [ + "1.25" + ], + "filament_flow_ratio": [ + "0.98" + ], + "filament_vendor": [ + "DREMC" + ] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PLA+ @System.json b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PLA+ @System.json new file mode 100644 index 00000000000..116ce2393fa --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PLA+ @System.json @@ -0,0 +1,12 @@ +{ + "type": "filament", + "name": "DREMC PLA+ @System", + "inherits": "DREMC PLA+ @base", + "from": "system", + "setting_id": "DREMC001", + "instantiation": "false", + "filament_max_volumetric_speed": [ + "18" + ], + "compatible_printers": [] +} \ No newline at end of file diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA @U1 base.json b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PLA+ @base.json similarity index 50% rename from resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA @U1 base.json rename to resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PLA+ @base.json index 9401e09cafb..698712e1ddf 100644 --- a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA @U1 base.json +++ b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PLA+ @base.json @@ -1,20 +1,20 @@ -{ - "type": "filament", - "from": "system", - "instantiation": "false", - "name": "PolyLite PLA @U1 base", - "filament_id": "13938660340", - "inherits": "fdm_filament_pla", - "filament_flow_ratio": [ - "0.95" - ], - "filament_cost": [ - "90" - ], - "filament_max_volumetric_speed": [ - "15" - ], - "default_filament_colour": [ - "" - ] -} +{ + "type": "filament", + "name": "DREMC PLA+ @base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "DREMC001", + "instantiation": "false", + "filament_cost": [ + "26" + ], + "filament_density": [ + "1.25" + ], + "filament_flow_ratio": [ + "0.98" + ], + "filament_vendor": [ + "DREMC" + ] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PPA-CF @System.json b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PPA-CF @System.json new file mode 100644 index 00000000000..a8b216a7ccd --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PPA-CF @System.json @@ -0,0 +1,9 @@ +{ + "type": "filament", + "name": "DREMC PPA-CF @System", + "inherits": "DREMC PPA-CF @base", + "from": "system", + "setting_id": "DREMC010", + "instantiation": "true", + "compatible_printers": [] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PPA-CF @base.json b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PPA-CF @base.json new file mode 100644 index 00000000000..ec5cecd565a --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC PPA-CF @base.json @@ -0,0 +1,11 @@ +{ + "type": "filament", + "name": "DREMC PPA-CF @base", + "inherits": "fdm_filament_ppa", + "from": "system", + "filament_id": "DREMC010", + "instantiation": "false", + "filament_vendor": [ + "DREMC" + ] +} \ No newline at end of file diff --git a/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC TPU 95A @System.json b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC TPU 95A @System.json new file mode 100644 index 00000000000..7645654b4e5 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC TPU 95A @System.json @@ -0,0 +1,12 @@ +{ + "type": "filament", + "name": "DREMC TPU 95A @System", + "inherits": "DREMC TPU 95A @base", + "from": "system", + "setting_id": "DREMC010", + "instantiation": "false", + "filament_max_volumetric_speed": [ + "6" + ], + "compatible_printers": [] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC TPU 95A @base.json b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC TPU 95A @base.json new file mode 100644 index 00000000000..ba17ff46a8d --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/DREMC/DREMC TPU 95A @base.json @@ -0,0 +1,23 @@ +{ + "type": "filament", + "name": "DREMC TPU 95A @base", + "inherits": "fdm_filament_tpu", + "from": "system", + "filament_id": "DREMC010", + "instantiation": "false", + "filament_cost": [ + "40" + ], + "filament_density": [ + "1.25" + ], + "filament_vendor": [ + "DREMC" + ], + "nozzle_temperature": [ + "230" + ], + "nozzle_temperature_initial_layer": [ + "230" + ] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo ABS @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo ABS @System.json new file mode 100644 index 00000000000..d021e99723c --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo ABS @System.json @@ -0,0 +1,27 @@ +{ + "type": "filament", + "name": "Elegoo ABS @System", + "inherits": "Elegoo ABS @base", + "from": "system", + "setting_id": "OEABSS00", + "instantiation": "true", + "fan_max_speed": [ + "40" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "pressure_advance": [ + "0.04" + ], + "enable_pressure_advance": [ + "1" + ], + "nozzle_temperature": [ + "270" + ], + "nozzle_temperature_initial_layer": [ + "270" + ], + "compatible_printers": [] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo ABS @base.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo ABS @base.json index 86b533bba10..af0dad8787a 100644 --- a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo ABS @base.json +++ b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo ABS @base.json @@ -3,21 +3,51 @@ "name": "Elegoo ABS @base", "inherits": "fdm_filament_abs", "from": "system", - "filament_id": "EABSB00", + "filament_id": "OEABSB00", "instantiation": "false", - "filament_vendor": [ - "Elegoo" + "eng_plate_temp": [ + "90" + ], + "eng_plate_temp_initial_layer": [ + "90" + ], + "fan_cooling_layer_time": [ + "35" ], "filament_density": [ "1.1" ], - "filament_max_volumetric_speed": [ - "12" + "filament_flow_ratio": [ + "0.98" + ], + "filament_vendor": [ + "Elegoo" + ], + "hot_plate_temp": [ + "90" + ], + "hot_plate_temp_initial_layer": [ + "90" ], "nozzle_temperature": [ "270" ], - "fan_cooling_layer_time": [ - "35" + "slow_down_min_speed": [ + "20" + ], + "temperature_vitrification": [ + "100" + ], + "textured_plate_temp": [ + "90" + ], + "textured_plate_temp_initial_layer": [ + "90" + ], + "filament_start_gcode": [ + "; Filament start gcode\n" + ], + "filament_end_gcode": [ + "; filament end gcode \n" ] } diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo ASA @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo ASA @System.json index aeccbd2c2ca..e5b2e66a103 100644 --- a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo ASA @System.json +++ b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo ASA @System.json @@ -3,7 +3,20 @@ "name": "Elegoo ASA @System", "inherits": "Elegoo ASA @base", "from": "system", - "setting_id": "OGFSE06_00", + "setting_id": "OEASAS00", "instantiation": "true", - "compatible_printers": [] + "pressure_advance": [ + "0.04" + ], + "enable_pressure_advance": [ + "1" + ], + "nozzle_temperature": [ + "270" + ], + "nozzle_temperature_initial_layer": [ + "270" + ], + "compatible_printers": [], + "renamed_from": "Elegoo ASA" } diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo ASA @base.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo ASA @base.json index 4c81f329bcd..da502cf7b67 100644 --- a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo ASA @base.json +++ b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo ASA @base.json @@ -3,15 +3,45 @@ "name": "Elegoo ASA @base", "inherits": "fdm_filament_asa", "from": "system", - "filament_id": "OGFE06", + "filament_id": "OEASAB00", "instantiation": "false", - "filament_vendor": [ - "Elegoo" + "eng_plate_temp": [ + "90" + ], + "eng_plate_temp_initial_layer": [ + "90" ], "filament_density": [ "1.1" ], - "filament_max_volumetric_speed": [ - "12" + "filament_flow_ratio": [ + "0.98" + ], + "filament_vendor": [ + "Elegoo" + ], + "hot_plate_temp": [ + "90" + ], + "hot_plate_temp_initial_layer": [ + "90" + ], + "slow_down_min_speed": [ + "20" + ], + "temperature_vitrification": [ + "100" + ], + "textured_plate_temp": [ + "90" + ], + "textured_plate_temp_initial_layer": [ + "90" + ], + "filament_start_gcode": [ + "; Filament start gcode\n" + ], + "filament_end_gcode": [ + "; filament end gcode \n" ] } diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo ASA-CF @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo ASA-CF @System.json new file mode 100644 index 00000000000..1084493ef9f --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo ASA-CF @System.json @@ -0,0 +1,33 @@ +{ + "type": "filament", + "name": "Elegoo ASA-CF @System", + "inherits": "Elegoo ASA @base", + "from": "system", + "setting_id": "OEASACFS00", + "instantiation": "true", + "pressure_advance": [ + "0.04" + ], + "enable_pressure_advance": [ + "1" + ], + "nozzle_temperature": [ + "270" + ], + "nozzle_temperature_initial_layer": [ + "270" + ], + "fan_max_speed": [ + "30" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "textured_plate_temp": [ + "100" + ], + "textured_plate_temp_initial_layer": [ + "100" + ], + "compatible_printers": [] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PAHT @base.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PAHT @base.json index 470d2f57db0..dd444cd8468 100644 --- a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PAHT @base.json +++ b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PAHT @base.json @@ -1,23 +1,92 @@ { "type": "filament", "name": "Elegoo PAHT @base", - "inherits": "fdm_filament_paht", + "inherits": "fdm_filament_pa", "from": "system", - "filament_id": "EPAHTB00", + "filament_id": "OEPAHTB0", "instantiation": "false", - "filament_cost": [ + "activate_air_filtration": [ + "1" + ], + "close_fan_the_first_x_layers": [ + "1" + ], + "cool_plate_temp": [ + "35" + ], + "cool_plate_temp_initial_layer": [ + "35" + ], + "eng_plate_temp": [ "0" ], + "eng_plate_temp_initial_layer": [ + "0" + ], + "fan_cooling_layer_time": [ + "80" + ], + "fan_min_speed": [ + "50" + ], "filament_density": [ "1.25" ], + "filament_flow_ratio": [ + "0.96" + ], "filament_max_volumetric_speed": [ "16" ], "filament_vendor": [ "Elegoo" ], + "hot_plate_temp": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "overhang_fan_threshold": [ + "50%" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "slow_down_layer_time": [ + "8" + ], + "slow_down_min_speed": [ + "20" + ], + "temperature_vitrification": [ + "45" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], "filament_start_gcode": [ "; filament start gcode\n" + ], + "filament_end_gcode": [ + "; filament end gcode \n" + ], + "nozzle_temperature_range_high": [ + "240" + ], + "nozzle_temperature_range_low": [ + "190" + ], + "additional_cooling_fan_speed": [ + "0" ] } diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PAHT-CF @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PAHT-CF @System.json new file mode 100644 index 00000000000..1303bc0c4af --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PAHT-CF @System.json @@ -0,0 +1,69 @@ +{ + "type": "filament", + "name": "Elegoo PAHT-CF @System", + "inherits": "Elegoo PAHT @base", + "from": "system", + "setting_id": "OEPAHTCFS00", + "instantiation": "true", + "close_fan_the_first_x_layers": [ + "3" + ], + "fan_cooling_layer_time": [ + "5" + ], + "fan_max_speed": [ + "30" + ], + "fan_min_speed": [ + "10" + ], + "filament_flow_ratio": [ + "0.96" + ], + "filament_max_volumetric_speed": [ + "6" + ], + "nozzle_temperature": [ + "290" + ], + "nozzle_temperature_initial_layer": [ + "290" + ], + "nozzle_temperature_range_high": [ + "290" + ], + "nozzle_temperature_range_low": [ + "260" + ], + "overhang_fan_speed": [ + "40" + ], + "overhang_fan_threshold": [ + "0%" + ], + "reduce_fan_stop_start_freq": [ + "0" + ], + "slow_down_layer_time": [ + "2" + ], + "slow_down_min_speed": [ + "10" + ], + "textured_plate_temp": [ + "100" + ], + "textured_plate_temp_initial_layer": [ + "100" + ], + "pressure_advance": [ + "0.052" + ], + "enable_pressure_advance": [ + "1" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PC @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PC @System.json new file mode 100644 index 00000000000..7892facc41e --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PC @System.json @@ -0,0 +1,54 @@ +{ + "type": "filament", + "name": "Elegoo PC @System", + "inherits": "Elegoo PC @base", + "from": "system", + "setting_id": "OEPCS00", + "instantiation": "true", + "pressure_advance": [ + "0.052" + ], + "enable_pressure_advance": [ + "1" + ], + "nozzle_temperature": [ + "270" + ], + "nozzle_temperature_initial_layer": [ + "270" + ], + "nozzle_temperature_range_high": [ + "270" + ], + "nozzle_temperature_range_low": [ + "250" + ], + "overhang_fan_threshold": [ + "25%" + ], + "slow_down_layer_time": [ + "6" + ], + "textured_plate_temp": [ + "100" + ], + "textured_plate_temp_initial_layer": [ + "100" + ], + "fan_cooling_layer_time": [ + "30" + ], + "fan_max_speed": [ + "35" + ], + "fan_min_speed": [ + "10" + ], + "filament_max_volumetric_speed": [ + "16" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PC @base.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PC @base.json index dfc9441fae1..b7a5a62edaa 100644 --- a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PC @base.json +++ b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PC @base.json @@ -3,21 +3,27 @@ "name": "Elegoo PC @base", "inherits": "fdm_filament_pc", "from": "system", - "filament_id": "EPCB00", + "filament_id": "OEPCB00", "instantiation": "false", - "filament_cost": [ - "0" - ], "filament_density": [ "1.25" ], + "filament_flow_ratio": [ + "0.98" + ], "filament_max_volumetric_speed": [ "16" ], "filament_vendor": [ "Elegoo" ], + "slow_down_min_speed": [ + "20" + ], "filament_start_gcode": [ "; filament start gcode\n" + ], + "filament_end_gcode": [ + "; filament end gcode \n" ] } diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PC-FR @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PC-FR @System.json new file mode 100644 index 00000000000..d5424251631 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PC-FR @System.json @@ -0,0 +1,39 @@ +{ + "type": "filament", + "name": "Elegoo PC-FR @System", + "inherits": "Elegoo PC @base", + "from": "system", + "setting_id": "OEPCFRS00", + "instantiation": "true", + "pressure_advance": [ + "0.05" + ], + "enable_pressure_advance": [ + "1" + ], + "nozzle_temperature": [ + "280" + ], + "nozzle_temperature_initial_layer": [ + "280" + ], + "nozzle_temperature_range_high": [ + "290" + ], + "nozzle_temperature_range_low": [ + "260" + ], + "slow_down_layer_time": [ + "10" + ], + "fan_max_speed": [ + "40" + ], + "filament_density": [ + "1.1" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "compatible_printers": [] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PET-CF @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PET-CF @System.json new file mode 100644 index 00000000000..dfc52bf0bfc --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PET-CF @System.json @@ -0,0 +1,57 @@ +{ + "type": "filament", + "name": "Elegoo PET-CF @System", + "inherits": "Elegoo PETG @base", + "from": "system", + "setting_id": "OEPETCFS00", + "instantiation": "true", + "pressure_advance": [ + "0.05" + ], + "enable_pressure_advance": [ + "1" + ], + "fan_cooling_layer_time": [ + "5" + ], + "filament_max_volumetric_speed": [ + "8" + ], + "nozzle_temperature": [ + "270" + ], + "nozzle_temperature_initial_layer": [ + "270" + ], + "nozzle_temperature_range_high": [ + "290" + ], + "nozzle_temperature_range_low": [ + "260" + ], + "overhang_fan_speed": [ + "40" + ], + "overhang_fan_threshold": [ + "0%" + ], + "reduce_fan_stop_start_freq": [ + "0" + ], + "slow_down_layer_time": [ + "2" + ], + "slow_down_min_speed": [ + "20" + ], + "textured_plate_temp": [ + "100" + ], + "textured_plate_temp_initial_layer": [ + "100" + ], + "filament_type": [ + "PET-CF" + ], + "compatible_printers": [] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PETG @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PETG @System.json new file mode 100644 index 00000000000..cb00ed6c748 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PETG @System.json @@ -0,0 +1,27 @@ +{ + "type": "filament", + "name": "Elegoo PETG @System", + "inherits": "Elegoo PETG @base", + "from": "system", + "setting_id": "OEPETGS00", + "instantiation": "true", + "pressure_advance": [ + "0.05" + ], + "enable_pressure_advance": [ + "1" + ], + "overhang_fan_threshold": [ + "50%" + ], + "nozzle_temperature": [ + "250" + ], + "nozzle_temperature_initial_layer": [ + "250" + ], + "filament_max_volumetric_speed": [ + "11" + ], + "compatible_printers": [] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PETG @base.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PETG @base.json index 92fab7e9184..d6cd360eba8 100644 --- a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PETG @base.json +++ b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PETG @base.json @@ -3,7 +3,7 @@ "name": "Elegoo PETG @base", "inherits": "fdm_filament_pet", "from": "system", - "filament_id": "EPETGB00", + "filament_id": "OEPETGB0", "instantiation": "false", "cool_plate_temp": [ "0" @@ -26,12 +26,12 @@ "fan_min_speed": [ "10" ], - "filament_cost": [ - "0" - ], "filament_density": [ "1.25" ], + "filament_flow_ratio": [ + "0.98" + ], "filament_max_volumetric_speed": [ "8" ], @@ -44,12 +44,6 @@ "hot_plate_temp_initial_layer": [ "70" ], - "nozzle_temperature_range_high": [ - "270" - ], - "nozzle_temperature_range_low": [ - "230" - ], "nozzle_temperature": [ "240" ], @@ -77,7 +71,10 @@ "filament_end_gcode": [ "; filament end gcode \n" ], - "filament_type": [ - "PETG" + "nozzle_temperature_range_high": [ + "270" + ], + "nozzle_temperature_range_low": [ + "230" ] } diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PETG HF @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PETG HF @System.json new file mode 100644 index 00000000000..7fbd876d932 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PETG HF @System.json @@ -0,0 +1,42 @@ +{ + "type": "filament", + "name": "Elegoo PETG HF @System", + "inherits": "Elegoo PETG @base", + "from": "system", + "setting_id": "OERPETGHFS00", + "instantiation": "true", + "pressure_advance": [ + "0.052" + ], + "enable_pressure_advance": [ + "1" + ], + "filament_flow_ratio": [ + "0.99" + ], + "fan_min_speed": [ + "30" + ], + "filament_density": [ + "1.26" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "fan_max_speed": [ + "50" + ], + "nozzle_temperature": [ + "240" + ], + "nozzle_temperature_initial_layer": [ + "240" + ], + "nozzle_temperature_range_high": [ + "250" + ], + "overhang_fan_speed": [ + "100" + ], + "compatible_printers": [] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PETG PRO @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PETG PRO @System.json index 3dd7b2ea56e..56220644d99 100644 --- a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PETG PRO @System.json +++ b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PETG PRO @System.json @@ -1,10 +1,22 @@ { "type": "filament", "name": "Elegoo PETG PRO @System", - "renamed_from": "Elegoo PETG Pro @System", - "inherits": "Elegoo PETG PRO @base", + "inherits": "Elegoo PETG @base", "from": "system", - "setting_id": "OGFSE02_00", + "setting_id": "OEPETGPROS00", "instantiation": "true", - "compatible_printers": [] + "pressure_advance": [ + "0.1" + ], + "overhang_fan_threshold": [ + "50%" + ], + "enable_pressure_advance": [ + "1" + ], + "filament_max_volumetric_speed": [ + "5" + ], + "compatible_printers": [], + "renamed_from": "Elegoo PETG PRO" } diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PETG Translucent @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PETG Translucent @System.json new file mode 100644 index 00000000000..d191bcf93b4 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PETG Translucent @System.json @@ -0,0 +1,27 @@ +{ + "type": "filament", + "name": "Elegoo PETG Translucent @System", + "inherits": "Elegoo PETG @base", + "from": "system", + "setting_id": "OEPETGTRANSS00", + "instantiation": "true", + "pressure_advance": [ + "0.052" + ], + "enable_pressure_advance": [ + "1" + ], + "fan_max_speed": [ + "35" + ], + "filament_max_volumetric_speed": [ + "10" + ], + "nozzle_temperature": [ + "255" + ], + "nozzle_temperature_initial_layer": [ + "255" + ], + "compatible_printers": [] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PETG-CF @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PETG-CF @System.json index 5cca110169b..7bacc7f84da 100644 --- a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PETG-CF @System.json +++ b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PETG-CF @System.json @@ -1,9 +1,45 @@ { "type": "filament", "name": "Elegoo PETG-CF @System", - "inherits": "Elegoo PETG-CF @base", + "inherits": "Elegoo PETG @base", "from": "system", - "setting_id": "OGFSE03_00", + "setting_id": "OEPETGCFS00", "instantiation": "true", + "pressure_advance": [ + "0.052" + ], + "enable_pressure_advance": [ + "1" + ], + "filament_flow_ratio": [ + "0.99" + ], + "filament_density": [ + "1.26" + ], + "nozzle_temperature": [ + "250" + ], + "nozzle_temperature_initial_layer": [ + "250" + ], + "fan_max_speed": [ + "40" + ], + "fan_min_speed": [ + "5" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "nozzle_temperature_range_low": [ + "240" + ], + "overhang_fan_speed": [ + "100" + ], + "slow_down_layer_time": [ + "6" + ], "compatible_printers": [] } diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PETG-GF @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PETG-GF @System.json new file mode 100644 index 00000000000..6ae0310d352 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PETG-GF @System.json @@ -0,0 +1,42 @@ +{ + "type": "filament", + "name": "Elegoo PETG-GF @System", + "inherits": "Elegoo PETG @base", + "from": "system", + "setting_id": "OEPETGFS00", + "instantiation": "true", + "pressure_advance": [ + "0.052" + ], + "enable_pressure_advance": [ + "1" + ], + "filament_density": [ + "1.26" + ], + "nozzle_temperature": [ + "250" + ], + "nozzle_temperature_initial_layer": [ + "250" + ], + "fan_max_speed": [ + "40" + ], + "fan_min_speed": [ + "5" + ], + "filament_max_volumetric_speed": [ + "10" + ], + "nozzle_temperature_range_low": [ + "240" + ], + "overhang_fan_speed": [ + "100" + ], + "slow_down_layer_time": [ + "6" + ], + "compatible_printers": [] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA @System.json index a24dd618b73..c806611a420 100644 --- a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA @System.json +++ b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA @System.json @@ -3,7 +3,29 @@ "name": "Elegoo PLA @System", "inherits": "Elegoo PLA @base", "from": "system", - "setting_id": "OGFSE04_00", + "setting_id": "OEPLAS00", "instantiation": "true", - "compatible_printers": [] + "filament_max_volumetric_speed": [ + "21" + ], + "nozzle_temperature_initial_layer": [ + "210" + ], + "nozzle_temperature": [ + "210" + ], + "pressure_advance": [ + "0.04" + ], + "enable_pressure_advance": [ + "1" + ], + "slow_down_layer_time": [ + "4" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [], + "renamed_from": "Elegoo PLA" } diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA @base.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA @base.json index 740ad7ba3c1..6b4622c0edb 100644 --- a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA @base.json +++ b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA @base.json @@ -3,10 +3,13 @@ "name": "Elegoo PLA @base", "inherits": "fdm_filament_pla", "from": "system", - "filament_id": "OGFE04", + "filament_id": "OEPLAB00", "instantiation": "false", - "filament_cost": [ - "0" + "fan_cooling_layer_time": [ + "80" + ], + "fan_min_speed": [ + "50" ], "filament_density": [ "1.25" @@ -17,7 +20,31 @@ "filament_vendor": [ "Elegoo" ], + "hot_plate_temp": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "slow_down_layer_time": [ + "8" + ], + "slow_down_min_speed": [ + "20" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], "filament_start_gcode": [ "; filament start gcode\n" + ], + "filament_end_gcode": [ + "; filament end gcode \n" + ], + "additional_cooling_fan_speed": [ + "0" ] } diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA Basic @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA Basic @System.json new file mode 100644 index 00000000000..1f7735d6eec --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA Basic @System.json @@ -0,0 +1,33 @@ +{ + "type": "filament", + "name": "Elegoo PLA Basic @System", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "OEPLABASICS00", + "instantiation": "true", + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "filament_max_volumetric_speed": [ + "21" + ], + "pressure_advance": [ + "0.04" + ], + "enable_pressure_advance": [ + "1" + ], + "slow_down_layer_time": [ + "4" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA Galaxy @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA Galaxy @System.json new file mode 100644 index 00000000000..9b206531498 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA Galaxy @System.json @@ -0,0 +1,36 @@ +{ + "type": "filament", + "name": "Elegoo PLA Galaxy @System", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "OEPLAGALAXYS00", + "instantiation": "true", + "fan_min_speed": [ + "80" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature_range_high": [ + "220" + ], + "pressure_advance": [ + "0.04" + ], + "enable_pressure_advance": [ + "1" + ], + "slow_down_layer_time": [ + "4" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA Glow @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA Glow @System.json new file mode 100644 index 00000000000..c7ab217760c --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA Glow @System.json @@ -0,0 +1,36 @@ +{ + "type": "filament", + "name": "Elegoo PLA Glow @System", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "OEPLAGLOWS00", + "instantiation": "true", + "pressure_advance": [ + "0.04" + ], + "enable_pressure_advance": [ + "1" + ], + "slow_down_layer_time": [ + "4" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "fan_min_speed": [ + "100" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "compatible_printers": [] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA Marble @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA Marble @System.json new file mode 100644 index 00000000000..1bcf34ce0ca --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA Marble @System.json @@ -0,0 +1,36 @@ +{ + "type": "filament", + "name": "Elegoo PLA Marble @System", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "OEPLAMARBLES00", + "instantiation": "true", + "fan_min_speed": [ + "80" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature_range_high": [ + "220" + ], + "pressure_advance": [ + "0.052" + ], + "enable_pressure_advance": [ + "1" + ], + "slow_down_layer_time": [ + "4" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA Matte @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA Matte @System.json new file mode 100644 index 00000000000..6432e78e81f --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA Matte @System.json @@ -0,0 +1,52 @@ +{ + "type": "filament", + "name": "Elegoo PLA Matte @System", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "OEPLAMS00", + "instantiation": "true", + "fan_cooling_layer_time": [ + "80" + ], + "fan_max_speed": [ + "80" + ], + "fan_min_speed": [ + "60" + ], + "filament_max_volumetric_speed": [ + "16" + ], + "hot_plate_temp": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "slow_down_layer_time": [ + "6" + ], + "textured_plate_temp": [ + "65" + ], + "textured_plate_temp_initial_layer": [ + "65" + ], + "pressure_advance": [ + "0.04" + ], + "enable_pressure_advance": [ + "1" + ], + "filament_cost": [ + "0" + ], + "filament_density": [ + "1.25" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [], + "renamed_from": "Elegoo PLA Matte" +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA PRO @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA PRO @System.json new file mode 100644 index 00000000000..5f1a94a7446 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA PRO @System.json @@ -0,0 +1,28 @@ +{ + "type": "filament", + "name": "Elegoo PLA PRO @System", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "OEPLAPROS00", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "20" + ], + "enable_pressure_advance": [ + "1" + ], + "filament_flow_ratio": [ + "0.99" + ], + "pressure_advance": [ + "0.032" + ], + "slow_down_layer_time": [ + "6" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [], + "renamed_from": "Elegoo PLA PRO" +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA Silk @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA Silk @System.json new file mode 100644 index 00000000000..dcd0aaceb46 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA Silk @System.json @@ -0,0 +1,52 @@ +{ + "type": "filament", + "name": "Elegoo PLA Silk @System", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "OEPLASS00", + "instantiation": "true", + "fan_cooling_layer_time": [ + "80" + ], + "fan_max_speed": [ + "80" + ], + "fan_min_speed": [ + "60" + ], + "hot_plate_temp": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "slow_down_layer_time": [ + "8" + ], + "textured_plate_temp": [ + "65" + ], + "textured_plate_temp_initial_layer": [ + "65" + ], + "enable_pressure_advance": [ + "1" + ], + "pressure_advance": [ + "0.04" + ], + "filament_density": [ + "1.32" + ], + "nozzle_temperature": [ + "230" + ], + "nozzle_temperature_initial_layer": [ + "230" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [], + "renamed_from": "Elegoo PLA Silk" +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA Sparkle @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA Sparkle @System.json new file mode 100644 index 00000000000..ec534f3c078 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA Sparkle @System.json @@ -0,0 +1,39 @@ +{ + "type": "filament", + "name": "Elegoo PLA Sparkle @System", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "OEPLASPARKLES00", + "instantiation": "true", + "fan_min_speed": [ + "80" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature_range_high": [ + "220" + ], + "pressure_advance": [ + "0.04" + ], + "enable_pressure_advance": [ + "1" + ], + "filament_flow_ratio": [ + "0.99" + ], + "slow_down_layer_time": [ + "4" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA Translucent2 @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA Translucent2 @System.json new file mode 100644 index 00000000000..4d32ef561eb --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA Translucent2 @System.json @@ -0,0 +1,39 @@ +{ + "type": "filament", + "name": "Elegoo PLA Translucent2 @System", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "OEPLATRA2S00", + "instantiation": "true", + "pressure_advance": [ + "0.04" + ], + "enable_pressure_advance": [ + "1" + ], + "fan_min_speed": [ + "100" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "filament_retract_when_changing_layer": [ + "1" + ], + "filament_retraction_length": [ + "0.4" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "slow_down_layer_time": [ + "8" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA Wood @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA Wood @System.json new file mode 100644 index 00000000000..bda6a141b57 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA Wood @System.json @@ -0,0 +1,36 @@ +{ + "type": "filament", + "name": "Elegoo PLA Wood @System", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "OEPLAWOODS00", + "instantiation": "true", + "fan_min_speed": [ + "80" + ], + "filament_max_volumetric_speed": [ + "10" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_initial_layer": [ + "220" + ], + "nozzle_temperature_range_low": [ + "200" + ], + "pressure_advance": [ + "0.052" + ], + "enable_pressure_advance": [ + "1" + ], + "slow_down_layer_time": [ + "4" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA+ @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA+ @System.json new file mode 100644 index 00000000000..4074a97c006 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA+ @System.json @@ -0,0 +1,25 @@ +{ + "type": "filament", + "name": "Elegoo PLA+ @System", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "OEPLAPLUSS00", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "20" + ], + "pressure_advance": [ + "0.04" + ], + "enable_pressure_advance": [ + "1" + ], + "slow_down_layer_time": [ + "6" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [], + "renamed_from": "Elegoo PLA+" +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA-CF @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA-CF @System.json new file mode 100644 index 00000000000..ba130a46b53 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA-CF @System.json @@ -0,0 +1,61 @@ +{ + "type": "filament", + "name": "Elegoo PLA-CF @System", + "inherits": "Elegoo PLA @base", + "from": "system", + "setting_id": "OEPLACFS00", + "instantiation": "true", + "fan_cooling_layer_time": [ + "80" + ], + "fan_max_speed": [ + "80" + ], + "fan_min_speed": [ + "60" + ], + "filament_max_volumetric_speed": [ + "16" + ], + "hot_plate_temp": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "slow_down_layer_time": [ + "6" + ], + "textured_plate_temp": [ + "65" + ], + "textured_plate_temp_initial_layer": [ + "65" + ], + "pressure_advance": [ + "0.032" + ], + "enable_pressure_advance": [ + "1" + ], + "additional_cooling_fan_speed": [ + "0" + ], + "cool_plate_temp": [ + "45" + ], + "cool_plate_temp_initial_layer": [ + "45" + ], + "filament_density": [ + "1.21" + ], + "required_nozzle_HRC": [ + "40" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [], + "renamed_from": "Elegoo PLA-CF" +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA-CF @base.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA-CF @base.json deleted file mode 100644 index 12c6659c097..00000000000 --- a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PLA-CF @base.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "type": "filament", - "name": "Elegoo PLA-CF @base", - "inherits": "fdm_filament_pla", - "from": "system", - "filament_id": "EPLACFB00", - "instantiation": "false", - "additional_cooling_fan_speed": [ - "0" - ], - "cool_plate_temp": [ - "45" - ], - "cool_plate_temp_initial_layer": [ - "45" - ], - "filament_type": [ - "PLA-CF" - ], - "filament_vendor": [ - "Elegoo" - ], - "filament_density": [ - "1.21" - ], - "required_nozzle_HRC": [ - "40" - ], - "slow_down_layer_time": [ - "7" - ], - "filament_start_gcode": [ - "; Filament start gcode\n" - ], - "filament_end_gcode": [ - "; filament end gcode \n" - ] -} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo Rapid PETG @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo Rapid PETG @System.json index b8ab16611b2..8cfea007489 100644 --- a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo Rapid PETG @System.json +++ b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo Rapid PETG @System.json @@ -1,9 +1,37 @@ { "type": "filament", "name": "Elegoo Rapid PETG @System", - "inherits": "Elegoo Rapid PETG @base", + "inherits": "Elegoo PETG @base", "from": "system", - "setting_id": "OGFSE01_00", + "setting_id": "OERPETGS00", "instantiation": "true", - "compatible_printers": [] + "pressure_advance": [ + "0.052" + ], + "enable_pressure_advance": [ + "1" + ], + "filament_flow_ratio": [ + "0.99" + ], + "fan_max_speed": [ + "80" + ], + "fan_min_speed": [ + "30" + ], + "filament_density": [ + "1.26" + ], + "filament_max_volumetric_speed": [ + "18" + ], + "nozzle_temperature": [ + "250" + ], + "nozzle_temperature_initial_layer": [ + "250" + ], + "compatible_printers": [], + "renamed_from": "Elegoo Rapid PETG;Elegoo Rapid PETG+" } diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo Rapid PLA+ @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo Rapid PLA+ @System.json index d5bfca6ee6c..7913e35ff38 100644 --- a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo Rapid PLA+ @System.json +++ b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo Rapid PLA+ @System.json @@ -1,9 +1,49 @@ { "type": "filament", "name": "Elegoo Rapid PLA+ @System", - "inherits": "Elegoo Rapid PLA+ @base", + "inherits": "Elegoo PLA @base", "from": "system", - "setting_id": "OGFSE05_00", + "setting_id": "OERPLAPLUSS00", "instantiation": "true", - "compatible_printers": [] + "fan_cooling_layer_time": [ + "80" + ], + "fan_max_speed": [ + "100" + ], + "fan_min_speed": [ + "60" + ], + "hot_plate_temp": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "slow_down_layer_time": [ + "4" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "pressure_advance": [ + "0.04" + ], + "enable_pressure_advance": [ + "1" + ], + "filament_max_volumetric_speed": [ + "21" + ], + "filament_density": [ + "1.25" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "compatible_printers": [], + "renamed_from": "Elegoo Rapid PLA+" } diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo Rapid TPU 95A @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo Rapid TPU 95A @System.json new file mode 100644 index 00000000000..823ac918270 --- /dev/null +++ b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo Rapid TPU 95A @System.json @@ -0,0 +1,27 @@ +{ + "type": "filament", + "name": "Elegoo Rapid TPU 95A @System", + "inherits": "Elegoo TPU @base", + "from": "system", + "setting_id": "OERTPU95AS00", + "instantiation": "true", + "pressure_advance": [ + "0.1" + ], + "enable_pressure_advance": [ + "1" + ], + "nozzle_temperature": [ + "230" + ], + "nozzle_temperature_initial_layer": [ + "230" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "compatible_printers": [] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo TPU 95A @System.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo TPU 95A @System.json index e4c6f89bdbd..1716e4bf06e 100644 --- a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo TPU 95A @System.json +++ b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo TPU 95A @System.json @@ -1,9 +1,18 @@ { "type": "filament", "name": "Elegoo TPU 95A @System", - "inherits": "Elegoo TPU 95A @base", + "inherits": "Elegoo TPU @base", "from": "system", - "setting_id": "OGFSE07_00", + "setting_id": "OETPU95AS00", "instantiation": "true", + "filament_max_volumetric_speed": [ + "3.2" + ], + "pressure_advance": [ + "0.1" + ], + "enable_pressure_advance": [ + "1" + ], "compatible_printers": [] } diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo TPU @base.json b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo TPU @base.json index 99ed8dc8e94..28b8c921a6a 100644 --- a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo TPU @base.json +++ b/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo TPU @base.json @@ -3,17 +3,20 @@ "name": "Elegoo TPU @base", "inherits": "fdm_filament_tpu", "from": "system", - "filament_id": "ETPUB00", + "filament_id": "OETPUB00", "instantiation": "false", + "filament_density": [ + "1.21" + ], + "filament_flow_ratio": [ + "0.96" + ], "filament_max_volumetric_speed": [ "3.6" ], "filament_vendor": [ "Elegoo" ], - "filament_density": [ - "1.21" - ], "nozzle_temperature": [ "225" ], @@ -22,5 +25,11 @@ ], "filament_start_gcode": [ "; filament start gcode\n" + ], + "filament_end_gcode": [ + "; filament end gcode \n" + ], + "additional_cooling_fan_speed": [ + "0" ] } diff --git a/resources/profiles/Phrozen/process/0.20mm Standard @Phrozen Arco 0.4 nozzle.json b/resources/profiles/Phrozen/process/0.20mm Standard @Phrozen Arco 0.4 nozzle.json index 6d735225e41..72f5d17c594 100644 --- a/resources/profiles/Phrozen/process/0.20mm Standard @Phrozen Arco 0.4 nozzle.json +++ b/resources/profiles/Phrozen/process/0.20mm Standard @Phrozen Arco 0.4 nozzle.json @@ -186,10 +186,10 @@ "small_perimeter_speed": "50%", "small_perimeter_threshold": "0", "solid_infill_direction": "45", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "100%", "sparse_infill_density": "15%", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "crosshatch", "sparse_infill_speed": "270", @@ -256,7 +256,7 @@ "tree_support_wall_count": "0", "wall_direction": "auto", "wall_distribution_count": "1", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "classic", "wall_loops": "2", "wall_sequence": "outer wall/inner wall", diff --git a/resources/profiles/Prusa/process/process_common_mk4s.json b/resources/profiles/Prusa/process/process_common_mk4s.json index cf2c2c2b716..2c0add8e4ea 100644 --- a/resources/profiles/Prusa/process/process_common_mk4s.json +++ b/resources/profiles/Prusa/process/process_common_mk4s.json @@ -50,9 +50,9 @@ "resolution": "0", "slice_closing_radius": "0.049", "small_perimeter_speed": "170", - "solid_infill_filament": "1", + "solid_infill_filament": "0", "sparse_infill_acceleration": "4000", - "sparse_infill_filament": "1", + "sparse_infill_filament": "0", "sparse_infill_line_width": "0.45", "sparse_infill_pattern": "crosshatch", "sparse_infill_speed": "200", @@ -85,7 +85,7 @@ "tree_support_branch_diameter_double_wall": "3", "tree_support_tip_diameter": "0.8", "tree_support_top_rate": "30%", - "wall_filament": "1", + "wall_filament": "0", "wall_generator": "arachne", "wall_loops": "2" } 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 353a3a0674f..61b143aa42c 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 @@ -57,7 +57,7 @@ "machine_max_speed_y": [ "800" ], - "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\nSET_INPUT_SHAPER SHAPER_TYPE_X=mzv\nSET_INPUT_SHAPER SHAPER_TYPE_Y=mzv\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\nG1 Y403.5 F2000\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 E250 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 Y403 F2000\nG1 X163 F8000\nG1 X145 F5000\nG1 X163 F8000\nG1 X145 F5000\nG1 X175 F6000\nG1 X163\nG1 X175\nG1 X163\nG1 X175\nG1 X163\nG1 X180 F10000\nG1 Y395 F6000\nG1 X188\nG1 Z-0.2 F480\nM106 S255\nM109.1 S150\nG91\nG1 X15 F200\nG1 Y2\nG1 X-15\nG1 Y-2\nG1 X15\nG90\nG2 I0.5 J0.5 F480\nG2 I0.5 J0.5\nG2 I0.5 J0.5\nG1 Z10\nG1 Y383 F12000\nG1 X116\nG1 Y403\nG1 X163 F8000\nG1 X145 F5000\nG1 X163 F8000\nG1 X145 F5000\nG1 X175 F6000\nG1 X163\nG1 X175\nG1 X163\nG1 X175\nG1 X163\nG1 X180 F10000\nG1 X195 Y195\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 Y0 F15000\nG1 X15\nG1 X3 F5000\nG4 P1000\nG1 X4 F1000\nG1 X3 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 X195 Y195 Z10 F20000\nG92_ Z{10 - ((nozzle_temperature_initial_layer[initial_tool] - 130) / 14 - 5.0) / 100}\nG0 Y1\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 X175 Y1 F20000\nG1 E5 F{filament_max_volumetric_speed[initial_no_support_extruder]/2/2.4053*60}\nG1 X215 E20 F{filament_max_volumetric_speed[initial_no_support_extruder]/2/2.4053*60}\nG1 Z1 F480\nSET_PRINT_MAIN_STATUS MAIN_STATUS=printing", + "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\nG1 Y403.5 F2000\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 E250 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 Y403 F2000\nG1 X163 F8000\nG1 X145 F5000\nG1 X163 F8000\nG1 X145 F5000\nG1 X175 F6000\nG1 X163\nG1 X175\nG1 X163\nG1 X175\nG1 X163\nG1 X180 F10000\nG1 Y395 F6000\nG1 X188\nG1 Z-0.2 F480\nM106 S255\nM109.1 S150\nG91\nG1 X15 F200\nG1 Y2\nG1 X-15\nG1 Y-2\nG1 X15\nG90\nG2 I0.5 J0.5 F480\nG2 I0.5 J0.5\nG2 I0.5 J0.5\nG1 Z10\nG1 Y383 F12000\nG1 X116\nG1 Y403\nG1 X163 F8000\nG1 X145 F5000\nG1 X163 F8000\nG1 X145 F5000\nG1 X175 F6000\nG1 X163\nG1 X175\nG1 X163\nG1 X175\nG1 X163\nG1 X180 F10000\nG1 X195 Y195\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 Y0 F15000\nG1 X15\nG1 X3 F5000\nG4 P1000\nG1 X4 F1000\nG1 X3 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 X195 Y195 Z10 F20000\nG92_ Z{10 - ((nozzle_temperature_initial_layer[initial_tool] - 130) / 14 - 5.0) / 100}\nG0 Y1\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 X175 Y1 F20000\nG1 E5 F{filament_max_volumetric_speed[initial_no_support_extruder]/2/2.4053*60}\nG1 X215 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" ], diff --git a/resources/profiles/SeeMeCNC.json b/resources/profiles/SeeMeCNC.json new file mode 100644 index 00000000000..401a0f81c9c --- /dev/null +++ b/resources/profiles/SeeMeCNC.json @@ -0,0 +1,694 @@ +{ + "name": "SeeMeCNC", + "version": "2.4.0.00", + "force_update": "1", + "description": "SeeMeCNC configurations - Full profile set for Artemis, BOSSdelta, and RostockMAX printers", + "machine_model_list": [ + { + "name": "SeeMeCNC Artemis 300", + "sub_path": "machine/SeeMeCNC Artemis 300.json" + }, + { + "name": "SeeMeCNC BOSSdelta 300", + "sub_path": "machine/SeeMeCNC BOSSdelta 300.json" + }, + { + "name": "SeeMeCNC BOSSdelta 500 0505", + "sub_path": "machine/SeeMeCNC BOSSdelta 500 0505.json" + }, + { + "name": "SeeMeCNC BOSSdelta 500 0510", + "sub_path": "machine/SeeMeCNC BOSSdelta 500 0510.json" + }, + { + "name": "SeeMeCNC BOSSdelta 500 0521", + "sub_path": "machine/SeeMeCNC BOSSdelta 500 0521.json" + }, + { + "name": "SeeMeCNC RostockMAX v3.2", + "sub_path": "machine/SeeMeCNC RostockMAX v3.2.json" + }, + { + "name": "SeeMeCNC RostockMAX v4", + "sub_path": "machine/SeeMeCNC RostockMAX v4.json" + } + ], + "process_list": [ + { + "name": "SeeMeCNC process base", + "sub_path": "process/SeeMeCNC_process_base.json" + }, + { + "name": "0.16mm Fine @SeeMeCNC Artemis 0.4", + "sub_path": "process/0.16mm Fine @SeeMeCNC Artemis 0.4.json" + }, + { + "name": "0.16mm Fine @SeeMeCNC BOSSdelta 300 0.4", + "sub_path": "process/0.16mm Fine @SeeMeCNC BOSSdelta 300 0.4.json" + }, + { + "name": "0.16mm Fine @SeeMeCNC BOSSdelta 500 0505 0.4", + "sub_path": "process/0.16mm Fine @SeeMeCNC BOSSdelta 500 0505 0.4.json" + }, + { + "name": "0.16mm Fine @SeeMeCNC BOSSdelta 500 0510 0.4", + "sub_path": "process/0.16mm Fine @SeeMeCNC BOSSdelta 500 0510 0.4.json" + }, + { + "name": "0.16mm Fine @SeeMeCNC BOSSdelta 500 0521 0.4", + "sub_path": "process/0.16mm Fine @SeeMeCNC BOSSdelta 500 0521 0.4.json" + }, + { + "name": "0.16mm Fine @SeeMeCNC RostockMAX v3.2 0.4", + "sub_path": "process/0.16mm Fine @SeeMeCNC RostockMAX v3.2 0.4.json" + }, + { + "name": "0.16mm Fine @SeeMeCNC RostockMAX v4 0.4", + "sub_path": "process/0.16mm Fine @SeeMeCNC RostockMAX v4 0.4.json" + }, + { + "name": "0.20mm Draft @SeeMeCNC RostockMAX v3.2 0.4", + "sub_path": "process/0.20mm Draft @SeeMeCNC RostockMAX v3.2 0.4.json" + }, + { + "name": "0.20mm Fine @SeeMeCNC Artemis 0.5", + "sub_path": "process/0.20mm Fine @SeeMeCNC Artemis 0.5.json" + }, + { + "name": "0.20mm Fine @SeeMeCNC BOSSdelta 300 0.5", + "sub_path": "process/0.20mm Fine @SeeMeCNC BOSSdelta 300 0.5.json" + }, + { + "name": "0.20mm Fine @SeeMeCNC BOSSdelta 500 0505 0.5", + "sub_path": "process/0.20mm Fine @SeeMeCNC BOSSdelta 500 0505 0.5.json" + }, + { + "name": "0.20mm Fine @SeeMeCNC BOSSdelta 500 0510 0.5", + "sub_path": "process/0.20mm Fine @SeeMeCNC BOSSdelta 500 0510 0.5.json" + }, + { + "name": "0.20mm Fine @SeeMeCNC BOSSdelta 500 0521 0.5", + "sub_path": "process/0.20mm Fine @SeeMeCNC BOSSdelta 500 0521 0.5.json" + }, + { + "name": "0.20mm Fine @SeeMeCNC RostockMAX v3.2 0.5", + "sub_path": "process/0.20mm Fine @SeeMeCNC RostockMAX v3.2 0.5.json" + }, + { + "name": "0.20mm Fine @SeeMeCNC RostockMAX v4 0.5", + "sub_path": "process/0.20mm Fine @SeeMeCNC RostockMAX v4 0.5.json" + }, + { + "name": "0.20mm Standard @SeeMeCNC Artemis 0.4", + "sub_path": "process/0.20mm Standard @SeeMeCNC Artemis 0.4.json" + }, + { + "name": "0.20mm Standard @SeeMeCNC BOSSdelta 300 0.4", + "sub_path": "process/0.20mm Standard @SeeMeCNC BOSSdelta 300 0.4.json" + }, + { + "name": "0.20mm Standard @SeeMeCNC BOSSdelta 500 0505 0.4", + "sub_path": "process/0.20mm Standard @SeeMeCNC BOSSdelta 500 0505 0.4.json" + }, + { + "name": "0.20mm Standard @SeeMeCNC BOSSdelta 500 0510 0.4", + "sub_path": "process/0.20mm Standard @SeeMeCNC BOSSdelta 500 0510 0.4.json" + }, + { + "name": "0.20mm Standard @SeeMeCNC BOSSdelta 500 0521 0.4", + "sub_path": "process/0.20mm Standard @SeeMeCNC BOSSdelta 500 0521 0.4.json" + }, + { + "name": "0.20mm Standard @SeeMeCNC RostockMAX v3.2 0.4", + "sub_path": "process/0.20mm Standard @SeeMeCNC RostockMAX v3.2 0.4.json" + }, + { + "name": "0.20mm Standard @SeeMeCNC RostockMAX v4 0.4", + "sub_path": "process/0.20mm Standard @SeeMeCNC RostockMAX v4 0.4.json" + }, + { + "name": "0.24mm Draft @SeeMeCNC Artemis 0.4", + "sub_path": "process/0.24mm Draft @SeeMeCNC Artemis 0.4.json" + }, + { + "name": "0.24mm Draft @SeeMeCNC BOSSdelta 300 0.4", + "sub_path": "process/0.24mm Draft @SeeMeCNC BOSSdelta 300 0.4.json" + }, + { + "name": "0.24mm Draft @SeeMeCNC BOSSdelta 500 0505 0.4", + "sub_path": "process/0.24mm Draft @SeeMeCNC BOSSdelta 500 0505 0.4.json" + }, + { + "name": "0.24mm Draft @SeeMeCNC BOSSdelta 500 0510 0.4", + "sub_path": "process/0.24mm Draft @SeeMeCNC BOSSdelta 500 0510 0.4.json" + }, + { + "name": "0.24mm Draft @SeeMeCNC BOSSdelta 500 0521 0.4", + "sub_path": "process/0.24mm Draft @SeeMeCNC BOSSdelta 500 0521 0.4.json" + }, + { + "name": "0.24mm Draft @SeeMeCNC RostockMAX v3.2 0.4", + "sub_path": "process/0.24mm Draft @SeeMeCNC RostockMAX v3.2 0.4.json" + }, + { + "name": "0.24mm Draft @SeeMeCNC RostockMAX v4 0.4", + "sub_path": "process/0.24mm Draft @SeeMeCNC RostockMAX v4 0.4.json" + }, + { + "name": "0.25mm Standard @SeeMeCNC Artemis 0.5", + "sub_path": "process/0.25mm Standard @SeeMeCNC Artemis 0.5.json" + }, + { + "name": "0.25mm Standard @SeeMeCNC BOSSdelta 300 0.5", + "sub_path": "process/0.25mm Standard @SeeMeCNC BOSSdelta 300 0.5.json" + }, + { + "name": "0.25mm Standard @SeeMeCNC BOSSdelta 500 0505 0.5", + "sub_path": "process/0.25mm Standard @SeeMeCNC BOSSdelta 500 0505 0.5.json" + }, + { + "name": "0.25mm Standard @SeeMeCNC BOSSdelta 500 0510 0.5", + "sub_path": "process/0.25mm Standard @SeeMeCNC BOSSdelta 500 0510 0.5.json" + }, + { + "name": "0.25mm Standard @SeeMeCNC BOSSdelta 500 0521 0.5", + "sub_path": "process/0.25mm Standard @SeeMeCNC BOSSdelta 500 0521 0.5.json" + }, + { + "name": "0.25mm Standard @SeeMeCNC RostockMAX v3.2 0.5", + "sub_path": "process/0.25mm Standard @SeeMeCNC RostockMAX v3.2 0.5.json" + }, + { + "name": "0.25mm Standard @SeeMeCNC RostockMAX v4 0.5", + "sub_path": "process/0.25mm Standard @SeeMeCNC RostockMAX v4 0.5.json" + }, + { + "name": "0.28mm Extra Draft @SeeMeCNC Artemis 0.4", + "sub_path": "process/0.28mm Extra Draft @SeeMeCNC Artemis 0.4.json" + }, + { + "name": "0.28mm Extra Draft @SeeMeCNC BOSSdelta 300 0.4", + "sub_path": "process/0.28mm Extra Draft @SeeMeCNC BOSSdelta 300 0.4.json" + }, + { + "name": "0.28mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 0.4", + "sub_path": "process/0.28mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 0.4.json" + }, + { + "name": "0.28mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 0.4", + "sub_path": "process/0.28mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 0.4.json" + }, + { + "name": "0.28mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 0.4", + "sub_path": "process/0.28mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 0.4.json" + }, + { + "name": "0.28mm Extra Draft @SeeMeCNC RostockMAX v3.2 0.4", + "sub_path": "process/0.28mm Extra Draft @SeeMeCNC RostockMAX v3.2 0.4.json" + }, + { + "name": "0.28mm Extra Draft @SeeMeCNC RostockMAX v4 0.4", + "sub_path": "process/0.28mm Extra Draft @SeeMeCNC RostockMAX v4 0.4.json" + }, + { + "name": "0.28mm Fine @SeeMeCNC Artemis 0.7", + "sub_path": "process/0.28mm Fine @SeeMeCNC Artemis 0.7.json" + }, + { + "name": "0.28mm Fine @SeeMeCNC BOSSdelta 300 0.7", + "sub_path": "process/0.28mm Fine @SeeMeCNC BOSSdelta 300 0.7.json" + }, + { + "name": "0.28mm Fine @SeeMeCNC BOSSdelta 500 0505 0.7", + "sub_path": "process/0.28mm Fine @SeeMeCNC BOSSdelta 500 0505 0.7.json" + }, + { + "name": "0.28mm Fine @SeeMeCNC BOSSdelta 500 0510 0.7", + "sub_path": "process/0.28mm Fine @SeeMeCNC BOSSdelta 500 0510 0.7.json" + }, + { + "name": "0.28mm Fine @SeeMeCNC BOSSdelta 500 0521 0.7", + "sub_path": "process/0.28mm Fine @SeeMeCNC BOSSdelta 500 0521 0.7.json" + }, + { + "name": "0.28mm Fine @SeeMeCNC RostockMAX v3.2 0.7", + "sub_path": "process/0.28mm Fine @SeeMeCNC RostockMAX v3.2 0.7.json" + }, + { + "name": "0.28mm Fine @SeeMeCNC RostockMAX v4 0.7", + "sub_path": "process/0.28mm Fine @SeeMeCNC RostockMAX v4 0.7.json" + }, + { + "name": "0.30mm Draft @SeeMeCNC Artemis 0.5", + "sub_path": "process/0.30mm Draft @SeeMeCNC Artemis 0.5.json" + }, + { + "name": "0.30mm Draft @SeeMeCNC BOSSdelta 300 0.5", + "sub_path": "process/0.30mm Draft @SeeMeCNC BOSSdelta 300 0.5.json" + }, + { + "name": "0.30mm Draft @SeeMeCNC BOSSdelta 500 0505 0.5", + "sub_path": "process/0.30mm Draft @SeeMeCNC BOSSdelta 500 0505 0.5.json" + }, + { + "name": "0.30mm Draft @SeeMeCNC BOSSdelta 500 0510 0.5", + "sub_path": "process/0.30mm Draft @SeeMeCNC BOSSdelta 500 0510 0.5.json" + }, + { + "name": "0.30mm Draft @SeeMeCNC BOSSdelta 500 0521 0.5", + "sub_path": "process/0.30mm Draft @SeeMeCNC BOSSdelta 500 0521 0.5.json" + }, + { + "name": "0.30mm Draft @SeeMeCNC RostockMAX v3.2 0.5", + "sub_path": "process/0.30mm Draft @SeeMeCNC RostockMAX v3.2 0.5.json" + }, + { + "name": "0.30mm Draft @SeeMeCNC RostockMAX v4 0.5", + "sub_path": "process/0.30mm Draft @SeeMeCNC RostockMAX v4 0.5.json" + }, + { + "name": "0.30mm TPU Solid @SeeMeCNC Artemis 0.7", + "sub_path": "process/0.30mm TPU Solid @SeeMeCNC Artemis 0.7.json" + }, + { + "name": "0.30mm TPU Solid @SeeMeCNC BOSSdelta 300 0.7", + "sub_path": "process/0.30mm TPU Solid @SeeMeCNC BOSSdelta 300 0.7.json" + }, + { + "name": "0.30mm TPU Solid @SeeMeCNC BOSSdelta 500 0505 0.7", + "sub_path": "process/0.30mm TPU Solid @SeeMeCNC BOSSdelta 500 0505 0.7.json" + }, + { + "name": "0.30mm TPU Solid @SeeMeCNC BOSSdelta 500 0510 0.7", + "sub_path": "process/0.30mm TPU Solid @SeeMeCNC BOSSdelta 500 0510 0.7.json" + }, + { + "name": "0.30mm TPU Solid @SeeMeCNC BOSSdelta 500 0521 0.7", + "sub_path": "process/0.30mm TPU Solid @SeeMeCNC BOSSdelta 500 0521 0.7.json" + }, + { + "name": "0.30mm TPU Solid @SeeMeCNC RostockMAX v3.2 0.7", + "sub_path": "process/0.30mm TPU Solid @SeeMeCNC RostockMAX v3.2 0.7.json" + }, + { + "name": "0.30mm TPU Solid @SeeMeCNC RostockMAX v4 0.7", + "sub_path": "process/0.30mm TPU Solid @SeeMeCNC RostockMAX v4 0.7.json" + }, + { + "name": "0.35mm Extra Draft @SeeMeCNC Artemis 0.5", + "sub_path": "process/0.35mm Extra Draft @SeeMeCNC Artemis 0.5.json" + }, + { + "name": "0.35mm Extra Draft @SeeMeCNC BOSSdelta 300 0.5", + "sub_path": "process/0.35mm Extra Draft @SeeMeCNC BOSSdelta 300 0.5.json" + }, + { + "name": "0.35mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 0.5", + "sub_path": "process/0.35mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 0.5.json" + }, + { + "name": "0.35mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 0.5", + "sub_path": "process/0.35mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 0.5.json" + }, + { + "name": "0.35mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 0.5", + "sub_path": "process/0.35mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 0.5.json" + }, + { + "name": "0.35mm Extra Draft @SeeMeCNC RostockMAX v3.2 0.5", + "sub_path": "process/0.35mm Extra Draft @SeeMeCNC RostockMAX v3.2 0.5.json" + }, + { + "name": "0.35mm Extra Draft @SeeMeCNC RostockMAX v4 0.5", + "sub_path": "process/0.35mm Extra Draft @SeeMeCNC RostockMAX v4 0.5.json" + }, + { + "name": "0.35mm Standard @SeeMeCNC Artemis 0.7", + "sub_path": "process/0.35mm Standard @SeeMeCNC Artemis 0.7.json" + }, + { + "name": "0.35mm Standard @SeeMeCNC BOSSdelta 300 0.7", + "sub_path": "process/0.35mm Standard @SeeMeCNC BOSSdelta 300 0.7.json" + }, + { + "name": "0.35mm Standard @SeeMeCNC BOSSdelta 500 0505 0.7", + "sub_path": "process/0.35mm Standard @SeeMeCNC BOSSdelta 500 0505 0.7.json" + }, + { + "name": "0.35mm Standard @SeeMeCNC BOSSdelta 500 0510 0.7", + "sub_path": "process/0.35mm Standard @SeeMeCNC BOSSdelta 500 0510 0.7.json" + }, + { + "name": "0.35mm Standard @SeeMeCNC BOSSdelta 500 0521 0.7", + "sub_path": "process/0.35mm Standard @SeeMeCNC BOSSdelta 500 0521 0.7.json" + }, + { + "name": "0.35mm Standard @SeeMeCNC RostockMAX v3.2 0.7", + "sub_path": "process/0.35mm Standard @SeeMeCNC RostockMAX v3.2 0.7.json" + }, + { + "name": "0.35mm Standard @SeeMeCNC RostockMAX v4 0.7", + "sub_path": "process/0.35mm Standard @SeeMeCNC RostockMAX v4 0.7.json" + }, + { + "name": "0.35mm TPU Vase @SeeMeCNC Artemis 0.7", + "sub_path": "process/0.35mm TPU Vase @SeeMeCNC Artemis 0.7.json" + }, + { + "name": "0.35mm TPU Vase @SeeMeCNC BOSSdelta 300 0.7", + "sub_path": "process/0.35mm TPU Vase @SeeMeCNC BOSSdelta 300 0.7.json" + }, + { + "name": "0.35mm TPU Vase @SeeMeCNC BOSSdelta 500 0505 0.7", + "sub_path": "process/0.35mm TPU Vase @SeeMeCNC BOSSdelta 500 0505 0.7.json" + }, + { + "name": "0.35mm TPU Vase @SeeMeCNC BOSSdelta 500 0510 0.7", + "sub_path": "process/0.35mm TPU Vase @SeeMeCNC BOSSdelta 500 0510 0.7.json" + }, + { + "name": "0.35mm TPU Vase @SeeMeCNC BOSSdelta 500 0521 0.7", + "sub_path": "process/0.35mm TPU Vase @SeeMeCNC BOSSdelta 500 0521 0.7.json" + }, + { + "name": "0.35mm TPU Vase @SeeMeCNC RostockMAX v3.2 0.7", + "sub_path": "process/0.35mm TPU Vase @SeeMeCNC RostockMAX v3.2 0.7.json" + }, + { + "name": "0.35mm TPU Vase @SeeMeCNC RostockMAX v4 0.7", + "sub_path": "process/0.35mm TPU Vase @SeeMeCNC RostockMAX v4 0.7.json" + }, + { + "name": "0.40mm Fine @SeeMeCNC Artemis 1.0", + "sub_path": "process/0.40mm Fine @SeeMeCNC Artemis 1.0.json" + }, + { + "name": "0.40mm Fine @SeeMeCNC BOSSdelta 300 1.0", + "sub_path": "process/0.40mm Fine @SeeMeCNC BOSSdelta 300 1.0.json" + }, + { + "name": "0.40mm Fine @SeeMeCNC BOSSdelta 500 0505 1.0", + "sub_path": "process/0.40mm Fine @SeeMeCNC BOSSdelta 500 0505 1.0.json" + }, + { + "name": "0.40mm Fine @SeeMeCNC BOSSdelta 500 0510 1.0", + "sub_path": "process/0.40mm Fine @SeeMeCNC BOSSdelta 500 0510 1.0.json" + }, + { + "name": "0.40mm Fine @SeeMeCNC BOSSdelta 500 0521 1.0", + "sub_path": "process/0.40mm Fine @SeeMeCNC BOSSdelta 500 0521 1.0.json" + }, + { + "name": "0.40mm Fine @SeeMeCNC RostockMAX v3.2 1.0", + "sub_path": "process/0.40mm Fine @SeeMeCNC RostockMAX v3.2 1.0.json" + }, + { + "name": "0.40mm Fine @SeeMeCNC RostockMAX v4 1.0", + "sub_path": "process/0.40mm Fine @SeeMeCNC RostockMAX v4 1.0.json" + }, + { + "name": "0.42mm Draft @SeeMeCNC Artemis 0.7", + "sub_path": "process/0.42mm Draft @SeeMeCNC Artemis 0.7.json" + }, + { + "name": "0.42mm Draft @SeeMeCNC BOSSdelta 300 0.7", + "sub_path": "process/0.42mm Draft @SeeMeCNC BOSSdelta 300 0.7.json" + }, + { + "name": "0.42mm Draft @SeeMeCNC BOSSdelta 500 0505 0.7", + "sub_path": "process/0.42mm Draft @SeeMeCNC BOSSdelta 500 0505 0.7.json" + }, + { + "name": "0.42mm Draft @SeeMeCNC BOSSdelta 500 0510 0.7", + "sub_path": "process/0.42mm Draft @SeeMeCNC BOSSdelta 500 0510 0.7.json" + }, + { + "name": "0.42mm Draft @SeeMeCNC BOSSdelta 500 0521 0.7", + "sub_path": "process/0.42mm Draft @SeeMeCNC BOSSdelta 500 0521 0.7.json" + }, + { + "name": "0.42mm Draft @SeeMeCNC RostockMAX v3.2 0.7", + "sub_path": "process/0.42mm Draft @SeeMeCNC RostockMAX v3.2 0.7.json" + }, + { + "name": "0.42mm Draft @SeeMeCNC RostockMAX v4 0.7", + "sub_path": "process/0.42mm Draft @SeeMeCNC RostockMAX v4 0.7.json" + }, + { + "name": "0.49mm Extra Draft @SeeMeCNC Artemis 0.7", + "sub_path": "process/0.49mm Extra Draft @SeeMeCNC Artemis 0.7.json" + }, + { + "name": "0.49mm Extra Draft @SeeMeCNC BOSSdelta 300 0.7", + "sub_path": "process/0.49mm Extra Draft @SeeMeCNC BOSSdelta 300 0.7.json" + }, + { + "name": "0.49mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 0.7", + "sub_path": "process/0.49mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 0.7.json" + }, + { + "name": "0.49mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 0.7", + "sub_path": "process/0.49mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 0.7.json" + }, + { + "name": "0.49mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 0.7", + "sub_path": "process/0.49mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 0.7.json" + }, + { + "name": "0.49mm Extra Draft @SeeMeCNC RostockMAX v3.2 0.7", + "sub_path": "process/0.49mm Extra Draft @SeeMeCNC RostockMAX v3.2 0.7.json" + }, + { + "name": "0.49mm Extra Draft @SeeMeCNC RostockMAX v4 0.7", + "sub_path": "process/0.49mm Extra Draft @SeeMeCNC RostockMAX v4 0.7.json" + }, + { + "name": "0.50mm Standard @SeeMeCNC Artemis 1.0", + "sub_path": "process/0.50mm Standard @SeeMeCNC Artemis 1.0.json" + }, + { + "name": "0.50mm Standard @SeeMeCNC BOSSdelta 300 1.0", + "sub_path": "process/0.50mm Standard @SeeMeCNC BOSSdelta 300 1.0.json" + }, + { + "name": "0.50mm Standard @SeeMeCNC BOSSdelta 500 0505 1.0", + "sub_path": "process/0.50mm Standard @SeeMeCNC BOSSdelta 500 0505 1.0.json" + }, + { + "name": "0.50mm Standard @SeeMeCNC BOSSdelta 500 0510 1.0", + "sub_path": "process/0.50mm Standard @SeeMeCNC BOSSdelta 500 0510 1.0.json" + }, + { + "name": "0.50mm Standard @SeeMeCNC BOSSdelta 500 0521 1.0", + "sub_path": "process/0.50mm Standard @SeeMeCNC BOSSdelta 500 0521 1.0.json" + }, + { + "name": "0.50mm Standard @SeeMeCNC RostockMAX v3.2 1.0", + "sub_path": "process/0.50mm Standard @SeeMeCNC RostockMAX v3.2 1.0.json" + }, + { + "name": "0.50mm Standard @SeeMeCNC RostockMAX v4 1.0", + "sub_path": "process/0.50mm Standard @SeeMeCNC RostockMAX v4 1.0.json" + }, + { + "name": "0.60mm Draft @SeeMeCNC Artemis 1.0", + "sub_path": "process/0.60mm Draft @SeeMeCNC Artemis 1.0.json" + }, + { + "name": "0.60mm Draft @SeeMeCNC BOSSdelta 300 1.0", + "sub_path": "process/0.60mm Draft @SeeMeCNC BOSSdelta 300 1.0.json" + }, + { + "name": "0.60mm Draft @SeeMeCNC BOSSdelta 500 0505 1.0", + "sub_path": "process/0.60mm Draft @SeeMeCNC BOSSdelta 500 0505 1.0.json" + }, + { + "name": "0.60mm Draft @SeeMeCNC BOSSdelta 500 0510 1.0", + "sub_path": "process/0.60mm Draft @SeeMeCNC BOSSdelta 500 0510 1.0.json" + }, + { + "name": "0.60mm Draft @SeeMeCNC BOSSdelta 500 0521 1.0", + "sub_path": "process/0.60mm Draft @SeeMeCNC BOSSdelta 500 0521 1.0.json" + }, + { + "name": "0.60mm Draft @SeeMeCNC RostockMAX v3.2 1.0", + "sub_path": "process/0.60mm Draft @SeeMeCNC RostockMAX v3.2 1.0.json" + }, + { + "name": "0.60mm Draft @SeeMeCNC RostockMAX v4 1.0", + "sub_path": "process/0.60mm Draft @SeeMeCNC RostockMAX v4 1.0.json" + }, + { + "name": "0.70mm Extra Draft @SeeMeCNC Artemis 1.0", + "sub_path": "process/0.70mm Extra Draft @SeeMeCNC Artemis 1.0.json" + }, + { + "name": "0.70mm Extra Draft @SeeMeCNC BOSSdelta 300 1.0", + "sub_path": "process/0.70mm Extra Draft @SeeMeCNC BOSSdelta 300 1.0.json" + }, + { + "name": "0.70mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 1.0", + "sub_path": "process/0.70mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 1.0.json" + }, + { + "name": "0.70mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 1.0", + "sub_path": "process/0.70mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 1.0.json" + }, + { + "name": "0.70mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 1.0", + "sub_path": "process/0.70mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 1.0.json" + }, + { + "name": "0.70mm Extra Draft @SeeMeCNC RostockMAX v3.2 1.0", + "sub_path": "process/0.70mm Extra Draft @SeeMeCNC RostockMAX v3.2 1.0.json" + }, + { + "name": "0.70mm Extra Draft @SeeMeCNC RostockMAX v4 1.0", + "sub_path": "process/0.70mm Extra Draft @SeeMeCNC RostockMAX v4 1.0.json" + } + ], + "filament_list": [ + { + "name": "SeeMeCNC filament base", + "sub_path": "filament/SeeMeCNC_filament_base.json" + }, + { + "name": "SeeMeCNC ABS", + "sub_path": "filament/SeeMeCNC_ABS.json" + }, + { + "name": "SeeMeCNC PA-CF", + "sub_path": "filament/SeeMeCNC_PA-CF.json" + }, + { + "name": "SeeMeCNC PETG", + "sub_path": "filament/SeeMeCNC_PETG.json" + }, + { + "name": "SeeMeCNC PETG-CF", + "sub_path": "filament/SeeMeCNC_PETG-CF.json" + }, + { + "name": "SeeMeCNC TPU", + "sub_path": "filament/SeeMeCNC_TPU.json" + }, + { + "name": "SeeMeCNC PLA", + "sub_path": "filament/SeeMeCNC_PLA.json" + } + ], + "machine_list": [ + { + "name": "SeeMeCNC Artemis 0.4 nozzle", + "sub_path": "machine/SeeMeCNC_Artemis_0_4mm.json" + }, + { + "name": "SeeMeCNC Artemis 0.5 nozzle", + "sub_path": "machine/SeeMeCNC_Artemis_0_5mm.json" + }, + { + "name": "SeeMeCNC Artemis 0.7 nozzle", + "sub_path": "machine/SeeMeCNC_Artemis_0_7mm.json" + }, + { + "name": "SeeMeCNC Artemis 1.0 nozzle", + "sub_path": "machine/SeeMeCNC_Artemis_1_0mm.json" + }, + { + "name": "SeeMeCNC BOSSdelta 300 0.4 nozzle", + "sub_path": "machine/SeeMeCNC_BOSSdelta_300_0_4mm.json" + }, + { + "name": "SeeMeCNC BOSSdelta 300 0.5 nozzle", + "sub_path": "machine/SeeMeCNC_BOSSdelta_300_0_5mm.json" + }, + { + "name": "SeeMeCNC BOSSdelta 300 0.7 nozzle", + "sub_path": "machine/SeeMeCNC_BOSSdelta_300_0_7mm.json" + }, + { + "name": "SeeMeCNC BOSSdelta 300 1.0 nozzle", + "sub_path": "machine/SeeMeCNC_BOSSdelta_300_1_0mm.json" + }, + { + "name": "SeeMeCNC BOSSdelta 500 0505 0.4 nozzle", + "sub_path": "machine/SeeMeCNC_BOSSdelta500_0505_0_4mm.json" + }, + { + "name": "SeeMeCNC BOSSdelta 500 0505 0.5 nozzle", + "sub_path": "machine/SeeMeCNC_BOSSdelta500_0505_0_5mm.json" + }, + { + "name": "SeeMeCNC BOSSdelta 500 0505 0.7 nozzle", + "sub_path": "machine/SeeMeCNC_BOSSdelta500_0505_0_7mm.json" + }, + { + "name": "SeeMeCNC BOSSdelta 500 0505 1.0 nozzle", + "sub_path": "machine/SeeMeCNC_BOSSdelta500_0505_1_0mm.json" + }, + { + "name": "SeeMeCNC BOSSdelta 500 0510 0.4 nozzle", + "sub_path": "machine/SeeMeCNC_BOSSdelta500_0510_0_4mm.json" + }, + { + "name": "SeeMeCNC BOSSdelta 500 0510 0.5 nozzle", + "sub_path": "machine/SeeMeCNC_BOSSdelta500_0510_0_5mm.json" + }, + { + "name": "SeeMeCNC BOSSdelta 500 0510 0.7 nozzle", + "sub_path": "machine/SeeMeCNC_BOSSdelta500_0510_0_7mm.json" + }, + { + "name": "SeeMeCNC BOSSdelta 500 0510 1.0 nozzle", + "sub_path": "machine/SeeMeCNC_BOSSdelta500_0510_1_0mm.json" + }, + { + "name": "SeeMeCNC BOSSdelta 500 0521 0.4 nozzle", + "sub_path": "machine/SeeMeCNC_BOSSdelta500_0521_0_4mm.json" + }, + { + "name": "SeeMeCNC BOSSdelta 500 0521 0.5 nozzle", + "sub_path": "machine/SeeMeCNC_BOSSdelta500_0521_0_5mm.json" + }, + { + "name": "SeeMeCNC BOSSdelta 500 0521 0.7 nozzle", + "sub_path": "machine/SeeMeCNC_BOSSdelta500_0521_0_7mm.json" + }, + { + "name": "SeeMeCNC BOSSdelta 500 0521 1.0 nozzle", + "sub_path": "machine/SeeMeCNC_BOSSdelta500_0521_1_0mm.json" + }, + { + "name": "SeeMeCNC RostockMAX v3.2 0.4 nozzle", + "sub_path": "machine/SeeMeCNC_RostockMAX_v3.2_0_4mm.json" + }, + { + "name": "SeeMeCNC RostockMAX v3.2 0.5 nozzle", + "sub_path": "machine/SeeMeCNC_RostockMAX_v3.2_0_5mm.json" + }, + { + "name": "SeeMeCNC RostockMAX v3.2 0.7 nozzle", + "sub_path": "machine/SeeMeCNC_RostockMAX_v3.2_0_7mm.json" + }, + { + "name": "SeeMeCNC RostockMAX v3.2 1.0 nozzle", + "sub_path": "machine/SeeMeCNC_RostockMAX_v3.2_1_0mm.json" + }, + { + "name": "SeeMeCNC RostockMAX v4 0.4 nozzle", + "sub_path": "machine/SeeMeCNC_RostockMAX_v4_0_4mm.json" + }, + { + "name": "SeeMeCNC RostockMAX v4 0.5 nozzle", + "sub_path": "machine/SeeMeCNC_RostockMAX_v4_0_5mm.json" + }, + { + "name": "SeeMeCNC RostockMAX v4 0.7 nozzle", + "sub_path": "machine/SeeMeCNC_RostockMAX_v4_0_7mm.json" + }, + { + "name": "SeeMeCNC RostockMAX v4 1.0 nozzle", + "sub_path": "machine/SeeMeCNC_RostockMAX_v4_1_0mm.json" + } + ] +} diff --git a/resources/profiles/SeeMeCNC/SeeMeCNC Artemis 300_cover.png b/resources/profiles/SeeMeCNC/SeeMeCNC Artemis 300_cover.png new file mode 100644 index 00000000000..f98182e5733 Binary files /dev/null and b/resources/profiles/SeeMeCNC/SeeMeCNC Artemis 300_cover.png differ diff --git a/resources/profiles/SeeMeCNC/SeeMeCNC BOSSdelta 300_cover.png b/resources/profiles/SeeMeCNC/SeeMeCNC BOSSdelta 300_cover.png new file mode 100644 index 00000000000..fb6e603a099 Binary files /dev/null and b/resources/profiles/SeeMeCNC/SeeMeCNC BOSSdelta 300_cover.png differ diff --git a/resources/profiles/SeeMeCNC/SeeMeCNC BOSSdelta 500 0505_cover.png b/resources/profiles/SeeMeCNC/SeeMeCNC BOSSdelta 500 0505_cover.png new file mode 100644 index 00000000000..cf2573a202c Binary files /dev/null and b/resources/profiles/SeeMeCNC/SeeMeCNC BOSSdelta 500 0505_cover.png differ diff --git a/resources/profiles/SeeMeCNC/SeeMeCNC BOSSdelta 500 0510_cover.png b/resources/profiles/SeeMeCNC/SeeMeCNC BOSSdelta 500 0510_cover.png new file mode 100644 index 00000000000..2e40b46d369 Binary files /dev/null and b/resources/profiles/SeeMeCNC/SeeMeCNC BOSSdelta 500 0510_cover.png differ diff --git a/resources/profiles/SeeMeCNC/SeeMeCNC BOSSdelta 500 0521_cover.png b/resources/profiles/SeeMeCNC/SeeMeCNC BOSSdelta 500 0521_cover.png new file mode 100644 index 00000000000..b1f39c76566 Binary files /dev/null and b/resources/profiles/SeeMeCNC/SeeMeCNC BOSSdelta 500 0521_cover.png differ diff --git a/resources/profiles/SeeMeCNC/SeeMeCNC RostockMAX v3.2_cover.png b/resources/profiles/SeeMeCNC/SeeMeCNC RostockMAX v3.2_cover.png new file mode 100644 index 00000000000..05b7edca516 Binary files /dev/null and b/resources/profiles/SeeMeCNC/SeeMeCNC RostockMAX v3.2_cover.png differ diff --git a/resources/profiles/SeeMeCNC/SeeMeCNC RostockMAX v4_cover.png b/resources/profiles/SeeMeCNC/SeeMeCNC RostockMAX v4_cover.png new file mode 100644 index 00000000000..b5c2e425fd7 Binary files /dev/null and b/resources/profiles/SeeMeCNC/SeeMeCNC RostockMAX v4_cover.png differ diff --git a/resources/profiles/SeeMeCNC/SeeMeCNC_Buildplate_Model.STL b/resources/profiles/SeeMeCNC/SeeMeCNC_Buildplate_Model.STL new file mode 100644 index 00000000000..7a1db1f9fcf Binary files /dev/null and b/resources/profiles/SeeMeCNC/SeeMeCNC_Buildplate_Model.STL differ diff --git a/resources/profiles/SeeMeCNC/SeeMeCNC_Buildplate_Model_500.STL b/resources/profiles/SeeMeCNC/SeeMeCNC_Buildplate_Model_500.STL new file mode 100644 index 00000000000..0ead6f65b36 Binary files /dev/null and b/resources/profiles/SeeMeCNC/SeeMeCNC_Buildplate_Model_500.STL differ diff --git a/resources/profiles/SeeMeCNC/SeeMeCNC_Buildplate_texture.png b/resources/profiles/SeeMeCNC/SeeMeCNC_Buildplate_texture.png new file mode 100644 index 00000000000..d11b1f8cc4a Binary files /dev/null and b/resources/profiles/SeeMeCNC/SeeMeCNC_Buildplate_texture.png differ diff --git a/resources/profiles/SeeMeCNC/filament/SeeMeCNC_ABS.json b/resources/profiles/SeeMeCNC/filament/SeeMeCNC_ABS.json new file mode 100644 index 00000000000..49e1191c759 --- /dev/null +++ b/resources/profiles/SeeMeCNC/filament/SeeMeCNC_ABS.json @@ -0,0 +1,265 @@ +{ + "type": "filament", + "name": "SeeMeCNC ABS", + "inherits": "SeeMeCNC filament base", + "from": "System", + "filament_id": "SMCFB001", + "instantiation": "true", + "filament_settings_id": [ + "SeeMeCNC ABS" + ], + "compatible_printers": [ + "SeeMeCNC Artemis 0.4 nozzle", + "SeeMeCNC Artemis 0.5 nozzle", + "SeeMeCNC Artemis 0.7 nozzle", + "SeeMeCNC Artemis 1.0 nozzle", + "SeeMeCNC BOSSdelta 500 0505 0.4 nozzle", + "SeeMeCNC BOSSdelta 500 0505 0.5 nozzle", + "SeeMeCNC BOSSdelta 500 0505 0.7 nozzle", + "SeeMeCNC BOSSdelta 500 0505 1.0 nozzle", + "SeeMeCNC BOSSdelta 500 0510 0.4 nozzle", + "SeeMeCNC BOSSdelta 500 0510 0.5 nozzle", + "SeeMeCNC BOSSdelta 500 0510 0.7 nozzle", + "SeeMeCNC BOSSdelta 500 0510 1.0 nozzle", + "SeeMeCNC BOSSdelta 500 0521 0.4 nozzle", + "SeeMeCNC BOSSdelta 500 0521 0.5 nozzle", + "SeeMeCNC BOSSdelta 500 0521 0.7 nozzle", + "SeeMeCNC BOSSdelta 500 0521 1.0 nozzle", + "SeeMeCNC BOSSdelta 300 0.4 nozzle", + "SeeMeCNC BOSSdelta 300 0.5 nozzle", + "SeeMeCNC BOSSdelta 300 0.7 nozzle", + "SeeMeCNC BOSSdelta 300 1.0 nozzle", + "SeeMeCNC RostockMAX v3.2 0.4 nozzle", + "SeeMeCNC RostockMAX v3.2 0.5 nozzle", + "SeeMeCNC RostockMAX v3.2 0.7 nozzle", + "SeeMeCNC RostockMAX v3.2 1.0 nozzle", + "SeeMeCNC RostockMAX v4 0.4 nozzle", + "SeeMeCNC RostockMAX v4 0.5 nozzle", + "SeeMeCNC RostockMAX v4 0.7 nozzle", + "SeeMeCNC RostockMAX v4 1.0 nozzle" + ], + "compatible_printers_condition": "", + "compatible_prints": [ + "0.16mm Fine @SeeMeCNC Artemis 0.4", + "0.16mm Fine @SeeMeCNC BOSSdelta 300 0.4", + "0.16mm Fine @SeeMeCNC BOSSdelta 500 0505 0.4", + "0.16mm Fine @SeeMeCNC BOSSdelta 500 0510 0.4", + "0.16mm Fine @SeeMeCNC BOSSdelta 500 0521 0.4", + "0.16mm Fine @SeeMeCNC RostockMAX v3.2 0.4", + "0.16mm Fine @SeeMeCNC RostockMAX v4 0.4", + "0.20mm Fine @SeeMeCNC Artemis 0.5", + "0.20mm Fine @SeeMeCNC BOSSdelta 300 0.5", + "0.20mm Fine @SeeMeCNC BOSSdelta 500 0505 0.5", + "0.20mm Fine @SeeMeCNC BOSSdelta 500 0510 0.5", + "0.20mm Fine @SeeMeCNC BOSSdelta 500 0521 0.5", + "0.20mm Fine @SeeMeCNC RostockMAX v3.2 0.5", + "0.20mm Fine @SeeMeCNC RostockMAX v4 0.5", + "0.20mm Standard @SeeMeCNC Artemis 0.4", + "0.20mm Standard @SeeMeCNC BOSSdelta 300 0.4", + "0.20mm Standard @SeeMeCNC BOSSdelta 500 0505 0.4", + "0.20mm Standard @SeeMeCNC BOSSdelta 500 0510 0.4", + "0.20mm Standard @SeeMeCNC BOSSdelta 500 0521 0.4", + "0.20mm Standard @SeeMeCNC RostockMAX v3.2 0.4", + "0.20mm Standard @SeeMeCNC RostockMAX v4 0.4", + "0.24mm Draft @SeeMeCNC Artemis 0.4", + "0.24mm Draft @SeeMeCNC BOSSdelta 300 0.4", + "0.24mm Draft @SeeMeCNC BOSSdelta 500 0505 0.4", + "0.24mm Draft @SeeMeCNC BOSSdelta 500 0510 0.4", + "0.24mm Draft @SeeMeCNC BOSSdelta 500 0521 0.4", + "0.24mm Draft @SeeMeCNC RostockMAX v3.2 0.4", + "0.24mm Draft @SeeMeCNC RostockMAX v4 0.4", + "0.25mm Standard @SeeMeCNC Artemis 0.5", + "0.25mm Standard @SeeMeCNC BOSSdelta 300 0.5", + "0.25mm Standard @SeeMeCNC BOSSdelta 500 0505 0.5", + "0.25mm Standard @SeeMeCNC BOSSdelta 500 0510 0.5", + "0.25mm Standard @SeeMeCNC BOSSdelta 500 0521 0.5", + "0.25mm Standard @SeeMeCNC RostockMAX v3.2 0.5", + "0.25mm Standard @SeeMeCNC RostockMAX v4 0.5", + "0.28mm Extra Draft @SeeMeCNC Artemis 0.4", + "0.28mm Extra Draft @SeeMeCNC BOSSdelta 300 0.4", + "0.28mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 0.4", + "0.28mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 0.4", + "0.28mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 0.4", + "0.28mm Extra Draft @SeeMeCNC RostockMAX v3.2 0.4", + "0.28mm Extra Draft @SeeMeCNC RostockMAX v4 0.4", + "0.28mm Fine @SeeMeCNC Artemis 0.7", + "0.28mm Fine @SeeMeCNC BOSSdelta 300 0.7", + "0.28mm Fine @SeeMeCNC BOSSdelta 500 0505 0.7", + "0.28mm Fine @SeeMeCNC BOSSdelta 500 0510 0.7", + "0.28mm Fine @SeeMeCNC BOSSdelta 500 0521 0.7", + "0.28mm Fine @SeeMeCNC RostockMAX v3.2 0.7", + "0.28mm Fine @SeeMeCNC RostockMAX v4 0.7", + "0.30mm Draft @SeeMeCNC Artemis 0.5", + "0.30mm Draft @SeeMeCNC BOSSdelta 300 0.5", + "0.30mm Draft @SeeMeCNC BOSSdelta 500 0505 0.5", + "0.30mm Draft @SeeMeCNC BOSSdelta 500 0510 0.5", + "0.30mm Draft @SeeMeCNC BOSSdelta 500 0521 0.5", + "0.30mm Draft @SeeMeCNC RostockMAX v3.2 0.5", + "0.30mm Draft @SeeMeCNC RostockMAX v4 0.5", + "0.35mm Extra Draft @SeeMeCNC Artemis 0.5", + "0.35mm Extra Draft @SeeMeCNC BOSSdelta 300 0.5", + "0.35mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 0.5", + "0.35mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 0.5", + "0.35mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 0.5", + "0.35mm Extra Draft @SeeMeCNC RostockMAX v3.2 0.5", + "0.35mm Extra Draft @SeeMeCNC RostockMAX v4 0.5", + "0.35mm Standard @SeeMeCNC Artemis 0.7", + "0.35mm Standard @SeeMeCNC BOSSdelta 300 0.7", + "0.35mm Standard @SeeMeCNC BOSSdelta 500 0505 0.7", + "0.35mm Standard @SeeMeCNC BOSSdelta 500 0510 0.7", + "0.35mm Standard @SeeMeCNC BOSSdelta 500 0521 0.7", + "0.35mm Standard @SeeMeCNC RostockMAX v3.2 0.7", + "0.35mm Standard @SeeMeCNC RostockMAX v4 0.7", + "0.40mm Fine @SeeMeCNC Artemis 1.0", + "0.40mm Fine @SeeMeCNC BOSSdelta 300 1.0", + "0.40mm Fine @SeeMeCNC BOSSdelta 500 0505 1.0", + "0.40mm Fine @SeeMeCNC BOSSdelta 500 0510 1.0", + "0.40mm Fine @SeeMeCNC BOSSdelta 500 0521 1.0", + "0.40mm Fine @SeeMeCNC RostockMAX v3.2 1.0", + "0.40mm Fine @SeeMeCNC RostockMAX v4 1.0", + "0.42mm Draft @SeeMeCNC Artemis 0.7", + "0.42mm Draft @SeeMeCNC BOSSdelta 300 0.7", + "0.42mm Draft @SeeMeCNC BOSSdelta 500 0505 0.7", + "0.42mm Draft @SeeMeCNC BOSSdelta 500 0510 0.7", + "0.42mm Draft @SeeMeCNC BOSSdelta 500 0521 0.7", + "0.42mm Draft @SeeMeCNC RostockMAX v3.2 0.7", + "0.42mm Draft @SeeMeCNC RostockMAX v4 0.7", + "0.49mm Extra Draft @SeeMeCNC Artemis 0.7", + "0.49mm Extra Draft @SeeMeCNC BOSSdelta 300 0.7", + "0.49mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 0.7", + "0.49mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 0.7", + "0.49mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 0.7", + "0.49mm Extra Draft @SeeMeCNC RostockMAX v3.2 0.7", + "0.49mm Extra Draft @SeeMeCNC RostockMAX v4 0.7", + "0.50mm Standard @SeeMeCNC Artemis 1.0", + "0.50mm Standard @SeeMeCNC BOSSdelta 300 1.0", + "0.50mm Standard @SeeMeCNC BOSSdelta 500 0505 1.0", + "0.50mm Standard @SeeMeCNC BOSSdelta 500 0510 1.0", + "0.50mm Standard @SeeMeCNC BOSSdelta 500 0521 1.0", + "0.50mm Standard @SeeMeCNC RostockMAX v3.2 1.0", + "0.50mm Standard @SeeMeCNC RostockMAX v4 1.0", + "0.60mm Draft @SeeMeCNC Artemis 1.0", + "0.60mm Draft @SeeMeCNC BOSSdelta 300 1.0", + "0.60mm Draft @SeeMeCNC BOSSdelta 500 0505 1.0", + "0.60mm Draft @SeeMeCNC BOSSdelta 500 0510 1.0", + "0.60mm Draft @SeeMeCNC BOSSdelta 500 0521 1.0", + "0.60mm Draft @SeeMeCNC RostockMAX v3.2 1.0", + "0.60mm Draft @SeeMeCNC RostockMAX v4 1.0", + "0.70mm Extra Draft @SeeMeCNC Artemis 1.0", + "0.70mm Extra Draft @SeeMeCNC BOSSdelta 300 1.0", + "0.70mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 1.0", + "0.70mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 1.0", + "0.70mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 1.0", + "0.70mm Extra Draft @SeeMeCNC RostockMAX v3.2 1.0", + "0.70mm Extra Draft @SeeMeCNC RostockMAX v4 1.0" + ], + "compatible_prints_condition": "", + "close_fan_the_first_x_layers": [ + "3" + ], + "cool_plate_temp": [ + "100" + ], + "cool_plate_temp_initial_layer": [ + "100" + ], + "enable_overhang_bridge_fan": [ + "1" + ], + "eng_plate_temp": [ + "100" + ], + "eng_plate_temp_initial_layer": [ + "100" + ], + "fan_cooling_layer_time": [ + "40" + ], + "fan_max_speed": [ + "30" + ], + "fan_min_speed": [ + "0" + ], + "filament_cost": [ + "30" + ], + "filament_density": [ + "1.04" + ], + "filament_max_volumetric_speed": [ + "10" + ], + "filament_notes": [ + "Pressure Advance starting values by machine and nozzle size:\nArtemis / BOSSdelta 300:\n 0.4mm nozzle: 0.4000\n 0.5mm nozzle: 0.3200\n 0.7mm nozzle: 0.2286\n 1.0mm nozzle: 0.1600\n\nRostockMAX v3.2 / v4:\n 0.4mm nozzle: 0.4789\n 0.5mm nozzle: 0.3831\n 0.7mm nozzle: 0.2736\n 1.0mm nozzle: 0.1915\n\nBOSSdelta 0505:\n 0.4mm nozzle: 0.5352\n 0.5mm nozzle: 0.4282\n 0.7mm nozzle: 0.3058\n 1.0mm nozzle: 0.2141\n\nBOSSdelta 0510:\n 0.4mm nozzle: 0.7887\n 0.5mm nozzle: 0.6310\n 0.7mm nozzle: 0.4507\n 1.0mm nozzle: 0.3155\n\nBOSSdelta 0521:\n 0.4mm nozzle: 1.3239\n 0.5mm nozzle: 1.0592\n 0.7mm nozzle: 0.7565\n 1.0mm nozzle: 0.5296\n\nRun OrcaSlicer PA calibration to fine-tune for your setup.\n\nABS prints best with an enclosure to prevent warping.\nBed surface: PEI or garolite recommended.\nBed temp: 100C. Avoid drafts." + ], + "filament_type": [ + "ABS" + ], + "full_fan_speed_layer": [ + "5" + ], + "hot_plate_temp": [ + "100" + ], + "hot_plate_temp_initial_layer": [ + "100" + ], + "internal_bridge_fan_speed": [ + "30" + ], + "nozzle_temperature": [ + "240" + ], + "nozzle_temperature_initial_layer": [ + "240" + ], + "nozzle_temperature_range_high": [ + "270" + ], + "nozzle_temperature_range_low": [ + "230" + ], + "overhang_fan_threshold": [ + "50%" + ], + "pressure_advance": [ + "0.4" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "slow_down_for_layer_cooling": [ + "1" + ], + "slow_down_layer_time": [ + "30" + ], + "slow_down_min_speed": [ + "20" + ], + "supertack_plate_temp": [ + "100" + ], + "supertack_plate_temp_initial_layer": [ + "100" + ], + "temperature_vitrification": [ + "98" + ], + "textured_cool_plate_temp": [ + "100" + ], + "textured_cool_plate_temp_initial_layer": [ + "100" + ], + "textured_plate_temp": [ + "100" + ], + "textured_plate_temp_initial_layer": [ + "100" + ], + "keep_fan_always_on": [ + "0" + ] +} diff --git a/resources/profiles/SeeMeCNC/filament/SeeMeCNC_PA-CF.json b/resources/profiles/SeeMeCNC/filament/SeeMeCNC_PA-CF.json new file mode 100644 index 00000000000..aaee59be504 --- /dev/null +++ b/resources/profiles/SeeMeCNC/filament/SeeMeCNC_PA-CF.json @@ -0,0 +1,268 @@ +{ + "type": "filament", + "name": "SeeMeCNC PA-CF", + "inherits": "SeeMeCNC filament base", + "from": "System", + "filament_id": "SMCFN001", + "instantiation": "true", + "filament_settings_id": [ + "SeeMeCNC PA-CF" + ], + "compatible_printers": [ + "SeeMeCNC Artemis 0.4 nozzle", + "SeeMeCNC Artemis 0.5 nozzle", + "SeeMeCNC Artemis 0.7 nozzle", + "SeeMeCNC Artemis 1.0 nozzle", + "SeeMeCNC BOSSdelta 500 0505 0.4 nozzle", + "SeeMeCNC BOSSdelta 500 0505 0.5 nozzle", + "SeeMeCNC BOSSdelta 500 0505 0.7 nozzle", + "SeeMeCNC BOSSdelta 500 0505 1.0 nozzle", + "SeeMeCNC BOSSdelta 500 0510 0.4 nozzle", + "SeeMeCNC BOSSdelta 500 0510 0.5 nozzle", + "SeeMeCNC BOSSdelta 500 0510 0.7 nozzle", + "SeeMeCNC BOSSdelta 500 0510 1.0 nozzle", + "SeeMeCNC BOSSdelta 500 0521 0.4 nozzle", + "SeeMeCNC BOSSdelta 500 0521 0.5 nozzle", + "SeeMeCNC BOSSdelta 500 0521 0.7 nozzle", + "SeeMeCNC BOSSdelta 500 0521 1.0 nozzle", + "SeeMeCNC BOSSdelta 300 0.4 nozzle", + "SeeMeCNC BOSSdelta 300 0.5 nozzle", + "SeeMeCNC BOSSdelta 300 0.7 nozzle", + "SeeMeCNC BOSSdelta 300 1.0 nozzle", + "SeeMeCNC RostockMAX v3.2 0.4 nozzle", + "SeeMeCNC RostockMAX v3.2 0.5 nozzle", + "SeeMeCNC RostockMAX v3.2 0.7 nozzle", + "SeeMeCNC RostockMAX v3.2 1.0 nozzle", + "SeeMeCNC RostockMAX v4 0.4 nozzle", + "SeeMeCNC RostockMAX v4 0.5 nozzle", + "SeeMeCNC RostockMAX v4 0.7 nozzle", + "SeeMeCNC RostockMAX v4 1.0 nozzle" + ], + "compatible_printers_condition": "", + "compatible_prints": [ + "0.16mm Fine @SeeMeCNC Artemis 0.4", + "0.16mm Fine @SeeMeCNC BOSSdelta 300 0.4", + "0.16mm Fine @SeeMeCNC BOSSdelta 500 0505 0.4", + "0.16mm Fine @SeeMeCNC BOSSdelta 500 0510 0.4", + "0.16mm Fine @SeeMeCNC BOSSdelta 500 0521 0.4", + "0.16mm Fine @SeeMeCNC RostockMAX v3.2 0.4", + "0.16mm Fine @SeeMeCNC RostockMAX v4 0.4", + "0.20mm Fine @SeeMeCNC Artemis 0.5", + "0.20mm Fine @SeeMeCNC BOSSdelta 300 0.5", + "0.20mm Fine @SeeMeCNC BOSSdelta 500 0505 0.5", + "0.20mm Fine @SeeMeCNC BOSSdelta 500 0510 0.5", + "0.20mm Fine @SeeMeCNC BOSSdelta 500 0521 0.5", + "0.20mm Fine @SeeMeCNC RostockMAX v3.2 0.5", + "0.20mm Fine @SeeMeCNC RostockMAX v4 0.5", + "0.20mm Standard @SeeMeCNC Artemis 0.4", + "0.20mm Standard @SeeMeCNC BOSSdelta 300 0.4", + "0.20mm Standard @SeeMeCNC BOSSdelta 500 0505 0.4", + "0.20mm Standard @SeeMeCNC BOSSdelta 500 0510 0.4", + "0.20mm Standard @SeeMeCNC BOSSdelta 500 0521 0.4", + "0.20mm Standard @SeeMeCNC RostockMAX v3.2 0.4", + "0.20mm Standard @SeeMeCNC RostockMAX v4 0.4", + "0.24mm Draft @SeeMeCNC Artemis 0.4", + "0.24mm Draft @SeeMeCNC BOSSdelta 300 0.4", + "0.24mm Draft @SeeMeCNC BOSSdelta 500 0505 0.4", + "0.24mm Draft @SeeMeCNC BOSSdelta 500 0510 0.4", + "0.24mm Draft @SeeMeCNC BOSSdelta 500 0521 0.4", + "0.24mm Draft @SeeMeCNC RostockMAX v3.2 0.4", + "0.24mm Draft @SeeMeCNC RostockMAX v4 0.4", + "0.25mm Standard @SeeMeCNC Artemis 0.5", + "0.25mm Standard @SeeMeCNC BOSSdelta 300 0.5", + "0.25mm Standard @SeeMeCNC BOSSdelta 500 0505 0.5", + "0.25mm Standard @SeeMeCNC BOSSdelta 500 0510 0.5", + "0.25mm Standard @SeeMeCNC BOSSdelta 500 0521 0.5", + "0.25mm Standard @SeeMeCNC RostockMAX v3.2 0.5", + "0.25mm Standard @SeeMeCNC RostockMAX v4 0.5", + "0.28mm Extra Draft @SeeMeCNC Artemis 0.4", + "0.28mm Extra Draft @SeeMeCNC BOSSdelta 300 0.4", + "0.28mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 0.4", + "0.28mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 0.4", + "0.28mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 0.4", + "0.28mm Extra Draft @SeeMeCNC RostockMAX v3.2 0.4", + "0.28mm Extra Draft @SeeMeCNC RostockMAX v4 0.4", + "0.28mm Fine @SeeMeCNC Artemis 0.7", + "0.28mm Fine @SeeMeCNC BOSSdelta 300 0.7", + "0.28mm Fine @SeeMeCNC BOSSdelta 500 0505 0.7", + "0.28mm Fine @SeeMeCNC BOSSdelta 500 0510 0.7", + "0.28mm Fine @SeeMeCNC BOSSdelta 500 0521 0.7", + "0.28mm Fine @SeeMeCNC RostockMAX v3.2 0.7", + "0.28mm Fine @SeeMeCNC RostockMAX v4 0.7", + "0.30mm Draft @SeeMeCNC Artemis 0.5", + "0.30mm Draft @SeeMeCNC BOSSdelta 300 0.5", + "0.30mm Draft @SeeMeCNC BOSSdelta 500 0505 0.5", + "0.30mm Draft @SeeMeCNC BOSSdelta 500 0510 0.5", + "0.30mm Draft @SeeMeCNC BOSSdelta 500 0521 0.5", + "0.30mm Draft @SeeMeCNC RostockMAX v3.2 0.5", + "0.30mm Draft @SeeMeCNC RostockMAX v4 0.5", + "0.35mm Extra Draft @SeeMeCNC Artemis 0.5", + "0.35mm Extra Draft @SeeMeCNC BOSSdelta 300 0.5", + "0.35mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 0.5", + "0.35mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 0.5", + "0.35mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 0.5", + "0.35mm Extra Draft @SeeMeCNC RostockMAX v3.2 0.5", + "0.35mm Extra Draft @SeeMeCNC RostockMAX v4 0.5", + "0.35mm Standard @SeeMeCNC Artemis 0.7", + "0.35mm Standard @SeeMeCNC BOSSdelta 300 0.7", + "0.35mm Standard @SeeMeCNC BOSSdelta 500 0505 0.7", + "0.35mm Standard @SeeMeCNC BOSSdelta 500 0510 0.7", + "0.35mm Standard @SeeMeCNC BOSSdelta 500 0521 0.7", + "0.35mm Standard @SeeMeCNC RostockMAX v3.2 0.7", + "0.35mm Standard @SeeMeCNC RostockMAX v4 0.7", + "0.40mm Fine @SeeMeCNC Artemis 1.0", + "0.40mm Fine @SeeMeCNC BOSSdelta 300 1.0", + "0.40mm Fine @SeeMeCNC BOSSdelta 500 0505 1.0", + "0.40mm Fine @SeeMeCNC BOSSdelta 500 0510 1.0", + "0.40mm Fine @SeeMeCNC BOSSdelta 500 0521 1.0", + "0.40mm Fine @SeeMeCNC RostockMAX v3.2 1.0", + "0.40mm Fine @SeeMeCNC RostockMAX v4 1.0", + "0.42mm Draft @SeeMeCNC Artemis 0.7", + "0.42mm Draft @SeeMeCNC BOSSdelta 300 0.7", + "0.42mm Draft @SeeMeCNC BOSSdelta 500 0505 0.7", + "0.42mm Draft @SeeMeCNC BOSSdelta 500 0510 0.7", + "0.42mm Draft @SeeMeCNC BOSSdelta 500 0521 0.7", + "0.42mm Draft @SeeMeCNC RostockMAX v3.2 0.7", + "0.42mm Draft @SeeMeCNC RostockMAX v4 0.7", + "0.49mm Extra Draft @SeeMeCNC Artemis 0.7", + "0.49mm Extra Draft @SeeMeCNC BOSSdelta 300 0.7", + "0.49mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 0.7", + "0.49mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 0.7", + "0.49mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 0.7", + "0.49mm Extra Draft @SeeMeCNC RostockMAX v3.2 0.7", + "0.49mm Extra Draft @SeeMeCNC RostockMAX v4 0.7", + "0.50mm Standard @SeeMeCNC Artemis 1.0", + "0.50mm Standard @SeeMeCNC BOSSdelta 300 1.0", + "0.50mm Standard @SeeMeCNC BOSSdelta 500 0505 1.0", + "0.50mm Standard @SeeMeCNC BOSSdelta 500 0510 1.0", + "0.50mm Standard @SeeMeCNC BOSSdelta 500 0521 1.0", + "0.50mm Standard @SeeMeCNC RostockMAX v3.2 1.0", + "0.50mm Standard @SeeMeCNC RostockMAX v4 1.0", + "0.60mm Draft @SeeMeCNC Artemis 1.0", + "0.60mm Draft @SeeMeCNC BOSSdelta 300 1.0", + "0.60mm Draft @SeeMeCNC BOSSdelta 500 0505 1.0", + "0.60mm Draft @SeeMeCNC BOSSdelta 500 0510 1.0", + "0.60mm Draft @SeeMeCNC BOSSdelta 500 0521 1.0", + "0.60mm Draft @SeeMeCNC RostockMAX v3.2 1.0", + "0.60mm Draft @SeeMeCNC RostockMAX v4 1.0", + "0.70mm Extra Draft @SeeMeCNC Artemis 1.0", + "0.70mm Extra Draft @SeeMeCNC BOSSdelta 300 1.0", + "0.70mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 1.0", + "0.70mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 1.0", + "0.70mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 1.0", + "0.70mm Extra Draft @SeeMeCNC RostockMAX v3.2 1.0", + "0.70mm Extra Draft @SeeMeCNC RostockMAX v4 1.0" + ], + "compatible_prints_condition": "", + "close_fan_the_first_x_layers": [ + "6" + ], + "cool_plate_temp": [ + "70" + ], + "cool_plate_temp_initial_layer": [ + "70" + ], + "enable_overhang_bridge_fan": [ + "1" + ], + "eng_plate_temp": [ + "90" + ], + "eng_plate_temp_initial_layer": [ + "90" + ], + "fan_cooling_layer_time": [ + "60" + ], + "fan_max_speed": [ + "35" + ], + "fan_min_speed": [ + "35" + ], + "filament_cost": [ + "30" + ], + "filament_density": [ + "1.15" + ], + "filament_max_volumetric_speed": [ + "8" + ], + "filament_notes": [ + "Pressure Advance starting values by machine and nozzle size:\n\nArtemis / BOSSdelta 300:\n 0.4mm nozzle: 0.5500\n 0.5mm nozzle: 0.4400\n 0.7mm nozzle: 0.3143\n 1.0mm nozzle: 0.2200\n\nRostockMAX v3.2 / v4:\n 0.4mm nozzle: 0.6585\n 0.5mm nozzle: 0.5268\n 0.7mm nozzle: 0.3763\n 1.0mm nozzle: 0.2634\n\nBOSSdelta 0505:\n 0.4mm nozzle: 0.7359\n 0.5mm nozzle: 0.5887\n 0.7mm nozzle: 0.4205\n 1.0mm nozzle: 0.2944\n\nBOSSdelta 0510:\n 0.4mm nozzle: 1.0845\n 0.5mm nozzle: 0.8676\n 0.7mm nozzle: 0.6197\n 1.0mm nozzle: 0.4338\n\nBOSSdelta 0521:\n 0.4mm nozzle: 1.8204\n 0.5mm nozzle: 1.4563\n 0.7mm nozzle: 1.0402\n 1.0mm nozzle: 0.7282\n\nRun OrcaSlicer PA calibration to fine-tune for your setup." + ], + "filament_type": [ + "PA-CF" + ], + "full_fan_speed_layer": [ + "5" + ], + "hot_plate_temp": [ + "90" + ], + "hot_plate_temp_initial_layer": [ + "90" + ], + "internal_bridge_fan_speed": [ + "35" + ], + "nozzle_temperature": [ + "265" + ], + "nozzle_temperature_initial_layer": [ + "265" + ], + "nozzle_temperature_range_high": [ + "285" + ], + "nozzle_temperature_range_low": [ + "255" + ], + "overhang_fan_threshold": [ + "50%" + ], + "pressure_advance": [ + "0.55" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "slow_down_for_layer_cooling": [ + "0" + ], + "slow_down_layer_time": [ + "45" + ], + "slow_down_min_speed": [ + "20" + ], + "supertack_plate_temp": [ + "35" + ], + "supertack_plate_temp_initial_layer": [ + "35" + ], + "temperature_vitrification": [ + "180" + ], + "textured_cool_plate_temp": [ + "80" + ], + "textured_cool_plate_temp_initial_layer": [ + "80" + ], + "textured_plate_temp": [ + "90" + ], + "textured_plate_temp_initial_layer": [ + "90" + ], + "overhang_fan_speed": [ + "50" + ], + "keep_fan_always_on": [ + "0" + ] +} diff --git a/resources/profiles/SeeMeCNC/filament/SeeMeCNC_PETG-CF.json b/resources/profiles/SeeMeCNC/filament/SeeMeCNC_PETG-CF.json new file mode 100644 index 00000000000..b2822f0bafd --- /dev/null +++ b/resources/profiles/SeeMeCNC/filament/SeeMeCNC_PETG-CF.json @@ -0,0 +1,265 @@ +{ + "type": "filament", + "name": "SeeMeCNC PETG-CF", + "inherits": "SeeMeCNC filament base", + "from": "System", + "filament_id": "SMCFG002", + "instantiation": "true", + "filament_settings_id": [ + "SeeMeCNC PETG-CF" + ], + "compatible_printers": [ + "SeeMeCNC Artemis 0.4 nozzle", + "SeeMeCNC Artemis 0.5 nozzle", + "SeeMeCNC Artemis 0.7 nozzle", + "SeeMeCNC Artemis 1.0 nozzle", + "SeeMeCNC BOSSdelta 500 0505 0.4 nozzle", + "SeeMeCNC BOSSdelta 500 0505 0.5 nozzle", + "SeeMeCNC BOSSdelta 500 0505 0.7 nozzle", + "SeeMeCNC BOSSdelta 500 0505 1.0 nozzle", + "SeeMeCNC BOSSdelta 500 0510 0.4 nozzle", + "SeeMeCNC BOSSdelta 500 0510 0.5 nozzle", + "SeeMeCNC BOSSdelta 500 0510 0.7 nozzle", + "SeeMeCNC BOSSdelta 500 0510 1.0 nozzle", + "SeeMeCNC BOSSdelta 500 0521 0.4 nozzle", + "SeeMeCNC BOSSdelta 500 0521 0.5 nozzle", + "SeeMeCNC BOSSdelta 500 0521 0.7 nozzle", + "SeeMeCNC BOSSdelta 500 0521 1.0 nozzle", + "SeeMeCNC BOSSdelta 300 0.4 nozzle", + "SeeMeCNC BOSSdelta 300 0.5 nozzle", + "SeeMeCNC BOSSdelta 300 0.7 nozzle", + "SeeMeCNC BOSSdelta 300 1.0 nozzle", + "SeeMeCNC RostockMAX v3.2 0.4 nozzle", + "SeeMeCNC RostockMAX v3.2 0.5 nozzle", + "SeeMeCNC RostockMAX v3.2 0.7 nozzle", + "SeeMeCNC RostockMAX v3.2 1.0 nozzle", + "SeeMeCNC RostockMAX v4 0.4 nozzle", + "SeeMeCNC RostockMAX v4 0.5 nozzle", + "SeeMeCNC RostockMAX v4 0.7 nozzle", + "SeeMeCNC RostockMAX v4 1.0 nozzle" + ], + "compatible_printers_condition": "", + "compatible_prints": [ + "0.16mm Fine @SeeMeCNC Artemis 0.4", + "0.16mm Fine @SeeMeCNC BOSSdelta 300 0.4", + "0.16mm Fine @SeeMeCNC BOSSdelta 500 0505 0.4", + "0.16mm Fine @SeeMeCNC BOSSdelta 500 0510 0.4", + "0.16mm Fine @SeeMeCNC BOSSdelta 500 0521 0.4", + "0.16mm Fine @SeeMeCNC RostockMAX v3.2 0.4", + "0.16mm Fine @SeeMeCNC RostockMAX v4 0.4", + "0.20mm Fine @SeeMeCNC Artemis 0.5", + "0.20mm Fine @SeeMeCNC BOSSdelta 300 0.5", + "0.20mm Fine @SeeMeCNC BOSSdelta 500 0505 0.5", + "0.20mm Fine @SeeMeCNC BOSSdelta 500 0510 0.5", + "0.20mm Fine @SeeMeCNC BOSSdelta 500 0521 0.5", + "0.20mm Fine @SeeMeCNC RostockMAX v3.2 0.5", + "0.20mm Fine @SeeMeCNC RostockMAX v4 0.5", + "0.20mm Standard @SeeMeCNC Artemis 0.4", + "0.20mm Standard @SeeMeCNC BOSSdelta 300 0.4", + "0.20mm Standard @SeeMeCNC BOSSdelta 500 0505 0.4", + "0.20mm Standard @SeeMeCNC BOSSdelta 500 0510 0.4", + "0.20mm Standard @SeeMeCNC BOSSdelta 500 0521 0.4", + "0.20mm Standard @SeeMeCNC RostockMAX v3.2 0.4", + "0.20mm Standard @SeeMeCNC RostockMAX v4 0.4", + "0.24mm Draft @SeeMeCNC Artemis 0.4", + "0.24mm Draft @SeeMeCNC BOSSdelta 300 0.4", + "0.24mm Draft @SeeMeCNC BOSSdelta 500 0505 0.4", + "0.24mm Draft @SeeMeCNC BOSSdelta 500 0510 0.4", + "0.24mm Draft @SeeMeCNC BOSSdelta 500 0521 0.4", + "0.24mm Draft @SeeMeCNC RostockMAX v3.2 0.4", + "0.24mm Draft @SeeMeCNC RostockMAX v4 0.4", + "0.25mm Standard @SeeMeCNC Artemis 0.5", + "0.25mm Standard @SeeMeCNC BOSSdelta 300 0.5", + "0.25mm Standard @SeeMeCNC BOSSdelta 500 0505 0.5", + "0.25mm Standard @SeeMeCNC BOSSdelta 500 0510 0.5", + "0.25mm Standard @SeeMeCNC BOSSdelta 500 0521 0.5", + "0.25mm Standard @SeeMeCNC RostockMAX v3.2 0.5", + "0.25mm Standard @SeeMeCNC RostockMAX v4 0.5", + "0.28mm Extra Draft @SeeMeCNC Artemis 0.4", + "0.28mm Extra Draft @SeeMeCNC BOSSdelta 300 0.4", + "0.28mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 0.4", + "0.28mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 0.4", + "0.28mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 0.4", + "0.28mm Extra Draft @SeeMeCNC RostockMAX v3.2 0.4", + "0.28mm Extra Draft @SeeMeCNC RostockMAX v4 0.4", + "0.28mm Fine @SeeMeCNC Artemis 0.7", + "0.28mm Fine @SeeMeCNC BOSSdelta 300 0.7", + "0.28mm Fine @SeeMeCNC BOSSdelta 500 0505 0.7", + "0.28mm Fine @SeeMeCNC BOSSdelta 500 0510 0.7", + "0.28mm Fine @SeeMeCNC BOSSdelta 500 0521 0.7", + "0.28mm Fine @SeeMeCNC RostockMAX v3.2 0.7", + "0.28mm Fine @SeeMeCNC RostockMAX v4 0.7", + "0.30mm Draft @SeeMeCNC Artemis 0.5", + "0.30mm Draft @SeeMeCNC BOSSdelta 300 0.5", + "0.30mm Draft @SeeMeCNC BOSSdelta 500 0505 0.5", + "0.30mm Draft @SeeMeCNC BOSSdelta 500 0510 0.5", + "0.30mm Draft @SeeMeCNC BOSSdelta 500 0521 0.5", + "0.30mm Draft @SeeMeCNC RostockMAX v3.2 0.5", + "0.30mm Draft @SeeMeCNC RostockMAX v4 0.5", + "0.35mm Extra Draft @SeeMeCNC Artemis 0.5", + "0.35mm Extra Draft @SeeMeCNC BOSSdelta 300 0.5", + "0.35mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 0.5", + "0.35mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 0.5", + "0.35mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 0.5", + "0.35mm Extra Draft @SeeMeCNC RostockMAX v3.2 0.5", + "0.35mm Extra Draft @SeeMeCNC RostockMAX v4 0.5", + "0.35mm Standard @SeeMeCNC Artemis 0.7", + "0.35mm Standard @SeeMeCNC BOSSdelta 300 0.7", + "0.35mm Standard @SeeMeCNC BOSSdelta 500 0505 0.7", + "0.35mm Standard @SeeMeCNC BOSSdelta 500 0510 0.7", + "0.35mm Standard @SeeMeCNC BOSSdelta 500 0521 0.7", + "0.35mm Standard @SeeMeCNC RostockMAX v3.2 0.7", + "0.35mm Standard @SeeMeCNC RostockMAX v4 0.7", + "0.40mm Fine @SeeMeCNC Artemis 1.0", + "0.40mm Fine @SeeMeCNC BOSSdelta 300 1.0", + "0.40mm Fine @SeeMeCNC BOSSdelta 500 0505 1.0", + "0.40mm Fine @SeeMeCNC BOSSdelta 500 0510 1.0", + "0.40mm Fine @SeeMeCNC BOSSdelta 500 0521 1.0", + "0.40mm Fine @SeeMeCNC RostockMAX v3.2 1.0", + "0.40mm Fine @SeeMeCNC RostockMAX v4 1.0", + "0.42mm Draft @SeeMeCNC Artemis 0.7", + "0.42mm Draft @SeeMeCNC BOSSdelta 300 0.7", + "0.42mm Draft @SeeMeCNC BOSSdelta 500 0505 0.7", + "0.42mm Draft @SeeMeCNC BOSSdelta 500 0510 0.7", + "0.42mm Draft @SeeMeCNC BOSSdelta 500 0521 0.7", + "0.42mm Draft @SeeMeCNC RostockMAX v3.2 0.7", + "0.42mm Draft @SeeMeCNC RostockMAX v4 0.7", + "0.49mm Extra Draft @SeeMeCNC Artemis 0.7", + "0.49mm Extra Draft @SeeMeCNC BOSSdelta 300 0.7", + "0.49mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 0.7", + "0.49mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 0.7", + "0.49mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 0.7", + "0.49mm Extra Draft @SeeMeCNC RostockMAX v3.2 0.7", + "0.49mm Extra Draft @SeeMeCNC RostockMAX v4 0.7", + "0.50mm Standard @SeeMeCNC Artemis 1.0", + "0.50mm Standard @SeeMeCNC BOSSdelta 300 1.0", + "0.50mm Standard @SeeMeCNC BOSSdelta 500 0505 1.0", + "0.50mm Standard @SeeMeCNC BOSSdelta 500 0510 1.0", + "0.50mm Standard @SeeMeCNC BOSSdelta 500 0521 1.0", + "0.50mm Standard @SeeMeCNC RostockMAX v3.2 1.0", + "0.50mm Standard @SeeMeCNC RostockMAX v4 1.0", + "0.60mm Draft @SeeMeCNC Artemis 1.0", + "0.60mm Draft @SeeMeCNC BOSSdelta 300 1.0", + "0.60mm Draft @SeeMeCNC BOSSdelta 500 0505 1.0", + "0.60mm Draft @SeeMeCNC BOSSdelta 500 0510 1.0", + "0.60mm Draft @SeeMeCNC BOSSdelta 500 0521 1.0", + "0.60mm Draft @SeeMeCNC RostockMAX v3.2 1.0", + "0.60mm Draft @SeeMeCNC RostockMAX v4 1.0", + "0.70mm Extra Draft @SeeMeCNC Artemis 1.0", + "0.70mm Extra Draft @SeeMeCNC BOSSdelta 300 1.0", + "0.70mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 1.0", + "0.70mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 1.0", + "0.70mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 1.0", + "0.70mm Extra Draft @SeeMeCNC RostockMAX v3.2 1.0", + "0.70mm Extra Draft @SeeMeCNC RostockMAX v4 1.0" + ], + "compatible_prints_condition": "", + "close_fan_the_first_x_layers": [ + "3" + ], + "cool_plate_temp": [ + "70" + ], + "cool_plate_temp_initial_layer": [ + "70" + ], + "enable_overhang_bridge_fan": [ + "1" + ], + "eng_plate_temp": [ + "70" + ], + "eng_plate_temp_initial_layer": [ + "70" + ], + "fan_cooling_layer_time": [ + "60" + ], + "fan_max_speed": [ + "50" + ], + "fan_min_speed": [ + "35" + ], + "filament_cost": [ + "30" + ], + "filament_density": [ + "1.32" + ], + "filament_max_volumetric_speed": [ + "7" + ], + "filament_notes": [ + "Pressure Advance starting values by machine and nozzle size:\nArtemis / BOSSdelta 300:\n 0.4mm nozzle: 0.4500\n 0.5mm nozzle: 0.3600\n 0.7mm nozzle: 0.2571\n 1.0mm nozzle: 0.1800\n\nRostockMAX v3.2 / v4:\n 0.4mm nozzle: 0.5387\n 0.5mm nozzle: 0.4310\n 0.7mm nozzle: 0.3078\n 1.0mm nozzle: 0.2155\n\nBOSSdelta 0505:\n 0.4mm nozzle: 0.6021\n 0.5mm nozzle: 0.4817\n 0.7mm nozzle: 0.3441\n 1.0mm nozzle: 0.2408\n\nBOSSdelta 0510:\n 0.4mm nozzle: 0.8873\n 0.5mm nozzle: 0.7099\n 0.7mm nozzle: 0.5070\n 1.0mm nozzle: 0.3549\n\nBOSSdelta 0521:\n 0.4mm nozzle: 1.4894\n 0.5mm nozzle: 1.1915\n 0.7mm nozzle: 0.8511\n 1.0mm nozzle: 0.5958\n\nRun OrcaSlicer PA calibration to fine-tune for your setup." + ], + "filament_type": [ + "PETG-CF" + ], + "full_fan_speed_layer": [ + "5" + ], + "hot_plate_temp": [ + "70" + ], + "hot_plate_temp_initial_layer": [ + "70" + ], + "internal_bridge_fan_speed": [ + "55" + ], + "nozzle_temperature": [ + "235" + ], + "nozzle_temperature_initial_layer": [ + "235" + ], + "nozzle_temperature_range_high": [ + "255" + ], + "nozzle_temperature_range_low": [ + "225" + ], + "overhang_fan_threshold": [ + "50%" + ], + "pressure_advance": [ + "0.45" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "slow_down_for_layer_cooling": [ + "1" + ], + "slow_down_layer_time": [ + "45" + ], + "slow_down_min_speed": [ + "20" + ], + "supertack_plate_temp": [ + "70" + ], + "supertack_plate_temp_initial_layer": [ + "70" + ], + "temperature_vitrification": [ + "80" + ], + "textured_cool_plate_temp": [ + "70" + ], + "textured_cool_plate_temp_initial_layer": [ + "70" + ], + "textured_plate_temp": [ + "70" + ], + "textured_plate_temp_initial_layer": [ + "70" + ], + "keep_fan_always_on": [ + "0" + ] +} diff --git a/resources/profiles/SeeMeCNC/filament/SeeMeCNC_PETG.json b/resources/profiles/SeeMeCNC/filament/SeeMeCNC_PETG.json new file mode 100644 index 00000000000..a3f862eacc6 --- /dev/null +++ b/resources/profiles/SeeMeCNC/filament/SeeMeCNC_PETG.json @@ -0,0 +1,265 @@ +{ + "type": "filament", + "name": "SeeMeCNC PETG", + "inherits": "SeeMeCNC filament base", + "from": "System", + "filament_id": "SMCFG001", + "instantiation": "true", + "filament_settings_id": [ + "SeeMeCNC PETG" + ], + "compatible_printers": [ + "SeeMeCNC Artemis 0.4 nozzle", + "SeeMeCNC Artemis 0.5 nozzle", + "SeeMeCNC Artemis 0.7 nozzle", + "SeeMeCNC Artemis 1.0 nozzle", + "SeeMeCNC BOSSdelta 500 0505 0.4 nozzle", + "SeeMeCNC BOSSdelta 500 0505 0.5 nozzle", + "SeeMeCNC BOSSdelta 500 0505 0.7 nozzle", + "SeeMeCNC BOSSdelta 500 0505 1.0 nozzle", + "SeeMeCNC BOSSdelta 500 0510 0.4 nozzle", + "SeeMeCNC BOSSdelta 500 0510 0.5 nozzle", + "SeeMeCNC BOSSdelta 500 0510 0.7 nozzle", + "SeeMeCNC BOSSdelta 500 0510 1.0 nozzle", + "SeeMeCNC BOSSdelta 500 0521 0.4 nozzle", + "SeeMeCNC BOSSdelta 500 0521 0.5 nozzle", + "SeeMeCNC BOSSdelta 500 0521 0.7 nozzle", + "SeeMeCNC BOSSdelta 500 0521 1.0 nozzle", + "SeeMeCNC BOSSdelta 300 0.4 nozzle", + "SeeMeCNC BOSSdelta 300 0.5 nozzle", + "SeeMeCNC BOSSdelta 300 0.7 nozzle", + "SeeMeCNC BOSSdelta 300 1.0 nozzle", + "SeeMeCNC RostockMAX v3.2 0.4 nozzle", + "SeeMeCNC RostockMAX v3.2 0.5 nozzle", + "SeeMeCNC RostockMAX v3.2 0.7 nozzle", + "SeeMeCNC RostockMAX v3.2 1.0 nozzle", + "SeeMeCNC RostockMAX v4 0.4 nozzle", + "SeeMeCNC RostockMAX v4 0.5 nozzle", + "SeeMeCNC RostockMAX v4 0.7 nozzle", + "SeeMeCNC RostockMAX v4 1.0 nozzle" + ], + "compatible_printers_condition": "", + "compatible_prints": [ + "0.16mm Fine @SeeMeCNC Artemis 0.4", + "0.16mm Fine @SeeMeCNC BOSSdelta 300 0.4", + "0.16mm Fine @SeeMeCNC BOSSdelta 500 0505 0.4", + "0.16mm Fine @SeeMeCNC BOSSdelta 500 0510 0.4", + "0.16mm Fine @SeeMeCNC BOSSdelta 500 0521 0.4", + "0.16mm Fine @SeeMeCNC RostockMAX v3.2 0.4", + "0.16mm Fine @SeeMeCNC RostockMAX v4 0.4", + "0.20mm Fine @SeeMeCNC Artemis 0.5", + "0.20mm Fine @SeeMeCNC BOSSdelta 300 0.5", + "0.20mm Fine @SeeMeCNC BOSSdelta 500 0505 0.5", + "0.20mm Fine @SeeMeCNC BOSSdelta 500 0510 0.5", + "0.20mm Fine @SeeMeCNC BOSSdelta 500 0521 0.5", + "0.20mm Fine @SeeMeCNC RostockMAX v3.2 0.5", + "0.20mm Fine @SeeMeCNC RostockMAX v4 0.5", + "0.20mm Standard @SeeMeCNC Artemis 0.4", + "0.20mm Standard @SeeMeCNC BOSSdelta 300 0.4", + "0.20mm Standard @SeeMeCNC BOSSdelta 500 0505 0.4", + "0.20mm Standard @SeeMeCNC BOSSdelta 500 0510 0.4", + "0.20mm Standard @SeeMeCNC BOSSdelta 500 0521 0.4", + "0.20mm Standard @SeeMeCNC RostockMAX v3.2 0.4", + "0.20mm Standard @SeeMeCNC RostockMAX v4 0.4", + "0.24mm Draft @SeeMeCNC Artemis 0.4", + "0.24mm Draft @SeeMeCNC BOSSdelta 300 0.4", + "0.24mm Draft @SeeMeCNC BOSSdelta 500 0505 0.4", + "0.24mm Draft @SeeMeCNC BOSSdelta 500 0510 0.4", + "0.24mm Draft @SeeMeCNC BOSSdelta 500 0521 0.4", + "0.24mm Draft @SeeMeCNC RostockMAX v3.2 0.4", + "0.24mm Draft @SeeMeCNC RostockMAX v4 0.4", + "0.25mm Standard @SeeMeCNC Artemis 0.5", + "0.25mm Standard @SeeMeCNC BOSSdelta 300 0.5", + "0.25mm Standard @SeeMeCNC BOSSdelta 500 0505 0.5", + "0.25mm Standard @SeeMeCNC BOSSdelta 500 0510 0.5", + "0.25mm Standard @SeeMeCNC BOSSdelta 500 0521 0.5", + "0.25mm Standard @SeeMeCNC RostockMAX v3.2 0.5", + "0.25mm Standard @SeeMeCNC RostockMAX v4 0.5", + "0.28mm Extra Draft @SeeMeCNC Artemis 0.4", + "0.28mm Extra Draft @SeeMeCNC BOSSdelta 300 0.4", + "0.28mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 0.4", + "0.28mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 0.4", + "0.28mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 0.4", + "0.28mm Extra Draft @SeeMeCNC RostockMAX v3.2 0.4", + "0.28mm Extra Draft @SeeMeCNC RostockMAX v4 0.4", + "0.28mm Fine @SeeMeCNC Artemis 0.7", + "0.28mm Fine @SeeMeCNC BOSSdelta 300 0.7", + "0.28mm Fine @SeeMeCNC BOSSdelta 500 0505 0.7", + "0.28mm Fine @SeeMeCNC BOSSdelta 500 0510 0.7", + "0.28mm Fine @SeeMeCNC BOSSdelta 500 0521 0.7", + "0.28mm Fine @SeeMeCNC RostockMAX v3.2 0.7", + "0.28mm Fine @SeeMeCNC RostockMAX v4 0.7", + "0.30mm Draft @SeeMeCNC Artemis 0.5", + "0.30mm Draft @SeeMeCNC BOSSdelta 300 0.5", + "0.30mm Draft @SeeMeCNC BOSSdelta 500 0505 0.5", + "0.30mm Draft @SeeMeCNC BOSSdelta 500 0510 0.5", + "0.30mm Draft @SeeMeCNC BOSSdelta 500 0521 0.5", + "0.30mm Draft @SeeMeCNC RostockMAX v3.2 0.5", + "0.30mm Draft @SeeMeCNC RostockMAX v4 0.5", + "0.35mm Extra Draft @SeeMeCNC Artemis 0.5", + "0.35mm Extra Draft @SeeMeCNC BOSSdelta 300 0.5", + "0.35mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 0.5", + "0.35mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 0.5", + "0.35mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 0.5", + "0.35mm Extra Draft @SeeMeCNC RostockMAX v3.2 0.5", + "0.35mm Extra Draft @SeeMeCNC RostockMAX v4 0.5", + "0.35mm Standard @SeeMeCNC Artemis 0.7", + "0.35mm Standard @SeeMeCNC BOSSdelta 300 0.7", + "0.35mm Standard @SeeMeCNC BOSSdelta 500 0505 0.7", + "0.35mm Standard @SeeMeCNC BOSSdelta 500 0510 0.7", + "0.35mm Standard @SeeMeCNC BOSSdelta 500 0521 0.7", + "0.35mm Standard @SeeMeCNC RostockMAX v3.2 0.7", + "0.35mm Standard @SeeMeCNC RostockMAX v4 0.7", + "0.40mm Fine @SeeMeCNC Artemis 1.0", + "0.40mm Fine @SeeMeCNC BOSSdelta 300 1.0", + "0.40mm Fine @SeeMeCNC BOSSdelta 500 0505 1.0", + "0.40mm Fine @SeeMeCNC BOSSdelta 500 0510 1.0", + "0.40mm Fine @SeeMeCNC BOSSdelta 500 0521 1.0", + "0.40mm Fine @SeeMeCNC RostockMAX v3.2 1.0", + "0.40mm Fine @SeeMeCNC RostockMAX v4 1.0", + "0.42mm Draft @SeeMeCNC Artemis 0.7", + "0.42mm Draft @SeeMeCNC BOSSdelta 300 0.7", + "0.42mm Draft @SeeMeCNC BOSSdelta 500 0505 0.7", + "0.42mm Draft @SeeMeCNC BOSSdelta 500 0510 0.7", + "0.42mm Draft @SeeMeCNC BOSSdelta 500 0521 0.7", + "0.42mm Draft @SeeMeCNC RostockMAX v3.2 0.7", + "0.42mm Draft @SeeMeCNC RostockMAX v4 0.7", + "0.49mm Extra Draft @SeeMeCNC Artemis 0.7", + "0.49mm Extra Draft @SeeMeCNC BOSSdelta 300 0.7", + "0.49mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 0.7", + "0.49mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 0.7", + "0.49mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 0.7", + "0.49mm Extra Draft @SeeMeCNC RostockMAX v3.2 0.7", + "0.49mm Extra Draft @SeeMeCNC RostockMAX v4 0.7", + "0.50mm Standard @SeeMeCNC Artemis 1.0", + "0.50mm Standard @SeeMeCNC BOSSdelta 300 1.0", + "0.50mm Standard @SeeMeCNC BOSSdelta 500 0505 1.0", + "0.50mm Standard @SeeMeCNC BOSSdelta 500 0510 1.0", + "0.50mm Standard @SeeMeCNC BOSSdelta 500 0521 1.0", + "0.50mm Standard @SeeMeCNC RostockMAX v3.2 1.0", + "0.50mm Standard @SeeMeCNC RostockMAX v4 1.0", + "0.60mm Draft @SeeMeCNC Artemis 1.0", + "0.60mm Draft @SeeMeCNC BOSSdelta 300 1.0", + "0.60mm Draft @SeeMeCNC BOSSdelta 500 0505 1.0", + "0.60mm Draft @SeeMeCNC BOSSdelta 500 0510 1.0", + "0.60mm Draft @SeeMeCNC BOSSdelta 500 0521 1.0", + "0.60mm Draft @SeeMeCNC RostockMAX v3.2 1.0", + "0.60mm Draft @SeeMeCNC RostockMAX v4 1.0", + "0.70mm Extra Draft @SeeMeCNC Artemis 1.0", + "0.70mm Extra Draft @SeeMeCNC BOSSdelta 300 1.0", + "0.70mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 1.0", + "0.70mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 1.0", + "0.70mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 1.0", + "0.70mm Extra Draft @SeeMeCNC RostockMAX v3.2 1.0", + "0.70mm Extra Draft @SeeMeCNC RostockMAX v4 1.0" + ], + "compatible_prints_condition": "", + "close_fan_the_first_x_layers": [ + "5" + ], + "cool_plate_temp": [ + "70" + ], + "cool_plate_temp_initial_layer": [ + "70" + ], + "enable_overhang_bridge_fan": [ + "1" + ], + "eng_plate_temp": [ + "70" + ], + "eng_plate_temp_initial_layer": [ + "70" + ], + "fan_cooling_layer_time": [ + "45" + ], + "fan_max_speed": [ + "70" + ], + "fan_min_speed": [ + "40" + ], + "filament_cost": [ + "30" + ], + "filament_density": [ + "1.27" + ], + "filament_max_volumetric_speed": [ + "8" + ], + "filament_notes": [ + "Pressure Advance starting values by machine and nozzle size:\nArtemis / BOSSdelta 300:\n 0.4mm nozzle: 0.5000\n 0.5mm nozzle: 0.4000\n 0.7mm nozzle: 0.2857\n 1.0mm nozzle: 0.2000\n\nRostockMAX v3.2 / v4:\n 0.4mm nozzle: 0.5986\n 0.5mm nozzle: 0.4789\n 0.7mm nozzle: 0.3421\n 1.0mm nozzle: 0.2394\n\nBOSSdelta 0505:\n 0.4mm nozzle: 0.6690\n 0.5mm nozzle: 0.5352\n 0.7mm nozzle: 0.3823\n 1.0mm nozzle: 0.2676\n\nBOSSdelta 0510:\n 0.4mm nozzle: 0.9859\n 0.5mm nozzle: 0.7887\n 0.7mm nozzle: 0.5634\n 1.0mm nozzle: 0.3944\n\nBOSSdelta 0521:\n 0.4mm nozzle: 1.6549\n 0.5mm nozzle: 1.3239\n 0.7mm nozzle: 0.9457\n 1.0mm nozzle: 0.6620\n\nRun OrcaSlicer PA calibration to fine-tune for your setup." + ], + "filament_type": [ + "PETG" + ], + "full_fan_speed_layer": [ + "5" + ], + "hot_plate_temp": [ + "70" + ], + "hot_plate_temp_initial_layer": [ + "70" + ], + "internal_bridge_fan_speed": [ + "65" + ], + "nozzle_temperature": [ + "230" + ], + "nozzle_temperature_initial_layer": [ + "230" + ], + "nozzle_temperature_range_high": [ + "250" + ], + "nozzle_temperature_range_low": [ + "220" + ], + "overhang_fan_threshold": [ + "50%" + ], + "pressure_advance": [ + "0.5" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "slow_down_for_layer_cooling": [ + "1" + ], + "slow_down_layer_time": [ + "30" + ], + "slow_down_min_speed": [ + "20" + ], + "supertack_plate_temp": [ + "70" + ], + "supertack_plate_temp_initial_layer": [ + "70" + ], + "temperature_vitrification": [ + "80" + ], + "textured_cool_plate_temp": [ + "70" + ], + "textured_cool_plate_temp_initial_layer": [ + "70" + ], + "textured_plate_temp": [ + "70" + ], + "textured_plate_temp_initial_layer": [ + "70" + ], + "keep_fan_always_on": [ + "1" + ] +} diff --git a/resources/profiles/SeeMeCNC/filament/SeeMeCNC_PLA.json b/resources/profiles/SeeMeCNC/filament/SeeMeCNC_PLA.json new file mode 100644 index 00000000000..88065139a5d --- /dev/null +++ b/resources/profiles/SeeMeCNC/filament/SeeMeCNC_PLA.json @@ -0,0 +1,447 @@ +{ + "type": "filament", + "name": "SeeMeCNC PLA", + "from": "System", + "filament_id": "SMCFL001", + "instantiation": "true", + "filament_settings_id": [ + "SeeMeCNC PLA" + ], + "compatible_printers": [ + "SeeMeCNC Artemis 0.4 nozzle", + "SeeMeCNC Artemis 0.5 nozzle", + "SeeMeCNC Artemis 0.7 nozzle", + "SeeMeCNC Artemis 1.0 nozzle", + "SeeMeCNC BOSSdelta 500 0505 0.4 nozzle", + "SeeMeCNC BOSSdelta 500 0505 0.5 nozzle", + "SeeMeCNC BOSSdelta 500 0505 0.7 nozzle", + "SeeMeCNC BOSSdelta 500 0505 1.0 nozzle", + "SeeMeCNC BOSSdelta 500 0510 0.4 nozzle", + "SeeMeCNC BOSSdelta 500 0510 0.5 nozzle", + "SeeMeCNC BOSSdelta 500 0510 0.7 nozzle", + "SeeMeCNC BOSSdelta 500 0510 1.0 nozzle", + "SeeMeCNC BOSSdelta 500 0521 0.4 nozzle", + "SeeMeCNC BOSSdelta 500 0521 0.5 nozzle", + "SeeMeCNC BOSSdelta 500 0521 0.7 nozzle", + "SeeMeCNC BOSSdelta 500 0521 1.0 nozzle", + "SeeMeCNC BOSSdelta 300 0.4 nozzle", + "SeeMeCNC BOSSdelta 300 0.5 nozzle", + "SeeMeCNC BOSSdelta 300 0.7 nozzle", + "SeeMeCNC BOSSdelta 300 1.0 nozzle", + "SeeMeCNC RostockMAX v3.2 0.4 nozzle", + "SeeMeCNC RostockMAX v3.2 0.5 nozzle", + "SeeMeCNC RostockMAX v3.2 0.7 nozzle", + "SeeMeCNC RostockMAX v3.2 1.0 nozzle", + "SeeMeCNC RostockMAX v4 0.4 nozzle", + "SeeMeCNC RostockMAX v4 0.5 nozzle", + "SeeMeCNC RostockMAX v4 0.7 nozzle", + "SeeMeCNC RostockMAX v4 1.0 nozzle" + ], + "compatible_printers_condition": "", + "compatible_prints": [ + "0.16mm Fine @SeeMeCNC Artemis 0.4", + "0.16mm Fine @SeeMeCNC BOSSdelta 300 0.4", + "0.16mm Fine @SeeMeCNC BOSSdelta 500 0505 0.4", + "0.16mm Fine @SeeMeCNC BOSSdelta 500 0510 0.4", + "0.16mm Fine @SeeMeCNC BOSSdelta 500 0521 0.4", + "0.16mm Fine @SeeMeCNC RostockMAX v3.2 0.4", + "0.16mm Fine @SeeMeCNC RostockMAX v4 0.4", + "0.20mm Fine @SeeMeCNC Artemis 0.5", + "0.20mm Fine @SeeMeCNC BOSSdelta 300 0.5", + "0.20mm Fine @SeeMeCNC BOSSdelta 500 0505 0.5", + "0.20mm Fine @SeeMeCNC BOSSdelta 500 0510 0.5", + "0.20mm Fine @SeeMeCNC BOSSdelta 500 0521 0.5", + "0.20mm Fine @SeeMeCNC RostockMAX v3.2 0.5", + "0.20mm Fine @SeeMeCNC RostockMAX v4 0.5", + "0.20mm Standard @SeeMeCNC Artemis 0.4", + "0.20mm Standard @SeeMeCNC BOSSdelta 300 0.4", + "0.20mm Standard @SeeMeCNC BOSSdelta 500 0505 0.4", + "0.20mm Standard @SeeMeCNC BOSSdelta 500 0510 0.4", + "0.20mm Standard @SeeMeCNC BOSSdelta 500 0521 0.4", + "0.20mm Standard @SeeMeCNC RostockMAX v3.2 0.4", + "0.20mm Standard @SeeMeCNC RostockMAX v4 0.4", + "0.24mm Draft @SeeMeCNC Artemis 0.4", + "0.24mm Draft @SeeMeCNC BOSSdelta 300 0.4", + "0.24mm Draft @SeeMeCNC BOSSdelta 500 0505 0.4", + "0.24mm Draft @SeeMeCNC BOSSdelta 500 0510 0.4", + "0.24mm Draft @SeeMeCNC BOSSdelta 500 0521 0.4", + "0.24mm Draft @SeeMeCNC RostockMAX v3.2 0.4", + "0.24mm Draft @SeeMeCNC RostockMAX v4 0.4", + "0.25mm Standard @SeeMeCNC Artemis 0.5", + "0.25mm Standard @SeeMeCNC BOSSdelta 300 0.5", + "0.25mm Standard @SeeMeCNC BOSSdelta 500 0505 0.5", + "0.25mm Standard @SeeMeCNC BOSSdelta 500 0510 0.5", + "0.25mm Standard @SeeMeCNC BOSSdelta 500 0521 0.5", + "0.25mm Standard @SeeMeCNC RostockMAX v3.2 0.5", + "0.25mm Standard @SeeMeCNC RostockMAX v4 0.5", + "0.28mm Extra Draft @SeeMeCNC Artemis 0.4", + "0.28mm Extra Draft @SeeMeCNC BOSSdelta 300 0.4", + "0.28mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 0.4", + "0.28mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 0.4", + "0.28mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 0.4", + "0.28mm Extra Draft @SeeMeCNC RostockMAX v3.2 0.4", + "0.28mm Extra Draft @SeeMeCNC RostockMAX v4 0.4", + "0.28mm Fine @SeeMeCNC Artemis 0.7", + "0.28mm Fine @SeeMeCNC BOSSdelta 300 0.7", + "0.28mm Fine @SeeMeCNC BOSSdelta 500 0505 0.7", + "0.28mm Fine @SeeMeCNC BOSSdelta 500 0510 0.7", + "0.28mm Fine @SeeMeCNC BOSSdelta 500 0521 0.7", + "0.28mm Fine @SeeMeCNC RostockMAX v3.2 0.7", + "0.28mm Fine @SeeMeCNC RostockMAX v4 0.7", + "0.30mm Draft @SeeMeCNC Artemis 0.5", + "0.30mm Draft @SeeMeCNC BOSSdelta 300 0.5", + "0.30mm Draft @SeeMeCNC BOSSdelta 500 0505 0.5", + "0.30mm Draft @SeeMeCNC BOSSdelta 500 0510 0.5", + "0.30mm Draft @SeeMeCNC BOSSdelta 500 0521 0.5", + "0.30mm Draft @SeeMeCNC RostockMAX v3.2 0.5", + "0.30mm Draft @SeeMeCNC RostockMAX v4 0.5", + "0.35mm Extra Draft @SeeMeCNC Artemis 0.5", + "0.35mm Extra Draft @SeeMeCNC BOSSdelta 300 0.5", + "0.35mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 0.5", + "0.35mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 0.5", + "0.35mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 0.5", + "0.35mm Extra Draft @SeeMeCNC RostockMAX v3.2 0.5", + "0.35mm Extra Draft @SeeMeCNC RostockMAX v4 0.5", + "0.35mm Standard @SeeMeCNC Artemis 0.7", + "0.35mm Standard @SeeMeCNC BOSSdelta 300 0.7", + "0.35mm Standard @SeeMeCNC BOSSdelta 500 0505 0.7", + "0.35mm Standard @SeeMeCNC BOSSdelta 500 0510 0.7", + "0.35mm Standard @SeeMeCNC BOSSdelta 500 0521 0.7", + "0.35mm Standard @SeeMeCNC RostockMAX v3.2 0.7", + "0.35mm Standard @SeeMeCNC RostockMAX v4 0.7", + "0.40mm Fine @SeeMeCNC Artemis 1.0", + "0.40mm Fine @SeeMeCNC BOSSdelta 300 1.0", + "0.40mm Fine @SeeMeCNC BOSSdelta 500 0505 1.0", + "0.40mm Fine @SeeMeCNC BOSSdelta 500 0510 1.0", + "0.40mm Fine @SeeMeCNC BOSSdelta 500 0521 1.0", + "0.40mm Fine @SeeMeCNC RostockMAX v3.2 1.0", + "0.40mm Fine @SeeMeCNC RostockMAX v4 1.0", + "0.42mm Draft @SeeMeCNC Artemis 0.7", + "0.42mm Draft @SeeMeCNC BOSSdelta 300 0.7", + "0.42mm Draft @SeeMeCNC BOSSdelta 500 0505 0.7", + "0.42mm Draft @SeeMeCNC BOSSdelta 500 0510 0.7", + "0.42mm Draft @SeeMeCNC BOSSdelta 500 0521 0.7", + "0.42mm Draft @SeeMeCNC RostockMAX v3.2 0.7", + "0.42mm Draft @SeeMeCNC RostockMAX v4 0.7", + "0.49mm Extra Draft @SeeMeCNC Artemis 0.7", + "0.49mm Extra Draft @SeeMeCNC BOSSdelta 300 0.7", + "0.49mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 0.7", + "0.49mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 0.7", + "0.49mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 0.7", + "0.49mm Extra Draft @SeeMeCNC RostockMAX v3.2 0.7", + "0.49mm Extra Draft @SeeMeCNC RostockMAX v4 0.7", + "0.50mm Standard @SeeMeCNC Artemis 1.0", + "0.50mm Standard @SeeMeCNC BOSSdelta 300 1.0", + "0.50mm Standard @SeeMeCNC BOSSdelta 500 0505 1.0", + "0.50mm Standard @SeeMeCNC BOSSdelta 500 0510 1.0", + "0.50mm Standard @SeeMeCNC BOSSdelta 500 0521 1.0", + "0.50mm Standard @SeeMeCNC RostockMAX v3.2 1.0", + "0.50mm Standard @SeeMeCNC RostockMAX v4 1.0", + "0.60mm Draft @SeeMeCNC Artemis 1.0", + "0.60mm Draft @SeeMeCNC BOSSdelta 300 1.0", + "0.60mm Draft @SeeMeCNC BOSSdelta 500 0505 1.0", + "0.60mm Draft @SeeMeCNC BOSSdelta 500 0510 1.0", + "0.60mm Draft @SeeMeCNC BOSSdelta 500 0521 1.0", + "0.60mm Draft @SeeMeCNC RostockMAX v3.2 1.0", + "0.60mm Draft @SeeMeCNC RostockMAX v4 1.0", + "0.70mm Extra Draft @SeeMeCNC Artemis 1.0", + "0.70mm Extra Draft @SeeMeCNC BOSSdelta 300 1.0", + "0.70mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 1.0", + "0.70mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 1.0", + "0.70mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 1.0", + "0.70mm Extra Draft @SeeMeCNC RostockMAX v3.2 1.0", + "0.70mm Extra Draft @SeeMeCNC RostockMAX v4 1.0" + ], + "compatible_prints_condition": "", + "close_fan_the_first_x_layers": [ + "3" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "enable_overhang_bridge_fan": [ + "1" + ], + "eng_plate_temp": [ + "55" + ], + "eng_plate_temp_initial_layer": [ + "55" + ], + "fan_cooling_layer_time": [ + "45" + ], + "fan_max_speed": [ + "100" + ], + "fan_min_speed": [ + "100" + ], + "filament_cost": [ + "30" + ], + "filament_density": [ + "1.24" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "filament_notes": [ + "Pressure Advance starting values by machine and nozzle size:\nArtemis / BOSSdelta 300:\n 0.4mm nozzle: 0.4000\n 0.5mm nozzle: 0.3200\n 0.7mm nozzle: 0.2286\n 1.0mm nozzle: 0.1600\n\nRostockMAX v3.2 / v4:\n 0.4mm nozzle: 0.4789\n 0.5mm nozzle: 0.3831\n 0.7mm nozzle: 0.2736\n 1.0mm nozzle: 0.1915\n\nBOSSdelta 0505:\n 0.4mm nozzle: 0.5352\n 0.5mm nozzle: 0.4282\n 0.7mm nozzle: 0.3058\n 1.0mm nozzle: 0.2141\n\nBOSSdelta 0510:\n 0.4mm nozzle: 0.7887\n 0.5mm nozzle: 0.6310\n 0.7mm nozzle: 0.4507\n 1.0mm nozzle: 0.3155\n\nBOSSdelta 0521:\n 0.4mm nozzle: 1.3239\n 0.5mm nozzle: 1.0592\n 0.7mm nozzle: 0.7565\n 1.0mm nozzle: 0.5296\n\nRun OrcaSlicer PA calibration to fine-tune for your setup." + ], + "filament_type": [ + "PLA" + ], + "full_fan_speed_layer": [ + "3" + ], + "hot_plate_temp": [ + "55" + ], + "hot_plate_temp_initial_layer": [ + "55" + ], + "internal_bridge_fan_speed": [ + "100" + ], + "nozzle_temperature": [ + "190" + ], + "nozzle_temperature_initial_layer": [ + "190" + ], + "nozzle_temperature_range_high": [ + "225" + ], + "nozzle_temperature_range_low": [ + "190" + ], + "overhang_fan_threshold": [ + "50%" + ], + "pressure_advance": [ + "0.4" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "slow_down_for_layer_cooling": [ + "1" + ], + "slow_down_layer_time": [ + "30" + ], + "slow_down_min_speed": [ + "20" + ], + "supertack_plate_temp": [ + "35" + ], + "supertack_plate_temp_initial_layer": [ + "35" + ], + "temperature_vitrification": [ + "60" + ], + "textured_cool_plate_temp": [ + "55" + ], + "textured_cool_plate_temp_initial_layer": [ + "55" + ], + "textured_plate_temp": [ + "55" + ], + "textured_plate_temp_initial_layer": [ + "55" + ], + "keep_fan_always_on": [ + "1" + ], + "shrink_ratio": [ + "1", + "1" + ], + "dont_slow_down_outer_wall": [ + "0" + ], + "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": [ + "0" + ], + "chamber_temperature": [ + "0" + ], + "complete_print_exhaust_fan_speed": [ + "80" + ], + "default_filament_colour": [ + "" + ], + "during_print_exhaust_fan_speed": [ + "60" + ], + "enable_pressure_advance": [ + "1" + ], + "filament_adaptive_volumetric_speed": [ + "0" + ], + "filament_adhesiveness_category": [ + "0" + ], + "filament_change_length": [ + "10" + ], + "filament_cooling_final_speed": [ + "0" + ], + "filament_cooling_initial_speed": [ + "0" + ], + "filament_cooling_moves": [ + "0" + ], + "filament_diameter": [ + "1.75" + ], + "filament_end_gcode": [ + " " + ], + "filament_extruder_variant": [ + "Bowden Standard" + ], + "filament_flush_temp": [ + "0" + ], + "filament_flush_volumetric_speed": [ + "0" + ], + "filament_ironing_flow": [ + "nil" + ], + "filament_ironing_inset": [ + "nil" + ], + "filament_ironing_spacing": [ + "nil" + ], + "filament_ironing_speed": [ + "nil" + ], + "filament_is_support": [ + "0" + ], + "filament_loading_speed": [ + "20" + ], + "filament_loading_speed_start": [ + "3" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ], + "filament_multitool_ramming": [ + "0" + ], + "filament_multitool_ramming_flow": [ + "10" + ], + "filament_multitool_ramming_volume": [ + "10" + ], + "filament_printable": [ + "3" + ], + "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_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_toolchange_time": "4", + "filament_tower_interface_pre_extrusion_dist": [ + "10" + ], + "filament_tower_interface_pre_extrusion_length": [ + "0" + ], + "filament_tower_interface_print_temp": [ + "-1" + ], + "filament_tower_interface_purge_volume": [ + "20" + ], + "filament_tower_ironing_area": [ + "4" + ], + "filament_unloading_speed": [ + "60" + ], + "filament_unloading_speed_start": [ + "80" + ], + "filament_vendor": [ + "SeeMeCNC" + ], + "idle_temperature": [ + "0" + ], + "ironing_fan_speed": [ + "-1" + ], + "overhang_fan_speed": [ + "100" + ], + "pellet_flow_coefficient": [ + "0.4157" + ], + "required_nozzle_HRC": [ + "0" + ], + "support_material_interface_fan_speed": [ + "-1" + ], + "volumetric_speed_coefficients": [ + "" + ], + "description": "SeeMeCNC configurations" +} diff --git a/resources/profiles/SeeMeCNC/filament/SeeMeCNC_TPU.json b/resources/profiles/SeeMeCNC/filament/SeeMeCNC_TPU.json new file mode 100644 index 00000000000..34327f0b910 --- /dev/null +++ b/resources/profiles/SeeMeCNC/filament/SeeMeCNC_TPU.json @@ -0,0 +1,185 @@ +{ + "type": "filament", + "name": "SeeMeCNC TPU", + "inherits": "SeeMeCNC filament base", + "from": "System", + "filament_id": "SMCFU001", + "instantiation": "true", + "filament_settings_id": [ + "SeeMeCNC TPU" + ], + "compatible_printers": [ + "SeeMeCNC Artemis 0.7 nozzle", + "SeeMeCNC BOSSdelta 500 0505 0.7 nozzle", + "SeeMeCNC BOSSdelta 500 0510 0.7 nozzle", + "SeeMeCNC BOSSdelta 500 0521 0.7 nozzle", + "SeeMeCNC BOSSdelta 300 0.7 nozzle", + "SeeMeCNC RostockMAX v3.2 0.7 nozzle", + "SeeMeCNC RostockMAX v4 0.7 nozzle" + ], + "compatible_printers_condition": "", + "compatible_prints": [ + "0.30mm TPU Solid @SeeMeCNC Artemis 0.7", + "0.30mm TPU Solid @SeeMeCNC BOSSdelta 300 0.7", + "0.30mm TPU Solid @SeeMeCNC BOSSdelta 500 0505 0.7", + "0.30mm TPU Solid @SeeMeCNC BOSSdelta 500 0510 0.7", + "0.30mm TPU Solid @SeeMeCNC BOSSdelta 500 0521 0.7", + "0.30mm TPU Solid @SeeMeCNC RostockMAX v3.2 0.7", + "0.30mm TPU Solid @SeeMeCNC RostockMAX v4 0.7", + "0.35mm TPU Vase @SeeMeCNC Artemis 0.7", + "0.35mm TPU Vase @SeeMeCNC BOSSdelta 300 0.7", + "0.35mm TPU Vase @SeeMeCNC BOSSdelta 500 0505 0.7", + "0.35mm TPU Vase @SeeMeCNC BOSSdelta 500 0510 0.7", + "0.35mm TPU Vase @SeeMeCNC BOSSdelta 500 0521 0.7", + "0.35mm TPU Vase @SeeMeCNC RostockMAX v3.2 0.7", + "0.35mm TPU Vase @SeeMeCNC RostockMAX v4 0.7" + ], + "compatible_prints_condition": "", + "close_fan_the_first_x_layers": [ + "999" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "enable_overhang_bridge_fan": [ + "0" + ], + "eng_plate_temp": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "fan_cooling_layer_time": [ + "35" + ], + "fan_max_speed": [ + "60" + ], + "fan_min_speed": [ + "35" + ], + "filament_cost": [ + "35" + ], + "filament_density": [ + "1.22" + ], + "filament_max_volumetric_speed": [ + "4" + ], + "filament_notes": [ + "Pressure Advance starting values by machine and nozzle size:\nArtemis / BOSSdelta 300:\n 0.7mm nozzle: 0.4571\n\nRostockMAX v3.2 / v4:\n 0.7mm nozzle: 0.5473\n\nBOSSdelta 0505:\n 0.7mm nozzle: 0.6117\n - Expect significant tuning required\n\nBOSSdelta 0510:\n Not recommended for TPU.\n\nBOSSdelta 0521:\n Not recommended for TPU.\n\nRun OrcaSlicer PA calibration to fine-tune for your setup.\n\nNote: TPU profiles are designed for 0.7mm nozzles only." + ], + "filament_type": [ + "TPU" + ], + "full_fan_speed_layer": [ + "999" + ], + "hot_plate_temp": [ + "60" + ], + "hot_plate_temp_initial_layer": [ + "60" + ], + "internal_bridge_fan_speed": [ + "-1" + ], + "nozzle_temperature": [ + "200" + ], + "nozzle_temperature_initial_layer": [ + "200" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "nozzle_temperature_range_low": [ + "190" + ], + "overhang_fan_threshold": [ + "50%" + ], + "pressure_advance": [ + "0.8" + ], + "reduce_fan_stop_start_freq": [ + "0" + ], + "slow_down_for_layer_cooling": [ + "0" + ], + "slow_down_layer_time": [ + "25" + ], + "slow_down_min_speed": [ + "20" + ], + "supertack_plate_temp": [ + "35" + ], + "supertack_plate_temp_initial_layer": [ + "35" + ], + "temperature_vitrification": [ + "60" + ], + "textured_cool_plate_temp": [ + "60" + ], + "textured_cool_plate_temp_initial_layer": [ + "60" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "filament_retraction_length": [ + "20" + ], + "filament_retraction_speed": [ + "120" + ], + "filament_deretraction_speed": [ + "120" + ], + "filament_retraction_minimum_travel": [ + "15" + ], + "filament_retract_restart_extra": [ + "0.5" + ], + "filament_retract_before_wipe": [ + "0%" + ], + "filament_retract_when_changing_layer": [ + "0" + ], + "filament_z_hop": [ + "0" + ], + "filament_z_hop_types": [ + "Normal Lift" + ], + "filament_retract_lift_above": [ + "0" + ], + "filament_retract_lift_below": [ + "0" + ], + "filament_retract_lift_enforce": [ + "All Surfaces" + ], + "overhang_fan_speed": [ + "30" + ], + "keep_fan_always_on": [ + "0" + ] +} diff --git a/resources/profiles/SeeMeCNC/filament/SeeMeCNC_filament_base.json b/resources/profiles/SeeMeCNC/filament/SeeMeCNC_filament_base.json new file mode 100644 index 00000000000..bf5de9ce70c --- /dev/null +++ b/resources/profiles/SeeMeCNC/filament/SeeMeCNC_filament_base.json @@ -0,0 +1,185 @@ +{ + "type": "filament", + "name": "SeeMeCNC filament base", + "from": "system", + "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": [ + "0" + ], + "chamber_temperature": [ + "0" + ], + "complete_print_exhaust_fan_speed": [ + "80" + ], + "default_filament_colour": [ + "" + ], + "during_print_exhaust_fan_speed": [ + "60" + ], + "enable_pressure_advance": [ + "1" + ], + "filament_adaptive_volumetric_speed": [ + "0" + ], + "filament_adhesiveness_category": [ + "0" + ], + "filament_change_length": [ + "10" + ], + "filament_cooling_final_speed": [ + "0" + ], + "filament_cooling_initial_speed": [ + "0" + ], + "filament_cooling_moves": [ + "0" + ], + "filament_diameter": [ + "1.75" + ], + "filament_end_gcode": [ + " " + ], + "filament_extruder_variant": [ + "Bowden Standard" + ], + "filament_flow_ratio": [ + "1" + ], + "filament_flush_temp": [ + "0" + ], + "filament_flush_volumetric_speed": [ + "0" + ], + "filament_ironing_flow": [ + "nil" + ], + "filament_ironing_inset": [ + "nil" + ], + "filament_ironing_spacing": [ + "nil" + ], + "filament_ironing_speed": [ + "nil" + ], + "filament_is_support": [ + "0" + ], + "filament_loading_speed": [ + "20" + ], + "filament_loading_speed_start": [ + "3" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ], + "filament_multitool_ramming": [ + "0" + ], + "filament_multitool_ramming_flow": [ + "10" + ], + "filament_multitool_ramming_volume": [ + "10" + ], + "filament_printable": [ + "3" + ], + "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_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_toolchange_time": "4", + "filament_tower_interface_pre_extrusion_dist": [ + "10" + ], + "filament_tower_interface_pre_extrusion_length": [ + "0" + ], + "filament_tower_interface_print_temp": [ + "-1" + ], + "filament_tower_interface_purge_volume": [ + "20" + ], + "filament_tower_ironing_area": [ + "4" + ], + "filament_unloading_speed": [ + "60" + ], + "filament_unloading_speed_start": [ + "80" + ], + "filament_vendor": [ + "SeeMeCNC" + ], + "idle_temperature": [ + "0" + ], + "ironing_fan_speed": [ + "-1" + ], + "overhang_fan_speed": [ + "100" + ], + "pellet_flow_coefficient": [ + "0.4157" + ], + "required_nozzle_HRC": [ + "0" + ], + "support_material_interface_fan_speed": [ + "-1" + ], + "volumetric_speed_coefficients": [ + "" + ], + "description": "SeeMeCNC configurations" +} diff --git a/resources/profiles/SeeMeCNC/machine/SeeMeCNC Artemis 300.json b/resources/profiles/SeeMeCNC/machine/SeeMeCNC Artemis 300.json new file mode 100644 index 00000000000..cd0ba84775a --- /dev/null +++ b/resources/profiles/SeeMeCNC/machine/SeeMeCNC Artemis 300.json @@ -0,0 +1,15 @@ +{ + "type": "machine_model", + "name": "SeeMeCNC Artemis 300", + "bed_model": "SeeMeCNC_Buildplate_Model.STL", + "bed_texture": "SeeMeCNC_Buildplate_texture.png", + "default_materials": "SeeMeCNC PLA", + "nozzle_diameter": "0.4;0.5;0.7;1.0", + "machine_tech": "FFF", + "family": "SeeMeCNC Artemis 300", + "thumbnail": "SeeMeCNC Artemis 300_cover.png", + "machine_load_filament_time": "4", + "machine_unload_filament_time": "4", + "model_id": "SEEMECNC_ARTEMIS_300", + "description": "SeeMeCNC configurations" +} diff --git a/resources/profiles/SeeMeCNC/machine/SeeMeCNC BOSSdelta 300.json b/resources/profiles/SeeMeCNC/machine/SeeMeCNC BOSSdelta 300.json new file mode 100644 index 00000000000..1586b6f4454 --- /dev/null +++ b/resources/profiles/SeeMeCNC/machine/SeeMeCNC BOSSdelta 300.json @@ -0,0 +1,15 @@ +{ + "type": "machine_model", + "name": "SeeMeCNC BOSSdelta 300", + "bed_model": "SeeMeCNC_Buildplate_Model.STL", + "bed_texture": "SeeMeCNC_Buildplate_texture.png", + "default_materials": "SeeMeCNC PLA", + "nozzle_diameter": "0.4;0.5;0.7;1.0", + "machine_tech": "FFF", + "family": "SeeMeCNC BOSSdelta 300", + "thumbnail": "SeeMeCNC BOSSdelta 300_cover.png", + "machine_load_filament_time": "4", + "machine_unload_filament_time": "4", + "model_id": "SEEMECNC_BOSSDELTA_300", + "description": "SeeMeCNC configurations" +} diff --git a/resources/profiles/SeeMeCNC/machine/SeeMeCNC BOSSdelta 500 0505.json b/resources/profiles/SeeMeCNC/machine/SeeMeCNC BOSSdelta 500 0505.json new file mode 100644 index 00000000000..9a081057723 --- /dev/null +++ b/resources/profiles/SeeMeCNC/machine/SeeMeCNC BOSSdelta 500 0505.json @@ -0,0 +1,15 @@ +{ + "type": "machine_model", + "name": "SeeMeCNC BOSSdelta 500 0505", + "bed_model": "SeeMeCNC_Buildplate_Model_500.STL", + "bed_texture": "SeeMeCNC_Buildplate_texture.png", + "default_materials": "SeeMeCNC PLA", + "nozzle_diameter": "0.4;0.5;0.7;1.0", + "machine_tech": "FFF", + "family": "SeeMeCNC BOSSdelta 500 0505", + "thumbnail": "SeeMeCNC BOSSdelta 500 0505_cover.png", + "machine_load_filament_time": "4", + "machine_unload_filament_time": "4", + "model_id": "SEEMECNC_BOSSDELTA_500_0505", + "description": "SeeMeCNC configurations" +} diff --git a/resources/profiles/SeeMeCNC/machine/SeeMeCNC BOSSdelta 500 0510.json b/resources/profiles/SeeMeCNC/machine/SeeMeCNC BOSSdelta 500 0510.json new file mode 100644 index 00000000000..5ae339af385 --- /dev/null +++ b/resources/profiles/SeeMeCNC/machine/SeeMeCNC BOSSdelta 500 0510.json @@ -0,0 +1,15 @@ +{ + "type": "machine_model", + "name": "SeeMeCNC BOSSdelta 500 0510", + "bed_model": "SeeMeCNC_Buildplate_Model_500.STL", + "bed_texture": "SeeMeCNC_Buildplate_texture.png", + "default_materials": "SeeMeCNC PLA", + "nozzle_diameter": "0.4;0.5;0.7;1.0", + "machine_tech": "FFF", + "family": "SeeMeCNC BOSSdelta 500 0510", + "thumbnail": "SeeMeCNC BOSSdelta 500 0510_cover.png", + "machine_load_filament_time": "4", + "machine_unload_filament_time": "4", + "model_id": "SEEMECNC_BOSSDELTA_500_0510", + "description": "SeeMeCNC configurations" +} diff --git a/resources/profiles/SeeMeCNC/machine/SeeMeCNC BOSSdelta 500 0521.json b/resources/profiles/SeeMeCNC/machine/SeeMeCNC BOSSdelta 500 0521.json new file mode 100644 index 00000000000..1243cc47bbb --- /dev/null +++ b/resources/profiles/SeeMeCNC/machine/SeeMeCNC BOSSdelta 500 0521.json @@ -0,0 +1,15 @@ +{ + "type": "machine_model", + "name": "SeeMeCNC BOSSdelta 500 0521", + "bed_model": "SeeMeCNC_Buildplate_Model_500.STL", + "bed_texture": "SeeMeCNC_Buildplate_texture.png", + "default_materials": "SeeMeCNC PLA", + "nozzle_diameter": "0.4;0.5;0.7;1.0", + "machine_tech": "FFF", + "family": "SeeMeCNC BOSSdelta 500 0521", + "thumbnail": "SeeMeCNC BOSSdelta 500 0521_cover.png", + "machine_load_filament_time": "4", + "machine_unload_filament_time": "4", + "model_id": "SEEMECNC_BOSSDELTA_500_0521", + "description": "SeeMeCNC configurations" +} diff --git a/resources/profiles/SeeMeCNC/machine/SeeMeCNC RostockMAX v3.2.json b/resources/profiles/SeeMeCNC/machine/SeeMeCNC RostockMAX v3.2.json new file mode 100644 index 00000000000..be7fde668d6 --- /dev/null +++ b/resources/profiles/SeeMeCNC/machine/SeeMeCNC RostockMAX v3.2.json @@ -0,0 +1,15 @@ +{ + "type": "machine_model", + "name": "SeeMeCNC RostockMAX v3.2", + "bed_model": "SeeMeCNC_Buildplate_Model.STL", + "bed_texture": "SeeMeCNC_Buildplate_texture.png", + "default_materials": "SeeMeCNC PLA", + "nozzle_diameter": "0.4;0.5;0.7;1.0", + "machine_tech": "FFF", + "family": "SeeMeCNC RostockMAX v3.2", + "thumbnail": "SeeMeCNC RostockMAX v3.2_cover.png", + "machine_load_filament_time": "4", + "machine_unload_filament_time": "4", + "model_id": "SEEMECNC_ROSTOCKMAX_V32", + "description": "SeeMeCNC configurations" +} diff --git a/resources/profiles/SeeMeCNC/machine/SeeMeCNC RostockMAX v4.json b/resources/profiles/SeeMeCNC/machine/SeeMeCNC RostockMAX v4.json new file mode 100644 index 00000000000..f5bd01a6c49 --- /dev/null +++ b/resources/profiles/SeeMeCNC/machine/SeeMeCNC RostockMAX v4.json @@ -0,0 +1,15 @@ +{ + "type": "machine_model", + "name": "SeeMeCNC RostockMAX v4", + "bed_model": "SeeMeCNC_Buildplate_Model.STL", + "bed_texture": "SeeMeCNC_Buildplate_texture.png", + "default_materials": "SeeMeCNC PLA", + "nozzle_diameter": "0.4;0.5;0.7;1.0", + "machine_tech": "FFF", + "family": "SeeMeCNC RostockMAX v4", + "thumbnail": "SeeMeCNC RostockMAX v4_cover.png", + "machine_load_filament_time": "4", + "machine_unload_filament_time": "4", + "model_id": "SEEMECNC_ROSTOCKMAX_V4", + "description": "SeeMeCNC configurations" +} diff --git a/resources/profiles/SeeMeCNC/machine/SeeMeCNC_Artemis_0_4mm.json b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_Artemis_0_4mm.json new file mode 100644 index 00000000000..d09e9f376e5 --- /dev/null +++ b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_Artemis_0_4mm.json @@ -0,0 +1,351 @@ +{ + "type": "machine", + "name": "SeeMeCNC Artemis 0.4 nozzle", + "from": "System", + "instantiation": "true", + "adaptive_bed_mesh_margin": "0", + "auxiliary_fan": "0", + "bed_custom_model": "SeeMeCNC_Buildplate_Model.STL", + "bed_custom_texture": "SeeMeCNC_Buildplate_texture.png", + "bed_exclude_area": [ + "0x0" + ], + "bed_mesh_max": "99999,99999", + "bed_mesh_min": "-99999,-99999", + "bed_mesh_probe_distance": "50,50", + "bed_temperature_formula": "by_first_filament", + "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\n{if layer_num == 1}M104 S[nozzle_temperature] ; Step down from first layer temp to print temp{endif}\nG92 E0\n", + "best_object_pos": "0.5,0.5", + "change_extrusion_role_gcode": "", + "change_filament_gcode": "{if layer_num >= 0}\nG92 E0\nG1 E-5 F3000\nG1 E-155 F5000\nT[next_extruder]\n{if layer_num == 0}\nM109 S[first_layer_temperature]\n{else}\nM109 S[nozzle_temperature]\n{endif}\nG1 E160 F5000\nG92 E0\n{endif}", + "cooling_tube_length": "5", + "cooling_tube_retraction": "160", + "default_filament_profile": [ + "SeeMeCNC PLA" + ], + "default_nozzle_volume_type": [ + "Standard" + ], + "default_print_profile": "0.20mm Standard @SeeMeCNC Artemis 0.4", + "deretraction_speed": [ + "60" + ], + "disable_m73": "0", + "emit_machine_limits_to_gcode": "1", + "enable_filament_ramming": "0", + "enable_long_retraction_when_cut": "0", + "enable_power_loss_recovery": "printer_configuration", + "extra_loading_move": "0", + "extruder_clearance_height_to_lid": "70", + "extruder_clearance_height_to_rod": "70", + "extruder_clearance_radius": "75", + "extruder_colour": [ + "#FCE94F" + ], + "extruder_offset": [ + "0x0" + ], + "extruder_printable_area": [], + "extruder_printable_height": [ + "500" + ], + "extruder_type": [ + "Bowden" + ], + "extruder_variant_list": [ + "Bowden Standard" + ], + "fan_kickstart": "0", + "fan_speedup_overhangs": "1", + "fan_speedup_time": "0", + "file_start_gcode": "", + "gcode_flavor": "reprapfirmware", + "grab_length": [ + "0" + ], + "head_wrap_detect_zone": [], + "high_current_on_filament_swap": "0", + "host_type": "duet", + "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", + "long_retractions_when_cut": [ + "0" + ], + "machine_end_gcode": [ + ";======= SEEMECNC ARTEMIS END G-CODE =======\nM104 S0 ; Turn off hotend\nM140 S0 ; Turn off heated bed\nM107 T0 ; Turn off part cooling fan\nG91 ; Relative positioning\nG1 Z2 E-160 F6000 ; Lift 2mm and retract 160mm\nG92 E0\nG90 ; Absolute positioning\nM203 Z18000 ; Allow fast Z for homing\nG28 ; Home all axes - clears part immediately on a delta\n;======= END G-CODE =======" + ], + "machine_load_filament_time": "4", + "machine_max_acceleration_e": [ + "5000", + "5000" + ], + "machine_max_acceleration_extruding": [ + "5000", + "5000" + ], + "machine_max_acceleration_retracting": [ + "5000", + "5000" + ], + "machine_max_acceleration_travel": [ + "5000", + "5000" + ], + "machine_max_acceleration_x": [ + "5000", + "5000" + ], + "machine_max_acceleration_y": [ + "5000", + "5000" + ], + "machine_max_acceleration_z": [ + "5000", + "5000" + ], + "machine_max_jerk_e": [ + "15", + "15" + ], + "machine_max_jerk_x": [ + "15", + "15" + ], + "machine_max_jerk_y": [ + "15", + "15" + ], + "machine_max_jerk_z": [ + "15", + "15" + ], + "machine_max_junction_deviation": [ + "0.01" + ], + "machine_max_speed_e": [ + "150", + "25" + ], + "machine_max_speed_x": [ + "300", + "300" + ], + "machine_max_speed_y": [ + "300", + "300" + ], + "machine_max_speed_z": [ + "200", + "200" + ], + "machine_min_extruding_rate": [ + "0", + "0" + ], + "machine_min_travel_rate": [ + "0", + "0" + ], + "machine_pause_gcode": "M601", + "machine_start_gcode": [ + ";======= SEEMECNC ARTEMIS START G-CODE =======\nG21 ; Set units to mm\nG90 ; Absolute positioning\nM82 ; Extruder to absolute mode\nG28 ; Home all axes\nG1 Z50 F9000 ; Lift nozzle for safe heating\n; --- SELECT STARTING TOOL ---\nT[initial_tool] ; Activate the first assigned filament in OrcaSlicer\n; --- PREHEAT ---\nM140 S[first_layer_bed_temperature] ; Start bed heating\nM104 S[first_layer_temperature] ; Start nozzle heating\nM190 S[first_layer_bed_temperature] ; Wait for bed to reach temp\nM109 S[first_layer_temperature] ; Wait for nozzle to reach temp\n; --- RE-PRIME BOWDEN TUBE ---\nG92 E0\nG1 E160.5 F3000 ; Retract 160mm\nG92 E0\n; --- PURGE LINE (curved arc near front edge, 290mm bed) ---\nG92 E0\nG1 X-50 Y-129.9 Z0.4 F5000 ; Move to arc start (inside 145mm radius)\nG1 Z0.3 F1000 ; Drop to prime height\nG3 X50 Y-129.9 R139.2 E40 F600 ; Arc purge, 100mm sweep, heavy extrusion\nG1 E38 F4500 ; Retract 2mm before wipe (Bowden)\nG1 X65 Y-119.9 Z0.2 F6000 ; Wipe move at Z0.2\nG92 E0 ; Zero extruder before print\n;======= END START G-CODE =======" + ], + "machine_tool_change_time": "0", + "machine_unload_filament_time": "4", + "manual_filament_change": "0", + "master_extruder_id": "1", + "max_layer_height": [ + "0.32" + ], + "max_resonance_avoidance_speed": "100", + "min_layer_height": [ + "0.08" + ], + "min_resonance_avoidance_speed": "50", + "nozzle_diameter": [ + "0.4" + ], + "nozzle_flush_dataset": [ + "0" + ], + "nozzle_height": "2.5", + "nozzle_hrc": "0", + "nozzle_type": [ + "brass" + ], + "nozzle_volume": [ + "0" + ], + "parking_pos_retraction": "160", + "pellet_modded_printer": "0", + "physical_extruder_map": [ + "0" + ], + "preferred_orientation": "0", + "printable_area": [ + "145.0000x0.0000", + "144.4482x12.6376", + "142.7971x25.1790", + "140.0592x37.5288", + "136.2554x49.5929", + "131.4146x61.2796", + "125.5737x72.5000", + "118.7770x83.1686", + "111.0764x93.2042", + "102.5305x102.5305", + "93.2042x111.0764", + "83.1686x118.7770", + "72.5000x125.5737", + "61.2796x131.4146", + "49.5929x136.2554", + "37.5288x140.0592", + "25.1790x142.7971", + "12.6376x144.4482", + "0.0000x145.0000", + "-12.6376x144.4482", + "-25.1790x142.7971", + "-37.5288x140.0592", + "-49.5929x136.2554", + "-61.2796x131.4146", + "-72.5000x125.5737", + "-83.1686x118.7770", + "-93.2042x111.0764", + "-102.5305x102.5305", + "-111.0764x93.2042", + "-118.7770x83.1686", + "-125.5737x72.5000", + "-131.4146x61.2796", + "-136.2554x49.5929", + "-140.0592x37.5288", + "-142.7971x25.1790", + "-144.4482x12.6376", + "-145.0000x0.0000", + "-144.4482x-12.6376", + "-142.7971x-25.1790", + "-140.0592x-37.5288", + "-136.2554x-49.5929", + "-131.4146x-61.2796", + "-125.5737x-72.5000", + "-118.7770x-83.1686", + "-111.0764x-93.2042", + "-102.5305x-102.5305", + "-93.2042x-111.0764", + "-83.1686x-118.7770", + "-72.5000x-125.5737", + "-61.2796x-131.4146", + "-49.5929x-136.2554", + "-37.5288x-140.0592", + "-25.1790x-142.7971", + "-12.6376x-144.4482", + "-0.0000x-145.0000", + "12.6376x-144.4482", + "25.1790x-142.7971", + "37.5288x-140.0592", + "49.5929x-136.2554", + "61.2796x-131.4146", + "72.5000x-125.5737", + "83.1686x-118.7770", + "93.2042x-111.0764", + "102.5305x-102.5305", + "111.0764x-93.2042", + "118.7770x-83.1686", + "125.5737x-72.5000", + "131.4146x-61.2796", + "136.2554x-49.5929", + "140.0592x-37.5288", + "142.7971x-25.1790", + "144.4482x-12.6376" + ], + "printable_height": "500", + "printer_agent": "", + "printer_extruder_id": [ + "1" + ], + "printer_extruder_variant": [ + "Bowden Standard" + ], + "printer_model": "SeeMeCNC Artemis 300", + "printer_notes": "", + "printer_settings_id": "SeeMeCNC Artemis 0.4 nozzle", + "printer_structure": "delta", + "printer_technology": "FFF", + "printer_variant": "0.4", + "printhost_authorization_type": "key", + "printhost_ssl_ignore_revoke": "0", + "printing_by_object_gcode": "", + "purge_in_prime_tower": "0", + "resonance_avoidance": "0", + "retract_before_wipe": [ + "70%" + ], + "retract_length_toolchange": [ + "3" + ], + "retract_lift_above": [ + "0" + ], + "retract_lift_below": [ + "0" + ], + "retract_lift_enforce": [ + "All Surfaces" + ], + "retract_restart_extra": [ + "0" + ], + "retract_restart_extra_toolchange": [ + "2" + ], + "retract_when_changing_layer": [ + "1" + ], + "retraction_distances_when_cut": [ + "18" + ], + "retraction_length": [ + "6" + ], + "retraction_minimum_travel": [ + "1" + ], + "retraction_speed": [ + "60" + ], + "scan_first_layer": "0", + "silent_mode": "0", + "single_extruder_multi_material": "1", + "support_air_filtration": "1", + "support_chamber_temp_control": "1", + "support_multi_bed_types": "0", + "support_object_skip_flush": "0", + "template_custom_gcode": "", + "thumbnails": "48x48/PNG, 300x300/PNG", + "thumbnails_format": "PNG", + "time_cost": "0", + "time_lapse_gcode": "", + "travel_slope": [ + "3" + ], + "upward_compatible_machine": [], + "use_firmware_retraction": "0", + "use_relative_e_distances": "1", + "wipe": [ + "1" + ], + "wipe_distance": [ + "1" + ], + "wipe_tower_type": "type2", + "wrapping_detection_gcode": "", + "wrapping_detection_layers": "20", + "wrapping_exclude_area": [], + "z_hop": [ + "0.4" + ], + "z_hop_types": [ + "Auto Lift" + ], + "z_offset": "0", + "model": "SeeMeCNC Artemis 300", + "thumbnail": "SeeMeCNC Artemis 300_cover.png", + "description": "SeeMeCNC configurations" +} diff --git a/resources/profiles/SeeMeCNC/machine/SeeMeCNC_Artemis_0_5mm.json b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_Artemis_0_5mm.json new file mode 100644 index 00000000000..bf9e3c1e2ae --- /dev/null +++ b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_Artemis_0_5mm.json @@ -0,0 +1,351 @@ +{ + "type": "machine", + "name": "SeeMeCNC Artemis 0.5 nozzle", + "from": "System", + "instantiation": "true", + "adaptive_bed_mesh_margin": "0", + "auxiliary_fan": "0", + "bed_custom_model": "SeeMeCNC_Buildplate_Model.STL", + "bed_custom_texture": "SeeMeCNC_Buildplate_texture.png", + "bed_exclude_area": [ + "0x0" + ], + "bed_mesh_max": "99999,99999", + "bed_mesh_min": "-99999,-99999", + "bed_mesh_probe_distance": "50,50", + "bed_temperature_formula": "by_first_filament", + "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\n{if layer_num == 1}M104 S[nozzle_temperature] ; Step down from first layer temp to print temp{endif}\nG92 E0\n", + "best_object_pos": "0.5,0.5", + "change_extrusion_role_gcode": "", + "change_filament_gcode": "{if layer_num >= 0}\nG92 E0\nG1 E-5 F3000\nG1 E-155 F5000\nT[next_extruder]\n{if layer_num == 0}\nM109 S[first_layer_temperature]\n{else}\nM109 S[nozzle_temperature]\n{endif}\nG1 E160 F5000\nG92 E0\n{endif}", + "cooling_tube_length": "5", + "cooling_tube_retraction": "160", + "default_filament_profile": [ + "SeeMeCNC PLA" + ], + "default_nozzle_volume_type": [ + "Standard" + ], + "default_print_profile": "0.25mm Standard @SeeMeCNC Artemis 0.5", + "deretraction_speed": [ + "60" + ], + "disable_m73": "0", + "emit_machine_limits_to_gcode": "1", + "enable_filament_ramming": "0", + "enable_long_retraction_when_cut": "0", + "enable_power_loss_recovery": "printer_configuration", + "extra_loading_move": "0", + "extruder_clearance_height_to_lid": "70", + "extruder_clearance_height_to_rod": "70", + "extruder_clearance_radius": "75", + "extruder_colour": [ + "#FCE94F" + ], + "extruder_offset": [ + "0x0" + ], + "extruder_printable_area": [], + "extruder_printable_height": [ + "500" + ], + "extruder_type": [ + "Bowden" + ], + "extruder_variant_list": [ + "Bowden Standard" + ], + "fan_kickstart": "0", + "fan_speedup_overhangs": "1", + "fan_speedup_time": "0", + "file_start_gcode": "", + "gcode_flavor": "reprapfirmware", + "grab_length": [ + "0" + ], + "head_wrap_detect_zone": [], + "high_current_on_filament_swap": "0", + "host_type": "duet", + "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", + "long_retractions_when_cut": [ + "0" + ], + "machine_end_gcode": [ + ";======= SEEMECNC ARTEMIS END G-CODE =======\nM104 S0 ; Turn off hotend\nM140 S0 ; Turn off heated bed\nM107 T0 ; Turn off part cooling fan\nG91 ; Relative positioning\nG1 Z2 E-160 F6000 ; Lift 2mm and retract 160mm\nG92 E0\nG90 ; Absolute positioning\nM203 Z18000 ; Allow fast Z for homing\nG28 ; Home all axes - clears part immediately on a delta\n;======= END G-CODE =======" + ], + "machine_load_filament_time": "4", + "machine_max_acceleration_e": [ + "5000", + "5000" + ], + "machine_max_acceleration_extruding": [ + "5000", + "5000" + ], + "machine_max_acceleration_retracting": [ + "5000", + "5000" + ], + "machine_max_acceleration_travel": [ + "5000", + "5000" + ], + "machine_max_acceleration_x": [ + "5000", + "5000" + ], + "machine_max_acceleration_y": [ + "5000", + "5000" + ], + "machine_max_acceleration_z": [ + "5000", + "5000" + ], + "machine_max_jerk_e": [ + "15", + "15" + ], + "machine_max_jerk_x": [ + "15", + "15" + ], + "machine_max_jerk_y": [ + "15", + "15" + ], + "machine_max_jerk_z": [ + "15", + "15" + ], + "machine_max_junction_deviation": [ + "0.01" + ], + "machine_max_speed_e": [ + "150", + "25" + ], + "machine_max_speed_x": [ + "300", + "300" + ], + "machine_max_speed_y": [ + "300", + "300" + ], + "machine_max_speed_z": [ + "200", + "200" + ], + "machine_min_extruding_rate": [ + "0", + "0" + ], + "machine_min_travel_rate": [ + "0", + "0" + ], + "machine_pause_gcode": "M601", + "machine_start_gcode": [ + ";======= SEEMECNC ARTEMIS START G-CODE =======\nG21 ; Set units to mm\nG90 ; Absolute positioning\nM82 ; Extruder to absolute mode\nG28 ; Home all axes\nG1 Z50 F9000 ; Lift nozzle for safe heating\n; --- SELECT STARTING TOOL ---\nT[initial_tool] ; Activate the first assigned filament in OrcaSlicer\n; --- PREHEAT ---\nM140 S[first_layer_bed_temperature] ; Start bed heating\nM104 S[first_layer_temperature] ; Start nozzle heating\nM190 S[first_layer_bed_temperature] ; Wait for bed to reach temp\nM109 S[first_layer_temperature] ; Wait for nozzle to reach temp\n; --- RE-PRIME BOWDEN TUBE ---\nG92 E0\nG1 E160.5 F3000 ; Retract 160mm\nG92 E0\n; --- PURGE LINE (curved arc near front edge, 290mm bed) ---\nG92 E0\nG1 X-50 Y-129.9 Z0.4 F5000 ; Move to arc start (inside 145mm radius)\nG1 Z0.3 F1000 ; Drop to prime height\nG3 X50 Y-129.9 R139.2 E40 F600 ; Arc purge, 100mm sweep, heavy extrusion\nG1 E38 F4500 ; Retract 2mm before wipe (Bowden)\nG1 X65 Y-119.9 Z0.2 F6000 ; Wipe move at Z0.2\nG92 E0 ; Zero extruder before print\n;======= END START G-CODE =======" + ], + "machine_tool_change_time": "0", + "machine_unload_filament_time": "4", + "manual_filament_change": "0", + "master_extruder_id": "1", + "max_layer_height": [ + "0.40" + ], + "max_resonance_avoidance_speed": "100", + "min_layer_height": [ + "0.10" + ], + "min_resonance_avoidance_speed": "50", + "nozzle_diameter": [ + "0.5" + ], + "nozzle_flush_dataset": [ + "0" + ], + "nozzle_height": "2.5", + "nozzle_hrc": "0", + "nozzle_type": [ + "brass" + ], + "nozzle_volume": [ + "0" + ], + "parking_pos_retraction": "160", + "pellet_modded_printer": "0", + "physical_extruder_map": [ + "0" + ], + "preferred_orientation": "0", + "printable_area": [ + "145.0000x0.0000", + "144.4482x12.6376", + "142.7971x25.1790", + "140.0592x37.5288", + "136.2554x49.5929", + "131.4146x61.2796", + "125.5737x72.5000", + "118.7770x83.1686", + "111.0764x93.2042", + "102.5305x102.5305", + "93.2042x111.0764", + "83.1686x118.7770", + "72.5000x125.5737", + "61.2796x131.4146", + "49.5929x136.2554", + "37.5288x140.0592", + "25.1790x142.7971", + "12.6376x144.4482", + "0.0000x145.0000", + "-12.6376x144.4482", + "-25.1790x142.7971", + "-37.5288x140.0592", + "-49.5929x136.2554", + "-61.2796x131.4146", + "-72.5000x125.5737", + "-83.1686x118.7770", + "-93.2042x111.0764", + "-102.5305x102.5305", + "-111.0764x93.2042", + "-118.7770x83.1686", + "-125.5737x72.5000", + "-131.4146x61.2796", + "-136.2554x49.5929", + "-140.0592x37.5288", + "-142.7971x25.1790", + "-144.4482x12.6376", + "-145.0000x0.0000", + "-144.4482x-12.6376", + "-142.7971x-25.1790", + "-140.0592x-37.5288", + "-136.2554x-49.5929", + "-131.4146x-61.2796", + "-125.5737x-72.5000", + "-118.7770x-83.1686", + "-111.0764x-93.2042", + "-102.5305x-102.5305", + "-93.2042x-111.0764", + "-83.1686x-118.7770", + "-72.5000x-125.5737", + "-61.2796x-131.4146", + "-49.5929x-136.2554", + "-37.5288x-140.0592", + "-25.1790x-142.7971", + "-12.6376x-144.4482", + "-0.0000x-145.0000", + "12.6376x-144.4482", + "25.1790x-142.7971", + "37.5288x-140.0592", + "49.5929x-136.2554", + "61.2796x-131.4146", + "72.5000x-125.5737", + "83.1686x-118.7770", + "93.2042x-111.0764", + "102.5305x-102.5305", + "111.0764x-93.2042", + "118.7770x-83.1686", + "125.5737x-72.5000", + "131.4146x-61.2796", + "136.2554x-49.5929", + "140.0592x-37.5288", + "142.7971x-25.1790", + "144.4482x-12.6376" + ], + "printable_height": "500", + "printer_agent": "", + "printer_extruder_id": [ + "1" + ], + "printer_extruder_variant": [ + "Bowden Standard" + ], + "printer_model": "SeeMeCNC Artemis 300", + "printer_notes": "", + "printer_settings_id": "SeeMeCNC Artemis 0.5 nozzle", + "printer_structure": "delta", + "printer_technology": "FFF", + "printer_variant": "0.5", + "printhost_authorization_type": "key", + "printhost_ssl_ignore_revoke": "0", + "printing_by_object_gcode": "", + "purge_in_prime_tower": "0", + "resonance_avoidance": "0", + "retract_before_wipe": [ + "70%" + ], + "retract_length_toolchange": [ + "3" + ], + "retract_lift_above": [ + "0" + ], + "retract_lift_below": [ + "0" + ], + "retract_lift_enforce": [ + "All Surfaces" + ], + "retract_restart_extra": [ + "0" + ], + "retract_restart_extra_toolchange": [ + "2" + ], + "retract_when_changing_layer": [ + "1" + ], + "retraction_distances_when_cut": [ + "18" + ], + "retraction_length": [ + "6" + ], + "retraction_minimum_travel": [ + "1" + ], + "retraction_speed": [ + "60" + ], + "scan_first_layer": "0", + "silent_mode": "0", + "single_extruder_multi_material": "1", + "support_air_filtration": "1", + "support_chamber_temp_control": "1", + "support_multi_bed_types": "0", + "support_object_skip_flush": "0", + "template_custom_gcode": "", + "thumbnails": "48x48/PNG, 300x300/PNG", + "thumbnails_format": "PNG", + "time_cost": "0", + "time_lapse_gcode": "", + "travel_slope": [ + "3" + ], + "upward_compatible_machine": [], + "use_firmware_retraction": "0", + "use_relative_e_distances": "1", + "wipe": [ + "1" + ], + "wipe_distance": [ + "1" + ], + "wipe_tower_type": "type2", + "wrapping_detection_gcode": "", + "wrapping_detection_layers": "20", + "wrapping_exclude_area": [], + "z_hop": [ + "0.4" + ], + "z_hop_types": [ + "Auto Lift" + ], + "z_offset": "0", + "model": "SeeMeCNC Artemis 300", + "thumbnail": "SeeMeCNC Artemis 300_cover.png", + "description": "SeeMeCNC configurations" +} diff --git a/resources/profiles/SeeMeCNC/machine/SeeMeCNC_Artemis_0_7mm.json b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_Artemis_0_7mm.json new file mode 100644 index 00000000000..1e189118ef3 --- /dev/null +++ b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_Artemis_0_7mm.json @@ -0,0 +1,351 @@ +{ + "type": "machine", + "name": "SeeMeCNC Artemis 0.7 nozzle", + "from": "System", + "instantiation": "true", + "adaptive_bed_mesh_margin": "0", + "auxiliary_fan": "0", + "bed_custom_model": "SeeMeCNC_Buildplate_Model.STL", + "bed_custom_texture": "SeeMeCNC_Buildplate_texture.png", + "bed_exclude_area": [ + "0x0" + ], + "bed_mesh_max": "99999,99999", + "bed_mesh_min": "-99999,-99999", + "bed_mesh_probe_distance": "50,50", + "bed_temperature_formula": "by_first_filament", + "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\n{if layer_num == 1}M104 S[nozzle_temperature] ; Step down from first layer temp to print temp{endif}\nG92 E0\n", + "best_object_pos": "0.5,0.5", + "change_extrusion_role_gcode": "", + "change_filament_gcode": "{if layer_num >= 0}\nG92 E0\nG1 E-5 F3000\nG1 E-155 F5000\nT[next_extruder]\n{if layer_num == 0}\nM109 S[first_layer_temperature]\n{else}\nM109 S[nozzle_temperature]\n{endif}\nG1 E160 F5000\nG92 E0\n{endif}", + "cooling_tube_length": "5", + "cooling_tube_retraction": "160", + "default_filament_profile": [ + "SeeMeCNC PLA" + ], + "default_nozzle_volume_type": [ + "Standard" + ], + "default_print_profile": "0.35mm Standard @SeeMeCNC Artemis 0.7", + "deretraction_speed": [ + "60" + ], + "disable_m73": "0", + "emit_machine_limits_to_gcode": "1", + "enable_filament_ramming": "0", + "enable_long_retraction_when_cut": "0", + "enable_power_loss_recovery": "printer_configuration", + "extra_loading_move": "0", + "extruder_clearance_height_to_lid": "70", + "extruder_clearance_height_to_rod": "70", + "extruder_clearance_radius": "75", + "extruder_colour": [ + "#FCE94F" + ], + "extruder_offset": [ + "0x0" + ], + "extruder_printable_area": [], + "extruder_printable_height": [ + "500" + ], + "extruder_type": [ + "Bowden" + ], + "extruder_variant_list": [ + "Bowden Standard" + ], + "fan_kickstart": "0", + "fan_speedup_overhangs": "1", + "fan_speedup_time": "0", + "file_start_gcode": "", + "gcode_flavor": "reprapfirmware", + "grab_length": [ + "0" + ], + "head_wrap_detect_zone": [], + "high_current_on_filament_swap": "0", + "host_type": "duet", + "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", + "long_retractions_when_cut": [ + "0" + ], + "machine_end_gcode": [ + ";======= SEEMECNC ARTEMIS END G-CODE =======\nM104 S0 ; Turn off hotend\nM140 S0 ; Turn off heated bed\nM107 T0 ; Turn off part cooling fan\nG91 ; Relative positioning\nG1 Z2 E-160 F6000 ; Lift 2mm and retract 160mm\nG92 E0\nG90 ; Absolute positioning\nM203 Z18000 ; Allow fast Z for homing\nG28 ; Home all axes - clears part immediately on a delta\n;======= END G-CODE =======" + ], + "machine_load_filament_time": "4", + "machine_max_acceleration_e": [ + "5000", + "5000" + ], + "machine_max_acceleration_extruding": [ + "5000", + "5000" + ], + "machine_max_acceleration_retracting": [ + "5000", + "5000" + ], + "machine_max_acceleration_travel": [ + "5000", + "5000" + ], + "machine_max_acceleration_x": [ + "5000", + "5000" + ], + "machine_max_acceleration_y": [ + "5000", + "5000" + ], + "machine_max_acceleration_z": [ + "5000", + "5000" + ], + "machine_max_jerk_e": [ + "15", + "15" + ], + "machine_max_jerk_x": [ + "15", + "15" + ], + "machine_max_jerk_y": [ + "15", + "15" + ], + "machine_max_jerk_z": [ + "15", + "15" + ], + "machine_max_junction_deviation": [ + "0.01" + ], + "machine_max_speed_e": [ + "150", + "25" + ], + "machine_max_speed_x": [ + "300", + "300" + ], + "machine_max_speed_y": [ + "300", + "300" + ], + "machine_max_speed_z": [ + "200", + "200" + ], + "machine_min_extruding_rate": [ + "0", + "0" + ], + "machine_min_travel_rate": [ + "0", + "0" + ], + "machine_pause_gcode": "M601", + "machine_start_gcode": [ + ";======= SEEMECNC ARTEMIS START G-CODE =======\nG21 ; Set units to mm\nG90 ; Absolute positioning\nM82 ; Extruder to absolute mode\nG28 ; Home all axes\nG1 Z50 F9000 ; Lift nozzle for safe heating\n; --- SELECT STARTING TOOL ---\nT[initial_tool] ; Activate the first assigned filament in OrcaSlicer\n; --- PREHEAT ---\nM140 S[first_layer_bed_temperature] ; Start bed heating\nM104 S[first_layer_temperature] ; Start nozzle heating\nM190 S[first_layer_bed_temperature] ; Wait for bed to reach temp\nM109 S[first_layer_temperature] ; Wait for nozzle to reach temp\n; --- RE-PRIME BOWDEN TUBE ---\nG92 E0\nG1 E160.5 F3000 ; Retract 160mm\nG92 E0\n; --- PURGE LINE (curved arc near front edge, 290mm bed) ---\nG92 E0\nG1 X-50 Y-129.9 Z0.4 F5000 ; Move to arc start (inside 145mm radius)\nG1 Z0.3 F1000 ; Drop to prime height\nG3 X50 Y-129.9 R139.2 E40 F600 ; Arc purge, 100mm sweep, heavy extrusion\nG1 E38 F4500 ; Retract 2mm before wipe (Bowden)\nG1 X65 Y-119.9 Z0.2 F6000 ; Wipe move at Z0.2\nG92 E0 ; Zero extruder before print\n;======= END START G-CODE =======" + ], + "machine_tool_change_time": "0", + "machine_unload_filament_time": "4", + "manual_filament_change": "0", + "master_extruder_id": "1", + "max_layer_height": [ + "0.56" + ], + "max_resonance_avoidance_speed": "100", + "min_layer_height": [ + "0.15" + ], + "min_resonance_avoidance_speed": "50", + "nozzle_diameter": [ + "0.7" + ], + "nozzle_flush_dataset": [ + "0" + ], + "nozzle_height": "2.5", + "nozzle_hrc": "0", + "nozzle_type": [ + "brass" + ], + "nozzle_volume": [ + "0" + ], + "parking_pos_retraction": "160", + "pellet_modded_printer": "0", + "physical_extruder_map": [ + "0" + ], + "preferred_orientation": "0", + "printable_area": [ + "145.0000x0.0000", + "144.4482x12.6376", + "142.7971x25.1790", + "140.0592x37.5288", + "136.2554x49.5929", + "131.4146x61.2796", + "125.5737x72.5000", + "118.7770x83.1686", + "111.0764x93.2042", + "102.5305x102.5305", + "93.2042x111.0764", + "83.1686x118.7770", + "72.5000x125.5737", + "61.2796x131.4146", + "49.5929x136.2554", + "37.5288x140.0592", + "25.1790x142.7971", + "12.6376x144.4482", + "0.0000x145.0000", + "-12.6376x144.4482", + "-25.1790x142.7971", + "-37.5288x140.0592", + "-49.5929x136.2554", + "-61.2796x131.4146", + "-72.5000x125.5737", + "-83.1686x118.7770", + "-93.2042x111.0764", + "-102.5305x102.5305", + "-111.0764x93.2042", + "-118.7770x83.1686", + "-125.5737x72.5000", + "-131.4146x61.2796", + "-136.2554x49.5929", + "-140.0592x37.5288", + "-142.7971x25.1790", + "-144.4482x12.6376", + "-145.0000x0.0000", + "-144.4482x-12.6376", + "-142.7971x-25.1790", + "-140.0592x-37.5288", + "-136.2554x-49.5929", + "-131.4146x-61.2796", + "-125.5737x-72.5000", + "-118.7770x-83.1686", + "-111.0764x-93.2042", + "-102.5305x-102.5305", + "-93.2042x-111.0764", + "-83.1686x-118.7770", + "-72.5000x-125.5737", + "-61.2796x-131.4146", + "-49.5929x-136.2554", + "-37.5288x-140.0592", + "-25.1790x-142.7971", + "-12.6376x-144.4482", + "-0.0000x-145.0000", + "12.6376x-144.4482", + "25.1790x-142.7971", + "37.5288x-140.0592", + "49.5929x-136.2554", + "61.2796x-131.4146", + "72.5000x-125.5737", + "83.1686x-118.7770", + "93.2042x-111.0764", + "102.5305x-102.5305", + "111.0764x-93.2042", + "118.7770x-83.1686", + "125.5737x-72.5000", + "131.4146x-61.2796", + "136.2554x-49.5929", + "140.0592x-37.5288", + "142.7971x-25.1790", + "144.4482x-12.6376" + ], + "printable_height": "500", + "printer_agent": "", + "printer_extruder_id": [ + "1" + ], + "printer_extruder_variant": [ + "Bowden Standard" + ], + "printer_model": "SeeMeCNC Artemis 300", + "printer_notes": "", + "printer_settings_id": "SeeMeCNC Artemis 0.7 nozzle", + "printer_structure": "delta", + "printer_technology": "FFF", + "printer_variant": "0.7", + "printhost_authorization_type": "key", + "printhost_ssl_ignore_revoke": "0", + "printing_by_object_gcode": "", + "purge_in_prime_tower": "0", + "resonance_avoidance": "0", + "retract_before_wipe": [ + "70%" + ], + "retract_length_toolchange": [ + "3" + ], + "retract_lift_above": [ + "0" + ], + "retract_lift_below": [ + "0" + ], + "retract_lift_enforce": [ + "All Surfaces" + ], + "retract_restart_extra": [ + "0" + ], + "retract_restart_extra_toolchange": [ + "2" + ], + "retract_when_changing_layer": [ + "1" + ], + "retraction_distances_when_cut": [ + "18" + ], + "retraction_length": [ + "6" + ], + "retraction_minimum_travel": [ + "1" + ], + "retraction_speed": [ + "60" + ], + "scan_first_layer": "0", + "silent_mode": "0", + "single_extruder_multi_material": "1", + "support_air_filtration": "1", + "support_chamber_temp_control": "1", + "support_multi_bed_types": "0", + "support_object_skip_flush": "0", + "template_custom_gcode": "", + "thumbnails": "48x48/PNG, 300x300/PNG", + "thumbnails_format": "PNG", + "time_cost": "0", + "time_lapse_gcode": "", + "travel_slope": [ + "3" + ], + "upward_compatible_machine": [], + "use_firmware_retraction": "0", + "use_relative_e_distances": "1", + "wipe": [ + "1" + ], + "wipe_distance": [ + "1" + ], + "wipe_tower_type": "type2", + "wrapping_detection_gcode": "", + "wrapping_detection_layers": "20", + "wrapping_exclude_area": [], + "z_hop": [ + "0.4" + ], + "z_hop_types": [ + "Auto Lift" + ], + "z_offset": "0", + "model": "SeeMeCNC Artemis 300", + "thumbnail": "SeeMeCNC Artemis 300_cover.png", + "description": "SeeMeCNC configurations" +} diff --git a/resources/profiles/SeeMeCNC/machine/SeeMeCNC_Artemis_1_0mm.json b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_Artemis_1_0mm.json new file mode 100644 index 00000000000..9deb062a373 --- /dev/null +++ b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_Artemis_1_0mm.json @@ -0,0 +1,351 @@ +{ + "type": "machine", + "name": "SeeMeCNC Artemis 1.0 nozzle", + "from": "System", + "instantiation": "true", + "adaptive_bed_mesh_margin": "0", + "auxiliary_fan": "0", + "bed_custom_model": "SeeMeCNC_Buildplate_Model.STL", + "bed_custom_texture": "SeeMeCNC_Buildplate_texture.png", + "bed_exclude_area": [ + "0x0" + ], + "bed_mesh_max": "99999,99999", + "bed_mesh_min": "-99999,-99999", + "bed_mesh_probe_distance": "50,50", + "bed_temperature_formula": "by_first_filament", + "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\n{if layer_num == 1}M104 S[nozzle_temperature] ; Step down from first layer temp to print temp{endif}\nG92 E0\n", + "best_object_pos": "0.5,0.5", + "change_extrusion_role_gcode": "", + "change_filament_gcode": "{if layer_num >= 0}\nG92 E0\nG1 E-5 F3000\nG1 E-155 F5000\nT[next_extruder]\n{if layer_num == 0}\nM109 S[first_layer_temperature]\n{else}\nM109 S[nozzle_temperature]\n{endif}\nG1 E160 F5000\nG92 E0\n{endif}", + "cooling_tube_length": "5", + "cooling_tube_retraction": "160", + "default_filament_profile": [ + "SeeMeCNC PLA" + ], + "default_nozzle_volume_type": [ + "Standard" + ], + "default_print_profile": "0.50mm Standard @SeeMeCNC Artemis 1.0", + "deretraction_speed": [ + "60" + ], + "disable_m73": "0", + "emit_machine_limits_to_gcode": "1", + "enable_filament_ramming": "0", + "enable_long_retraction_when_cut": "0", + "enable_power_loss_recovery": "printer_configuration", + "extra_loading_move": "0", + "extruder_clearance_height_to_lid": "70", + "extruder_clearance_height_to_rod": "70", + "extruder_clearance_radius": "75", + "extruder_colour": [ + "#FCE94F" + ], + "extruder_offset": [ + "0x0" + ], + "extruder_printable_area": [], + "extruder_printable_height": [ + "500" + ], + "extruder_type": [ + "Bowden" + ], + "extruder_variant_list": [ + "Bowden Standard" + ], + "fan_kickstart": "0", + "fan_speedup_overhangs": "1", + "fan_speedup_time": "0", + "file_start_gcode": "", + "gcode_flavor": "reprapfirmware", + "grab_length": [ + "0" + ], + "head_wrap_detect_zone": [], + "high_current_on_filament_swap": "0", + "host_type": "duet", + "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", + "long_retractions_when_cut": [ + "0" + ], + "machine_end_gcode": [ + ";======= SEEMECNC ARTEMIS END G-CODE =======\nM104 S0 ; Turn off hotend\nM140 S0 ; Turn off heated bed\nM107 T0 ; Turn off part cooling fan\nG91 ; Relative positioning\nG1 Z2 E-160 F6000 ; Lift 2mm and retract 160mm\nG92 E0\nG90 ; Absolute positioning\nM203 Z18000 ; Allow fast Z for homing\nG28 ; Home all axes - clears part immediately on a delta\n;======= END G-CODE =======" + ], + "machine_load_filament_time": "4", + "machine_max_acceleration_e": [ + "5000", + "5000" + ], + "machine_max_acceleration_extruding": [ + "5000", + "5000" + ], + "machine_max_acceleration_retracting": [ + "5000", + "5000" + ], + "machine_max_acceleration_travel": [ + "5000", + "5000" + ], + "machine_max_acceleration_x": [ + "5000", + "5000" + ], + "machine_max_acceleration_y": [ + "5000", + "5000" + ], + "machine_max_acceleration_z": [ + "5000", + "5000" + ], + "machine_max_jerk_e": [ + "15", + "15" + ], + "machine_max_jerk_x": [ + "15", + "15" + ], + "machine_max_jerk_y": [ + "15", + "15" + ], + "machine_max_jerk_z": [ + "15", + "15" + ], + "machine_max_junction_deviation": [ + "0.01" + ], + "machine_max_speed_e": [ + "150", + "25" + ], + "machine_max_speed_x": [ + "300", + "300" + ], + "machine_max_speed_y": [ + "300", + "300" + ], + "machine_max_speed_z": [ + "200", + "200" + ], + "machine_min_extruding_rate": [ + "0", + "0" + ], + "machine_min_travel_rate": [ + "0", + "0" + ], + "machine_pause_gcode": "M601", + "machine_start_gcode": [ + ";======= SEEMECNC ARTEMIS START G-CODE =======\nG21 ; Set units to mm\nG90 ; Absolute positioning\nM82 ; Extruder to absolute mode\nG28 ; Home all axes\nG1 Z50 F9000 ; Lift nozzle for safe heating\n; --- SELECT STARTING TOOL ---\nT[initial_tool] ; Activate the first assigned filament in OrcaSlicer\n; --- PREHEAT ---\nM140 S[first_layer_bed_temperature] ; Start bed heating\nM104 S[first_layer_temperature] ; Start nozzle heating\nM190 S[first_layer_bed_temperature] ; Wait for bed to reach temp\nM109 S[first_layer_temperature] ; Wait for nozzle to reach temp\n; --- RE-PRIME BOWDEN TUBE ---\nG92 E0\nG1 E160.5 F3000 ; Retract 160mm\nG92 E0\n; --- PURGE LINE (curved arc near front edge, 290mm bed) ---\nG92 E0\nG1 X-50 Y-129.9 Z0.4 F5000 ; Move to arc start (inside 145mm radius)\nG1 Z0.3 F1000 ; Drop to prime height\nG3 X50 Y-129.9 R139.2 E40 F600 ; Arc purge, 100mm sweep, heavy extrusion\nG1 E38 F4500 ; Retract 2mm before wipe (Bowden)\nG1 X65 Y-119.9 Z0.2 F6000 ; Wipe move at Z0.2\nG92 E0 ; Zero extruder before print\n;======= END START G-CODE =======" + ], + "machine_tool_change_time": "0", + "machine_unload_filament_time": "4", + "manual_filament_change": "0", + "master_extruder_id": "1", + "max_layer_height": [ + "0.80" + ], + "max_resonance_avoidance_speed": "100", + "min_layer_height": [ + "0.20" + ], + "min_resonance_avoidance_speed": "50", + "nozzle_diameter": [ + "1.0" + ], + "nozzle_flush_dataset": [ + "0" + ], + "nozzle_height": "2.5", + "nozzle_hrc": "0", + "nozzle_type": [ + "brass" + ], + "nozzle_volume": [ + "0" + ], + "parking_pos_retraction": "160", + "pellet_modded_printer": "0", + "physical_extruder_map": [ + "0" + ], + "preferred_orientation": "0", + "printable_area": [ + "145.0000x0.0000", + "144.4482x12.6376", + "142.7971x25.1790", + "140.0592x37.5288", + "136.2554x49.5929", + "131.4146x61.2796", + "125.5737x72.5000", + "118.7770x83.1686", + "111.0764x93.2042", + "102.5305x102.5305", + "93.2042x111.0764", + "83.1686x118.7770", + "72.5000x125.5737", + "61.2796x131.4146", + "49.5929x136.2554", + "37.5288x140.0592", + "25.1790x142.7971", + "12.6376x144.4482", + "0.0000x145.0000", + "-12.6376x144.4482", + "-25.1790x142.7971", + "-37.5288x140.0592", + "-49.5929x136.2554", + "-61.2796x131.4146", + "-72.5000x125.5737", + "-83.1686x118.7770", + "-93.2042x111.0764", + "-102.5305x102.5305", + "-111.0764x93.2042", + "-118.7770x83.1686", + "-125.5737x72.5000", + "-131.4146x61.2796", + "-136.2554x49.5929", + "-140.0592x37.5288", + "-142.7971x25.1790", + "-144.4482x12.6376", + "-145.0000x0.0000", + "-144.4482x-12.6376", + "-142.7971x-25.1790", + "-140.0592x-37.5288", + "-136.2554x-49.5929", + "-131.4146x-61.2796", + "-125.5737x-72.5000", + "-118.7770x-83.1686", + "-111.0764x-93.2042", + "-102.5305x-102.5305", + "-93.2042x-111.0764", + "-83.1686x-118.7770", + "-72.5000x-125.5737", + "-61.2796x-131.4146", + "-49.5929x-136.2554", + "-37.5288x-140.0592", + "-25.1790x-142.7971", + "-12.6376x-144.4482", + "-0.0000x-145.0000", + "12.6376x-144.4482", + "25.1790x-142.7971", + "37.5288x-140.0592", + "49.5929x-136.2554", + "61.2796x-131.4146", + "72.5000x-125.5737", + "83.1686x-118.7770", + "93.2042x-111.0764", + "102.5305x-102.5305", + "111.0764x-93.2042", + "118.7770x-83.1686", + "125.5737x-72.5000", + "131.4146x-61.2796", + "136.2554x-49.5929", + "140.0592x-37.5288", + "142.7971x-25.1790", + "144.4482x-12.6376" + ], + "printable_height": "500", + "printer_agent": "", + "printer_extruder_id": [ + "1" + ], + "printer_extruder_variant": [ + "Bowden Standard" + ], + "printer_model": "SeeMeCNC Artemis 300", + "printer_notes": "", + "printer_settings_id": "SeeMeCNC Artemis 1.0 nozzle", + "printer_structure": "delta", + "printer_technology": "FFF", + "printer_variant": "1.0", + "printhost_authorization_type": "key", + "printhost_ssl_ignore_revoke": "0", + "printing_by_object_gcode": "", + "purge_in_prime_tower": "0", + "resonance_avoidance": "0", + "retract_before_wipe": [ + "70%" + ], + "retract_length_toolchange": [ + "3" + ], + "retract_lift_above": [ + "0" + ], + "retract_lift_below": [ + "0" + ], + "retract_lift_enforce": [ + "All Surfaces" + ], + "retract_restart_extra": [ + "0" + ], + "retract_restart_extra_toolchange": [ + "2" + ], + "retract_when_changing_layer": [ + "1" + ], + "retraction_distances_when_cut": [ + "18" + ], + "retraction_length": [ + "6" + ], + "retraction_minimum_travel": [ + "1" + ], + "retraction_speed": [ + "60" + ], + "scan_first_layer": "0", + "silent_mode": "0", + "single_extruder_multi_material": "1", + "support_air_filtration": "1", + "support_chamber_temp_control": "1", + "support_multi_bed_types": "0", + "support_object_skip_flush": "0", + "template_custom_gcode": "", + "thumbnails": "48x48/PNG, 300x300/PNG", + "thumbnails_format": "PNG", + "time_cost": "0", + "time_lapse_gcode": "", + "travel_slope": [ + "3" + ], + "upward_compatible_machine": [], + "use_firmware_retraction": "0", + "use_relative_e_distances": "1", + "wipe": [ + "1" + ], + "wipe_distance": [ + "1" + ], + "wipe_tower_type": "type2", + "wrapping_detection_gcode": "", + "wrapping_detection_layers": "20", + "wrapping_exclude_area": [], + "z_hop": [ + "0.4" + ], + "z_hop_types": [ + "Auto Lift" + ], + "z_offset": "0", + "model": "SeeMeCNC Artemis 300", + "thumbnail": "SeeMeCNC Artemis 300_cover.png", + "description": "SeeMeCNC configurations" +} diff --git a/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta500_0505_0_4mm.json b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta500_0505_0_4mm.json new file mode 100644 index 00000000000..3911e1dc29a --- /dev/null +++ b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta500_0505_0_4mm.json @@ -0,0 +1,351 @@ +{ + "type": "machine", + "name": "SeeMeCNC BOSSdelta 500 0505 0.4 nozzle", + "from": "System", + "instantiation": "true", + "adaptive_bed_mesh_margin": "0", + "auxiliary_fan": "0", + "bed_custom_model": "SeeMeCNC_Buildplate_Model_500.STL", + "bed_custom_texture": "SeeMeCNC_Buildplate_texture.png", + "bed_exclude_area": [ + "0x0" + ], + "bed_mesh_max": "99999,99999", + "bed_mesh_min": "-99999,-99999", + "bed_mesh_probe_distance": "50,50", + "bed_temperature_formula": "by_first_filament", + "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\n{if layer_num == 1}M104 S[nozzle_temperature] ; Step down from first layer temp to print temp{endif}\nG92 E0\n", + "best_object_pos": "0.5,0.5", + "change_extrusion_role_gcode": "", + "change_filament_gcode": "{if layer_num >= 0}\nG92 E0\nG1 E-5 F3000\nG1 E-155 F5000\nT[next_extruder]\n{if layer_num == 0}\nM109 S[first_layer_temperature]\n{else}\nM109 S[nozzle_temperature]\n{endif}\nG1 E160 F5000\nG92 E0\n{endif}", + "cooling_tube_length": "5", + "cooling_tube_retraction": "260", + "default_filament_profile": [ + "SeeMeCNC PLA" + ], + "default_nozzle_volume_type": [ + "Standard" + ], + "default_print_profile": "0.20mm Standard @SeeMeCNC BOSSdelta 500 0505 0.4", + "deretraction_speed": [ + "60" + ], + "disable_m73": "0", + "emit_machine_limits_to_gcode": "1", + "enable_filament_ramming": "0", + "enable_long_retraction_when_cut": "0", + "enable_power_loss_recovery": "printer_configuration", + "extra_loading_move": "0", + "extruder_clearance_height_to_lid": "70", + "extruder_clearance_height_to_rod": "70", + "extruder_clearance_radius": "75", + "extruder_colour": [ + "#FCE94F" + ], + "extruder_offset": [ + "0x0" + ], + "extruder_printable_area": [], + "extruder_printable_height": [ + "580" + ], + "extruder_type": [ + "Bowden" + ], + "extruder_variant_list": [ + "Bowden Standard" + ], + "fan_kickstart": "0", + "fan_speedup_overhangs": "1", + "fan_speedup_time": "0", + "file_start_gcode": "", + "gcode_flavor": "reprapfirmware", + "grab_length": [ + "0" + ], + "head_wrap_detect_zone": [], + "high_current_on_filament_swap": "0", + "host_type": "duet", + "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", + "long_retractions_when_cut": [ + "0" + ], + "machine_end_gcode": [ + ";======= SEEMECNC BOSSDELTA 500 0505 END G-CODE =======\nM104 S0 ; Turn off hotend\nM140 S0 ; Turn off heated bed\nM107 T0 ; Turn off part cooling fan\nG91 ; Relative positioning\nG1 Z2 E-160 F6000 ; Lift 2mm and retract 160mm\nG92 E0\nG90 ; Absolute positioning\nM203 Z18000 ; Allow fast Z for homing\nG28 ; Home all axes - clears part immediately on a delta\n;======= END G-CODE =======" + ], + "machine_load_filament_time": "4", + "machine_max_acceleration_e": [ + "5000", + "5000" + ], + "machine_max_acceleration_extruding": [ + "5000", + "5000" + ], + "machine_max_acceleration_retracting": [ + "5000", + "5000" + ], + "machine_max_acceleration_travel": [ + "5000", + "5000" + ], + "machine_max_acceleration_x": [ + "5000", + "5000" + ], + "machine_max_acceleration_y": [ + "5000", + "5000" + ], + "machine_max_acceleration_z": [ + "5000", + "5000" + ], + "machine_max_jerk_e": [ + "15", + "15" + ], + "machine_max_jerk_x": [ + "15", + "15" + ], + "machine_max_jerk_y": [ + "15", + "15" + ], + "machine_max_jerk_z": [ + "15", + "15" + ], + "machine_max_junction_deviation": [ + "0.01" + ], + "machine_max_speed_e": [ + "150", + "25" + ], + "machine_max_speed_x": [ + "300", + "300" + ], + "machine_max_speed_y": [ + "300", + "300" + ], + "machine_max_speed_z": [ + "150", + "150" + ], + "machine_min_extruding_rate": [ + "0", + "0" + ], + "machine_min_travel_rate": [ + "0", + "0" + ], + "machine_pause_gcode": "M601", + "machine_start_gcode": [ + ";======= SEEMECNC BOSSDELTA 500 0505 START G-CODE =======\nG21 ; Set units to mm\nG90 ; Absolute positioning\nM82 ; Extruder to absolute mode\nG28 ; Home all axes\nG1 Z50 F9000 ; Lift nozzle for safe heating\n; --- SELECT STARTING TOOL ---\nT[initial_tool] ; Activate the first assigned filament in OrcaSlicer\n; --- PREHEAT ---\nM140 S[first_layer_bed_temperature] ; Start bed heating\nM104 S[first_layer_temperature] ; Start nozzle heating\nM190 S[first_layer_bed_temperature] ; Wait for bed to reach temp\nM109 S[first_layer_temperature] ; Wait for nozzle to reach temp\n; --- RE-PRIME BOWDEN TUBE ---\nG92 E0\nG1 E160.5 F3000 ; Retract 160mm\nG92 E0\n; --- PURGE LINE (curved arc near front edge, 500mm bed) ---\nG92 E0\nG1 X-50 Y-234.7 Z0.4 F5000 ; Move to arc start (inside 250mm radius)\nG1 Z0.3 F1000 ; Drop to prime height\nG3 X50 Y-234.7 R240.0 E40 F600 ; Arc purge, 100mm sweep, heavy extrusion\nG1 E38 F4500 ; Retract 2mm before wipe (Bowden)\nG1 X65 Y-224.7 Z0.2 F6000 ; Wipe move at Z0.2\nG92 E0 ; Zero extruder before print\n;======= END START G-CODE =======" + ], + "machine_tool_change_time": "0", + "machine_unload_filament_time": "4", + "manual_filament_change": "0", + "master_extruder_id": "1", + "max_layer_height": [ + "0.32" + ], + "max_resonance_avoidance_speed": "100", + "min_layer_height": [ + "0.08" + ], + "min_resonance_avoidance_speed": "50", + "nozzle_diameter": [ + "0.4" + ], + "nozzle_flush_dataset": [ + "0" + ], + "nozzle_height": "3.0", + "nozzle_hrc": "0", + "nozzle_type": [ + "brass" + ], + "nozzle_volume": [ + "0" + ], + "parking_pos_retraction": "260", + "pellet_modded_printer": "0", + "physical_extruder_map": [ + "0" + ], + "preferred_orientation": "0", + "printable_area": [ + "250.0000x0.0000", + "249.0487x21.7889", + "246.2019x43.4120", + "241.4815x64.7048", + "234.9232x85.5050", + "226.5769x105.6546", + "216.5064x125.0000", + "204.7880x143.3941", + "191.5111x160.6969", + "176.7767x176.7767", + "160.6969x191.5111", + "143.3941x204.7880", + "125.0000x216.5064", + "105.6546x226.5769", + "85.5050x234.9232", + "64.7048x241.4815", + "43.4120x246.2019", + "21.7889x249.0487", + "0.0000x250.0000", + "-21.7889x249.0487", + "-43.4120x246.2019", + "-64.7048x241.4815", + "-85.5050x234.9232", + "-105.6546x226.5769", + "-125.0000x216.5064", + "-143.3941x204.7880", + "-160.6969x191.5111", + "-176.7767x176.7767", + "-191.5111x160.6969", + "-204.7880x143.3941", + "-216.5064x125.0000", + "-226.5769x105.6546", + "-234.9232x85.5050", + "-241.4815x64.7048", + "-246.2019x43.4120", + "-249.0487x21.7889", + "-250.0000x0.0000", + "-249.0487x-21.7889", + "-246.2019x-43.4120", + "-241.4815x-64.7048", + "-234.9232x-85.5050", + "-226.5769x-105.6546", + "-216.5064x-125.0000", + "-204.7880x-143.3941", + "-191.5111x-160.6969", + "-176.7767x-176.7767", + "-160.6969x-191.5111", + "-143.3941x-204.7880", + "-125.0000x-216.5064", + "-105.6546x-226.5769", + "-85.5050x-234.9232", + "-64.7048x-241.4815", + "-43.4120x-246.2019", + "-21.7889x-249.0487", + "-0.0000x-250.0000", + "21.7889x-249.0487", + "43.4120x-246.2019", + "64.7048x-241.4815", + "85.5050x-234.9232", + "105.6546x-226.5769", + "125.0000x-216.5064", + "143.3941x-204.7880", + "160.6969x-191.5111", + "176.7767x-176.7767", + "191.5111x-160.6969", + "204.7880x-143.3941", + "216.5064x-125.0000", + "226.5769x-105.6546", + "234.9232x-85.5050", + "241.4815x-64.7048", + "246.2019x-43.4120", + "249.0487x-21.7889" + ], + "printable_height": "500", + "printer_agent": "", + "printer_extruder_id": [ + "1" + ], + "printer_extruder_variant": [ + "Bowden Standard" + ], + "printer_model": "SeeMeCNC BOSSdelta 500 0505", + "printer_notes": "", + "printer_settings_id": "SeeMeCNC BOSSdelta 500 0505 0.4 nozzle", + "printer_structure": "delta", + "printer_technology": "FFF", + "printer_variant": "0.4", + "printhost_authorization_type": "key", + "printhost_ssl_ignore_revoke": "0", + "printing_by_object_gcode": "", + "purge_in_prime_tower": "0", + "resonance_avoidance": "0", + "retract_before_wipe": [ + "70%" + ], + "retract_length_toolchange": [ + "3" + ], + "retract_lift_above": [ + "0" + ], + "retract_lift_below": [ + "0" + ], + "retract_lift_enforce": [ + "All Surfaces" + ], + "retract_restart_extra": [ + "0" + ], + "retract_restart_extra_toolchange": [ + "2" + ], + "retract_when_changing_layer": [ + "1" + ], + "retraction_distances_when_cut": [ + "18" + ], + "retraction_length": [ + "6" + ], + "retraction_minimum_travel": [ + "1" + ], + "retraction_speed": [ + "60" + ], + "scan_first_layer": "0", + "silent_mode": "0", + "single_extruder_multi_material": "1", + "support_air_filtration": "1", + "support_chamber_temp_control": "1", + "support_multi_bed_types": "0", + "support_object_skip_flush": "0", + "template_custom_gcode": "", + "thumbnails": "48x48/PNG, 300x300/PNG", + "thumbnails_format": "PNG", + "time_cost": "0", + "time_lapse_gcode": "", + "travel_slope": [ + "3" + ], + "upward_compatible_machine": [], + "use_firmware_retraction": "0", + "use_relative_e_distances": "1", + "wipe": [ + "1" + ], + "wipe_distance": [ + "1" + ], + "wipe_tower_type": "type2", + "wrapping_detection_gcode": "", + "wrapping_detection_layers": "20", + "wrapping_exclude_area": [], + "z_hop": [ + "0.4" + ], + "z_hop_types": [ + "Auto Lift" + ], + "z_offset": "0", + "model": "SeeMeCNC BOSSdelta 500 0505", + "thumbnail": "SeeMeCNC BOSSdelta 500 0505_cover.png", + "description": "SeeMeCNC configurations" +} diff --git a/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta500_0505_0_5mm.json b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta500_0505_0_5mm.json new file mode 100644 index 00000000000..874cdd3b656 --- /dev/null +++ b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta500_0505_0_5mm.json @@ -0,0 +1,351 @@ +{ + "type": "machine", + "name": "SeeMeCNC BOSSdelta 500 0505 0.5 nozzle", + "from": "System", + "instantiation": "true", + "adaptive_bed_mesh_margin": "0", + "auxiliary_fan": "0", + "bed_custom_model": "SeeMeCNC_Buildplate_Model_500.STL", + "bed_custom_texture": "SeeMeCNC_Buildplate_texture.png", + "bed_exclude_area": [ + "0x0" + ], + "bed_mesh_max": "99999,99999", + "bed_mesh_min": "-99999,-99999", + "bed_mesh_probe_distance": "50,50", + "bed_temperature_formula": "by_first_filament", + "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\n{if layer_num == 1}M104 S[nozzle_temperature] ; Step down from first layer temp to print temp{endif}\nG92 E0\n", + "best_object_pos": "0.5,0.5", + "change_extrusion_role_gcode": "", + "change_filament_gcode": "{if layer_num >= 0}\nG92 E0\nG1 E-5 F3000\nG1 E-155 F5000\nT[next_extruder]\n{if layer_num == 0}\nM109 S[first_layer_temperature]\n{else}\nM109 S[nozzle_temperature]\n{endif}\nG1 E160 F5000\nG92 E0\n{endif}", + "cooling_tube_length": "5", + "cooling_tube_retraction": "260", + "default_filament_profile": [ + "SeeMeCNC PLA" + ], + "default_nozzle_volume_type": [ + "Standard" + ], + "default_print_profile": "0.25mm Standard @SeeMeCNC BOSSdelta 500 0505 0.5", + "deretraction_speed": [ + "60" + ], + "disable_m73": "0", + "emit_machine_limits_to_gcode": "1", + "enable_filament_ramming": "0", + "enable_long_retraction_when_cut": "0", + "enable_power_loss_recovery": "printer_configuration", + "extra_loading_move": "0", + "extruder_clearance_height_to_lid": "70", + "extruder_clearance_height_to_rod": "70", + "extruder_clearance_radius": "75", + "extruder_colour": [ + "#FCE94F" + ], + "extruder_offset": [ + "0x0" + ], + "extruder_printable_area": [], + "extruder_printable_height": [ + "580" + ], + "extruder_type": [ + "Bowden" + ], + "extruder_variant_list": [ + "Bowden Standard" + ], + "fan_kickstart": "0", + "fan_speedup_overhangs": "1", + "fan_speedup_time": "0", + "file_start_gcode": "", + "gcode_flavor": "reprapfirmware", + "grab_length": [ + "0" + ], + "head_wrap_detect_zone": [], + "high_current_on_filament_swap": "0", + "host_type": "duet", + "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", + "long_retractions_when_cut": [ + "0" + ], + "machine_end_gcode": [ + ";======= SEEMECNC BOSSDELTA 500 0505 END G-CODE =======\nM104 S0 ; Turn off hotend\nM140 S0 ; Turn off heated bed\nM107 T0 ; Turn off part cooling fan\nG91 ; Relative positioning\nG1 Z2 E-160 F6000 ; Lift 2mm and retract 160mm\nG92 E0\nG90 ; Absolute positioning\nM203 Z18000 ; Allow fast Z for homing\nG28 ; Home all axes - clears part immediately on a delta\n;======= END G-CODE =======" + ], + "machine_load_filament_time": "4", + "machine_max_acceleration_e": [ + "5000", + "5000" + ], + "machine_max_acceleration_extruding": [ + "5000", + "5000" + ], + "machine_max_acceleration_retracting": [ + "5000", + "5000" + ], + "machine_max_acceleration_travel": [ + "5000", + "5000" + ], + "machine_max_acceleration_x": [ + "5000", + "5000" + ], + "machine_max_acceleration_y": [ + "5000", + "5000" + ], + "machine_max_acceleration_z": [ + "5000", + "5000" + ], + "machine_max_jerk_e": [ + "15", + "15" + ], + "machine_max_jerk_x": [ + "15", + "15" + ], + "machine_max_jerk_y": [ + "15", + "15" + ], + "machine_max_jerk_z": [ + "15", + "15" + ], + "machine_max_junction_deviation": [ + "0.01" + ], + "machine_max_speed_e": [ + "150", + "25" + ], + "machine_max_speed_x": [ + "300", + "300" + ], + "machine_max_speed_y": [ + "300", + "300" + ], + "machine_max_speed_z": [ + "150", + "150" + ], + "machine_min_extruding_rate": [ + "0", + "0" + ], + "machine_min_travel_rate": [ + "0", + "0" + ], + "machine_pause_gcode": "M601", + "machine_start_gcode": [ + ";======= SEEMECNC BOSSDELTA 500 0505 START G-CODE =======\nG21 ; Set units to mm\nG90 ; Absolute positioning\nM82 ; Extruder to absolute mode\nG28 ; Home all axes\nG1 Z50 F9000 ; Lift nozzle for safe heating\n; --- SELECT STARTING TOOL ---\nT[initial_tool] ; Activate the first assigned filament in OrcaSlicer\n; --- PREHEAT ---\nM140 S[first_layer_bed_temperature] ; Start bed heating\nM104 S[first_layer_temperature] ; Start nozzle heating\nM190 S[first_layer_bed_temperature] ; Wait for bed to reach temp\nM109 S[first_layer_temperature] ; Wait for nozzle to reach temp\n; --- RE-PRIME BOWDEN TUBE ---\nG92 E0\nG1 E160.5 F3000 ; Retract 160mm\nG92 E0\n; --- PURGE LINE (curved arc near front edge, 500mm bed) ---\nG92 E0\nG1 X-50 Y-234.7 Z0.4 F5000 ; Move to arc start (inside 250mm radius)\nG1 Z0.3 F1000 ; Drop to prime height\nG3 X50 Y-234.7 R240.0 E40 F600 ; Arc purge, 100mm sweep, heavy extrusion\nG1 E38 F4500 ; Retract 2mm before wipe (Bowden)\nG1 X65 Y-224.7 Z0.2 F6000 ; Wipe move at Z0.2\nG92 E0 ; Zero extruder before print\n;======= END START G-CODE =======" + ], + "machine_tool_change_time": "0", + "machine_unload_filament_time": "4", + "manual_filament_change": "0", + "master_extruder_id": "1", + "max_layer_height": [ + "0.4" + ], + "max_resonance_avoidance_speed": "100", + "min_layer_height": [ + "0.08" + ], + "min_resonance_avoidance_speed": "50", + "nozzle_diameter": [ + "0.5" + ], + "nozzle_flush_dataset": [ + "0" + ], + "nozzle_height": "3.0", + "nozzle_hrc": "0", + "nozzle_type": [ + "brass" + ], + "nozzle_volume": [ + "0" + ], + "parking_pos_retraction": "260", + "pellet_modded_printer": "0", + "physical_extruder_map": [ + "0" + ], + "preferred_orientation": "0", + "printable_area": [ + "250.0000x0.0000", + "249.0487x21.7889", + "246.2019x43.4120", + "241.4815x64.7048", + "234.9232x85.5050", + "226.5769x105.6546", + "216.5064x125.0000", + "204.7880x143.3941", + "191.5111x160.6969", + "176.7767x176.7767", + "160.6969x191.5111", + "143.3941x204.7880", + "125.0000x216.5064", + "105.6546x226.5769", + "85.5050x234.9232", + "64.7048x241.4815", + "43.4120x246.2019", + "21.7889x249.0487", + "0.0000x250.0000", + "-21.7889x249.0487", + "-43.4120x246.2019", + "-64.7048x241.4815", + "-85.5050x234.9232", + "-105.6546x226.5769", + "-125.0000x216.5064", + "-143.3941x204.7880", + "-160.6969x191.5111", + "-176.7767x176.7767", + "-191.5111x160.6969", + "-204.7880x143.3941", + "-216.5064x125.0000", + "-226.5769x105.6546", + "-234.9232x85.5050", + "-241.4815x64.7048", + "-246.2019x43.4120", + "-249.0487x21.7889", + "-250.0000x0.0000", + "-249.0487x-21.7889", + "-246.2019x-43.4120", + "-241.4815x-64.7048", + "-234.9232x-85.5050", + "-226.5769x-105.6546", + "-216.5064x-125.0000", + "-204.7880x-143.3941", + "-191.5111x-160.6969", + "-176.7767x-176.7767", + "-160.6969x-191.5111", + "-143.3941x-204.7880", + "-125.0000x-216.5064", + "-105.6546x-226.5769", + "-85.5050x-234.9232", + "-64.7048x-241.4815", + "-43.4120x-246.2019", + "-21.7889x-249.0487", + "-0.0000x-250.0000", + "21.7889x-249.0487", + "43.4120x-246.2019", + "64.7048x-241.4815", + "85.5050x-234.9232", + "105.6546x-226.5769", + "125.0000x-216.5064", + "143.3941x-204.7880", + "160.6969x-191.5111", + "176.7767x-176.7767", + "191.5111x-160.6969", + "204.7880x-143.3941", + "216.5064x-125.0000", + "226.5769x-105.6546", + "234.9232x-85.5050", + "241.4815x-64.7048", + "246.2019x-43.4120", + "249.0487x-21.7889" + ], + "printable_height": "500", + "printer_agent": "", + "printer_extruder_id": [ + "1" + ], + "printer_extruder_variant": [ + "Bowden Standard" + ], + "printer_model": "SeeMeCNC BOSSdelta 500 0505", + "printer_notes": "", + "printer_settings_id": "SeeMeCNC BOSSdelta 500 0505 0.5 nozzle", + "printer_structure": "delta", + "printer_technology": "FFF", + "printer_variant": "0.5", + "printhost_authorization_type": "key", + "printhost_ssl_ignore_revoke": "0", + "printing_by_object_gcode": "", + "purge_in_prime_tower": "0", + "resonance_avoidance": "0", + "retract_before_wipe": [ + "70%" + ], + "retract_length_toolchange": [ + "3" + ], + "retract_lift_above": [ + "0" + ], + "retract_lift_below": [ + "0" + ], + "retract_lift_enforce": [ + "All Surfaces" + ], + "retract_restart_extra": [ + "0" + ], + "retract_restart_extra_toolchange": [ + "2" + ], + "retract_when_changing_layer": [ + "1" + ], + "retraction_distances_when_cut": [ + "18" + ], + "retraction_length": [ + "6" + ], + "retraction_minimum_travel": [ + "1" + ], + "retraction_speed": [ + "60" + ], + "scan_first_layer": "0", + "silent_mode": "0", + "single_extruder_multi_material": "1", + "support_air_filtration": "1", + "support_chamber_temp_control": "1", + "support_multi_bed_types": "0", + "support_object_skip_flush": "0", + "template_custom_gcode": "", + "thumbnails": "48x48/PNG, 300x300/PNG", + "thumbnails_format": "PNG", + "time_cost": "0", + "time_lapse_gcode": "", + "travel_slope": [ + "3" + ], + "upward_compatible_machine": [], + "use_firmware_retraction": "0", + "use_relative_e_distances": "1", + "wipe": [ + "1" + ], + "wipe_distance": [ + "1" + ], + "wipe_tower_type": "type2", + "wrapping_detection_gcode": "", + "wrapping_detection_layers": "20", + "wrapping_exclude_area": [], + "z_hop": [ + "0.4" + ], + "z_hop_types": [ + "Auto Lift" + ], + "z_offset": "0", + "model": "SeeMeCNC BOSSdelta 500 0505", + "thumbnail": "SeeMeCNC BOSSdelta 500 0505_cover.png", + "description": "SeeMeCNC configurations" +} diff --git a/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta500_0505_0_7mm.json b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta500_0505_0_7mm.json new file mode 100644 index 00000000000..648f15efabc --- /dev/null +++ b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta500_0505_0_7mm.json @@ -0,0 +1,351 @@ +{ + "type": "machine", + "name": "SeeMeCNC BOSSdelta 500 0505 0.7 nozzle", + "from": "System", + "instantiation": "true", + "adaptive_bed_mesh_margin": "0", + "auxiliary_fan": "0", + "bed_custom_model": "SeeMeCNC_Buildplate_Model_500.STL", + "bed_custom_texture": "SeeMeCNC_Buildplate_texture.png", + "bed_exclude_area": [ + "0x0" + ], + "bed_mesh_max": "99999,99999", + "bed_mesh_min": "-99999,-99999", + "bed_mesh_probe_distance": "50,50", + "bed_temperature_formula": "by_first_filament", + "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\n{if layer_num == 1}M104 S[nozzle_temperature] ; Step down from first layer temp to print temp{endif}\nG92 E0\n", + "best_object_pos": "0.5,0.5", + "change_extrusion_role_gcode": "", + "change_filament_gcode": "{if layer_num >= 0}\nG92 E0\nG1 E-5 F3000\nG1 E-155 F5000\nT[next_extruder]\n{if layer_num == 0}\nM109 S[first_layer_temperature]\n{else}\nM109 S[nozzle_temperature]\n{endif}\nG1 E160 F5000\nG92 E0\n{endif}", + "cooling_tube_length": "5", + "cooling_tube_retraction": "260", + "default_filament_profile": [ + "SeeMeCNC PLA" + ], + "default_nozzle_volume_type": [ + "Standard" + ], + "default_print_profile": "0.35mm Standard @SeeMeCNC BOSSdelta 500 0505 0.7", + "deretraction_speed": [ + "60" + ], + "disable_m73": "0", + "emit_machine_limits_to_gcode": "1", + "enable_filament_ramming": "0", + "enable_long_retraction_when_cut": "0", + "enable_power_loss_recovery": "printer_configuration", + "extra_loading_move": "0", + "extruder_clearance_height_to_lid": "70", + "extruder_clearance_height_to_rod": "70", + "extruder_clearance_radius": "75", + "extruder_colour": [ + "#FCE94F" + ], + "extruder_offset": [ + "0x0" + ], + "extruder_printable_area": [], + "extruder_printable_height": [ + "580" + ], + "extruder_type": [ + "Bowden" + ], + "extruder_variant_list": [ + "Bowden Standard" + ], + "fan_kickstart": "0", + "fan_speedup_overhangs": "1", + "fan_speedup_time": "0", + "file_start_gcode": "", + "gcode_flavor": "reprapfirmware", + "grab_length": [ + "0" + ], + "head_wrap_detect_zone": [], + "high_current_on_filament_swap": "0", + "host_type": "duet", + "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", + "long_retractions_when_cut": [ + "0" + ], + "machine_end_gcode": [ + ";======= SEEMECNC BOSSDELTA 500 0505 END G-CODE =======\nM104 S0 ; Turn off hotend\nM140 S0 ; Turn off heated bed\nM107 T0 ; Turn off part cooling fan\nG91 ; Relative positioning\nG1 Z2 E-160 F6000 ; Lift 2mm and retract 160mm\nG92 E0\nG90 ; Absolute positioning\nM203 Z18000 ; Allow fast Z for homing\nG28 ; Home all axes - clears part immediately on a delta\n;======= END G-CODE =======" + ], + "machine_load_filament_time": "4", + "machine_max_acceleration_e": [ + "5000", + "5000" + ], + "machine_max_acceleration_extruding": [ + "5000", + "5000" + ], + "machine_max_acceleration_retracting": [ + "5000", + "5000" + ], + "machine_max_acceleration_travel": [ + "5000", + "5000" + ], + "machine_max_acceleration_x": [ + "5000", + "5000" + ], + "machine_max_acceleration_y": [ + "5000", + "5000" + ], + "machine_max_acceleration_z": [ + "5000", + "5000" + ], + "machine_max_jerk_e": [ + "15", + "15" + ], + "machine_max_jerk_x": [ + "15", + "15" + ], + "machine_max_jerk_y": [ + "15", + "15" + ], + "machine_max_jerk_z": [ + "15", + "15" + ], + "machine_max_junction_deviation": [ + "0.01" + ], + "machine_max_speed_e": [ + "150", + "25" + ], + "machine_max_speed_x": [ + "300", + "300" + ], + "machine_max_speed_y": [ + "300", + "300" + ], + "machine_max_speed_z": [ + "150", + "150" + ], + "machine_min_extruding_rate": [ + "0", + "0" + ], + "machine_min_travel_rate": [ + "0", + "0" + ], + "machine_pause_gcode": "M601", + "machine_start_gcode": [ + ";======= SEEMECNC BOSSDELTA 500 0505 START G-CODE =======\nG21 ; Set units to mm\nG90 ; Absolute positioning\nM82 ; Extruder to absolute mode\nG28 ; Home all axes\nG1 Z50 F9000 ; Lift nozzle for safe heating\n; --- SELECT STARTING TOOL ---\nT[initial_tool] ; Activate the first assigned filament in OrcaSlicer\n; --- PREHEAT ---\nM140 S[first_layer_bed_temperature] ; Start bed heating\nM104 S[first_layer_temperature] ; Start nozzle heating\nM190 S[first_layer_bed_temperature] ; Wait for bed to reach temp\nM109 S[first_layer_temperature] ; Wait for nozzle to reach temp\n; --- RE-PRIME BOWDEN TUBE ---\nG92 E0\nG1 E160.5 F3000 ; Retract 160mm\nG92 E0\n; --- PURGE LINE (curved arc near front edge, 500mm bed) ---\nG92 E0\nG1 X-50 Y-234.7 Z0.4 F5000 ; Move to arc start (inside 250mm radius)\nG1 Z0.3 F1000 ; Drop to prime height\nG3 X50 Y-234.7 R240.0 E40 F600 ; Arc purge, 100mm sweep, heavy extrusion\nG1 E38 F4500 ; Retract 2mm before wipe (Bowden)\nG1 X65 Y-224.7 Z0.2 F6000 ; Wipe move at Z0.2\nG92 E0 ; Zero extruder before print\n;======= END START G-CODE =======" + ], + "machine_tool_change_time": "0", + "machine_unload_filament_time": "4", + "manual_filament_change": "0", + "master_extruder_id": "1", + "max_layer_height": [ + "0.56" + ], + "max_resonance_avoidance_speed": "100", + "min_layer_height": [ + "0.08" + ], + "min_resonance_avoidance_speed": "50", + "nozzle_diameter": [ + "0.7" + ], + "nozzle_flush_dataset": [ + "0" + ], + "nozzle_height": "3.0", + "nozzle_hrc": "0", + "nozzle_type": [ + "brass" + ], + "nozzle_volume": [ + "0" + ], + "parking_pos_retraction": "260", + "pellet_modded_printer": "0", + "physical_extruder_map": [ + "0" + ], + "preferred_orientation": "0", + "printable_area": [ + "250.0000x0.0000", + "249.0487x21.7889", + "246.2019x43.4120", + "241.4815x64.7048", + "234.9232x85.5050", + "226.5769x105.6546", + "216.5064x125.0000", + "204.7880x143.3941", + "191.5111x160.6969", + "176.7767x176.7767", + "160.6969x191.5111", + "143.3941x204.7880", + "125.0000x216.5064", + "105.6546x226.5769", + "85.5050x234.9232", + "64.7048x241.4815", + "43.4120x246.2019", + "21.7889x249.0487", + "0.0000x250.0000", + "-21.7889x249.0487", + "-43.4120x246.2019", + "-64.7048x241.4815", + "-85.5050x234.9232", + "-105.6546x226.5769", + "-125.0000x216.5064", + "-143.3941x204.7880", + "-160.6969x191.5111", + "-176.7767x176.7767", + "-191.5111x160.6969", + "-204.7880x143.3941", + "-216.5064x125.0000", + "-226.5769x105.6546", + "-234.9232x85.5050", + "-241.4815x64.7048", + "-246.2019x43.4120", + "-249.0487x21.7889", + "-250.0000x0.0000", + "-249.0487x-21.7889", + "-246.2019x-43.4120", + "-241.4815x-64.7048", + "-234.9232x-85.5050", + "-226.5769x-105.6546", + "-216.5064x-125.0000", + "-204.7880x-143.3941", + "-191.5111x-160.6969", + "-176.7767x-176.7767", + "-160.6969x-191.5111", + "-143.3941x-204.7880", + "-125.0000x-216.5064", + "-105.6546x-226.5769", + "-85.5050x-234.9232", + "-64.7048x-241.4815", + "-43.4120x-246.2019", + "-21.7889x-249.0487", + "-0.0000x-250.0000", + "21.7889x-249.0487", + "43.4120x-246.2019", + "64.7048x-241.4815", + "85.5050x-234.9232", + "105.6546x-226.5769", + "125.0000x-216.5064", + "143.3941x-204.7880", + "160.6969x-191.5111", + "176.7767x-176.7767", + "191.5111x-160.6969", + "204.7880x-143.3941", + "216.5064x-125.0000", + "226.5769x-105.6546", + "234.9232x-85.5050", + "241.4815x-64.7048", + "246.2019x-43.4120", + "249.0487x-21.7889" + ], + "printable_height": "500", + "printer_agent": "", + "printer_extruder_id": [ + "1" + ], + "printer_extruder_variant": [ + "Bowden Standard" + ], + "printer_model": "SeeMeCNC BOSSdelta 500 0505", + "printer_notes": "", + "printer_settings_id": "SeeMeCNC BOSSdelta 500 0505 0.7 nozzle", + "printer_structure": "delta", + "printer_technology": "FFF", + "printer_variant": "0.7", + "printhost_authorization_type": "key", + "printhost_ssl_ignore_revoke": "0", + "printing_by_object_gcode": "", + "purge_in_prime_tower": "0", + "resonance_avoidance": "0", + "retract_before_wipe": [ + "70%" + ], + "retract_length_toolchange": [ + "3" + ], + "retract_lift_above": [ + "0" + ], + "retract_lift_below": [ + "0" + ], + "retract_lift_enforce": [ + "All Surfaces" + ], + "retract_restart_extra": [ + "0" + ], + "retract_restart_extra_toolchange": [ + "2" + ], + "retract_when_changing_layer": [ + "1" + ], + "retraction_distances_when_cut": [ + "18" + ], + "retraction_length": [ + "6" + ], + "retraction_minimum_travel": [ + "1" + ], + "retraction_speed": [ + "60" + ], + "scan_first_layer": "0", + "silent_mode": "0", + "single_extruder_multi_material": "1", + "support_air_filtration": "1", + "support_chamber_temp_control": "1", + "support_multi_bed_types": "0", + "support_object_skip_flush": "0", + "template_custom_gcode": "", + "thumbnails": "48x48/PNG, 300x300/PNG", + "thumbnails_format": "PNG", + "time_cost": "0", + "time_lapse_gcode": "", + "travel_slope": [ + "3" + ], + "upward_compatible_machine": [], + "use_firmware_retraction": "0", + "use_relative_e_distances": "1", + "wipe": [ + "1" + ], + "wipe_distance": [ + "1" + ], + "wipe_tower_type": "type2", + "wrapping_detection_gcode": "", + "wrapping_detection_layers": "20", + "wrapping_exclude_area": [], + "z_hop": [ + "0.4" + ], + "z_hop_types": [ + "Auto Lift" + ], + "z_offset": "0", + "model": "SeeMeCNC BOSSdelta 500 0505", + "thumbnail": "SeeMeCNC BOSSdelta 500 0505_cover.png", + "description": "SeeMeCNC configurations" +} diff --git a/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta500_0505_1_0mm.json b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta500_0505_1_0mm.json new file mode 100644 index 00000000000..e1878aac4be --- /dev/null +++ b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta500_0505_1_0mm.json @@ -0,0 +1,351 @@ +{ + "type": "machine", + "name": "SeeMeCNC BOSSdelta 500 0505 1.0 nozzle", + "from": "System", + "instantiation": "true", + "adaptive_bed_mesh_margin": "0", + "auxiliary_fan": "0", + "bed_custom_model": "SeeMeCNC_Buildplate_Model_500.STL", + "bed_custom_texture": "SeeMeCNC_Buildplate_texture.png", + "bed_exclude_area": [ + "0x0" + ], + "bed_mesh_max": "99999,99999", + "bed_mesh_min": "-99999,-99999", + "bed_mesh_probe_distance": "50,50", + "bed_temperature_formula": "by_first_filament", + "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\n{if layer_num == 1}M104 S[nozzle_temperature] ; Step down from first layer temp to print temp{endif}\nG92 E0\n", + "best_object_pos": "0.5,0.5", + "change_extrusion_role_gcode": "", + "change_filament_gcode": "{if layer_num >= 0}\nG92 E0\nG1 E-5 F3000\nG1 E-155 F5000\nT[next_extruder]\n{if layer_num == 0}\nM109 S[first_layer_temperature]\n{else}\nM109 S[nozzle_temperature]\n{endif}\nG1 E160 F5000\nG92 E0\n{endif}", + "cooling_tube_length": "5", + "cooling_tube_retraction": "260", + "default_filament_profile": [ + "SeeMeCNC PLA" + ], + "default_nozzle_volume_type": [ + "Standard" + ], + "default_print_profile": "0.50mm Standard @SeeMeCNC BOSSdelta 500 0505 1.0", + "deretraction_speed": [ + "60" + ], + "disable_m73": "0", + "emit_machine_limits_to_gcode": "1", + "enable_filament_ramming": "0", + "enable_long_retraction_when_cut": "0", + "enable_power_loss_recovery": "printer_configuration", + "extra_loading_move": "0", + "extruder_clearance_height_to_lid": "70", + "extruder_clearance_height_to_rod": "70", + "extruder_clearance_radius": "75", + "extruder_colour": [ + "#FCE94F" + ], + "extruder_offset": [ + "0x0" + ], + "extruder_printable_area": [], + "extruder_printable_height": [ + "580" + ], + "extruder_type": [ + "Bowden" + ], + "extruder_variant_list": [ + "Bowden Standard" + ], + "fan_kickstart": "0", + "fan_speedup_overhangs": "1", + "fan_speedup_time": "0", + "file_start_gcode": "", + "gcode_flavor": "reprapfirmware", + "grab_length": [ + "0" + ], + "head_wrap_detect_zone": [], + "high_current_on_filament_swap": "0", + "host_type": "duet", + "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", + "long_retractions_when_cut": [ + "0" + ], + "machine_end_gcode": [ + ";======= SEEMECNC BOSSDELTA 500 0505 END G-CODE =======\nM104 S0 ; Turn off hotend\nM140 S0 ; Turn off heated bed\nM107 T0 ; Turn off part cooling fan\nG91 ; Relative positioning\nG1 Z2 E-160 F6000 ; Lift 2mm and retract 160mm\nG92 E0\nG90 ; Absolute positioning\nM203 Z18000 ; Allow fast Z for homing\nG28 ; Home all axes - clears part immediately on a delta\n;======= END G-CODE =======" + ], + "machine_load_filament_time": "4", + "machine_max_acceleration_e": [ + "5000", + "5000" + ], + "machine_max_acceleration_extruding": [ + "5000", + "5000" + ], + "machine_max_acceleration_retracting": [ + "5000", + "5000" + ], + "machine_max_acceleration_travel": [ + "5000", + "5000" + ], + "machine_max_acceleration_x": [ + "5000", + "5000" + ], + "machine_max_acceleration_y": [ + "5000", + "5000" + ], + "machine_max_acceleration_z": [ + "5000", + "5000" + ], + "machine_max_jerk_e": [ + "15", + "15" + ], + "machine_max_jerk_x": [ + "15", + "15" + ], + "machine_max_jerk_y": [ + "15", + "15" + ], + "machine_max_jerk_z": [ + "15", + "15" + ], + "machine_max_junction_deviation": [ + "0.01" + ], + "machine_max_speed_e": [ + "150", + "25" + ], + "machine_max_speed_x": [ + "300", + "300" + ], + "machine_max_speed_y": [ + "300", + "300" + ], + "machine_max_speed_z": [ + "150", + "150" + ], + "machine_min_extruding_rate": [ + "0", + "0" + ], + "machine_min_travel_rate": [ + "0", + "0" + ], + "machine_pause_gcode": "M601", + "machine_start_gcode": [ + ";======= SEEMECNC BOSSDELTA 500 0505 START G-CODE =======\nG21 ; Set units to mm\nG90 ; Absolute positioning\nM82 ; Extruder to absolute mode\nG28 ; Home all axes\nG1 Z50 F9000 ; Lift nozzle for safe heating\n; --- SELECT STARTING TOOL ---\nT[initial_tool] ; Activate the first assigned filament in OrcaSlicer\n; --- PREHEAT ---\nM140 S[first_layer_bed_temperature] ; Start bed heating\nM104 S[first_layer_temperature] ; Start nozzle heating\nM190 S[first_layer_bed_temperature] ; Wait for bed to reach temp\nM109 S[first_layer_temperature] ; Wait for nozzle to reach temp\n; --- RE-PRIME BOWDEN TUBE ---\nG92 E0\nG1 E160.5 F3000 ; Retract 160mm\nG92 E0\n; --- PURGE LINE (curved arc near front edge, 500mm bed) ---\nG92 E0\nG1 X-50 Y-234.7 Z0.4 F5000 ; Move to arc start (inside 250mm radius)\nG1 Z0.3 F1000 ; Drop to prime height\nG3 X50 Y-234.7 R240.0 E40 F600 ; Arc purge, 100mm sweep, heavy extrusion\nG1 E38 F4500 ; Retract 2mm before wipe (Bowden)\nG1 X65 Y-224.7 Z0.2 F6000 ; Wipe move at Z0.2\nG92 E0 ; Zero extruder before print\n;======= END START G-CODE =======" + ], + "machine_tool_change_time": "0", + "machine_unload_filament_time": "4", + "manual_filament_change": "0", + "master_extruder_id": "1", + "max_layer_height": [ + "0.8" + ], + "max_resonance_avoidance_speed": "100", + "min_layer_height": [ + "0.08" + ], + "min_resonance_avoidance_speed": "50", + "nozzle_diameter": [ + "1.0" + ], + "nozzle_flush_dataset": [ + "0" + ], + "nozzle_height": "3.0", + "nozzle_hrc": "0", + "nozzle_type": [ + "brass" + ], + "nozzle_volume": [ + "0" + ], + "parking_pos_retraction": "260", + "pellet_modded_printer": "0", + "physical_extruder_map": [ + "0" + ], + "preferred_orientation": "0", + "printable_area": [ + "250.0000x0.0000", + "249.0487x21.7889", + "246.2019x43.4120", + "241.4815x64.7048", + "234.9232x85.5050", + "226.5769x105.6546", + "216.5064x125.0000", + "204.7880x143.3941", + "191.5111x160.6969", + "176.7767x176.7767", + "160.6969x191.5111", + "143.3941x204.7880", + "125.0000x216.5064", + "105.6546x226.5769", + "85.5050x234.9232", + "64.7048x241.4815", + "43.4120x246.2019", + "21.7889x249.0487", + "0.0000x250.0000", + "-21.7889x249.0487", + "-43.4120x246.2019", + "-64.7048x241.4815", + "-85.5050x234.9232", + "-105.6546x226.5769", + "-125.0000x216.5064", + "-143.3941x204.7880", + "-160.6969x191.5111", + "-176.7767x176.7767", + "-191.5111x160.6969", + "-204.7880x143.3941", + "-216.5064x125.0000", + "-226.5769x105.6546", + "-234.9232x85.5050", + "-241.4815x64.7048", + "-246.2019x43.4120", + "-249.0487x21.7889", + "-250.0000x0.0000", + "-249.0487x-21.7889", + "-246.2019x-43.4120", + "-241.4815x-64.7048", + "-234.9232x-85.5050", + "-226.5769x-105.6546", + "-216.5064x-125.0000", + "-204.7880x-143.3941", + "-191.5111x-160.6969", + "-176.7767x-176.7767", + "-160.6969x-191.5111", + "-143.3941x-204.7880", + "-125.0000x-216.5064", + "-105.6546x-226.5769", + "-85.5050x-234.9232", + "-64.7048x-241.4815", + "-43.4120x-246.2019", + "-21.7889x-249.0487", + "-0.0000x-250.0000", + "21.7889x-249.0487", + "43.4120x-246.2019", + "64.7048x-241.4815", + "85.5050x-234.9232", + "105.6546x-226.5769", + "125.0000x-216.5064", + "143.3941x-204.7880", + "160.6969x-191.5111", + "176.7767x-176.7767", + "191.5111x-160.6969", + "204.7880x-143.3941", + "216.5064x-125.0000", + "226.5769x-105.6546", + "234.9232x-85.5050", + "241.4815x-64.7048", + "246.2019x-43.4120", + "249.0487x-21.7889" + ], + "printable_height": "500", + "printer_agent": "", + "printer_extruder_id": [ + "1" + ], + "printer_extruder_variant": [ + "Bowden Standard" + ], + "printer_model": "SeeMeCNC BOSSdelta 500 0505", + "printer_notes": "", + "printer_settings_id": "SeeMeCNC BOSSdelta 500 0505 1.0 nozzle", + "printer_structure": "delta", + "printer_technology": "FFF", + "printer_variant": "1.0", + "printhost_authorization_type": "key", + "printhost_ssl_ignore_revoke": "0", + "printing_by_object_gcode": "", + "purge_in_prime_tower": "0", + "resonance_avoidance": "0", + "retract_before_wipe": [ + "70%" + ], + "retract_length_toolchange": [ + "3" + ], + "retract_lift_above": [ + "0" + ], + "retract_lift_below": [ + "0" + ], + "retract_lift_enforce": [ + "All Surfaces" + ], + "retract_restart_extra": [ + "0" + ], + "retract_restart_extra_toolchange": [ + "2" + ], + "retract_when_changing_layer": [ + "1" + ], + "retraction_distances_when_cut": [ + "18" + ], + "retraction_length": [ + "6" + ], + "retraction_minimum_travel": [ + "1" + ], + "retraction_speed": [ + "60" + ], + "scan_first_layer": "0", + "silent_mode": "0", + "single_extruder_multi_material": "1", + "support_air_filtration": "1", + "support_chamber_temp_control": "1", + "support_multi_bed_types": "0", + "support_object_skip_flush": "0", + "template_custom_gcode": "", + "thumbnails": "48x48/PNG, 300x300/PNG", + "thumbnails_format": "PNG", + "time_cost": "0", + "time_lapse_gcode": "", + "travel_slope": [ + "3" + ], + "upward_compatible_machine": [], + "use_firmware_retraction": "0", + "use_relative_e_distances": "1", + "wipe": [ + "1" + ], + "wipe_distance": [ + "1" + ], + "wipe_tower_type": "type2", + "wrapping_detection_gcode": "", + "wrapping_detection_layers": "20", + "wrapping_exclude_area": [], + "z_hop": [ + "0.4" + ], + "z_hop_types": [ + "Auto Lift" + ], + "z_offset": "0", + "model": "SeeMeCNC BOSSdelta 500 0505", + "thumbnail": "SeeMeCNC BOSSdelta 500 0505_cover.png", + "description": "SeeMeCNC configurations" +} diff --git a/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta500_0510_0_4mm.json b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta500_0510_0_4mm.json new file mode 100644 index 00000000000..a161d1aece5 --- /dev/null +++ b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta500_0510_0_4mm.json @@ -0,0 +1,351 @@ +{ + "type": "machine", + "name": "SeeMeCNC BOSSdelta 500 0510 0.4 nozzle", + "from": "System", + "instantiation": "true", + "adaptive_bed_mesh_margin": "0", + "auxiliary_fan": "0", + "bed_custom_model": "SeeMeCNC_Buildplate_Model_500.STL", + "bed_custom_texture": "SeeMeCNC_Buildplate_texture.png", + "bed_exclude_area": [ + "0x0" + ], + "bed_mesh_max": "99999,99999", + "bed_mesh_min": "-99999,-99999", + "bed_mesh_probe_distance": "50,50", + "bed_temperature_formula": "by_first_filament", + "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\n{if layer_num == 1}M104 S[nozzle_temperature] ; Step down from first layer temp to print temp{endif}\nG92 E0\n", + "best_object_pos": "0.5,0.5", + "change_extrusion_role_gcode": "", + "change_filament_gcode": "{if layer_num >= 0}\nG92 E0\nG1 E-5 F3000\nG1 E-155 F5000\nT[next_extruder]\n{if layer_num == 0}\nM109 S[first_layer_temperature]\n{else}\nM109 S[nozzle_temperature]\n{endif}\nG1 E160 F5000\nG92 E0\n{endif}", + "cooling_tube_length": "5", + "cooling_tube_retraction": "260", + "default_filament_profile": [ + "SeeMeCNC PLA" + ], + "default_nozzle_volume_type": [ + "Standard" + ], + "default_print_profile": "0.20mm Standard @SeeMeCNC BOSSdelta 500 0510 0.4", + "deretraction_speed": [ + "60" + ], + "disable_m73": "0", + "emit_machine_limits_to_gcode": "1", + "enable_filament_ramming": "0", + "enable_long_retraction_when_cut": "0", + "enable_power_loss_recovery": "printer_configuration", + "extra_loading_move": "0", + "extruder_clearance_height_to_lid": "70", + "extruder_clearance_height_to_rod": "70", + "extruder_clearance_radius": "75", + "extruder_colour": [ + "#FCE94F" + ], + "extruder_offset": [ + "0x0" + ], + "extruder_printable_area": [], + "extruder_printable_height": [ + "1000" + ], + "extruder_type": [ + "Bowden" + ], + "extruder_variant_list": [ + "Bowden Standard" + ], + "fan_kickstart": "0", + "fan_speedup_overhangs": "1", + "fan_speedup_time": "0", + "file_start_gcode": "", + "gcode_flavor": "reprapfirmware", + "grab_length": [ + "0" + ], + "head_wrap_detect_zone": [], + "high_current_on_filament_swap": "0", + "host_type": "duet", + "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", + "long_retractions_when_cut": [ + "0" + ], + "machine_end_gcode": [ + ";======= SEEMECNC BOSSDELTA 500 0510 END G-CODE =======\nM104 S0 ; Turn off hotend\nM140 S0 ; Turn off heated bed\nM107 T0 ; Turn off part cooling fan\nG91 ; Relative positioning\nG1 Z2 E-160 F6000 ; Lift 2mm and retract 160mm\nG92 E0\nG90 ; Absolute positioning\nM203 Z18000 ; Allow fast Z for homing\nG28 ; Home all axes - clears part immediately on a delta\n;======= END G-CODE =======" + ], + "machine_load_filament_time": "4", + "machine_max_acceleration_e": [ + "5000", + "5000" + ], + "machine_max_acceleration_extruding": [ + "5000", + "5000" + ], + "machine_max_acceleration_retracting": [ + "5000", + "5000" + ], + "machine_max_acceleration_travel": [ + "5000", + "5000" + ], + "machine_max_acceleration_x": [ + "5000", + "5000" + ], + "machine_max_acceleration_y": [ + "5000", + "5000" + ], + "machine_max_acceleration_z": [ + "5000", + "5000" + ], + "machine_max_jerk_e": [ + "15", + "15" + ], + "machine_max_jerk_x": [ + "15", + "15" + ], + "machine_max_jerk_y": [ + "15", + "15" + ], + "machine_max_jerk_z": [ + "15", + "15" + ], + "machine_max_junction_deviation": [ + "0.01" + ], + "machine_max_speed_e": [ + "150", + "25" + ], + "machine_max_speed_x": [ + "300", + "300" + ], + "machine_max_speed_y": [ + "300", + "300" + ], + "machine_max_speed_z": [ + "100", + "100" + ], + "machine_min_extruding_rate": [ + "0", + "0" + ], + "machine_min_travel_rate": [ + "0", + "0" + ], + "machine_pause_gcode": "M601", + "machine_start_gcode": [ + ";======= SEEMECNC BOSSDELTA 500 0510 START G-CODE =======\nG21 ; Set units to mm\nG90 ; Absolute positioning\nM82 ; Extruder to absolute mode\nG28 ; Home all axes\nG1 Z50 F9000 ; Lift nozzle for safe heating\n; --- SELECT STARTING TOOL ---\nT[initial_tool] ; Activate the first assigned filament in OrcaSlicer\n; --- PREHEAT ---\nM140 S[first_layer_bed_temperature] ; Start bed heating\nM104 S[first_layer_temperature] ; Start nozzle heating\nM190 S[first_layer_bed_temperature] ; Wait for bed to reach temp\nM109 S[first_layer_temperature] ; Wait for nozzle to reach temp\n; --- RE-PRIME BOWDEN TUBE ---\nG92 E0\nG1 E160.5 F3000 ; Retract 160mm\nG92 E0\n; --- PURGE LINE (curved arc near front edge, 500mm bed) ---\nG92 E0\nG1 X-50 Y-234.7 Z0.4 F5000 ; Move to arc start (inside 250mm radius)\nG1 Z0.3 F1000 ; Drop to prime height\nG3 X50 Y-234.7 R240.0 E40 F600 ; Arc purge, 100mm sweep, heavy extrusion\nG1 E38 F4500 ; Retract 2mm before wipe (Bowden)\nG1 X65 Y-224.7 Z0.2 F6000 ; Wipe move at Z0.2\nG92 E0 ; Zero extruder before print\n;======= END START G-CODE =======" + ], + "machine_tool_change_time": "0", + "machine_unload_filament_time": "4", + "manual_filament_change": "0", + "master_extruder_id": "1", + "max_layer_height": [ + "0.32" + ], + "max_resonance_avoidance_speed": "100", + "min_layer_height": [ + "0.08" + ], + "min_resonance_avoidance_speed": "50", + "nozzle_diameter": [ + "0.4" + ], + "nozzle_flush_dataset": [ + "0" + ], + "nozzle_height": "3.0", + "nozzle_hrc": "0", + "nozzle_type": [ + "brass" + ], + "nozzle_volume": [ + "0" + ], + "parking_pos_retraction": "260", + "pellet_modded_printer": "0", + "physical_extruder_map": [ + "0" + ], + "preferred_orientation": "0", + "printable_area": [ + "250.0000x0.0000", + "249.0487x21.7889", + "246.2019x43.4120", + "241.4815x64.7048", + "234.9232x85.5050", + "226.5769x105.6546", + "216.5064x125.0000", + "204.7880x143.3941", + "191.5111x160.6969", + "176.7767x176.7767", + "160.6969x191.5111", + "143.3941x204.7880", + "125.0000x216.5064", + "105.6546x226.5769", + "85.5050x234.9232", + "64.7048x241.4815", + "43.4120x246.2019", + "21.7889x249.0487", + "0.0000x250.0000", + "-21.7889x249.0487", + "-43.4120x246.2019", + "-64.7048x241.4815", + "-85.5050x234.9232", + "-105.6546x226.5769", + "-125.0000x216.5064", + "-143.3941x204.7880", + "-160.6969x191.5111", + "-176.7767x176.7767", + "-191.5111x160.6969", + "-204.7880x143.3941", + "-216.5064x125.0000", + "-226.5769x105.6546", + "-234.9232x85.5050", + "-241.4815x64.7048", + "-246.2019x43.4120", + "-249.0487x21.7889", + "-250.0000x0.0000", + "-249.0487x-21.7889", + "-246.2019x-43.4120", + "-241.4815x-64.7048", + "-234.9232x-85.5050", + "-226.5769x-105.6546", + "-216.5064x-125.0000", + "-204.7880x-143.3941", + "-191.5111x-160.6969", + "-176.7767x-176.7767", + "-160.6969x-191.5111", + "-143.3941x-204.7880", + "-125.0000x-216.5064", + "-105.6546x-226.5769", + "-85.5050x-234.9232", + "-64.7048x-241.4815", + "-43.4120x-246.2019", + "-21.7889x-249.0487", + "-0.0000x-250.0000", + "21.7889x-249.0487", + "43.4120x-246.2019", + "64.7048x-241.4815", + "85.5050x-234.9232", + "105.6546x-226.5769", + "125.0000x-216.5064", + "143.3941x-204.7880", + "160.6969x-191.5111", + "176.7767x-176.7767", + "191.5111x-160.6969", + "204.7880x-143.3941", + "216.5064x-125.0000", + "226.5769x-105.6546", + "234.9232x-85.5050", + "241.4815x-64.7048", + "246.2019x-43.4120", + "249.0487x-21.7889" + ], + "printable_height": "1000", + "printer_agent": "", + "printer_extruder_id": [ + "1" + ], + "printer_extruder_variant": [ + "Bowden Standard" + ], + "printer_model": "SeeMeCNC BOSSdelta 500 0510", + "printer_notes": "", + "printer_settings_id": "SeeMeCNC BOSSdelta 500 0510 0.4 nozzle", + "printer_structure": "delta", + "printer_technology": "FFF", + "printer_variant": "0.4", + "printhost_authorization_type": "key", + "printhost_ssl_ignore_revoke": "0", + "printing_by_object_gcode": "", + "purge_in_prime_tower": "0", + "resonance_avoidance": "0", + "retract_before_wipe": [ + "70%" + ], + "retract_length_toolchange": [ + "3" + ], + "retract_lift_above": [ + "0" + ], + "retract_lift_below": [ + "0" + ], + "retract_lift_enforce": [ + "All Surfaces" + ], + "retract_restart_extra": [ + "0" + ], + "retract_restart_extra_toolchange": [ + "2" + ], + "retract_when_changing_layer": [ + "1" + ], + "retraction_distances_when_cut": [ + "18" + ], + "retraction_length": [ + "6" + ], + "retraction_minimum_travel": [ + "1" + ], + "retraction_speed": [ + "60" + ], + "scan_first_layer": "0", + "silent_mode": "0", + "single_extruder_multi_material": "1", + "support_air_filtration": "1", + "support_chamber_temp_control": "1", + "support_multi_bed_types": "0", + "support_object_skip_flush": "0", + "template_custom_gcode": "", + "thumbnails": "48x48/PNG, 300x300/PNG", + "thumbnails_format": "PNG", + "time_cost": "0", + "time_lapse_gcode": "", + "travel_slope": [ + "3" + ], + "upward_compatible_machine": [], + "use_firmware_retraction": "0", + "use_relative_e_distances": "1", + "wipe": [ + "1" + ], + "wipe_distance": [ + "1" + ], + "wipe_tower_type": "type2", + "wrapping_detection_gcode": "", + "wrapping_detection_layers": "20", + "wrapping_exclude_area": [], + "z_hop": [ + "0.4" + ], + "z_hop_types": [ + "Auto Lift" + ], + "z_offset": "0", + "model": "SeeMeCNC BOSSdelta 500 0510", + "thumbnail": "SeeMeCNC BOSSdelta 500 0510_cover.png", + "description": "SeeMeCNC configurations" +} diff --git a/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta500_0510_0_5mm.json b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta500_0510_0_5mm.json new file mode 100644 index 00000000000..41d6e5eeff5 --- /dev/null +++ b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta500_0510_0_5mm.json @@ -0,0 +1,351 @@ +{ + "type": "machine", + "name": "SeeMeCNC BOSSdelta 500 0510 0.5 nozzle", + "from": "System", + "instantiation": "true", + "adaptive_bed_mesh_margin": "0", + "auxiliary_fan": "0", + "bed_custom_model": "SeeMeCNC_Buildplate_Model_500.STL", + "bed_custom_texture": "SeeMeCNC_Buildplate_texture.png", + "bed_exclude_area": [ + "0x0" + ], + "bed_mesh_max": "99999,99999", + "bed_mesh_min": "-99999,-99999", + "bed_mesh_probe_distance": "50,50", + "bed_temperature_formula": "by_first_filament", + "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\n{if layer_num == 1}M104 S[nozzle_temperature] ; Step down from first layer temp to print temp{endif}\nG92 E0\n", + "best_object_pos": "0.5,0.5", + "change_extrusion_role_gcode": "", + "change_filament_gcode": "{if layer_num >= 0}\nG92 E0\nG1 E-5 F3000\nG1 E-155 F5000\nT[next_extruder]\n{if layer_num == 0}\nM109 S[first_layer_temperature]\n{else}\nM109 S[nozzle_temperature]\n{endif}\nG1 E160 F5000\nG92 E0\n{endif}", + "cooling_tube_length": "5", + "cooling_tube_retraction": "260", + "default_filament_profile": [ + "SeeMeCNC PLA" + ], + "default_nozzle_volume_type": [ + "Standard" + ], + "default_print_profile": "0.25mm Standard @SeeMeCNC BOSSdelta 500 0510 0.5", + "deretraction_speed": [ + "60" + ], + "disable_m73": "0", + "emit_machine_limits_to_gcode": "1", + "enable_filament_ramming": "0", + "enable_long_retraction_when_cut": "0", + "enable_power_loss_recovery": "printer_configuration", + "extra_loading_move": "0", + "extruder_clearance_height_to_lid": "70", + "extruder_clearance_height_to_rod": "70", + "extruder_clearance_radius": "75", + "extruder_colour": [ + "#FCE94F" + ], + "extruder_offset": [ + "0x0" + ], + "extruder_printable_area": [], + "extruder_printable_height": [ + "1000" + ], + "extruder_type": [ + "Bowden" + ], + "extruder_variant_list": [ + "Bowden Standard" + ], + "fan_kickstart": "0", + "fan_speedup_overhangs": "1", + "fan_speedup_time": "0", + "file_start_gcode": "", + "gcode_flavor": "reprapfirmware", + "grab_length": [ + "0" + ], + "head_wrap_detect_zone": [], + "high_current_on_filament_swap": "0", + "host_type": "duet", + "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", + "long_retractions_when_cut": [ + "0" + ], + "machine_end_gcode": [ + ";======= SEEMECNC BOSSDELTA 500 0510 END G-CODE =======\nM104 S0 ; Turn off hotend\nM140 S0 ; Turn off heated bed\nM107 T0 ; Turn off part cooling fan\nG91 ; Relative positioning\nG1 Z2 E-160 F6000 ; Lift 2mm and retract 160mm\nG92 E0\nG90 ; Absolute positioning\nM203 Z18000 ; Allow fast Z for homing\nG28 ; Home all axes - clears part immediately on a delta\n;======= END G-CODE =======" + ], + "machine_load_filament_time": "4", + "machine_max_acceleration_e": [ + "5000", + "5000" + ], + "machine_max_acceleration_extruding": [ + "5000", + "5000" + ], + "machine_max_acceleration_retracting": [ + "5000", + "5000" + ], + "machine_max_acceleration_travel": [ + "5000", + "5000" + ], + "machine_max_acceleration_x": [ + "5000", + "5000" + ], + "machine_max_acceleration_y": [ + "5000", + "5000" + ], + "machine_max_acceleration_z": [ + "5000", + "5000" + ], + "machine_max_jerk_e": [ + "15", + "15" + ], + "machine_max_jerk_x": [ + "15", + "15" + ], + "machine_max_jerk_y": [ + "15", + "15" + ], + "machine_max_jerk_z": [ + "15", + "15" + ], + "machine_max_junction_deviation": [ + "0.01" + ], + "machine_max_speed_e": [ + "150", + "25" + ], + "machine_max_speed_x": [ + "300", + "300" + ], + "machine_max_speed_y": [ + "300", + "300" + ], + "machine_max_speed_z": [ + "100", + "100" + ], + "machine_min_extruding_rate": [ + "0", + "0" + ], + "machine_min_travel_rate": [ + "0", + "0" + ], + "machine_pause_gcode": "M601", + "machine_start_gcode": [ + ";======= SEEMECNC BOSSDELTA 500 0510 START G-CODE =======\nG21 ; Set units to mm\nG90 ; Absolute positioning\nM82 ; Extruder to absolute mode\nG28 ; Home all axes\nG1 Z50 F9000 ; Lift nozzle for safe heating\n; --- SELECT STARTING TOOL ---\nT[initial_tool] ; Activate the first assigned filament in OrcaSlicer\n; --- PREHEAT ---\nM140 S[first_layer_bed_temperature] ; Start bed heating\nM104 S[first_layer_temperature] ; Start nozzle heating\nM190 S[first_layer_bed_temperature] ; Wait for bed to reach temp\nM109 S[first_layer_temperature] ; Wait for nozzle to reach temp\n; --- RE-PRIME BOWDEN TUBE ---\nG92 E0\nG1 E160.5 F3000 ; Retract 160mm\nG92 E0\n; --- PURGE LINE (curved arc near front edge, 500mm bed) ---\nG92 E0\nG1 X-50 Y-234.7 Z0.4 F5000 ; Move to arc start (inside 250mm radius)\nG1 Z0.3 F1000 ; Drop to prime height\nG3 X50 Y-234.7 R240.0 E40 F600 ; Arc purge, 100mm sweep, heavy extrusion\nG1 E38 F4500 ; Retract 2mm before wipe (Bowden)\nG1 X65 Y-224.7 Z0.2 F6000 ; Wipe move at Z0.2\nG92 E0 ; Zero extruder before print\n;======= END START G-CODE =======" + ], + "machine_tool_change_time": "0", + "machine_unload_filament_time": "4", + "manual_filament_change": "0", + "master_extruder_id": "1", + "max_layer_height": [ + "0.4" + ], + "max_resonance_avoidance_speed": "100", + "min_layer_height": [ + "0.08" + ], + "min_resonance_avoidance_speed": "50", + "nozzle_diameter": [ + "0.5" + ], + "nozzle_flush_dataset": [ + "0" + ], + "nozzle_height": "3.0", + "nozzle_hrc": "0", + "nozzle_type": [ + "brass" + ], + "nozzle_volume": [ + "0" + ], + "parking_pos_retraction": "260", + "pellet_modded_printer": "0", + "physical_extruder_map": [ + "0" + ], + "preferred_orientation": "0", + "printable_area": [ + "250.0000x0.0000", + "249.0487x21.7889", + "246.2019x43.4120", + "241.4815x64.7048", + "234.9232x85.5050", + "226.5769x105.6546", + "216.5064x125.0000", + "204.7880x143.3941", + "191.5111x160.6969", + "176.7767x176.7767", + "160.6969x191.5111", + "143.3941x204.7880", + "125.0000x216.5064", + "105.6546x226.5769", + "85.5050x234.9232", + "64.7048x241.4815", + "43.4120x246.2019", + "21.7889x249.0487", + "0.0000x250.0000", + "-21.7889x249.0487", + "-43.4120x246.2019", + "-64.7048x241.4815", + "-85.5050x234.9232", + "-105.6546x226.5769", + "-125.0000x216.5064", + "-143.3941x204.7880", + "-160.6969x191.5111", + "-176.7767x176.7767", + "-191.5111x160.6969", + "-204.7880x143.3941", + "-216.5064x125.0000", + "-226.5769x105.6546", + "-234.9232x85.5050", + "-241.4815x64.7048", + "-246.2019x43.4120", + "-249.0487x21.7889", + "-250.0000x0.0000", + "-249.0487x-21.7889", + "-246.2019x-43.4120", + "-241.4815x-64.7048", + "-234.9232x-85.5050", + "-226.5769x-105.6546", + "-216.5064x-125.0000", + "-204.7880x-143.3941", + "-191.5111x-160.6969", + "-176.7767x-176.7767", + "-160.6969x-191.5111", + "-143.3941x-204.7880", + "-125.0000x-216.5064", + "-105.6546x-226.5769", + "-85.5050x-234.9232", + "-64.7048x-241.4815", + "-43.4120x-246.2019", + "-21.7889x-249.0487", + "-0.0000x-250.0000", + "21.7889x-249.0487", + "43.4120x-246.2019", + "64.7048x-241.4815", + "85.5050x-234.9232", + "105.6546x-226.5769", + "125.0000x-216.5064", + "143.3941x-204.7880", + "160.6969x-191.5111", + "176.7767x-176.7767", + "191.5111x-160.6969", + "204.7880x-143.3941", + "216.5064x-125.0000", + "226.5769x-105.6546", + "234.9232x-85.5050", + "241.4815x-64.7048", + "246.2019x-43.4120", + "249.0487x-21.7889" + ], + "printable_height": "1000", + "printer_agent": "", + "printer_extruder_id": [ + "1" + ], + "printer_extruder_variant": [ + "Bowden Standard" + ], + "printer_model": "SeeMeCNC BOSSdelta 500 0510", + "printer_notes": "", + "printer_settings_id": "SeeMeCNC BOSSdelta 500 0510 0.5 nozzle", + "printer_structure": "delta", + "printer_technology": "FFF", + "printer_variant": "0.5", + "printhost_authorization_type": "key", + "printhost_ssl_ignore_revoke": "0", + "printing_by_object_gcode": "", + "purge_in_prime_tower": "0", + "resonance_avoidance": "0", + "retract_before_wipe": [ + "70%" + ], + "retract_length_toolchange": [ + "3" + ], + "retract_lift_above": [ + "0" + ], + "retract_lift_below": [ + "0" + ], + "retract_lift_enforce": [ + "All Surfaces" + ], + "retract_restart_extra": [ + "0" + ], + "retract_restart_extra_toolchange": [ + "2" + ], + "retract_when_changing_layer": [ + "1" + ], + "retraction_distances_when_cut": [ + "18" + ], + "retraction_length": [ + "6" + ], + "retraction_minimum_travel": [ + "1" + ], + "retraction_speed": [ + "60" + ], + "scan_first_layer": "0", + "silent_mode": "0", + "single_extruder_multi_material": "1", + "support_air_filtration": "1", + "support_chamber_temp_control": "1", + "support_multi_bed_types": "0", + "support_object_skip_flush": "0", + "template_custom_gcode": "", + "thumbnails": "48x48/PNG, 300x300/PNG", + "thumbnails_format": "PNG", + "time_cost": "0", + "time_lapse_gcode": "", + "travel_slope": [ + "3" + ], + "upward_compatible_machine": [], + "use_firmware_retraction": "0", + "use_relative_e_distances": "1", + "wipe": [ + "1" + ], + "wipe_distance": [ + "1" + ], + "wipe_tower_type": "type2", + "wrapping_detection_gcode": "", + "wrapping_detection_layers": "20", + "wrapping_exclude_area": [], + "z_hop": [ + "0.4" + ], + "z_hop_types": [ + "Auto Lift" + ], + "z_offset": "0", + "model": "SeeMeCNC BOSSdelta 500 0510", + "thumbnail": "SeeMeCNC BOSSdelta 500 0510_cover.png", + "description": "SeeMeCNC configurations" +} diff --git a/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta500_0510_0_7mm.json b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta500_0510_0_7mm.json new file mode 100644 index 00000000000..e7d67f4ff8b --- /dev/null +++ b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta500_0510_0_7mm.json @@ -0,0 +1,351 @@ +{ + "type": "machine", + "name": "SeeMeCNC BOSSdelta 500 0510 0.7 nozzle", + "from": "System", + "instantiation": "true", + "adaptive_bed_mesh_margin": "0", + "auxiliary_fan": "0", + "bed_custom_model": "SeeMeCNC_Buildplate_Model_500.STL", + "bed_custom_texture": "SeeMeCNC_Buildplate_texture.png", + "bed_exclude_area": [ + "0x0" + ], + "bed_mesh_max": "99999,99999", + "bed_mesh_min": "-99999,-99999", + "bed_mesh_probe_distance": "50,50", + "bed_temperature_formula": "by_first_filament", + "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\n{if layer_num == 1}M104 S[nozzle_temperature] ; Step down from first layer temp to print temp{endif}\nG92 E0\n", + "best_object_pos": "0.5,0.5", + "change_extrusion_role_gcode": "", + "change_filament_gcode": "{if layer_num >= 0}\nG92 E0\nG1 E-5 F3000\nG1 E-155 F5000\nT[next_extruder]\n{if layer_num == 0}\nM109 S[first_layer_temperature]\n{else}\nM109 S[nozzle_temperature]\n{endif}\nG1 E160 F5000\nG92 E0\n{endif}", + "cooling_tube_length": "5", + "cooling_tube_retraction": "260", + "default_filament_profile": [ + "SeeMeCNC PLA" + ], + "default_nozzle_volume_type": [ + "Standard" + ], + "default_print_profile": "0.35mm Standard @SeeMeCNC BOSSdelta 500 0510 0.7", + "deretraction_speed": [ + "60" + ], + "disable_m73": "0", + "emit_machine_limits_to_gcode": "1", + "enable_filament_ramming": "0", + "enable_long_retraction_when_cut": "0", + "enable_power_loss_recovery": "printer_configuration", + "extra_loading_move": "0", + "extruder_clearance_height_to_lid": "70", + "extruder_clearance_height_to_rod": "70", + "extruder_clearance_radius": "75", + "extruder_colour": [ + "#FCE94F" + ], + "extruder_offset": [ + "0x0" + ], + "extruder_printable_area": [], + "extruder_printable_height": [ + "1000" + ], + "extruder_type": [ + "Bowden" + ], + "extruder_variant_list": [ + "Bowden Standard" + ], + "fan_kickstart": "0", + "fan_speedup_overhangs": "1", + "fan_speedup_time": "0", + "file_start_gcode": "", + "gcode_flavor": "reprapfirmware", + "grab_length": [ + "0" + ], + "head_wrap_detect_zone": [], + "high_current_on_filament_swap": "0", + "host_type": "duet", + "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", + "long_retractions_when_cut": [ + "0" + ], + "machine_end_gcode": [ + ";======= SEEMECNC BOSSDELTA 500 0510 END G-CODE =======\nM104 S0 ; Turn off hotend\nM140 S0 ; Turn off heated bed\nM107 T0 ; Turn off part cooling fan\nG91 ; Relative positioning\nG1 Z2 E-160 F6000 ; Lift 2mm and retract 160mm\nG92 E0\nG90 ; Absolute positioning\nM203 Z18000 ; Allow fast Z for homing\nG28 ; Home all axes - clears part immediately on a delta\n;======= END G-CODE =======" + ], + "machine_load_filament_time": "4", + "machine_max_acceleration_e": [ + "5000", + "5000" + ], + "machine_max_acceleration_extruding": [ + "5000", + "5000" + ], + "machine_max_acceleration_retracting": [ + "5000", + "5000" + ], + "machine_max_acceleration_travel": [ + "5000", + "5000" + ], + "machine_max_acceleration_x": [ + "5000", + "5000" + ], + "machine_max_acceleration_y": [ + "5000", + "5000" + ], + "machine_max_acceleration_z": [ + "5000", + "5000" + ], + "machine_max_jerk_e": [ + "15", + "15" + ], + "machine_max_jerk_x": [ + "15", + "15" + ], + "machine_max_jerk_y": [ + "15", + "15" + ], + "machine_max_jerk_z": [ + "15", + "15" + ], + "machine_max_junction_deviation": [ + "0.01" + ], + "machine_max_speed_e": [ + "150", + "25" + ], + "machine_max_speed_x": [ + "300", + "300" + ], + "machine_max_speed_y": [ + "300", + "300" + ], + "machine_max_speed_z": [ + "100", + "100" + ], + "machine_min_extruding_rate": [ + "0", + "0" + ], + "machine_min_travel_rate": [ + "0", + "0" + ], + "machine_pause_gcode": "M601", + "machine_start_gcode": [ + ";======= SEEMECNC BOSSDELTA 500 0510 START G-CODE =======\nG21 ; Set units to mm\nG90 ; Absolute positioning\nM82 ; Extruder to absolute mode\nG28 ; Home all axes\nG1 Z50 F9000 ; Lift nozzle for safe heating\n; --- SELECT STARTING TOOL ---\nT[initial_tool] ; Activate the first assigned filament in OrcaSlicer\n; --- PREHEAT ---\nM140 S[first_layer_bed_temperature] ; Start bed heating\nM104 S[first_layer_temperature] ; Start nozzle heating\nM190 S[first_layer_bed_temperature] ; Wait for bed to reach temp\nM109 S[first_layer_temperature] ; Wait for nozzle to reach temp\n; --- RE-PRIME BOWDEN TUBE ---\nG92 E0\nG1 E160.5 F3000 ; Retract 160mm\nG92 E0\n; --- PURGE LINE (curved arc near front edge, 500mm bed) ---\nG92 E0\nG1 X-50 Y-234.7 Z0.4 F5000 ; Move to arc start (inside 250mm radius)\nG1 Z0.3 F1000 ; Drop to prime height\nG3 X50 Y-234.7 R240.0 E40 F600 ; Arc purge, 100mm sweep, heavy extrusion\nG1 E38 F4500 ; Retract 2mm before wipe (Bowden)\nG1 X65 Y-224.7 Z0.2 F6000 ; Wipe move at Z0.2\nG92 E0 ; Zero extruder before print\n;======= END START G-CODE =======" + ], + "machine_tool_change_time": "0", + "machine_unload_filament_time": "4", + "manual_filament_change": "0", + "master_extruder_id": "1", + "max_layer_height": [ + "0.56" + ], + "max_resonance_avoidance_speed": "100", + "min_layer_height": [ + "0.08" + ], + "min_resonance_avoidance_speed": "50", + "nozzle_diameter": [ + "0.7" + ], + "nozzle_flush_dataset": [ + "0" + ], + "nozzle_height": "3.0", + "nozzle_hrc": "0", + "nozzle_type": [ + "brass" + ], + "nozzle_volume": [ + "0" + ], + "parking_pos_retraction": "260", + "pellet_modded_printer": "0", + "physical_extruder_map": [ + "0" + ], + "preferred_orientation": "0", + "printable_area": [ + "250.0000x0.0000", + "249.0487x21.7889", + "246.2019x43.4120", + "241.4815x64.7048", + "234.9232x85.5050", + "226.5769x105.6546", + "216.5064x125.0000", + "204.7880x143.3941", + "191.5111x160.6969", + "176.7767x176.7767", + "160.6969x191.5111", + "143.3941x204.7880", + "125.0000x216.5064", + "105.6546x226.5769", + "85.5050x234.9232", + "64.7048x241.4815", + "43.4120x246.2019", + "21.7889x249.0487", + "0.0000x250.0000", + "-21.7889x249.0487", + "-43.4120x246.2019", + "-64.7048x241.4815", + "-85.5050x234.9232", + "-105.6546x226.5769", + "-125.0000x216.5064", + "-143.3941x204.7880", + "-160.6969x191.5111", + "-176.7767x176.7767", + "-191.5111x160.6969", + "-204.7880x143.3941", + "-216.5064x125.0000", + "-226.5769x105.6546", + "-234.9232x85.5050", + "-241.4815x64.7048", + "-246.2019x43.4120", + "-249.0487x21.7889", + "-250.0000x0.0000", + "-249.0487x-21.7889", + "-246.2019x-43.4120", + "-241.4815x-64.7048", + "-234.9232x-85.5050", + "-226.5769x-105.6546", + "-216.5064x-125.0000", + "-204.7880x-143.3941", + "-191.5111x-160.6969", + "-176.7767x-176.7767", + "-160.6969x-191.5111", + "-143.3941x-204.7880", + "-125.0000x-216.5064", + "-105.6546x-226.5769", + "-85.5050x-234.9232", + "-64.7048x-241.4815", + "-43.4120x-246.2019", + "-21.7889x-249.0487", + "-0.0000x-250.0000", + "21.7889x-249.0487", + "43.4120x-246.2019", + "64.7048x-241.4815", + "85.5050x-234.9232", + "105.6546x-226.5769", + "125.0000x-216.5064", + "143.3941x-204.7880", + "160.6969x-191.5111", + "176.7767x-176.7767", + "191.5111x-160.6969", + "204.7880x-143.3941", + "216.5064x-125.0000", + "226.5769x-105.6546", + "234.9232x-85.5050", + "241.4815x-64.7048", + "246.2019x-43.4120", + "249.0487x-21.7889" + ], + "printable_height": "1000", + "printer_agent": "", + "printer_extruder_id": [ + "1" + ], + "printer_extruder_variant": [ + "Bowden Standard" + ], + "printer_model": "SeeMeCNC BOSSdelta 500 0510", + "printer_notes": "", + "printer_settings_id": "SeeMeCNC BOSSdelta 500 0510 0.7 nozzle", + "printer_structure": "delta", + "printer_technology": "FFF", + "printer_variant": "0.7", + "printhost_authorization_type": "key", + "printhost_ssl_ignore_revoke": "0", + "printing_by_object_gcode": "", + "purge_in_prime_tower": "0", + "resonance_avoidance": "0", + "retract_before_wipe": [ + "70%" + ], + "retract_length_toolchange": [ + "3" + ], + "retract_lift_above": [ + "0" + ], + "retract_lift_below": [ + "0" + ], + "retract_lift_enforce": [ + "All Surfaces" + ], + "retract_restart_extra": [ + "0" + ], + "retract_restart_extra_toolchange": [ + "2" + ], + "retract_when_changing_layer": [ + "1" + ], + "retraction_distances_when_cut": [ + "18" + ], + "retraction_length": [ + "6" + ], + "retraction_minimum_travel": [ + "1" + ], + "retraction_speed": [ + "60" + ], + "scan_first_layer": "0", + "silent_mode": "0", + "single_extruder_multi_material": "1", + "support_air_filtration": "1", + "support_chamber_temp_control": "1", + "support_multi_bed_types": "0", + "support_object_skip_flush": "0", + "template_custom_gcode": "", + "thumbnails": "48x48/PNG, 300x300/PNG", + "thumbnails_format": "PNG", + "time_cost": "0", + "time_lapse_gcode": "", + "travel_slope": [ + "3" + ], + "upward_compatible_machine": [], + "use_firmware_retraction": "0", + "use_relative_e_distances": "1", + "wipe": [ + "1" + ], + "wipe_distance": [ + "1" + ], + "wipe_tower_type": "type2", + "wrapping_detection_gcode": "", + "wrapping_detection_layers": "20", + "wrapping_exclude_area": [], + "z_hop": [ + "0.4" + ], + "z_hop_types": [ + "Auto Lift" + ], + "z_offset": "0", + "model": "SeeMeCNC BOSSdelta 500 0510", + "thumbnail": "SeeMeCNC BOSSdelta 500 0510_cover.png", + "description": "SeeMeCNC configurations" +} diff --git a/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta500_0510_1_0mm.json b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta500_0510_1_0mm.json new file mode 100644 index 00000000000..39e8945cb17 --- /dev/null +++ b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta500_0510_1_0mm.json @@ -0,0 +1,351 @@ +{ + "type": "machine", + "name": "SeeMeCNC BOSSdelta 500 0510 1.0 nozzle", + "from": "System", + "instantiation": "true", + "adaptive_bed_mesh_margin": "0", + "auxiliary_fan": "0", + "bed_custom_model": "SeeMeCNC_Buildplate_Model_500.STL", + "bed_custom_texture": "SeeMeCNC_Buildplate_texture.png", + "bed_exclude_area": [ + "0x0" + ], + "bed_mesh_max": "99999,99999", + "bed_mesh_min": "-99999,-99999", + "bed_mesh_probe_distance": "50,50", + "bed_temperature_formula": "by_first_filament", + "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\n{if layer_num == 1}M104 S[nozzle_temperature] ; Step down from first layer temp to print temp{endif}\nG92 E0\n", + "best_object_pos": "0.5,0.5", + "change_extrusion_role_gcode": "", + "change_filament_gcode": "{if layer_num >= 0}\nG92 E0\nG1 E-5 F3000\nG1 E-155 F5000\nT[next_extruder]\n{if layer_num == 0}\nM109 S[first_layer_temperature]\n{else}\nM109 S[nozzle_temperature]\n{endif}\nG1 E160 F5000\nG92 E0\n{endif}", + "cooling_tube_length": "5", + "cooling_tube_retraction": "260", + "default_filament_profile": [ + "SeeMeCNC PLA" + ], + "default_nozzle_volume_type": [ + "Standard" + ], + "default_print_profile": "0.50mm Standard @SeeMeCNC BOSSdelta 500 0510 1.0", + "deretraction_speed": [ + "60" + ], + "disable_m73": "0", + "emit_machine_limits_to_gcode": "1", + "enable_filament_ramming": "0", + "enable_long_retraction_when_cut": "0", + "enable_power_loss_recovery": "printer_configuration", + "extra_loading_move": "0", + "extruder_clearance_height_to_lid": "70", + "extruder_clearance_height_to_rod": "70", + "extruder_clearance_radius": "75", + "extruder_colour": [ + "#FCE94F" + ], + "extruder_offset": [ + "0x0" + ], + "extruder_printable_area": [], + "extruder_printable_height": [ + "1000" + ], + "extruder_type": [ + "Bowden" + ], + "extruder_variant_list": [ + "Bowden Standard" + ], + "fan_kickstart": "0", + "fan_speedup_overhangs": "1", + "fan_speedup_time": "0", + "file_start_gcode": "", + "gcode_flavor": "reprapfirmware", + "grab_length": [ + "0" + ], + "head_wrap_detect_zone": [], + "high_current_on_filament_swap": "0", + "host_type": "duet", + "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", + "long_retractions_when_cut": [ + "0" + ], + "machine_end_gcode": [ + ";======= SEEMECNC BOSSDELTA 500 0510 END G-CODE =======\nM104 S0 ; Turn off hotend\nM140 S0 ; Turn off heated bed\nM107 T0 ; Turn off part cooling fan\nG91 ; Relative positioning\nG1 Z2 E-160 F6000 ; Lift 2mm and retract 160mm\nG92 E0\nG90 ; Absolute positioning\nM203 Z18000 ; Allow fast Z for homing\nG28 ; Home all axes - clears part immediately on a delta\n;======= END G-CODE =======" + ], + "machine_load_filament_time": "4", + "machine_max_acceleration_e": [ + "5000", + "5000" + ], + "machine_max_acceleration_extruding": [ + "5000", + "5000" + ], + "machine_max_acceleration_retracting": [ + "5000", + "5000" + ], + "machine_max_acceleration_travel": [ + "5000", + "5000" + ], + "machine_max_acceleration_x": [ + "5000", + "5000" + ], + "machine_max_acceleration_y": [ + "5000", + "5000" + ], + "machine_max_acceleration_z": [ + "5000", + "5000" + ], + "machine_max_jerk_e": [ + "15", + "15" + ], + "machine_max_jerk_x": [ + "15", + "15" + ], + "machine_max_jerk_y": [ + "15", + "15" + ], + "machine_max_jerk_z": [ + "15", + "15" + ], + "machine_max_junction_deviation": [ + "0.01" + ], + "machine_max_speed_e": [ + "150", + "25" + ], + "machine_max_speed_x": [ + "300", + "300" + ], + "machine_max_speed_y": [ + "300", + "300" + ], + "machine_max_speed_z": [ + "100", + "100" + ], + "machine_min_extruding_rate": [ + "0", + "0" + ], + "machine_min_travel_rate": [ + "0", + "0" + ], + "machine_pause_gcode": "M601", + "machine_start_gcode": [ + ";======= SEEMECNC BOSSDELTA 500 0510 START G-CODE =======\nG21 ; Set units to mm\nG90 ; Absolute positioning\nM82 ; Extruder to absolute mode\nG28 ; Home all axes\nG1 Z50 F9000 ; Lift nozzle for safe heating\n; --- SELECT STARTING TOOL ---\nT[initial_tool] ; Activate the first assigned filament in OrcaSlicer\n; --- PREHEAT ---\nM140 S[first_layer_bed_temperature] ; Start bed heating\nM104 S[first_layer_temperature] ; Start nozzle heating\nM190 S[first_layer_bed_temperature] ; Wait for bed to reach temp\nM109 S[first_layer_temperature] ; Wait for nozzle to reach temp\n; --- RE-PRIME BOWDEN TUBE ---\nG92 E0\nG1 E160.5 F3000 ; Retract 160mm\nG92 E0\n; --- PURGE LINE (curved arc near front edge, 500mm bed) ---\nG92 E0\nG1 X-50 Y-234.7 Z0.4 F5000 ; Move to arc start (inside 250mm radius)\nG1 Z0.3 F1000 ; Drop to prime height\nG3 X50 Y-234.7 R240.0 E40 F600 ; Arc purge, 100mm sweep, heavy extrusion\nG1 E38 F4500 ; Retract 2mm before wipe (Bowden)\nG1 X65 Y-224.7 Z0.2 F6000 ; Wipe move at Z0.2\nG92 E0 ; Zero extruder before print\n;======= END START G-CODE =======" + ], + "machine_tool_change_time": "0", + "machine_unload_filament_time": "4", + "manual_filament_change": "0", + "master_extruder_id": "1", + "max_layer_height": [ + "0.8" + ], + "max_resonance_avoidance_speed": "100", + "min_layer_height": [ + "0.08" + ], + "min_resonance_avoidance_speed": "50", + "nozzle_diameter": [ + "1.0" + ], + "nozzle_flush_dataset": [ + "0" + ], + "nozzle_height": "3.0", + "nozzle_hrc": "0", + "nozzle_type": [ + "brass" + ], + "nozzle_volume": [ + "0" + ], + "parking_pos_retraction": "260", + "pellet_modded_printer": "0", + "physical_extruder_map": [ + "0" + ], + "preferred_orientation": "0", + "printable_area": [ + "250.0000x0.0000", + "249.0487x21.7889", + "246.2019x43.4120", + "241.4815x64.7048", + "234.9232x85.5050", + "226.5769x105.6546", + "216.5064x125.0000", + "204.7880x143.3941", + "191.5111x160.6969", + "176.7767x176.7767", + "160.6969x191.5111", + "143.3941x204.7880", + "125.0000x216.5064", + "105.6546x226.5769", + "85.5050x234.9232", + "64.7048x241.4815", + "43.4120x246.2019", + "21.7889x249.0487", + "0.0000x250.0000", + "-21.7889x249.0487", + "-43.4120x246.2019", + "-64.7048x241.4815", + "-85.5050x234.9232", + "-105.6546x226.5769", + "-125.0000x216.5064", + "-143.3941x204.7880", + "-160.6969x191.5111", + "-176.7767x176.7767", + "-191.5111x160.6969", + "-204.7880x143.3941", + "-216.5064x125.0000", + "-226.5769x105.6546", + "-234.9232x85.5050", + "-241.4815x64.7048", + "-246.2019x43.4120", + "-249.0487x21.7889", + "-250.0000x0.0000", + "-249.0487x-21.7889", + "-246.2019x-43.4120", + "-241.4815x-64.7048", + "-234.9232x-85.5050", + "-226.5769x-105.6546", + "-216.5064x-125.0000", + "-204.7880x-143.3941", + "-191.5111x-160.6969", + "-176.7767x-176.7767", + "-160.6969x-191.5111", + "-143.3941x-204.7880", + "-125.0000x-216.5064", + "-105.6546x-226.5769", + "-85.5050x-234.9232", + "-64.7048x-241.4815", + "-43.4120x-246.2019", + "-21.7889x-249.0487", + "-0.0000x-250.0000", + "21.7889x-249.0487", + "43.4120x-246.2019", + "64.7048x-241.4815", + "85.5050x-234.9232", + "105.6546x-226.5769", + "125.0000x-216.5064", + "143.3941x-204.7880", + "160.6969x-191.5111", + "176.7767x-176.7767", + "191.5111x-160.6969", + "204.7880x-143.3941", + "216.5064x-125.0000", + "226.5769x-105.6546", + "234.9232x-85.5050", + "241.4815x-64.7048", + "246.2019x-43.4120", + "249.0487x-21.7889" + ], + "printable_height": "1000", + "printer_agent": "", + "printer_extruder_id": [ + "1" + ], + "printer_extruder_variant": [ + "Bowden Standard" + ], + "printer_model": "SeeMeCNC BOSSdelta 500 0510", + "printer_notes": "", + "printer_settings_id": "SeeMeCNC BOSSdelta 500 0510 1.0 nozzle", + "printer_structure": "delta", + "printer_technology": "FFF", + "printer_variant": "1.0", + "printhost_authorization_type": "key", + "printhost_ssl_ignore_revoke": "0", + "printing_by_object_gcode": "", + "purge_in_prime_tower": "0", + "resonance_avoidance": "0", + "retract_before_wipe": [ + "70%" + ], + "retract_length_toolchange": [ + "3" + ], + "retract_lift_above": [ + "0" + ], + "retract_lift_below": [ + "0" + ], + "retract_lift_enforce": [ + "All Surfaces" + ], + "retract_restart_extra": [ + "0" + ], + "retract_restart_extra_toolchange": [ + "2" + ], + "retract_when_changing_layer": [ + "1" + ], + "retraction_distances_when_cut": [ + "18" + ], + "retraction_length": [ + "6" + ], + "retraction_minimum_travel": [ + "1" + ], + "retraction_speed": [ + "60" + ], + "scan_first_layer": "0", + "silent_mode": "0", + "single_extruder_multi_material": "1", + "support_air_filtration": "1", + "support_chamber_temp_control": "1", + "support_multi_bed_types": "0", + "support_object_skip_flush": "0", + "template_custom_gcode": "", + "thumbnails": "48x48/PNG, 300x300/PNG", + "thumbnails_format": "PNG", + "time_cost": "0", + "time_lapse_gcode": "", + "travel_slope": [ + "3" + ], + "upward_compatible_machine": [], + "use_firmware_retraction": "0", + "use_relative_e_distances": "1", + "wipe": [ + "1" + ], + "wipe_distance": [ + "1" + ], + "wipe_tower_type": "type2", + "wrapping_detection_gcode": "", + "wrapping_detection_layers": "20", + "wrapping_exclude_area": [], + "z_hop": [ + "0.4" + ], + "z_hop_types": [ + "Auto Lift" + ], + "z_offset": "0", + "model": "SeeMeCNC BOSSdelta 500 0510", + "thumbnail": "SeeMeCNC BOSSdelta 500 0510_cover.png", + "description": "SeeMeCNC configurations" +} diff --git a/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta500_0521_0_4mm.json b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta500_0521_0_4mm.json new file mode 100644 index 00000000000..ea01fe1b584 --- /dev/null +++ b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta500_0521_0_4mm.json @@ -0,0 +1,351 @@ +{ + "type": "machine", + "name": "SeeMeCNC BOSSdelta 500 0521 0.4 nozzle", + "from": "System", + "instantiation": "true", + "adaptive_bed_mesh_margin": "0", + "auxiliary_fan": "0", + "bed_custom_model": "SeeMeCNC_Buildplate_Model_500.STL", + "bed_custom_texture": "SeeMeCNC_Buildplate_texture.png", + "bed_exclude_area": [ + "0x0" + ], + "bed_mesh_max": "99999,99999", + "bed_mesh_min": "-99999,-99999", + "bed_mesh_probe_distance": "50,50", + "bed_temperature_formula": "by_first_filament", + "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\n{if layer_num == 1}M104 S[nozzle_temperature] ; Step down from first layer temp to print temp{endif}\nG92 E0\n", + "best_object_pos": "0.5,0.5", + "change_extrusion_role_gcode": "", + "change_filament_gcode": "{if layer_num >= 0}\nG92 E0\nG1 E-5 F3000\nG1 E-155 F5000\nT[next_extruder]\n{if layer_num == 0}\nM109 S[first_layer_temperature]\n{else}\nM109 S[nozzle_temperature]\n{endif}\nG1 E160 F5000\nG92 E0\n{endif}", + "cooling_tube_length": "5", + "cooling_tube_retraction": "260", + "default_filament_profile": [ + "SeeMeCNC PLA" + ], + "default_nozzle_volume_type": [ + "Standard" + ], + "default_print_profile": "0.20mm Standard @SeeMeCNC BOSSdelta 500 0521 0.4", + "deretraction_speed": [ + "60" + ], + "disable_m73": "0", + "emit_machine_limits_to_gcode": "1", + "enable_filament_ramming": "0", + "enable_long_retraction_when_cut": "0", + "enable_power_loss_recovery": "printer_configuration", + "extra_loading_move": "0", + "extruder_clearance_height_to_lid": "70", + "extruder_clearance_height_to_rod": "70", + "extruder_clearance_radius": "75", + "extruder_colour": [ + "#FCE94F" + ], + "extruder_offset": [ + "0x0" + ], + "extruder_printable_area": [], + "extruder_printable_height": [ + "2100" + ], + "extruder_type": [ + "Bowden" + ], + "extruder_variant_list": [ + "Bowden Standard" + ], + "fan_kickstart": "0", + "fan_speedup_overhangs": "1", + "fan_speedup_time": "0", + "file_start_gcode": "", + "gcode_flavor": "reprapfirmware", + "grab_length": [ + "0" + ], + "head_wrap_detect_zone": [], + "high_current_on_filament_swap": "0", + "host_type": "duet", + "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", + "long_retractions_when_cut": [ + "0" + ], + "machine_end_gcode": [ + ";======= SEEMECNC BOSSDELTA 500 0521 END G-CODE =======\nM104 S0 ; Turn off hotend\nM140 S0 ; Turn off heated bed\nM107 T0 ; Turn off part cooling fan\nG91 ; Relative positioning\nG1 Z2 E-160 F6000 ; Lift 2mm and retract 160mm\nG92 E0\nG90 ; Absolute positioning\nM203 Z18000 ; Allow fast Z for homing\nG28 ; Home all axes - clears part immediately on a delta\n;======= END G-CODE =======" + ], + "machine_load_filament_time": "4", + "machine_max_acceleration_e": [ + "5000", + "5000" + ], + "machine_max_acceleration_extruding": [ + "5000", + "5000" + ], + "machine_max_acceleration_retracting": [ + "5000", + "5000" + ], + "machine_max_acceleration_travel": [ + "5000", + "5000" + ], + "machine_max_acceleration_x": [ + "5000", + "5000" + ], + "machine_max_acceleration_y": [ + "5000", + "5000" + ], + "machine_max_acceleration_z": [ + "5000", + "5000" + ], + "machine_max_jerk_e": [ + "15", + "15" + ], + "machine_max_jerk_x": [ + "15", + "15" + ], + "machine_max_jerk_y": [ + "15", + "15" + ], + "machine_max_jerk_z": [ + "15", + "15" + ], + "machine_max_junction_deviation": [ + "0.01" + ], + "machine_max_speed_e": [ + "150", + "25" + ], + "machine_max_speed_x": [ + "300", + "300" + ], + "machine_max_speed_y": [ + "300", + "300" + ], + "machine_max_speed_z": [ + "100", + "100" + ], + "machine_min_extruding_rate": [ + "0", + "0" + ], + "machine_min_travel_rate": [ + "0", + "0" + ], + "machine_pause_gcode": "M601", + "machine_start_gcode": [ + ";======= SEEMECNC BOSSDELTA 500 0521 START G-CODE =======\nG21 ; Set units to mm\nG90 ; Absolute positioning\nM82 ; Extruder to absolute mode\nG28 ; Home all axes\nG1 Z50 F9000 ; Lift nozzle for safe heating\n; --- SELECT STARTING TOOL ---\nT[initial_tool] ; Activate the first assigned filament in OrcaSlicer\n; --- PREHEAT ---\nM140 S[first_layer_bed_temperature] ; Start bed heating\nM104 S[first_layer_temperature] ; Start nozzle heating\nM190 S[first_layer_bed_temperature] ; Wait for bed to reach temp\nM109 S[first_layer_temperature] ; Wait for nozzle to reach temp\n; --- RE-PRIME BOWDEN TUBE ---\nG92 E0\nG1 E160.5 F3000 ; Retract 160mm\nG92 E0\n; --- PURGE LINE (curved arc near front edge, 500mm bed) ---\nG92 E0\nG1 X-50 Y-234.7 Z0.4 F5000 ; Move to arc start (inside 250mm radius)\nG1 Z0.3 F1000 ; Drop to prime height\nG3 X50 Y-234.7 R240.0 E40 F600 ; Arc purge, 100mm sweep, heavy extrusion\nG1 E38 F4500 ; Retract 2mm before wipe (Bowden)\nG1 X65 Y-224.7 Z0.2 F6000 ; Wipe move at Z0.2\nG92 E0 ; Zero extruder before print\n;======= END START G-CODE =======" + ], + "machine_tool_change_time": "0", + "machine_unload_filament_time": "4", + "manual_filament_change": "0", + "master_extruder_id": "1", + "max_layer_height": [ + "0.32" + ], + "max_resonance_avoidance_speed": "100", + "min_layer_height": [ + "0.08" + ], + "min_resonance_avoidance_speed": "50", + "nozzle_diameter": [ + "0.4" + ], + "nozzle_flush_dataset": [ + "0" + ], + "nozzle_height": "3.0", + "nozzle_hrc": "0", + "nozzle_type": [ + "brass" + ], + "nozzle_volume": [ + "0" + ], + "parking_pos_retraction": "260", + "pellet_modded_printer": "0", + "physical_extruder_map": [ + "0" + ], + "preferred_orientation": "0", + "printable_area": [ + "250.0000x0.0000", + "249.0487x21.7889", + "246.2019x43.4120", + "241.4815x64.7048", + "234.9232x85.5050", + "226.5769x105.6546", + "216.5064x125.0000", + "204.7880x143.3941", + "191.5111x160.6969", + "176.7767x176.7767", + "160.6969x191.5111", + "143.3941x204.7880", + "125.0000x216.5064", + "105.6546x226.5769", + "85.5050x234.9232", + "64.7048x241.4815", + "43.4120x246.2019", + "21.7889x249.0487", + "0.0000x250.0000", + "-21.7889x249.0487", + "-43.4120x246.2019", + "-64.7048x241.4815", + "-85.5050x234.9232", + "-105.6546x226.5769", + "-125.0000x216.5064", + "-143.3941x204.7880", + "-160.6969x191.5111", + "-176.7767x176.7767", + "-191.5111x160.6969", + "-204.7880x143.3941", + "-216.5064x125.0000", + "-226.5769x105.6546", + "-234.9232x85.5050", + "-241.4815x64.7048", + "-246.2019x43.4120", + "-249.0487x21.7889", + "-250.0000x0.0000", + "-249.0487x-21.7889", + "-246.2019x-43.4120", + "-241.4815x-64.7048", + "-234.9232x-85.5050", + "-226.5769x-105.6546", + "-216.5064x-125.0000", + "-204.7880x-143.3941", + "-191.5111x-160.6969", + "-176.7767x-176.7767", + "-160.6969x-191.5111", + "-143.3941x-204.7880", + "-125.0000x-216.5064", + "-105.6546x-226.5769", + "-85.5050x-234.9232", + "-64.7048x-241.4815", + "-43.4120x-246.2019", + "-21.7889x-249.0487", + "-0.0000x-250.0000", + "21.7889x-249.0487", + "43.4120x-246.2019", + "64.7048x-241.4815", + "85.5050x-234.9232", + "105.6546x-226.5769", + "125.0000x-216.5064", + "143.3941x-204.7880", + "160.6969x-191.5111", + "176.7767x-176.7767", + "191.5111x-160.6969", + "204.7880x-143.3941", + "216.5064x-125.0000", + "226.5769x-105.6546", + "234.9232x-85.5050", + "241.4815x-64.7048", + "246.2019x-43.4120", + "249.0487x-21.7889" + ], + "printable_height": "2100", + "printer_agent": "", + "printer_extruder_id": [ + "1" + ], + "printer_extruder_variant": [ + "Bowden Standard" + ], + "printer_model": "SeeMeCNC BOSSdelta 500 0521", + "printer_notes": "", + "printer_settings_id": "SeeMeCNC BOSSdelta 500 0521 0.4 nozzle", + "printer_structure": "delta", + "printer_technology": "FFF", + "printer_variant": "0.4", + "printhost_authorization_type": "key", + "printhost_ssl_ignore_revoke": "0", + "printing_by_object_gcode": "", + "purge_in_prime_tower": "0", + "resonance_avoidance": "0", + "retract_before_wipe": [ + "70%" + ], + "retract_length_toolchange": [ + "3" + ], + "retract_lift_above": [ + "0" + ], + "retract_lift_below": [ + "0" + ], + "retract_lift_enforce": [ + "All Surfaces" + ], + "retract_restart_extra": [ + "0" + ], + "retract_restart_extra_toolchange": [ + "2" + ], + "retract_when_changing_layer": [ + "1" + ], + "retraction_distances_when_cut": [ + "18" + ], + "retraction_length": [ + "6" + ], + "retraction_minimum_travel": [ + "1" + ], + "retraction_speed": [ + "60" + ], + "scan_first_layer": "0", + "silent_mode": "0", + "single_extruder_multi_material": "0", + "support_air_filtration": "1", + "support_chamber_temp_control": "1", + "support_multi_bed_types": "0", + "support_object_skip_flush": "0", + "template_custom_gcode": "", + "thumbnails": "48x48/PNG, 300x300/PNG", + "thumbnails_format": "PNG", + "time_cost": "0", + "time_lapse_gcode": "", + "travel_slope": [ + "3" + ], + "upward_compatible_machine": [], + "use_firmware_retraction": "0", + "use_relative_e_distances": "1", + "wipe": [ + "1" + ], + "wipe_distance": [ + "1" + ], + "wipe_tower_type": "type2", + "wrapping_detection_gcode": "", + "wrapping_detection_layers": "20", + "wrapping_exclude_area": [], + "z_hop": [ + "0.4" + ], + "z_hop_types": [ + "Auto Lift" + ], + "z_offset": "0", + "model": "SeeMeCNC BOSSdelta 500 0521", + "thumbnail": "SeeMeCNC BOSSdelta 500 0521_cover.png", + "description": "SeeMeCNC configurations" +} diff --git a/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta500_0521_0_5mm.json b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta500_0521_0_5mm.json new file mode 100644 index 00000000000..b7ebd27e1c5 --- /dev/null +++ b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta500_0521_0_5mm.json @@ -0,0 +1,351 @@ +{ + "type": "machine", + "name": "SeeMeCNC BOSSdelta 500 0521 0.5 nozzle", + "from": "System", + "instantiation": "true", + "adaptive_bed_mesh_margin": "0", + "auxiliary_fan": "0", + "bed_custom_model": "SeeMeCNC_Buildplate_Model_500.STL", + "bed_custom_texture": "SeeMeCNC_Buildplate_texture.png", + "bed_exclude_area": [ + "0x0" + ], + "bed_mesh_max": "99999,99999", + "bed_mesh_min": "-99999,-99999", + "bed_mesh_probe_distance": "50,50", + "bed_temperature_formula": "by_first_filament", + "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\n{if layer_num == 1}M104 S[nozzle_temperature] ; Step down from first layer temp to print temp{endif}\nG92 E0\n", + "best_object_pos": "0.5,0.5", + "change_extrusion_role_gcode": "", + "change_filament_gcode": "{if layer_num >= 0}\nG92 E0\nG1 E-5 F3000\nG1 E-155 F5000\nT[next_extruder]\n{if layer_num == 0}\nM109 S[first_layer_temperature]\n{else}\nM109 S[nozzle_temperature]\n{endif}\nG1 E160 F5000\nG92 E0\n{endif}", + "cooling_tube_length": "5", + "cooling_tube_retraction": "260", + "default_filament_profile": [ + "SeeMeCNC PLA" + ], + "default_nozzle_volume_type": [ + "Standard" + ], + "default_print_profile": "0.25mm Standard @SeeMeCNC BOSSdelta 500 0521 0.5", + "deretraction_speed": [ + "60" + ], + "disable_m73": "0", + "emit_machine_limits_to_gcode": "1", + "enable_filament_ramming": "0", + "enable_long_retraction_when_cut": "0", + "enable_power_loss_recovery": "printer_configuration", + "extra_loading_move": "0", + "extruder_clearance_height_to_lid": "70", + "extruder_clearance_height_to_rod": "70", + "extruder_clearance_radius": "75", + "extruder_colour": [ + "#FCE94F" + ], + "extruder_offset": [ + "0x0" + ], + "extruder_printable_area": [], + "extruder_printable_height": [ + "2100" + ], + "extruder_type": [ + "Bowden" + ], + "extruder_variant_list": [ + "Bowden Standard" + ], + "fan_kickstart": "0", + "fan_speedup_overhangs": "1", + "fan_speedup_time": "0", + "file_start_gcode": "", + "gcode_flavor": "reprapfirmware", + "grab_length": [ + "0" + ], + "head_wrap_detect_zone": [], + "high_current_on_filament_swap": "0", + "host_type": "duet", + "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", + "long_retractions_when_cut": [ + "0" + ], + "machine_end_gcode": [ + ";======= SEEMECNC BOSSDELTA 500 0521 END G-CODE =======\nM104 S0 ; Turn off hotend\nM140 S0 ; Turn off heated bed\nM107 T0 ; Turn off part cooling fan\nG91 ; Relative positioning\nG1 Z2 E-160 F6000 ; Lift 2mm and retract 160mm\nG92 E0\nG90 ; Absolute positioning\nM203 Z18000 ; Allow fast Z for homing\nG28 ; Home all axes - clears part immediately on a delta\n;======= END G-CODE =======" + ], + "machine_load_filament_time": "4", + "machine_max_acceleration_e": [ + "5000", + "5000" + ], + "machine_max_acceleration_extruding": [ + "5000", + "5000" + ], + "machine_max_acceleration_retracting": [ + "5000", + "5000" + ], + "machine_max_acceleration_travel": [ + "5000", + "5000" + ], + "machine_max_acceleration_x": [ + "5000", + "5000" + ], + "machine_max_acceleration_y": [ + "5000", + "5000" + ], + "machine_max_acceleration_z": [ + "5000", + "5000" + ], + "machine_max_jerk_e": [ + "15", + "15" + ], + "machine_max_jerk_x": [ + "15", + "15" + ], + "machine_max_jerk_y": [ + "15", + "15" + ], + "machine_max_jerk_z": [ + "15", + "15" + ], + "machine_max_junction_deviation": [ + "0.01" + ], + "machine_max_speed_e": [ + "150", + "25" + ], + "machine_max_speed_x": [ + "300", + "300" + ], + "machine_max_speed_y": [ + "300", + "300" + ], + "machine_max_speed_z": [ + "100", + "100" + ], + "machine_min_extruding_rate": [ + "0", + "0" + ], + "machine_min_travel_rate": [ + "0", + "0" + ], + "machine_pause_gcode": "M601", + "machine_start_gcode": [ + ";======= SEEMECNC BOSSDELTA 500 0521 START G-CODE =======\nG21 ; Set units to mm\nG90 ; Absolute positioning\nM82 ; Extruder to absolute mode\nG28 ; Home all axes\nG1 Z50 F9000 ; Lift nozzle for safe heating\n; --- SELECT STARTING TOOL ---\nT[initial_tool] ; Activate the first assigned filament in OrcaSlicer\n; --- PREHEAT ---\nM140 S[first_layer_bed_temperature] ; Start bed heating\nM104 S[first_layer_temperature] ; Start nozzle heating\nM190 S[first_layer_bed_temperature] ; Wait for bed to reach temp\nM109 S[first_layer_temperature] ; Wait for nozzle to reach temp\n; --- RE-PRIME BOWDEN TUBE ---\nG92 E0\nG1 E160.5 F3000 ; Retract 160mm\nG92 E0\n; --- PURGE LINE (curved arc near front edge, 500mm bed) ---\nG92 E0\nG1 X-50 Y-234.7 Z0.4 F5000 ; Move to arc start (inside 250mm radius)\nG1 Z0.3 F1000 ; Drop to prime height\nG3 X50 Y-234.7 R240.0 E40 F600 ; Arc purge, 100mm sweep, heavy extrusion\nG1 E38 F4500 ; Retract 2mm before wipe (Bowden)\nG1 X65 Y-224.7 Z0.2 F6000 ; Wipe move at Z0.2\nG92 E0 ; Zero extruder before print\n;======= END START G-CODE =======" + ], + "machine_tool_change_time": "0", + "machine_unload_filament_time": "4", + "manual_filament_change": "0", + "master_extruder_id": "1", + "max_layer_height": [ + "0.4" + ], + "max_resonance_avoidance_speed": "100", + "min_layer_height": [ + "0.08" + ], + "min_resonance_avoidance_speed": "50", + "nozzle_diameter": [ + "0.5" + ], + "nozzle_flush_dataset": [ + "0" + ], + "nozzle_height": "3.0", + "nozzle_hrc": "0", + "nozzle_type": [ + "brass" + ], + "nozzle_volume": [ + "0" + ], + "parking_pos_retraction": "260", + "pellet_modded_printer": "0", + "physical_extruder_map": [ + "0" + ], + "preferred_orientation": "0", + "printable_area": [ + "250.0000x0.0000", + "249.0487x21.7889", + "246.2019x43.4120", + "241.4815x64.7048", + "234.9232x85.5050", + "226.5769x105.6546", + "216.5064x125.0000", + "204.7880x143.3941", + "191.5111x160.6969", + "176.7767x176.7767", + "160.6969x191.5111", + "143.3941x204.7880", + "125.0000x216.5064", + "105.6546x226.5769", + "85.5050x234.9232", + "64.7048x241.4815", + "43.4120x246.2019", + "21.7889x249.0487", + "0.0000x250.0000", + "-21.7889x249.0487", + "-43.4120x246.2019", + "-64.7048x241.4815", + "-85.5050x234.9232", + "-105.6546x226.5769", + "-125.0000x216.5064", + "-143.3941x204.7880", + "-160.6969x191.5111", + "-176.7767x176.7767", + "-191.5111x160.6969", + "-204.7880x143.3941", + "-216.5064x125.0000", + "-226.5769x105.6546", + "-234.9232x85.5050", + "-241.4815x64.7048", + "-246.2019x43.4120", + "-249.0487x21.7889", + "-250.0000x0.0000", + "-249.0487x-21.7889", + "-246.2019x-43.4120", + "-241.4815x-64.7048", + "-234.9232x-85.5050", + "-226.5769x-105.6546", + "-216.5064x-125.0000", + "-204.7880x-143.3941", + "-191.5111x-160.6969", + "-176.7767x-176.7767", + "-160.6969x-191.5111", + "-143.3941x-204.7880", + "-125.0000x-216.5064", + "-105.6546x-226.5769", + "-85.5050x-234.9232", + "-64.7048x-241.4815", + "-43.4120x-246.2019", + "-21.7889x-249.0487", + "-0.0000x-250.0000", + "21.7889x-249.0487", + "43.4120x-246.2019", + "64.7048x-241.4815", + "85.5050x-234.9232", + "105.6546x-226.5769", + "125.0000x-216.5064", + "143.3941x-204.7880", + "160.6969x-191.5111", + "176.7767x-176.7767", + "191.5111x-160.6969", + "204.7880x-143.3941", + "216.5064x-125.0000", + "226.5769x-105.6546", + "234.9232x-85.5050", + "241.4815x-64.7048", + "246.2019x-43.4120", + "249.0487x-21.7889" + ], + "printable_height": "2100", + "printer_agent": "", + "printer_extruder_id": [ + "1" + ], + "printer_extruder_variant": [ + "Bowden Standard" + ], + "printer_model": "SeeMeCNC BOSSdelta 500 0521", + "printer_notes": "", + "printer_settings_id": "SeeMeCNC BOSSdelta 500 0521 0.5 nozzle", + "printer_structure": "delta", + "printer_technology": "FFF", + "printer_variant": "0.5", + "printhost_authorization_type": "key", + "printhost_ssl_ignore_revoke": "0", + "printing_by_object_gcode": "", + "purge_in_prime_tower": "0", + "resonance_avoidance": "0", + "retract_before_wipe": [ + "70%" + ], + "retract_length_toolchange": [ + "3" + ], + "retract_lift_above": [ + "0" + ], + "retract_lift_below": [ + "0" + ], + "retract_lift_enforce": [ + "All Surfaces" + ], + "retract_restart_extra": [ + "0" + ], + "retract_restart_extra_toolchange": [ + "2" + ], + "retract_when_changing_layer": [ + "1" + ], + "retraction_distances_when_cut": [ + "18" + ], + "retraction_length": [ + "6" + ], + "retraction_minimum_travel": [ + "1" + ], + "retraction_speed": [ + "60" + ], + "scan_first_layer": "0", + "silent_mode": "0", + "single_extruder_multi_material": "0", + "support_air_filtration": "1", + "support_chamber_temp_control": "1", + "support_multi_bed_types": "0", + "support_object_skip_flush": "0", + "template_custom_gcode": "", + "thumbnails": "48x48/PNG, 300x300/PNG", + "thumbnails_format": "PNG", + "time_cost": "0", + "time_lapse_gcode": "", + "travel_slope": [ + "3" + ], + "upward_compatible_machine": [], + "use_firmware_retraction": "0", + "use_relative_e_distances": "1", + "wipe": [ + "1" + ], + "wipe_distance": [ + "1" + ], + "wipe_tower_type": "type2", + "wrapping_detection_gcode": "", + "wrapping_detection_layers": "20", + "wrapping_exclude_area": [], + "z_hop": [ + "0.4" + ], + "z_hop_types": [ + "Auto Lift" + ], + "z_offset": "0", + "model": "SeeMeCNC BOSSdelta 500 0521", + "thumbnail": "SeeMeCNC BOSSdelta 500 0521_cover.png", + "description": "SeeMeCNC configurations" +} diff --git a/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta500_0521_0_7mm.json b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta500_0521_0_7mm.json new file mode 100644 index 00000000000..bb0b909f5eb --- /dev/null +++ b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta500_0521_0_7mm.json @@ -0,0 +1,351 @@ +{ + "type": "machine", + "name": "SeeMeCNC BOSSdelta 500 0521 0.7 nozzle", + "from": "System", + "instantiation": "true", + "adaptive_bed_mesh_margin": "0", + "auxiliary_fan": "0", + "bed_custom_model": "SeeMeCNC_Buildplate_Model_500.STL", + "bed_custom_texture": "SeeMeCNC_Buildplate_texture.png", + "bed_exclude_area": [ + "0x0" + ], + "bed_mesh_max": "99999,99999", + "bed_mesh_min": "-99999,-99999", + "bed_mesh_probe_distance": "50,50", + "bed_temperature_formula": "by_first_filament", + "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\n{if layer_num == 1}M104 S[nozzle_temperature] ; Step down from first layer temp to print temp{endif}\nG92 E0\n", + "best_object_pos": "0.5,0.5", + "change_extrusion_role_gcode": "", + "change_filament_gcode": "{if layer_num >= 0}\nG92 E0\nG1 E-5 F3000\nG1 E-155 F5000\nT[next_extruder]\n{if layer_num == 0}\nM109 S[first_layer_temperature]\n{else}\nM109 S[nozzle_temperature]\n{endif}\nG1 E160 F5000\nG92 E0\n{endif}", + "cooling_tube_length": "5", + "cooling_tube_retraction": "260", + "default_filament_profile": [ + "SeeMeCNC PLA" + ], + "default_nozzle_volume_type": [ + "Standard" + ], + "default_print_profile": "0.35mm Standard @SeeMeCNC BOSSdelta 500 0521 0.7", + "deretraction_speed": [ + "60" + ], + "disable_m73": "0", + "emit_machine_limits_to_gcode": "1", + "enable_filament_ramming": "0", + "enable_long_retraction_when_cut": "0", + "enable_power_loss_recovery": "printer_configuration", + "extra_loading_move": "0", + "extruder_clearance_height_to_lid": "70", + "extruder_clearance_height_to_rod": "70", + "extruder_clearance_radius": "75", + "extruder_colour": [ + "#FCE94F" + ], + "extruder_offset": [ + "0x0" + ], + "extruder_printable_area": [], + "extruder_printable_height": [ + "2100" + ], + "extruder_type": [ + "Bowden" + ], + "extruder_variant_list": [ + "Bowden Standard" + ], + "fan_kickstart": "0", + "fan_speedup_overhangs": "1", + "fan_speedup_time": "0", + "file_start_gcode": "", + "gcode_flavor": "reprapfirmware", + "grab_length": [ + "0" + ], + "head_wrap_detect_zone": [], + "high_current_on_filament_swap": "0", + "host_type": "duet", + "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", + "long_retractions_when_cut": [ + "0" + ], + "machine_end_gcode": [ + ";======= SEEMECNC BOSSDELTA 500 0521 END G-CODE =======\nM104 S0 ; Turn off hotend\nM140 S0 ; Turn off heated bed\nM107 T0 ; Turn off part cooling fan\nG91 ; Relative positioning\nG1 Z2 E-160 F6000 ; Lift 2mm and retract 160mm\nG92 E0\nG90 ; Absolute positioning\nM203 Z18000 ; Allow fast Z for homing\nG28 ; Home all axes - clears part immediately on a delta\n;======= END G-CODE =======" + ], + "machine_load_filament_time": "4", + "machine_max_acceleration_e": [ + "5000", + "5000" + ], + "machine_max_acceleration_extruding": [ + "5000", + "5000" + ], + "machine_max_acceleration_retracting": [ + "5000", + "5000" + ], + "machine_max_acceleration_travel": [ + "5000", + "5000" + ], + "machine_max_acceleration_x": [ + "5000", + "5000" + ], + "machine_max_acceleration_y": [ + "5000", + "5000" + ], + "machine_max_acceleration_z": [ + "5000", + "5000" + ], + "machine_max_jerk_e": [ + "15", + "15" + ], + "machine_max_jerk_x": [ + "15", + "15" + ], + "machine_max_jerk_y": [ + "15", + "15" + ], + "machine_max_jerk_z": [ + "15", + "15" + ], + "machine_max_junction_deviation": [ + "0.01" + ], + "machine_max_speed_e": [ + "150", + "25" + ], + "machine_max_speed_x": [ + "300", + "300" + ], + "machine_max_speed_y": [ + "300", + "300" + ], + "machine_max_speed_z": [ + "100", + "100" + ], + "machine_min_extruding_rate": [ + "0", + "0" + ], + "machine_min_travel_rate": [ + "0", + "0" + ], + "machine_pause_gcode": "M601", + "machine_start_gcode": [ + ";======= SEEMECNC BOSSDELTA 500 0521 START G-CODE =======\nG21 ; Set units to mm\nG90 ; Absolute positioning\nM82 ; Extruder to absolute mode\nG28 ; Home all axes\nG1 Z50 F9000 ; Lift nozzle for safe heating\n; --- SELECT STARTING TOOL ---\nT[initial_tool] ; Activate the first assigned filament in OrcaSlicer\n; --- PREHEAT ---\nM140 S[first_layer_bed_temperature] ; Start bed heating\nM104 S[first_layer_temperature] ; Start nozzle heating\nM190 S[first_layer_bed_temperature] ; Wait for bed to reach temp\nM109 S[first_layer_temperature] ; Wait for nozzle to reach temp\n; --- RE-PRIME BOWDEN TUBE ---\nG92 E0\nG1 E160.5 F3000 ; Retract 160mm\nG92 E0\n; --- PURGE LINE (curved arc near front edge, 500mm bed) ---\nG92 E0\nG1 X-50 Y-234.7 Z0.4 F5000 ; Move to arc start (inside 250mm radius)\nG1 Z0.3 F1000 ; Drop to prime height\nG3 X50 Y-234.7 R240.0 E40 F600 ; Arc purge, 100mm sweep, heavy extrusion\nG1 E38 F4500 ; Retract 2mm before wipe (Bowden)\nG1 X65 Y-224.7 Z0.2 F6000 ; Wipe move at Z0.2\nG92 E0 ; Zero extruder before print\n;======= END START G-CODE =======" + ], + "machine_tool_change_time": "0", + "machine_unload_filament_time": "4", + "manual_filament_change": "0", + "master_extruder_id": "1", + "max_layer_height": [ + "0.56" + ], + "max_resonance_avoidance_speed": "100", + "min_layer_height": [ + "0.08" + ], + "min_resonance_avoidance_speed": "50", + "nozzle_diameter": [ + "0.7" + ], + "nozzle_flush_dataset": [ + "0" + ], + "nozzle_height": "3.0", + "nozzle_hrc": "0", + "nozzle_type": [ + "brass" + ], + "nozzle_volume": [ + "0" + ], + "parking_pos_retraction": "260", + "pellet_modded_printer": "0", + "physical_extruder_map": [ + "0" + ], + "preferred_orientation": "0", + "printable_area": [ + "250.0000x0.0000", + "249.0487x21.7889", + "246.2019x43.4120", + "241.4815x64.7048", + "234.9232x85.5050", + "226.5769x105.6546", + "216.5064x125.0000", + "204.7880x143.3941", + "191.5111x160.6969", + "176.7767x176.7767", + "160.6969x191.5111", + "143.3941x204.7880", + "125.0000x216.5064", + "105.6546x226.5769", + "85.5050x234.9232", + "64.7048x241.4815", + "43.4120x246.2019", + "21.7889x249.0487", + "0.0000x250.0000", + "-21.7889x249.0487", + "-43.4120x246.2019", + "-64.7048x241.4815", + "-85.5050x234.9232", + "-105.6546x226.5769", + "-125.0000x216.5064", + "-143.3941x204.7880", + "-160.6969x191.5111", + "-176.7767x176.7767", + "-191.5111x160.6969", + "-204.7880x143.3941", + "-216.5064x125.0000", + "-226.5769x105.6546", + "-234.9232x85.5050", + "-241.4815x64.7048", + "-246.2019x43.4120", + "-249.0487x21.7889", + "-250.0000x0.0000", + "-249.0487x-21.7889", + "-246.2019x-43.4120", + "-241.4815x-64.7048", + "-234.9232x-85.5050", + "-226.5769x-105.6546", + "-216.5064x-125.0000", + "-204.7880x-143.3941", + "-191.5111x-160.6969", + "-176.7767x-176.7767", + "-160.6969x-191.5111", + "-143.3941x-204.7880", + "-125.0000x-216.5064", + "-105.6546x-226.5769", + "-85.5050x-234.9232", + "-64.7048x-241.4815", + "-43.4120x-246.2019", + "-21.7889x-249.0487", + "-0.0000x-250.0000", + "21.7889x-249.0487", + "43.4120x-246.2019", + "64.7048x-241.4815", + "85.5050x-234.9232", + "105.6546x-226.5769", + "125.0000x-216.5064", + "143.3941x-204.7880", + "160.6969x-191.5111", + "176.7767x-176.7767", + "191.5111x-160.6969", + "204.7880x-143.3941", + "216.5064x-125.0000", + "226.5769x-105.6546", + "234.9232x-85.5050", + "241.4815x-64.7048", + "246.2019x-43.4120", + "249.0487x-21.7889" + ], + "printable_height": "2100", + "printer_agent": "", + "printer_extruder_id": [ + "1" + ], + "printer_extruder_variant": [ + "Bowden Standard" + ], + "printer_model": "SeeMeCNC BOSSdelta 500 0521", + "printer_notes": "", + "printer_settings_id": "SeeMeCNC BOSSdelta 500 0521 0.7 nozzle", + "printer_structure": "delta", + "printer_technology": "FFF", + "printer_variant": "0.7", + "printhost_authorization_type": "key", + "printhost_ssl_ignore_revoke": "0", + "printing_by_object_gcode": "", + "purge_in_prime_tower": "0", + "resonance_avoidance": "0", + "retract_before_wipe": [ + "70%" + ], + "retract_length_toolchange": [ + "3" + ], + "retract_lift_above": [ + "0" + ], + "retract_lift_below": [ + "0" + ], + "retract_lift_enforce": [ + "All Surfaces" + ], + "retract_restart_extra": [ + "0" + ], + "retract_restart_extra_toolchange": [ + "2" + ], + "retract_when_changing_layer": [ + "1" + ], + "retraction_distances_when_cut": [ + "18" + ], + "retraction_length": [ + "6" + ], + "retraction_minimum_travel": [ + "1" + ], + "retraction_speed": [ + "60" + ], + "scan_first_layer": "0", + "silent_mode": "0", + "single_extruder_multi_material": "0", + "support_air_filtration": "1", + "support_chamber_temp_control": "1", + "support_multi_bed_types": "0", + "support_object_skip_flush": "0", + "template_custom_gcode": "", + "thumbnails": "48x48/PNG, 300x300/PNG", + "thumbnails_format": "PNG", + "time_cost": "0", + "time_lapse_gcode": "", + "travel_slope": [ + "3" + ], + "upward_compatible_machine": [], + "use_firmware_retraction": "0", + "use_relative_e_distances": "1", + "wipe": [ + "1" + ], + "wipe_distance": [ + "1" + ], + "wipe_tower_type": "type2", + "wrapping_detection_gcode": "", + "wrapping_detection_layers": "20", + "wrapping_exclude_area": [], + "z_hop": [ + "0.4" + ], + "z_hop_types": [ + "Auto Lift" + ], + "z_offset": "0", + "model": "SeeMeCNC BOSSdelta 500 0521", + "thumbnail": "SeeMeCNC BOSSdelta 500 0521_cover.png", + "description": "SeeMeCNC configurations" +} diff --git a/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta500_0521_1_0mm.json b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta500_0521_1_0mm.json new file mode 100644 index 00000000000..6c308dfc32f --- /dev/null +++ b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta500_0521_1_0mm.json @@ -0,0 +1,351 @@ +{ + "type": "machine", + "name": "SeeMeCNC BOSSdelta 500 0521 1.0 nozzle", + "from": "System", + "instantiation": "true", + "adaptive_bed_mesh_margin": "0", + "auxiliary_fan": "0", + "bed_custom_model": "SeeMeCNC_Buildplate_Model_500.STL", + "bed_custom_texture": "SeeMeCNC_Buildplate_texture.png", + "bed_exclude_area": [ + "0x0" + ], + "bed_mesh_max": "99999,99999", + "bed_mesh_min": "-99999,-99999", + "bed_mesh_probe_distance": "50,50", + "bed_temperature_formula": "by_first_filament", + "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\n{if layer_num == 1}M104 S[nozzle_temperature] ; Step down from first layer temp to print temp{endif}\nG92 E0\n", + "best_object_pos": "0.5,0.5", + "change_extrusion_role_gcode": "", + "change_filament_gcode": "{if layer_num >= 0}\nG92 E0\nG1 E-5 F3000\nG1 E-155 F5000\nT[next_extruder]\n{if layer_num == 0}\nM109 S[first_layer_temperature]\n{else}\nM109 S[nozzle_temperature]\n{endif}\nG1 E160 F5000\nG92 E0\n{endif}", + "cooling_tube_length": "5", + "cooling_tube_retraction": "260", + "default_filament_profile": [ + "SeeMeCNC PLA" + ], + "default_nozzle_volume_type": [ + "Standard" + ], + "default_print_profile": "0.50mm Standard @SeeMeCNC BOSSdelta 500 0521 1.0", + "deretraction_speed": [ + "60" + ], + "disable_m73": "0", + "emit_machine_limits_to_gcode": "1", + "enable_filament_ramming": "0", + "enable_long_retraction_when_cut": "0", + "enable_power_loss_recovery": "printer_configuration", + "extra_loading_move": "0", + "extruder_clearance_height_to_lid": "70", + "extruder_clearance_height_to_rod": "70", + "extruder_clearance_radius": "75", + "extruder_colour": [ + "#FCE94F" + ], + "extruder_offset": [ + "0x0" + ], + "extruder_printable_area": [], + "extruder_printable_height": [ + "2100" + ], + "extruder_type": [ + "Bowden" + ], + "extruder_variant_list": [ + "Bowden Standard" + ], + "fan_kickstart": "0", + "fan_speedup_overhangs": "1", + "fan_speedup_time": "0", + "file_start_gcode": "", + "gcode_flavor": "reprapfirmware", + "grab_length": [ + "0" + ], + "head_wrap_detect_zone": [], + "high_current_on_filament_swap": "0", + "host_type": "duet", + "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", + "long_retractions_when_cut": [ + "0" + ], + "machine_end_gcode": [ + ";======= SEEMECNC BOSSDELTA 500 0521 END G-CODE =======\nM104 S0 ; Turn off hotend\nM140 S0 ; Turn off heated bed\nM107 T0 ; Turn off part cooling fan\nG91 ; Relative positioning\nG1 Z2 E-160 F6000 ; Lift 2mm and retract 160mm\nG92 E0\nG90 ; Absolute positioning\nM203 Z18000 ; Allow fast Z for homing\nG28 ; Home all axes - clears part immediately on a delta\n;======= END G-CODE =======" + ], + "machine_load_filament_time": "4", + "machine_max_acceleration_e": [ + "5000", + "5000" + ], + "machine_max_acceleration_extruding": [ + "5000", + "5000" + ], + "machine_max_acceleration_retracting": [ + "5000", + "5000" + ], + "machine_max_acceleration_travel": [ + "5000", + "5000" + ], + "machine_max_acceleration_x": [ + "5000", + "5000" + ], + "machine_max_acceleration_y": [ + "5000", + "5000" + ], + "machine_max_acceleration_z": [ + "5000", + "5000" + ], + "machine_max_jerk_e": [ + "15", + "15" + ], + "machine_max_jerk_x": [ + "15", + "15" + ], + "machine_max_jerk_y": [ + "15", + "15" + ], + "machine_max_jerk_z": [ + "15", + "15" + ], + "machine_max_junction_deviation": [ + "0.01" + ], + "machine_max_speed_e": [ + "150", + "25" + ], + "machine_max_speed_x": [ + "300", + "300" + ], + "machine_max_speed_y": [ + "300", + "300" + ], + "machine_max_speed_z": [ + "100", + "100" + ], + "machine_min_extruding_rate": [ + "0", + "0" + ], + "machine_min_travel_rate": [ + "0", + "0" + ], + "machine_pause_gcode": "M601", + "machine_start_gcode": [ + ";======= SEEMECNC BOSSDELTA 500 0521 START G-CODE =======\nG21 ; Set units to mm\nG90 ; Absolute positioning\nM82 ; Extruder to absolute mode\nG28 ; Home all axes\nG1 Z50 F9000 ; Lift nozzle for safe heating\n; --- SELECT STARTING TOOL ---\nT[initial_tool] ; Activate the first assigned filament in OrcaSlicer\n; --- PREHEAT ---\nM140 S[first_layer_bed_temperature] ; Start bed heating\nM104 S[first_layer_temperature] ; Start nozzle heating\nM190 S[first_layer_bed_temperature] ; Wait for bed to reach temp\nM109 S[first_layer_temperature] ; Wait for nozzle to reach temp\n; --- RE-PRIME BOWDEN TUBE ---\nG92 E0\nG1 E160.5 F3000 ; Retract 160mm\nG92 E0\n; --- PURGE LINE (curved arc near front edge, 500mm bed) ---\nG92 E0\nG1 X-50 Y-234.7 Z0.4 F5000 ; Move to arc start (inside 250mm radius)\nG1 Z0.3 F1000 ; Drop to prime height\nG3 X50 Y-234.7 R240.0 E40 F600 ; Arc purge, 100mm sweep, heavy extrusion\nG1 E38 F4500 ; Retract 2mm before wipe (Bowden)\nG1 X65 Y-224.7 Z0.2 F6000 ; Wipe move at Z0.2\nG92 E0 ; Zero extruder before print\n;======= END START G-CODE =======" + ], + "machine_tool_change_time": "0", + "machine_unload_filament_time": "4", + "manual_filament_change": "0", + "master_extruder_id": "1", + "max_layer_height": [ + "0.8" + ], + "max_resonance_avoidance_speed": "100", + "min_layer_height": [ + "0.08" + ], + "min_resonance_avoidance_speed": "50", + "nozzle_diameter": [ + "1.0" + ], + "nozzle_flush_dataset": [ + "0" + ], + "nozzle_height": "3.0", + "nozzle_hrc": "0", + "nozzle_type": [ + "brass" + ], + "nozzle_volume": [ + "0" + ], + "parking_pos_retraction": "260", + "pellet_modded_printer": "0", + "physical_extruder_map": [ + "0" + ], + "preferred_orientation": "0", + "printable_area": [ + "250.0000x0.0000", + "249.0487x21.7889", + "246.2019x43.4120", + "241.4815x64.7048", + "234.9232x85.5050", + "226.5769x105.6546", + "216.5064x125.0000", + "204.7880x143.3941", + "191.5111x160.6969", + "176.7767x176.7767", + "160.6969x191.5111", + "143.3941x204.7880", + "125.0000x216.5064", + "105.6546x226.5769", + "85.5050x234.9232", + "64.7048x241.4815", + "43.4120x246.2019", + "21.7889x249.0487", + "0.0000x250.0000", + "-21.7889x249.0487", + "-43.4120x246.2019", + "-64.7048x241.4815", + "-85.5050x234.9232", + "-105.6546x226.5769", + "-125.0000x216.5064", + "-143.3941x204.7880", + "-160.6969x191.5111", + "-176.7767x176.7767", + "-191.5111x160.6969", + "-204.7880x143.3941", + "-216.5064x125.0000", + "-226.5769x105.6546", + "-234.9232x85.5050", + "-241.4815x64.7048", + "-246.2019x43.4120", + "-249.0487x21.7889", + "-250.0000x0.0000", + "-249.0487x-21.7889", + "-246.2019x-43.4120", + "-241.4815x-64.7048", + "-234.9232x-85.5050", + "-226.5769x-105.6546", + "-216.5064x-125.0000", + "-204.7880x-143.3941", + "-191.5111x-160.6969", + "-176.7767x-176.7767", + "-160.6969x-191.5111", + "-143.3941x-204.7880", + "-125.0000x-216.5064", + "-105.6546x-226.5769", + "-85.5050x-234.9232", + "-64.7048x-241.4815", + "-43.4120x-246.2019", + "-21.7889x-249.0487", + "-0.0000x-250.0000", + "21.7889x-249.0487", + "43.4120x-246.2019", + "64.7048x-241.4815", + "85.5050x-234.9232", + "105.6546x-226.5769", + "125.0000x-216.5064", + "143.3941x-204.7880", + "160.6969x-191.5111", + "176.7767x-176.7767", + "191.5111x-160.6969", + "204.7880x-143.3941", + "216.5064x-125.0000", + "226.5769x-105.6546", + "234.9232x-85.5050", + "241.4815x-64.7048", + "246.2019x-43.4120", + "249.0487x-21.7889" + ], + "printable_height": "2100", + "printer_agent": "", + "printer_extruder_id": [ + "1" + ], + "printer_extruder_variant": [ + "Bowden Standard" + ], + "printer_model": "SeeMeCNC BOSSdelta 500 0521", + "printer_notes": "", + "printer_settings_id": "SeeMeCNC BOSSdelta 500 0521 1.0 nozzle", + "printer_structure": "delta", + "printer_technology": "FFF", + "printer_variant": "1.0", + "printhost_authorization_type": "key", + "printhost_ssl_ignore_revoke": "0", + "printing_by_object_gcode": "", + "purge_in_prime_tower": "0", + "resonance_avoidance": "0", + "retract_before_wipe": [ + "70%" + ], + "retract_length_toolchange": [ + "3" + ], + "retract_lift_above": [ + "0" + ], + "retract_lift_below": [ + "0" + ], + "retract_lift_enforce": [ + "All Surfaces" + ], + "retract_restart_extra": [ + "0" + ], + "retract_restart_extra_toolchange": [ + "2" + ], + "retract_when_changing_layer": [ + "1" + ], + "retraction_distances_when_cut": [ + "18" + ], + "retraction_length": [ + "6" + ], + "retraction_minimum_travel": [ + "1" + ], + "retraction_speed": [ + "60" + ], + "scan_first_layer": "0", + "silent_mode": "0", + "single_extruder_multi_material": "0", + "support_air_filtration": "1", + "support_chamber_temp_control": "1", + "support_multi_bed_types": "0", + "support_object_skip_flush": "0", + "template_custom_gcode": "", + "thumbnails": "48x48/PNG, 300x300/PNG", + "thumbnails_format": "PNG", + "time_cost": "0", + "time_lapse_gcode": "", + "travel_slope": [ + "3" + ], + "upward_compatible_machine": [], + "use_firmware_retraction": "0", + "use_relative_e_distances": "1", + "wipe": [ + "1" + ], + "wipe_distance": [ + "1" + ], + "wipe_tower_type": "type2", + "wrapping_detection_gcode": "", + "wrapping_detection_layers": "20", + "wrapping_exclude_area": [], + "z_hop": [ + "0.4" + ], + "z_hop_types": [ + "Auto Lift" + ], + "z_offset": "0", + "model": "SeeMeCNC BOSSdelta 500 0521", + "thumbnail": "SeeMeCNC BOSSdelta 500 0521_cover.png", + "description": "SeeMeCNC configurations" +} diff --git a/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta_300_0_4mm.json b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta_300_0_4mm.json new file mode 100644 index 00000000000..8f63f8c97df --- /dev/null +++ b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta_300_0_4mm.json @@ -0,0 +1,351 @@ +{ + "type": "machine", + "name": "SeeMeCNC BOSSdelta 300 0.4 nozzle", + "from": "System", + "instantiation": "true", + "adaptive_bed_mesh_margin": "0", + "auxiliary_fan": "0", + "bed_custom_model": "SeeMeCNC_Buildplate_Model.STL", + "bed_custom_texture": "SeeMeCNC_Buildplate_texture.png", + "bed_exclude_area": [ + "0x0" + ], + "bed_mesh_max": "99999,99999", + "bed_mesh_min": "-99999,-99999", + "bed_mesh_probe_distance": "50,50", + "bed_temperature_formula": "by_first_filament", + "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\n{if layer_num == 1}M104 S[nozzle_temperature] ; Step down from first layer temp to print temp{endif}\nG92 E0\n", + "best_object_pos": "0.5,0.5", + "change_extrusion_role_gcode": "", + "change_filament_gcode": "{if layer_num >= 0}\nG92 E0\nG1 E-5 F3000\nG1 E-155 F5000\nT[next_extruder]\n{if layer_num == 0}\nM109 S[first_layer_temperature]\n{else}\nM109 S[nozzle_temperature]\n{endif}\nG1 E160 F5000\nG92 E0\n{endif}", + "cooling_tube_length": "5", + "cooling_tube_retraction": "160", + "default_filament_profile": [ + "SeeMeCNC PLA" + ], + "default_nozzle_volume_type": [ + "Standard" + ], + "default_print_profile": "0.20mm Standard @SeeMeCNC BOSSdelta 300 0.4", + "deretraction_speed": [ + "60" + ], + "disable_m73": "0", + "emit_machine_limits_to_gcode": "1", + "enable_filament_ramming": "0", + "enable_long_retraction_when_cut": "0", + "enable_power_loss_recovery": "printer_configuration", + "extra_loading_move": "0", + "extruder_clearance_height_to_lid": "70", + "extruder_clearance_height_to_rod": "70", + "extruder_clearance_radius": "75", + "extruder_colour": [ + "#FCE94F" + ], + "extruder_offset": [ + "0x0" + ], + "extruder_printable_area": [], + "extruder_printable_height": [ + "495" + ], + "extruder_type": [ + "Bowden" + ], + "extruder_variant_list": [ + "Bowden Standard" + ], + "fan_kickstart": "0", + "fan_speedup_overhangs": "1", + "fan_speedup_time": "0", + "file_start_gcode": "", + "gcode_flavor": "reprapfirmware", + "grab_length": [ + "0" + ], + "head_wrap_detect_zone": [], + "high_current_on_filament_swap": "0", + "host_type": "duet", + "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", + "long_retractions_when_cut": [ + "0" + ], + "machine_end_gcode": [ + ";======= SEEMECNC BOSSDELTA 300 END G-CODE =======\nM104 S0 ; Turn off hotend\nM140 S0 ; Turn off heated bed\nM107 T0 ; Turn off part cooling fan\nG91 ; Relative positioning\nG1 Z2 E-160 F6000 ; Lift 2mm and retract 160mm\nG92 E0\nG90 ; Absolute positioning\nM203 Z18000 ; Allow fast Z for homing\nG28 ; Home all axes - clears part immediately on a delta\n;======= END G-CODE =======" + ], + "machine_load_filament_time": "4", + "machine_max_acceleration_e": [ + "5000", + "5000" + ], + "machine_max_acceleration_extruding": [ + "5000", + "5000" + ], + "machine_max_acceleration_retracting": [ + "5000", + "5000" + ], + "machine_max_acceleration_travel": [ + "5000", + "5000" + ], + "machine_max_acceleration_x": [ + "5000", + "5000" + ], + "machine_max_acceleration_y": [ + "5000", + "5000" + ], + "machine_max_acceleration_z": [ + "5000", + "5000" + ], + "machine_max_jerk_e": [ + "15", + "15" + ], + "machine_max_jerk_x": [ + "15", + "15" + ], + "machine_max_jerk_y": [ + "15", + "15" + ], + "machine_max_jerk_z": [ + "15", + "15" + ], + "machine_max_junction_deviation": [ + "0.01" + ], + "machine_max_speed_e": [ + "150", + "25" + ], + "machine_max_speed_x": [ + "300", + "300" + ], + "machine_max_speed_y": [ + "300", + "300" + ], + "machine_max_speed_z": [ + "200", + "200" + ], + "machine_min_extruding_rate": [ + "0", + "0" + ], + "machine_min_travel_rate": [ + "0", + "0" + ], + "machine_pause_gcode": "M601", + "machine_start_gcode": [ + ";======= SEEMECNC BOSSDELTA 300 START G-CODE =======\nG21 ; Set units to mm\nG90 ; Absolute positioning\nM82 ; Extruder to absolute mode\nG28 ; Home all axes\nG1 Z50 F9000 ; Lift nozzle for safe heating\n; --- SELECT STARTING TOOL ---\nT[initial_tool] ; Activate the first assigned filament in OrcaSlicer\n; --- PREHEAT ---\nM140 S[first_layer_bed_temperature] ; Start bed heating\nM104 S[first_layer_temperature] ; Start nozzle heating\nM190 S[first_layer_bed_temperature] ; Wait for bed to reach temp\nM109 S[first_layer_temperature] ; Wait for nozzle to reach temp\n; --- RE-PRIME BOWDEN TUBE ---\nG92 E0\nG1 E160.5 F3000 ; Retract 160mm\nG92 E0\n; --- PURGE LINE (curved arc near front edge, 300mm bed) ---\nG92 E0\nG1 X-50 Y-135.0 Z0.4 F5000 ; Move to arc start (inside 150mm radius)\nG1 Z0.3 F1000 ; Drop to prime height\nG3 X50 Y-135.0 R144.0 E40 F600 ; Arc purge, 100mm sweep, heavy extrusion\nG1 E38 F4500 ; Retract 2mm before wipe (Bowden)\nG1 X65 Y-125.0 Z0.2 F6000 ; Wipe move at Z0.2\nG92 E0 ; Zero extruder before print\n;======= END START G-CODE =======" + ], + "machine_tool_change_time": "0", + "machine_unload_filament_time": "4", + "manual_filament_change": "0", + "master_extruder_id": "1", + "max_layer_height": [ + "0.32" + ], + "max_resonance_avoidance_speed": "100", + "min_layer_height": [ + "0.08" + ], + "min_resonance_avoidance_speed": "50", + "nozzle_diameter": [ + "0.4" + ], + "nozzle_flush_dataset": [ + "0" + ], + "nozzle_height": "3.0", + "nozzle_hrc": "0", + "nozzle_type": [ + "brass" + ], + "nozzle_volume": [ + "0" + ], + "parking_pos_retraction": "160", + "pellet_modded_printer": "0", + "physical_extruder_map": [ + "0" + ], + "preferred_orientation": "0", + "printable_area": [ + "150.0000x0.0000", + "149.4292x13.0734", + "147.7212x26.0472", + "144.8889x38.8229", + "140.9539x51.3030", + "135.9462x63.3927", + "129.9038x75.0000", + "122.8728x86.0365", + "114.9067x96.4181", + "106.0660x106.0660", + "96.4181x114.9067", + "86.0365x122.8728", + "75.0000x129.9038", + "63.3927x135.9462", + "51.3030x140.9539", + "38.8229x144.8889", + "26.0472x147.7212", + "13.0734x149.4292", + "0.0000x150.0000", + "-13.0734x149.4292", + "-26.0472x147.7212", + "-38.8229x144.8889", + "-51.3030x140.9539", + "-63.3927x135.9462", + "-75.0000x129.9038", + "-86.0365x122.8728", + "-96.4181x114.9067", + "-106.0660x106.0660", + "-114.9067x96.4181", + "-122.8728x86.0365", + "-129.9038x75.0000", + "-135.9462x63.3927", + "-140.9539x51.3030", + "-144.8889x38.8229", + "-147.7212x26.0472", + "-149.4292x13.0734", + "-150.0000x0.0000", + "-149.4292x-13.0734", + "-147.7212x-26.0472", + "-144.8889x-38.8229", + "-140.9539x-51.3030", + "-135.9462x-63.3927", + "-129.9038x-75.0000", + "-122.8728x-86.0365", + "-114.9067x-96.4181", + "-106.0660x-106.0660", + "-96.4181x-114.9067", + "-86.0365x-122.8728", + "-75.0000x-129.9038", + "-63.3927x-135.9462", + "-51.3030x-140.9539", + "-38.8229x-144.8889", + "-26.0472x-147.7212", + "-13.0734x-149.4292", + "-0.0000x-150.0000", + "13.0734x-149.4292", + "26.0472x-147.7212", + "38.8229x-144.8889", + "51.3030x-140.9539", + "63.3927x-135.9462", + "75.0000x-129.9038", + "86.0365x-122.8728", + "96.4181x-114.9067", + "106.0660x-106.0660", + "114.9067x-96.4181", + "122.8728x-86.0365", + "129.9038x-75.0000", + "135.9462x-63.3927", + "140.9539x-51.3030", + "144.8889x-38.8229", + "147.7212x-26.0472", + "149.4292x-13.0734" + ], + "printable_height": "495", + "printer_agent": "", + "printer_extruder_id": [ + "1" + ], + "printer_extruder_variant": [ + "Bowden Standard" + ], + "printer_model": "SeeMeCNC BOSSdelta 300", + "printer_notes": "", + "printer_settings_id": "SeeMeCNC BOSSdelta 300 0.4 nozzle", + "printer_structure": "delta", + "printer_technology": "FFF", + "printer_variant": "0.4", + "printhost_authorization_type": "key", + "printhost_ssl_ignore_revoke": "0", + "printing_by_object_gcode": "", + "purge_in_prime_tower": "0", + "resonance_avoidance": "0", + "retract_before_wipe": [ + "70%" + ], + "retract_length_toolchange": [ + "3" + ], + "retract_lift_above": [ + "0" + ], + "retract_lift_below": [ + "0" + ], + "retract_lift_enforce": [ + "All Surfaces" + ], + "retract_restart_extra": [ + "0" + ], + "retract_restart_extra_toolchange": [ + "2" + ], + "retract_when_changing_layer": [ + "1" + ], + "retraction_distances_when_cut": [ + "18" + ], + "retraction_length": [ + "6" + ], + "retraction_minimum_travel": [ + "1" + ], + "retraction_speed": [ + "60" + ], + "scan_first_layer": "0", + "silent_mode": "0", + "single_extruder_multi_material": "1", + "support_air_filtration": "1", + "support_chamber_temp_control": "1", + "support_multi_bed_types": "0", + "support_object_skip_flush": "0", + "template_custom_gcode": "", + "thumbnails": "48x48/PNG, 300x300/PNG", + "thumbnails_format": "PNG", + "time_cost": "0", + "time_lapse_gcode": "", + "travel_slope": [ + "3" + ], + "upward_compatible_machine": [], + "use_firmware_retraction": "0", + "use_relative_e_distances": "1", + "wipe": [ + "1" + ], + "wipe_distance": [ + "1" + ], + "wipe_tower_type": "type2", + "wrapping_detection_gcode": "", + "wrapping_detection_layers": "20", + "wrapping_exclude_area": [], + "z_hop": [ + "0.4" + ], + "z_hop_types": [ + "Auto Lift" + ], + "z_offset": "0", + "model": "SeeMeCNC BOSSdelta 300", + "thumbnail": "SeeMeCNC BOSSdelta 300_cover.png", + "description": "SeeMeCNC configurations" +} diff --git a/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta_300_0_5mm.json b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta_300_0_5mm.json new file mode 100644 index 00000000000..2e3c6891faf --- /dev/null +++ b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta_300_0_5mm.json @@ -0,0 +1,351 @@ +{ + "type": "machine", + "name": "SeeMeCNC BOSSdelta 300 0.5 nozzle", + "from": "System", + "instantiation": "true", + "adaptive_bed_mesh_margin": "0", + "auxiliary_fan": "0", + "bed_custom_model": "SeeMeCNC_Buildplate_Model.STL", + "bed_custom_texture": "SeeMeCNC_Buildplate_texture.png", + "bed_exclude_area": [ + "0x0" + ], + "bed_mesh_max": "99999,99999", + "bed_mesh_min": "-99999,-99999", + "bed_mesh_probe_distance": "50,50", + "bed_temperature_formula": "by_first_filament", + "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\n{if layer_num == 1}M104 S[nozzle_temperature] ; Step down from first layer temp to print temp{endif}\nG92 E0\n", + "best_object_pos": "0.5,0.5", + "change_extrusion_role_gcode": "", + "change_filament_gcode": "{if layer_num >= 0}\nG92 E0\nG1 E-5 F3000\nG1 E-155 F5000\nT[next_extruder]\n{if layer_num == 0}\nM109 S[first_layer_temperature]\n{else}\nM109 S[nozzle_temperature]\n{endif}\nG1 E160 F5000\nG92 E0\n{endif}", + "cooling_tube_length": "5", + "cooling_tube_retraction": "160", + "default_filament_profile": [ + "SeeMeCNC PLA" + ], + "default_nozzle_volume_type": [ + "Standard" + ], + "default_print_profile": "0.25mm Standard @SeeMeCNC BOSSdelta 300 0.5", + "deretraction_speed": [ + "60" + ], + "disable_m73": "0", + "emit_machine_limits_to_gcode": "1", + "enable_filament_ramming": "0", + "enable_long_retraction_when_cut": "0", + "enable_power_loss_recovery": "printer_configuration", + "extra_loading_move": "0", + "extruder_clearance_height_to_lid": "70", + "extruder_clearance_height_to_rod": "70", + "extruder_clearance_radius": "75", + "extruder_colour": [ + "#FCE94F" + ], + "extruder_offset": [ + "0x0" + ], + "extruder_printable_area": [], + "extruder_printable_height": [ + "495" + ], + "extruder_type": [ + "Bowden" + ], + "extruder_variant_list": [ + "Bowden Standard" + ], + "fan_kickstart": "0", + "fan_speedup_overhangs": "1", + "fan_speedup_time": "0", + "file_start_gcode": "", + "gcode_flavor": "reprapfirmware", + "grab_length": [ + "0" + ], + "head_wrap_detect_zone": [], + "high_current_on_filament_swap": "0", + "host_type": "duet", + "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", + "long_retractions_when_cut": [ + "0" + ], + "machine_end_gcode": [ + ";======= SEEMECNC BOSSDELTA 300 END G-CODE =======\nM104 S0 ; Turn off hotend\nM140 S0 ; Turn off heated bed\nM107 T0 ; Turn off part cooling fan\nG91 ; Relative positioning\nG1 Z2 E-160 F6000 ; Lift 2mm and retract 160mm\nG92 E0\nG90 ; Absolute positioning\nM203 Z18000 ; Allow fast Z for homing\nG28 ; Home all axes - clears part immediately on a delta\n;======= END G-CODE =======" + ], + "machine_load_filament_time": "4", + "machine_max_acceleration_e": [ + "5000", + "5000" + ], + "machine_max_acceleration_extruding": [ + "5000", + "5000" + ], + "machine_max_acceleration_retracting": [ + "5000", + "5000" + ], + "machine_max_acceleration_travel": [ + "5000", + "5000" + ], + "machine_max_acceleration_x": [ + "5000", + "5000" + ], + "machine_max_acceleration_y": [ + "5000", + "5000" + ], + "machine_max_acceleration_z": [ + "5000", + "5000" + ], + "machine_max_jerk_e": [ + "15", + "15" + ], + "machine_max_jerk_x": [ + "15", + "15" + ], + "machine_max_jerk_y": [ + "15", + "15" + ], + "machine_max_jerk_z": [ + "15", + "15" + ], + "machine_max_junction_deviation": [ + "0.01" + ], + "machine_max_speed_e": [ + "150", + "25" + ], + "machine_max_speed_x": [ + "300", + "300" + ], + "machine_max_speed_y": [ + "300", + "300" + ], + "machine_max_speed_z": [ + "200", + "200" + ], + "machine_min_extruding_rate": [ + "0", + "0" + ], + "machine_min_travel_rate": [ + "0", + "0" + ], + "machine_pause_gcode": "M601", + "machine_start_gcode": [ + ";======= SEEMECNC BOSSDELTA 300 START G-CODE =======\nG21 ; Set units to mm\nG90 ; Absolute positioning\nM82 ; Extruder to absolute mode\nG28 ; Home all axes\nG1 Z50 F9000 ; Lift nozzle for safe heating\n; --- SELECT STARTING TOOL ---\nT[initial_tool] ; Activate the first assigned filament in OrcaSlicer\n; --- PREHEAT ---\nM140 S[first_layer_bed_temperature] ; Start bed heating\nM104 S[first_layer_temperature] ; Start nozzle heating\nM190 S[first_layer_bed_temperature] ; Wait for bed to reach temp\nM109 S[first_layer_temperature] ; Wait for nozzle to reach temp\n; --- RE-PRIME BOWDEN TUBE ---\nG92 E0\nG1 E160.5 F3000 ; Retract 160mm\nG92 E0\n; --- PURGE LINE (curved arc near front edge, 300mm bed) ---\nG92 E0\nG1 X-50 Y-135.0 Z0.4 F5000 ; Move to arc start (inside 150mm radius)\nG1 Z0.3 F1000 ; Drop to prime height\nG3 X50 Y-135.0 R144.0 E40 F600 ; Arc purge, 100mm sweep, heavy extrusion\nG1 E38 F4500 ; Retract 2mm before wipe (Bowden)\nG1 X65 Y-125.0 Z0.2 F6000 ; Wipe move at Z0.2\nG92 E0 ; Zero extruder before print\n;======= END START G-CODE =======" + ], + "machine_tool_change_time": "0", + "machine_unload_filament_time": "4", + "manual_filament_change": "0", + "master_extruder_id": "1", + "max_layer_height": [ + "0.40" + ], + "max_resonance_avoidance_speed": "100", + "min_layer_height": [ + "0.10" + ], + "min_resonance_avoidance_speed": "50", + "nozzle_diameter": [ + "0.5" + ], + "nozzle_flush_dataset": [ + "0" + ], + "nozzle_height": "3.0", + "nozzle_hrc": "0", + "nozzle_type": [ + "brass" + ], + "nozzle_volume": [ + "0" + ], + "parking_pos_retraction": "160", + "pellet_modded_printer": "0", + "physical_extruder_map": [ + "0" + ], + "preferred_orientation": "0", + "printable_area": [ + "150.0000x0.0000", + "149.4292x13.0734", + "147.7212x26.0472", + "144.8889x38.8229", + "140.9539x51.3030", + "135.9462x63.3927", + "129.9038x75.0000", + "122.8728x86.0365", + "114.9067x96.4181", + "106.0660x106.0660", + "96.4181x114.9067", + "86.0365x122.8728", + "75.0000x129.9038", + "63.3927x135.9462", + "51.3030x140.9539", + "38.8229x144.8889", + "26.0472x147.7212", + "13.0734x149.4292", + "0.0000x150.0000", + "-13.0734x149.4292", + "-26.0472x147.7212", + "-38.8229x144.8889", + "-51.3030x140.9539", + "-63.3927x135.9462", + "-75.0000x129.9038", + "-86.0365x122.8728", + "-96.4181x114.9067", + "-106.0660x106.0660", + "-114.9067x96.4181", + "-122.8728x86.0365", + "-129.9038x75.0000", + "-135.9462x63.3927", + "-140.9539x51.3030", + "-144.8889x38.8229", + "-147.7212x26.0472", + "-149.4292x13.0734", + "-150.0000x0.0000", + "-149.4292x-13.0734", + "-147.7212x-26.0472", + "-144.8889x-38.8229", + "-140.9539x-51.3030", + "-135.9462x-63.3927", + "-129.9038x-75.0000", + "-122.8728x-86.0365", + "-114.9067x-96.4181", + "-106.0660x-106.0660", + "-96.4181x-114.9067", + "-86.0365x-122.8728", + "-75.0000x-129.9038", + "-63.3927x-135.9462", + "-51.3030x-140.9539", + "-38.8229x-144.8889", + "-26.0472x-147.7212", + "-13.0734x-149.4292", + "-0.0000x-150.0000", + "13.0734x-149.4292", + "26.0472x-147.7212", + "38.8229x-144.8889", + "51.3030x-140.9539", + "63.3927x-135.9462", + "75.0000x-129.9038", + "86.0365x-122.8728", + "96.4181x-114.9067", + "106.0660x-106.0660", + "114.9067x-96.4181", + "122.8728x-86.0365", + "129.9038x-75.0000", + "135.9462x-63.3927", + "140.9539x-51.3030", + "144.8889x-38.8229", + "147.7212x-26.0472", + "149.4292x-13.0734" + ], + "printable_height": "495", + "printer_agent": "", + "printer_extruder_id": [ + "1" + ], + "printer_extruder_variant": [ + "Bowden Standard" + ], + "printer_model": "SeeMeCNC BOSSdelta 300", + "printer_notes": "", + "printer_settings_id": "SeeMeCNC BOSSdelta 300 0.5 nozzle", + "printer_structure": "delta", + "printer_technology": "FFF", + "printer_variant": "0.5", + "printhost_authorization_type": "key", + "printhost_ssl_ignore_revoke": "0", + "printing_by_object_gcode": "", + "purge_in_prime_tower": "0", + "resonance_avoidance": "0", + "retract_before_wipe": [ + "70%" + ], + "retract_length_toolchange": [ + "3" + ], + "retract_lift_above": [ + "0" + ], + "retract_lift_below": [ + "0" + ], + "retract_lift_enforce": [ + "All Surfaces" + ], + "retract_restart_extra": [ + "0" + ], + "retract_restart_extra_toolchange": [ + "2" + ], + "retract_when_changing_layer": [ + "1" + ], + "retraction_distances_when_cut": [ + "18" + ], + "retraction_length": [ + "6" + ], + "retraction_minimum_travel": [ + "1" + ], + "retraction_speed": [ + "60" + ], + "scan_first_layer": "0", + "silent_mode": "0", + "single_extruder_multi_material": "1", + "support_air_filtration": "1", + "support_chamber_temp_control": "1", + "support_multi_bed_types": "0", + "support_object_skip_flush": "0", + "template_custom_gcode": "", + "thumbnails": "48x48/PNG, 300x300/PNG", + "thumbnails_format": "PNG", + "time_cost": "0", + "time_lapse_gcode": "", + "travel_slope": [ + "3" + ], + "upward_compatible_machine": [], + "use_firmware_retraction": "0", + "use_relative_e_distances": "1", + "wipe": [ + "1" + ], + "wipe_distance": [ + "1" + ], + "wipe_tower_type": "type2", + "wrapping_detection_gcode": "", + "wrapping_detection_layers": "20", + "wrapping_exclude_area": [], + "z_hop": [ + "0.4" + ], + "z_hop_types": [ + "Auto Lift" + ], + "z_offset": "0", + "model": "SeeMeCNC BOSSdelta 300", + "thumbnail": "SeeMeCNC BOSSdelta 300_cover.png", + "description": "SeeMeCNC configurations" +} diff --git a/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta_300_0_7mm.json b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta_300_0_7mm.json new file mode 100644 index 00000000000..ba36df00d2a --- /dev/null +++ b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta_300_0_7mm.json @@ -0,0 +1,351 @@ +{ + "type": "machine", + "name": "SeeMeCNC BOSSdelta 300 0.7 nozzle", + "from": "System", + "instantiation": "true", + "adaptive_bed_mesh_margin": "0", + "auxiliary_fan": "0", + "bed_custom_model": "SeeMeCNC_Buildplate_Model.STL", + "bed_custom_texture": "SeeMeCNC_Buildplate_texture.png", + "bed_exclude_area": [ + "0x0" + ], + "bed_mesh_max": "99999,99999", + "bed_mesh_min": "-99999,-99999", + "bed_mesh_probe_distance": "50,50", + "bed_temperature_formula": "by_first_filament", + "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\n{if layer_num == 1}M104 S[nozzle_temperature] ; Step down from first layer temp to print temp{endif}\nG92 E0\n", + "best_object_pos": "0.5,0.5", + "change_extrusion_role_gcode": "", + "change_filament_gcode": "{if layer_num >= 0}\nG92 E0\nG1 E-5 F3000\nG1 E-155 F5000\nT[next_extruder]\n{if layer_num == 0}\nM109 S[first_layer_temperature]\n{else}\nM109 S[nozzle_temperature]\n{endif}\nG1 E160 F5000\nG92 E0\n{endif}", + "cooling_tube_length": "5", + "cooling_tube_retraction": "160", + "default_filament_profile": [ + "SeeMeCNC PLA" + ], + "default_nozzle_volume_type": [ + "Standard" + ], + "default_print_profile": "0.35mm Standard @SeeMeCNC BOSSdelta 300 0.7", + "deretraction_speed": [ + "60" + ], + "disable_m73": "0", + "emit_machine_limits_to_gcode": "1", + "enable_filament_ramming": "0", + "enable_long_retraction_when_cut": "0", + "enable_power_loss_recovery": "printer_configuration", + "extra_loading_move": "0", + "extruder_clearance_height_to_lid": "70", + "extruder_clearance_height_to_rod": "70", + "extruder_clearance_radius": "75", + "extruder_colour": [ + "#FCE94F" + ], + "extruder_offset": [ + "0x0" + ], + "extruder_printable_area": [], + "extruder_printable_height": [ + "495" + ], + "extruder_type": [ + "Bowden" + ], + "extruder_variant_list": [ + "Bowden Standard" + ], + "fan_kickstart": "0", + "fan_speedup_overhangs": "1", + "fan_speedup_time": "0", + "file_start_gcode": "", + "gcode_flavor": "reprapfirmware", + "grab_length": [ + "0" + ], + "head_wrap_detect_zone": [], + "high_current_on_filament_swap": "0", + "host_type": "duet", + "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", + "long_retractions_when_cut": [ + "0" + ], + "machine_end_gcode": [ + ";======= SEEMECNC BOSSDELTA 300 END G-CODE =======\nM104 S0 ; Turn off hotend\nM140 S0 ; Turn off heated bed\nM107 T0 ; Turn off part cooling fan\nG91 ; Relative positioning\nG1 Z2 E-160 F6000 ; Lift 2mm and retract 160mm\nG92 E0\nG90 ; Absolute positioning\nM203 Z18000 ; Allow fast Z for homing\nG28 ; Home all axes - clears part immediately on a delta\n;======= END G-CODE =======" + ], + "machine_load_filament_time": "4", + "machine_max_acceleration_e": [ + "5000", + "5000" + ], + "machine_max_acceleration_extruding": [ + "5000", + "5000" + ], + "machine_max_acceleration_retracting": [ + "5000", + "5000" + ], + "machine_max_acceleration_travel": [ + "5000", + "5000" + ], + "machine_max_acceleration_x": [ + "5000", + "5000" + ], + "machine_max_acceleration_y": [ + "5000", + "5000" + ], + "machine_max_acceleration_z": [ + "5000", + "5000" + ], + "machine_max_jerk_e": [ + "15", + "15" + ], + "machine_max_jerk_x": [ + "15", + "15" + ], + "machine_max_jerk_y": [ + "15", + "15" + ], + "machine_max_jerk_z": [ + "15", + "15" + ], + "machine_max_junction_deviation": [ + "0.01" + ], + "machine_max_speed_e": [ + "150", + "25" + ], + "machine_max_speed_x": [ + "300", + "300" + ], + "machine_max_speed_y": [ + "300", + "300" + ], + "machine_max_speed_z": [ + "200", + "200" + ], + "machine_min_extruding_rate": [ + "0", + "0" + ], + "machine_min_travel_rate": [ + "0", + "0" + ], + "machine_pause_gcode": "M601", + "machine_start_gcode": [ + ";======= SEEMECNC BOSSDELTA 300 START G-CODE =======\nG21 ; Set units to mm\nG90 ; Absolute positioning\nM82 ; Extruder to absolute mode\nG28 ; Home all axes\nG1 Z50 F9000 ; Lift nozzle for safe heating\n; --- SELECT STARTING TOOL ---\nT[initial_tool] ; Activate the first assigned filament in OrcaSlicer\n; --- PREHEAT ---\nM140 S[first_layer_bed_temperature] ; Start bed heating\nM104 S[first_layer_temperature] ; Start nozzle heating\nM190 S[first_layer_bed_temperature] ; Wait for bed to reach temp\nM109 S[first_layer_temperature] ; Wait for nozzle to reach temp\n; --- RE-PRIME BOWDEN TUBE ---\nG92 E0\nG1 E160.5 F3000 ; Retract 160mm\nG92 E0\n; --- PURGE LINE (curved arc near front edge, 300mm bed) ---\nG92 E0\nG1 X-50 Y-135.0 Z0.4 F5000 ; Move to arc start (inside 150mm radius)\nG1 Z0.3 F1000 ; Drop to prime height\nG3 X50 Y-135.0 R144.0 E40 F600 ; Arc purge, 100mm sweep, heavy extrusion\nG1 E38 F4500 ; Retract 2mm before wipe (Bowden)\nG1 X65 Y-125.0 Z0.2 F6000 ; Wipe move at Z0.2\nG92 E0 ; Zero extruder before print\n;======= END START G-CODE =======" + ], + "machine_tool_change_time": "0", + "machine_unload_filament_time": "4", + "manual_filament_change": "0", + "master_extruder_id": "1", + "max_layer_height": [ + "0.56" + ], + "max_resonance_avoidance_speed": "100", + "min_layer_height": [ + "0.15" + ], + "min_resonance_avoidance_speed": "50", + "nozzle_diameter": [ + "0.7" + ], + "nozzle_flush_dataset": [ + "0" + ], + "nozzle_height": "3.0", + "nozzle_hrc": "0", + "nozzle_type": [ + "brass" + ], + "nozzle_volume": [ + "0" + ], + "parking_pos_retraction": "160", + "pellet_modded_printer": "0", + "physical_extruder_map": [ + "0" + ], + "preferred_orientation": "0", + "printable_area": [ + "150.0000x0.0000", + "149.4292x13.0734", + "147.7212x26.0472", + "144.8889x38.8229", + "140.9539x51.3030", + "135.9462x63.3927", + "129.9038x75.0000", + "122.8728x86.0365", + "114.9067x96.4181", + "106.0660x106.0660", + "96.4181x114.9067", + "86.0365x122.8728", + "75.0000x129.9038", + "63.3927x135.9462", + "51.3030x140.9539", + "38.8229x144.8889", + "26.0472x147.7212", + "13.0734x149.4292", + "0.0000x150.0000", + "-13.0734x149.4292", + "-26.0472x147.7212", + "-38.8229x144.8889", + "-51.3030x140.9539", + "-63.3927x135.9462", + "-75.0000x129.9038", + "-86.0365x122.8728", + "-96.4181x114.9067", + "-106.0660x106.0660", + "-114.9067x96.4181", + "-122.8728x86.0365", + "-129.9038x75.0000", + "-135.9462x63.3927", + "-140.9539x51.3030", + "-144.8889x38.8229", + "-147.7212x26.0472", + "-149.4292x13.0734", + "-150.0000x0.0000", + "-149.4292x-13.0734", + "-147.7212x-26.0472", + "-144.8889x-38.8229", + "-140.9539x-51.3030", + "-135.9462x-63.3927", + "-129.9038x-75.0000", + "-122.8728x-86.0365", + "-114.9067x-96.4181", + "-106.0660x-106.0660", + "-96.4181x-114.9067", + "-86.0365x-122.8728", + "-75.0000x-129.9038", + "-63.3927x-135.9462", + "-51.3030x-140.9539", + "-38.8229x-144.8889", + "-26.0472x-147.7212", + "-13.0734x-149.4292", + "-0.0000x-150.0000", + "13.0734x-149.4292", + "26.0472x-147.7212", + "38.8229x-144.8889", + "51.3030x-140.9539", + "63.3927x-135.9462", + "75.0000x-129.9038", + "86.0365x-122.8728", + "96.4181x-114.9067", + "106.0660x-106.0660", + "114.9067x-96.4181", + "122.8728x-86.0365", + "129.9038x-75.0000", + "135.9462x-63.3927", + "140.9539x-51.3030", + "144.8889x-38.8229", + "147.7212x-26.0472", + "149.4292x-13.0734" + ], + "printable_height": "495", + "printer_agent": "", + "printer_extruder_id": [ + "1" + ], + "printer_extruder_variant": [ + "Bowden Standard" + ], + "printer_model": "SeeMeCNC BOSSdelta 300", + "printer_notes": "", + "printer_settings_id": "SeeMeCNC BOSSdelta 300 0.7 nozzle", + "printer_structure": "delta", + "printer_technology": "FFF", + "printer_variant": "0.7", + "printhost_authorization_type": "key", + "printhost_ssl_ignore_revoke": "0", + "printing_by_object_gcode": "", + "purge_in_prime_tower": "0", + "resonance_avoidance": "0", + "retract_before_wipe": [ + "70%" + ], + "retract_length_toolchange": [ + "3" + ], + "retract_lift_above": [ + "0" + ], + "retract_lift_below": [ + "0" + ], + "retract_lift_enforce": [ + "All Surfaces" + ], + "retract_restart_extra": [ + "0" + ], + "retract_restart_extra_toolchange": [ + "2" + ], + "retract_when_changing_layer": [ + "1" + ], + "retraction_distances_when_cut": [ + "18" + ], + "retraction_length": [ + "6" + ], + "retraction_minimum_travel": [ + "1" + ], + "retraction_speed": [ + "60" + ], + "scan_first_layer": "0", + "silent_mode": "0", + "single_extruder_multi_material": "1", + "support_air_filtration": "1", + "support_chamber_temp_control": "1", + "support_multi_bed_types": "0", + "support_object_skip_flush": "0", + "template_custom_gcode": "", + "thumbnails": "48x48/PNG, 300x300/PNG", + "thumbnails_format": "PNG", + "time_cost": "0", + "time_lapse_gcode": "", + "travel_slope": [ + "3" + ], + "upward_compatible_machine": [], + "use_firmware_retraction": "0", + "use_relative_e_distances": "1", + "wipe": [ + "1" + ], + "wipe_distance": [ + "1" + ], + "wipe_tower_type": "type2", + "wrapping_detection_gcode": "", + "wrapping_detection_layers": "20", + "wrapping_exclude_area": [], + "z_hop": [ + "0.4" + ], + "z_hop_types": [ + "Auto Lift" + ], + "z_offset": "0", + "model": "SeeMeCNC BOSSdelta 300", + "thumbnail": "SeeMeCNC BOSSdelta 300_cover.png", + "description": "SeeMeCNC configurations" +} diff --git a/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta_300_1_0mm.json b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta_300_1_0mm.json new file mode 100644 index 00000000000..c9c7cfe4895 --- /dev/null +++ b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_BOSSdelta_300_1_0mm.json @@ -0,0 +1,351 @@ +{ + "type": "machine", + "name": "SeeMeCNC BOSSdelta 300 1.0 nozzle", + "from": "System", + "instantiation": "true", + "adaptive_bed_mesh_margin": "0", + "auxiliary_fan": "0", + "bed_custom_model": "SeeMeCNC_Buildplate_Model.STL", + "bed_custom_texture": "SeeMeCNC_Buildplate_texture.png", + "bed_exclude_area": [ + "0x0" + ], + "bed_mesh_max": "99999,99999", + "bed_mesh_min": "-99999,-99999", + "bed_mesh_probe_distance": "50,50", + "bed_temperature_formula": "by_first_filament", + "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\n{if layer_num == 1}M104 S[nozzle_temperature] ; Step down from first layer temp to print temp{endif}\nG92 E0\n", + "best_object_pos": "0.5,0.5", + "change_extrusion_role_gcode": "", + "change_filament_gcode": "{if layer_num >= 0}\nG92 E0\nG1 E-5 F3000\nG1 E-155 F5000\nT[next_extruder]\n{if layer_num == 0}\nM109 S[first_layer_temperature]\n{else}\nM109 S[nozzle_temperature]\n{endif}\nG1 E160 F5000\nG92 E0\n{endif}", + "cooling_tube_length": "5", + "cooling_tube_retraction": "160", + "default_filament_profile": [ + "SeeMeCNC PLA" + ], + "default_nozzle_volume_type": [ + "Standard" + ], + "default_print_profile": "0.50mm Standard @SeeMeCNC BOSSdelta 300 1.0", + "deretraction_speed": [ + "60" + ], + "disable_m73": "0", + "emit_machine_limits_to_gcode": "1", + "enable_filament_ramming": "0", + "enable_long_retraction_when_cut": "0", + "enable_power_loss_recovery": "printer_configuration", + "extra_loading_move": "0", + "extruder_clearance_height_to_lid": "70", + "extruder_clearance_height_to_rod": "70", + "extruder_clearance_radius": "75", + "extruder_colour": [ + "#FCE94F" + ], + "extruder_offset": [ + "0x0" + ], + "extruder_printable_area": [], + "extruder_printable_height": [ + "495" + ], + "extruder_type": [ + "Bowden" + ], + "extruder_variant_list": [ + "Bowden Standard" + ], + "fan_kickstart": "0", + "fan_speedup_overhangs": "1", + "fan_speedup_time": "0", + "file_start_gcode": "", + "gcode_flavor": "reprapfirmware", + "grab_length": [ + "0" + ], + "head_wrap_detect_zone": [], + "high_current_on_filament_swap": "0", + "host_type": "duet", + "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", + "long_retractions_when_cut": [ + "0" + ], + "machine_end_gcode": [ + ";======= SEEMECNC BOSSDELTA 300 END G-CODE =======\nM104 S0 ; Turn off hotend\nM140 S0 ; Turn off heated bed\nM107 T0 ; Turn off part cooling fan\nG91 ; Relative positioning\nG1 Z2 E-160 F6000 ; Lift 2mm and retract 160mm\nG92 E0\nG90 ; Absolute positioning\nM203 Z18000 ; Allow fast Z for homing\nG28 ; Home all axes - clears part immediately on a delta\n;======= END G-CODE =======" + ], + "machine_load_filament_time": "4", + "machine_max_acceleration_e": [ + "5000", + "5000" + ], + "machine_max_acceleration_extruding": [ + "5000", + "5000" + ], + "machine_max_acceleration_retracting": [ + "5000", + "5000" + ], + "machine_max_acceleration_travel": [ + "5000", + "5000" + ], + "machine_max_acceleration_x": [ + "5000", + "5000" + ], + "machine_max_acceleration_y": [ + "5000", + "5000" + ], + "machine_max_acceleration_z": [ + "5000", + "5000" + ], + "machine_max_jerk_e": [ + "15", + "15" + ], + "machine_max_jerk_x": [ + "15", + "15" + ], + "machine_max_jerk_y": [ + "15", + "15" + ], + "machine_max_jerk_z": [ + "15", + "15" + ], + "machine_max_junction_deviation": [ + "0.01" + ], + "machine_max_speed_e": [ + "150", + "25" + ], + "machine_max_speed_x": [ + "300", + "300" + ], + "machine_max_speed_y": [ + "300", + "300" + ], + "machine_max_speed_z": [ + "200", + "200" + ], + "machine_min_extruding_rate": [ + "0", + "0" + ], + "machine_min_travel_rate": [ + "0", + "0" + ], + "machine_pause_gcode": "M601", + "machine_start_gcode": [ + ";======= SEEMECNC BOSSDELTA 300 START G-CODE =======\nG21 ; Set units to mm\nG90 ; Absolute positioning\nM82 ; Extruder to absolute mode\nG28 ; Home all axes\nG1 Z50 F9000 ; Lift nozzle for safe heating\n; --- SELECT STARTING TOOL ---\nT[initial_tool] ; Activate the first assigned filament in OrcaSlicer\n; --- PREHEAT ---\nM140 S[first_layer_bed_temperature] ; Start bed heating\nM104 S[first_layer_temperature] ; Start nozzle heating\nM190 S[first_layer_bed_temperature] ; Wait for bed to reach temp\nM109 S[first_layer_temperature] ; Wait for nozzle to reach temp\n; --- RE-PRIME BOWDEN TUBE ---\nG92 E0\nG1 E160.5 F3000 ; Retract 160mm\nG92 E0\n; --- PURGE LINE (curved arc near front edge, 300mm bed) ---\nG92 E0\nG1 X-50 Y-135.0 Z0.4 F5000 ; Move to arc start (inside 150mm radius)\nG1 Z0.3 F1000 ; Drop to prime height\nG3 X50 Y-135.0 R144.0 E40 F600 ; Arc purge, 100mm sweep, heavy extrusion\nG1 E38 F4500 ; Retract 2mm before wipe (Bowden)\nG1 X65 Y-125.0 Z0.2 F6000 ; Wipe move at Z0.2\nG92 E0 ; Zero extruder before print\n;======= END START G-CODE =======" + ], + "machine_tool_change_time": "0", + "machine_unload_filament_time": "4", + "manual_filament_change": "0", + "master_extruder_id": "1", + "max_layer_height": [ + "0.80" + ], + "max_resonance_avoidance_speed": "100", + "min_layer_height": [ + "0.20" + ], + "min_resonance_avoidance_speed": "50", + "nozzle_diameter": [ + "1.0" + ], + "nozzle_flush_dataset": [ + "0" + ], + "nozzle_height": "3.0", + "nozzle_hrc": "0", + "nozzle_type": [ + "brass" + ], + "nozzle_volume": [ + "0" + ], + "parking_pos_retraction": "160", + "pellet_modded_printer": "0", + "physical_extruder_map": [ + "0" + ], + "preferred_orientation": "0", + "printable_area": [ + "150.0000x0.0000", + "149.4292x13.0734", + "147.7212x26.0472", + "144.8889x38.8229", + "140.9539x51.3030", + "135.9462x63.3927", + "129.9038x75.0000", + "122.8728x86.0365", + "114.9067x96.4181", + "106.0660x106.0660", + "96.4181x114.9067", + "86.0365x122.8728", + "75.0000x129.9038", + "63.3927x135.9462", + "51.3030x140.9539", + "38.8229x144.8889", + "26.0472x147.7212", + "13.0734x149.4292", + "0.0000x150.0000", + "-13.0734x149.4292", + "-26.0472x147.7212", + "-38.8229x144.8889", + "-51.3030x140.9539", + "-63.3927x135.9462", + "-75.0000x129.9038", + "-86.0365x122.8728", + "-96.4181x114.9067", + "-106.0660x106.0660", + "-114.9067x96.4181", + "-122.8728x86.0365", + "-129.9038x75.0000", + "-135.9462x63.3927", + "-140.9539x51.3030", + "-144.8889x38.8229", + "-147.7212x26.0472", + "-149.4292x13.0734", + "-150.0000x0.0000", + "-149.4292x-13.0734", + "-147.7212x-26.0472", + "-144.8889x-38.8229", + "-140.9539x-51.3030", + "-135.9462x-63.3927", + "-129.9038x-75.0000", + "-122.8728x-86.0365", + "-114.9067x-96.4181", + "-106.0660x-106.0660", + "-96.4181x-114.9067", + "-86.0365x-122.8728", + "-75.0000x-129.9038", + "-63.3927x-135.9462", + "-51.3030x-140.9539", + "-38.8229x-144.8889", + "-26.0472x-147.7212", + "-13.0734x-149.4292", + "-0.0000x-150.0000", + "13.0734x-149.4292", + "26.0472x-147.7212", + "38.8229x-144.8889", + "51.3030x-140.9539", + "63.3927x-135.9462", + "75.0000x-129.9038", + "86.0365x-122.8728", + "96.4181x-114.9067", + "106.0660x-106.0660", + "114.9067x-96.4181", + "122.8728x-86.0365", + "129.9038x-75.0000", + "135.9462x-63.3927", + "140.9539x-51.3030", + "144.8889x-38.8229", + "147.7212x-26.0472", + "149.4292x-13.0734" + ], + "printable_height": "495", + "printer_agent": "", + "printer_extruder_id": [ + "1" + ], + "printer_extruder_variant": [ + "Bowden Standard" + ], + "printer_model": "SeeMeCNC BOSSdelta 300", + "printer_notes": "", + "printer_settings_id": "SeeMeCNC BOSSdelta 300 1.0 nozzle", + "printer_structure": "delta", + "printer_technology": "FFF", + "printer_variant": "1.0", + "printhost_authorization_type": "key", + "printhost_ssl_ignore_revoke": "0", + "printing_by_object_gcode": "", + "purge_in_prime_tower": "0", + "resonance_avoidance": "0", + "retract_before_wipe": [ + "70%" + ], + "retract_length_toolchange": [ + "3" + ], + "retract_lift_above": [ + "0" + ], + "retract_lift_below": [ + "0" + ], + "retract_lift_enforce": [ + "All Surfaces" + ], + "retract_restart_extra": [ + "0" + ], + "retract_restart_extra_toolchange": [ + "2" + ], + "retract_when_changing_layer": [ + "1" + ], + "retraction_distances_when_cut": [ + "18" + ], + "retraction_length": [ + "6" + ], + "retraction_minimum_travel": [ + "1" + ], + "retraction_speed": [ + "60" + ], + "scan_first_layer": "0", + "silent_mode": "0", + "single_extruder_multi_material": "1", + "support_air_filtration": "1", + "support_chamber_temp_control": "1", + "support_multi_bed_types": "0", + "support_object_skip_flush": "0", + "template_custom_gcode": "", + "thumbnails": "48x48/PNG, 300x300/PNG", + "thumbnails_format": "PNG", + "time_cost": "0", + "time_lapse_gcode": "", + "travel_slope": [ + "3" + ], + "upward_compatible_machine": [], + "use_firmware_retraction": "0", + "use_relative_e_distances": "1", + "wipe": [ + "1" + ], + "wipe_distance": [ + "1" + ], + "wipe_tower_type": "type2", + "wrapping_detection_gcode": "", + "wrapping_detection_layers": "20", + "wrapping_exclude_area": [], + "z_hop": [ + "0.4" + ], + "z_hop_types": [ + "Auto Lift" + ], + "z_offset": "0", + "model": "SeeMeCNC BOSSdelta 300", + "thumbnail": "SeeMeCNC BOSSdelta 300_cover.png", + "description": "SeeMeCNC configurations" +} diff --git a/resources/profiles/SeeMeCNC/machine/SeeMeCNC_RostockMAX_v3.2_0_4mm.json b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_RostockMAX_v3.2_0_4mm.json new file mode 100644 index 00000000000..de09d587c00 --- /dev/null +++ b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_RostockMAX_v3.2_0_4mm.json @@ -0,0 +1,351 @@ +{ + "type": "machine", + "name": "SeeMeCNC RostockMAX v3.2 0.4 nozzle", + "from": "System", + "instantiation": "true", + "adaptive_bed_mesh_margin": "0", + "auxiliary_fan": "0", + "bed_custom_model": "SeeMeCNC_Buildplate_Model.STL", + "bed_custom_texture": "SeeMeCNC_Buildplate_texture.png", + "bed_exclude_area": [ + "0x0" + ], + "bed_mesh_max": "99999,99999", + "bed_mesh_min": "-99999,-99999", + "bed_mesh_probe_distance": "50,50", + "bed_temperature_formula": "by_first_filament", + "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\n{if layer_num == 1}M104 S[nozzle_temperature] ; Step down from first layer temp to print temp{endif}\nG92 E0\n", + "best_object_pos": "0.5,0.5", + "change_extrusion_role_gcode": "", + "change_filament_gcode": "{if layer_num >= 0}\nG92 E0\nG1 E-5 F3000\nG1 E-155 F5000\nT[next_extruder]\n{if layer_num == 0}\nM109 S[first_layer_temperature]\n{else}\nM109 S[nozzle_temperature]\n{endif}\nG1 E160 F5000\nG92 E0\n{endif}", + "cooling_tube_length": "5", + "cooling_tube_retraction": "160", + "default_filament_profile": [ + "SeeMeCNC PLA" + ], + "default_nozzle_volume_type": [ + "Standard" + ], + "default_print_profile": "0.20mm Standard @SeeMeCNC RostockMAX v3.2 0.4", + "deretraction_speed": [ + "60" + ], + "disable_m73": "0", + "emit_machine_limits_to_gcode": "1", + "enable_filament_ramming": "0", + "enable_long_retraction_when_cut": "0", + "enable_power_loss_recovery": "printer_configuration", + "extra_loading_move": "0", + "extruder_clearance_height_to_lid": "70", + "extruder_clearance_height_to_rod": "70", + "extruder_clearance_radius": "75", + "extruder_colour": [ + "#FCE94F" + ], + "extruder_offset": [ + "0x0" + ], + "extruder_printable_area": [], + "extruder_printable_height": [ + "385" + ], + "extruder_type": [ + "Bowden" + ], + "extruder_variant_list": [ + "Bowden Standard" + ], + "fan_kickstart": "0", + "fan_speedup_overhangs": "1", + "fan_speedup_time": "0", + "file_start_gcode": "", + "gcode_flavor": "reprapfirmware", + "grab_length": [ + "0" + ], + "head_wrap_detect_zone": [], + "high_current_on_filament_swap": "0", + "host_type": "duet", + "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", + "long_retractions_when_cut": [ + "0" + ], + "machine_end_gcode": [ + ";======= SEEMECNC ROSTOCKMAX V3.2 END G-CODE =======\nM104 S0 ; Turn off hotend\nM140 S0 ; Turn off heated bed\nM107 T0 ; Turn off part cooling fan\nG91 ; Relative positioning\nG1 Z2 E-160 F6000 ; Lift 2mm and retract 160mm\nG92 E0\nG90 ; Absolute positioning\nM203 Z18000 ; Allow fast Z for homing\nG28 ; Home all axes - clears part immediately on a delta\n;======= END G-CODE =======" + ], + "machine_load_filament_time": "4", + "machine_max_acceleration_e": [ + "5000", + "5000" + ], + "machine_max_acceleration_extruding": [ + "5000", + "5000" + ], + "machine_max_acceleration_retracting": [ + "5000", + "5000" + ], + "machine_max_acceleration_travel": [ + "5000", + "5000" + ], + "machine_max_acceleration_x": [ + "5000", + "5000" + ], + "machine_max_acceleration_y": [ + "5000", + "5000" + ], + "machine_max_acceleration_z": [ + "5000", + "5000" + ], + "machine_max_jerk_e": [ + "15", + "15" + ], + "machine_max_jerk_x": [ + "15", + "15" + ], + "machine_max_jerk_y": [ + "15", + "15" + ], + "machine_max_jerk_z": [ + "15", + "15" + ], + "machine_max_junction_deviation": [ + "0.01" + ], + "machine_max_speed_e": [ + "150", + "25" + ], + "machine_max_speed_x": [ + "300", + "300" + ], + "machine_max_speed_y": [ + "300", + "300" + ], + "machine_max_speed_z": [ + "200", + "200" + ], + "machine_min_extruding_rate": [ + "0", + "0" + ], + "machine_min_travel_rate": [ + "0", + "0" + ], + "machine_pause_gcode": "M601", + "machine_start_gcode": [ + ";======= SEEMECNC ROSTOCKMAX V3.2 START G-CODE =======\nG21 ; Set units to mm\nG90 ; Absolute positioning\nM82 ; Extruder to absolute mode\nG28 ; Home all axes\nG1 Z50 F9000 ; Lift nozzle for safe heating\n; --- SELECT STARTING TOOL ---\nT[initial_tool] ; Activate the first assigned filament in OrcaSlicer\n; --- PREHEAT ---\nM140 S[first_layer_bed_temperature] ; Start bed heating\nM104 S[first_layer_temperature] ; Start nozzle heating\nM190 S[first_layer_bed_temperature] ; Wait for bed to reach temp\nM109 S[first_layer_temperature] ; Wait for nozzle to reach temp\n; --- RE-PRIME BOWDEN TUBE ---\nG92 E0\nG1 E160.5 F3000 ; Retract 160mm\nG92 E0\n; --- PURGE LINE (curved arc near front edge, 270mm bed) ---\nG92 E0\nG1 X-50 Y-119.6 Z0.4 F5000 ; Move to arc start (inside 135mm radius)\nG1 Z0.3 F1000 ; Drop to prime height\nG3 X50 Y-119.6 R129.6 E40 F600 ; Arc purge, 100mm sweep, heavy extrusion\nG1 E38 F4500 ; Retract 2mm before wipe (Bowden)\nG1 X65 Y-109.6 Z0.2 F6000 ; Wipe move at Z0.2\nG92 E0 ; Zero extruder before print\n;======= END START G-CODE =======" + ], + "machine_tool_change_time": "0", + "machine_unload_filament_time": "4", + "manual_filament_change": "0", + "master_extruder_id": "1", + "max_layer_height": [ + "0.32" + ], + "max_resonance_avoidance_speed": "100", + "min_layer_height": [ + "0.08" + ], + "min_resonance_avoidance_speed": "50", + "nozzle_diameter": [ + "0.4" + ], + "nozzle_flush_dataset": [ + "0" + ], + "nozzle_height": "3.0", + "nozzle_hrc": "0", + "nozzle_type": [ + "brass" + ], + "nozzle_volume": [ + "0" + ], + "parking_pos_retraction": "160", + "pellet_modded_printer": "0", + "physical_extruder_map": [ + "0" + ], + "preferred_orientation": "0", + "printable_area": [ + "135.0000x0.0000", + "134.4863x11.7660", + "132.9490x23.4425", + "130.4000x34.9406", + "126.8585x46.1727", + "122.3516x57.0535", + "116.9134x67.5000", + "110.5855x77.4328", + "103.4160x86.7763", + "95.4594x95.4594", + "86.7763x103.4160", + "77.4328x110.5855", + "67.5000x116.9134", + "57.0535x122.3516", + "46.1727x126.8585", + "34.9406x130.4000", + "23.4425x132.9490", + "11.7660x134.4863", + "0.0000x135.0000", + "-11.7660x134.4863", + "-23.4425x132.9490", + "-34.9406x130.4000", + "-46.1727x126.8585", + "-57.0535x122.3516", + "-67.5000x116.9134", + "-77.4328x110.5855", + "-86.7763x103.4160", + "-95.4594x95.4594", + "-103.4160x86.7763", + "-110.5855x77.4328", + "-116.9134x67.5000", + "-122.3516x57.0535", + "-126.8585x46.1727", + "-130.4000x34.9406", + "-132.9490x23.4425", + "-134.4863x11.7660", + "-135.0000x0.0000", + "-134.4863x-11.7660", + "-132.9490x-23.4425", + "-130.4000x-34.9406", + "-126.8585x-46.1727", + "-122.3516x-57.0535", + "-116.9134x-67.5000", + "-110.5855x-77.4328", + "-103.4160x-86.7763", + "-95.4594x-95.4594", + "-86.7763x-103.4160", + "-77.4328x-110.5855", + "-67.5000x-116.9134", + "-57.0535x-122.3516", + "-46.1727x-126.8585", + "-34.9406x-130.4000", + "-23.4425x-132.9490", + "-11.7660x-134.4863", + "-0.0000x-135.0000", + "11.7660x-134.4863", + "23.4425x-132.9490", + "34.9406x-130.4000", + "46.1727x-126.8585", + "57.0535x-122.3516", + "67.5000x-116.9134", + "77.4328x-110.5855", + "86.7763x-103.4160", + "95.4594x-95.4594", + "103.4160x-86.7763", + "110.5855x-77.4328", + "116.9134x-67.5000", + "122.3516x-57.0535", + "126.8585x-46.1727", + "130.4000x-34.9406", + "132.9490x-23.4425", + "134.4863x-11.7660" + ], + "printable_height": "385", + "printer_agent": "", + "printer_extruder_id": [ + "1" + ], + "printer_extruder_variant": [ + "Bowden Standard" + ], + "printer_model": "SeeMeCNC RostockMAX v3.2", + "printer_notes": "", + "printer_settings_id": "SeeMeCNC RostockMAX v3.2 0.4 nozzle", + "printer_structure": "delta", + "printer_technology": "FFF", + "printer_variant": "0.4", + "printhost_authorization_type": "key", + "printhost_ssl_ignore_revoke": "0", + "printing_by_object_gcode": "", + "purge_in_prime_tower": "0", + "resonance_avoidance": "0", + "retract_before_wipe": [ + "70%" + ], + "retract_length_toolchange": [ + "3" + ], + "retract_lift_above": [ + "0" + ], + "retract_lift_below": [ + "0" + ], + "retract_lift_enforce": [ + "All Surfaces" + ], + "retract_restart_extra": [ + "0" + ], + "retract_restart_extra_toolchange": [ + "2" + ], + "retract_when_changing_layer": [ + "1" + ], + "retraction_distances_when_cut": [ + "18" + ], + "retraction_length": [ + "6" + ], + "retraction_minimum_travel": [ + "1" + ], + "retraction_speed": [ + "60" + ], + "scan_first_layer": "0", + "silent_mode": "0", + "single_extruder_multi_material": "1", + "support_air_filtration": "1", + "support_chamber_temp_control": "1", + "support_multi_bed_types": "0", + "support_object_skip_flush": "0", + "template_custom_gcode": "", + "thumbnails": "48x48/PNG, 300x300/PNG", + "thumbnails_format": "PNG", + "time_cost": "0", + "time_lapse_gcode": "", + "travel_slope": [ + "3" + ], + "upward_compatible_machine": [], + "use_firmware_retraction": "0", + "use_relative_e_distances": "1", + "wipe": [ + "1" + ], + "wipe_distance": [ + "1" + ], + "wipe_tower_type": "type2", + "wrapping_detection_gcode": "", + "wrapping_detection_layers": "20", + "wrapping_exclude_area": [], + "z_hop": [ + "0.4" + ], + "z_hop_types": [ + "Auto Lift" + ], + "z_offset": "0", + "model": "SeeMeCNC RostockMAX v3.2", + "thumbnail": "SeeMeCNC RostockMAX v3.2_cover.png", + "description": "SeeMeCNC configurations" +} diff --git a/resources/profiles/SeeMeCNC/machine/SeeMeCNC_RostockMAX_v3.2_0_5mm.json b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_RostockMAX_v3.2_0_5mm.json new file mode 100644 index 00000000000..8ee029401ba --- /dev/null +++ b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_RostockMAX_v3.2_0_5mm.json @@ -0,0 +1,351 @@ +{ + "type": "machine", + "name": "SeeMeCNC RostockMAX v3.2 0.5 nozzle", + "from": "System", + "instantiation": "true", + "adaptive_bed_mesh_margin": "0", + "auxiliary_fan": "0", + "bed_custom_model": "SeeMeCNC_Buildplate_Model.STL", + "bed_custom_texture": "SeeMeCNC_Buildplate_texture.png", + "bed_exclude_area": [ + "0x0" + ], + "bed_mesh_max": "99999,99999", + "bed_mesh_min": "-99999,-99999", + "bed_mesh_probe_distance": "50,50", + "bed_temperature_formula": "by_first_filament", + "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\n{if layer_num == 1}M104 S[nozzle_temperature] ; Step down from first layer temp to print temp{endif}\nG92 E0\n", + "best_object_pos": "0.5,0.5", + "change_extrusion_role_gcode": "", + "change_filament_gcode": "{if layer_num >= 0}\nG92 E0\nG1 E-5 F3000\nG1 E-155 F5000\nT[next_extruder]\n{if layer_num == 0}\nM109 S[first_layer_temperature]\n{else}\nM109 S[nozzle_temperature]\n{endif}\nG1 E160 F5000\nG92 E0\n{endif}", + "cooling_tube_length": "5", + "cooling_tube_retraction": "160", + "default_filament_profile": [ + "SeeMeCNC PLA" + ], + "default_nozzle_volume_type": [ + "Standard" + ], + "default_print_profile": "0.25mm Standard @SeeMeCNC RostockMAX v3.2 0.5", + "deretraction_speed": [ + "60" + ], + "disable_m73": "0", + "emit_machine_limits_to_gcode": "1", + "enable_filament_ramming": "0", + "enable_long_retraction_when_cut": "0", + "enable_power_loss_recovery": "printer_configuration", + "extra_loading_move": "0", + "extruder_clearance_height_to_lid": "70", + "extruder_clearance_height_to_rod": "70", + "extruder_clearance_radius": "75", + "extruder_colour": [ + "#FCE94F" + ], + "extruder_offset": [ + "0x0" + ], + "extruder_printable_area": [], + "extruder_printable_height": [ + "385" + ], + "extruder_type": [ + "Bowden" + ], + "extruder_variant_list": [ + "Bowden Standard" + ], + "fan_kickstart": "0", + "fan_speedup_overhangs": "1", + "fan_speedup_time": "0", + "file_start_gcode": "", + "gcode_flavor": "reprapfirmware", + "grab_length": [ + "0" + ], + "head_wrap_detect_zone": [], + "high_current_on_filament_swap": "0", + "host_type": "duet", + "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", + "long_retractions_when_cut": [ + "0" + ], + "machine_end_gcode": [ + ";======= SEEMECNC ROSTOCKMAX V3.2 END G-CODE =======\nM104 S0 ; Turn off hotend\nM140 S0 ; Turn off heated bed\nM107 T0 ; Turn off part cooling fan\nG91 ; Relative positioning\nG1 Z2 E-160 F6000 ; Lift 2mm and retract 160mm\nG92 E0\nG90 ; Absolute positioning\nM203 Z18000 ; Allow fast Z for homing\nG28 ; Home all axes - clears part immediately on a delta\n;======= END G-CODE =======" + ], + "machine_load_filament_time": "4", + "machine_max_acceleration_e": [ + "5000", + "5000" + ], + "machine_max_acceleration_extruding": [ + "5000", + "5000" + ], + "machine_max_acceleration_retracting": [ + "5000", + "5000" + ], + "machine_max_acceleration_travel": [ + "5000", + "5000" + ], + "machine_max_acceleration_x": [ + "5000", + "5000" + ], + "machine_max_acceleration_y": [ + "5000", + "5000" + ], + "machine_max_acceleration_z": [ + "5000", + "5000" + ], + "machine_max_jerk_e": [ + "15", + "15" + ], + "machine_max_jerk_x": [ + "15", + "15" + ], + "machine_max_jerk_y": [ + "15", + "15" + ], + "machine_max_jerk_z": [ + "15", + "15" + ], + "machine_max_junction_deviation": [ + "0.01" + ], + "machine_max_speed_e": [ + "150", + "25" + ], + "machine_max_speed_x": [ + "300", + "300" + ], + "machine_max_speed_y": [ + "300", + "300" + ], + "machine_max_speed_z": [ + "200", + "200" + ], + "machine_min_extruding_rate": [ + "0", + "0" + ], + "machine_min_travel_rate": [ + "0", + "0" + ], + "machine_pause_gcode": "M601", + "machine_start_gcode": [ + ";======= SEEMECNC ROSTOCKMAX V3.2 START G-CODE =======\nG21 ; Set units to mm\nG90 ; Absolute positioning\nM82 ; Extruder to absolute mode\nG28 ; Home all axes\nG1 Z50 F9000 ; Lift nozzle for safe heating\n; --- SELECT STARTING TOOL ---\nT[initial_tool] ; Activate the first assigned filament in OrcaSlicer\n; --- PREHEAT ---\nM140 S[first_layer_bed_temperature] ; Start bed heating\nM104 S[first_layer_temperature] ; Start nozzle heating\nM190 S[first_layer_bed_temperature] ; Wait for bed to reach temp\nM109 S[first_layer_temperature] ; Wait for nozzle to reach temp\n; --- RE-PRIME BOWDEN TUBE ---\nG92 E0\nG1 E160.5 F3000 ; Retract 160mm\nG92 E0\n; --- PURGE LINE (curved arc near front edge, 270mm bed) ---\nG92 E0\nG1 X-50 Y-119.6 Z0.4 F5000 ; Move to arc start (inside 135mm radius)\nG1 Z0.3 F1000 ; Drop to prime height\nG3 X50 Y-119.6 R129.6 E40 F600 ; Arc purge, 100mm sweep, heavy extrusion\nG1 E38 F4500 ; Retract 2mm before wipe (Bowden)\nG1 X65 Y-109.6 Z0.2 F6000 ; Wipe move at Z0.2\nG92 E0 ; Zero extruder before print\n;======= END START G-CODE =======" + ], + "machine_tool_change_time": "0", + "machine_unload_filament_time": "4", + "manual_filament_change": "0", + "master_extruder_id": "1", + "max_layer_height": [ + "0.4" + ], + "max_resonance_avoidance_speed": "100", + "min_layer_height": [ + "0.08" + ], + "min_resonance_avoidance_speed": "50", + "nozzle_diameter": [ + "0.5" + ], + "nozzle_flush_dataset": [ + "0" + ], + "nozzle_height": "3.0", + "nozzle_hrc": "0", + "nozzle_type": [ + "brass" + ], + "nozzle_volume": [ + "0" + ], + "parking_pos_retraction": "160", + "pellet_modded_printer": "0", + "physical_extruder_map": [ + "0" + ], + "preferred_orientation": "0", + "printable_area": [ + "135.0000x0.0000", + "134.4863x11.7660", + "132.9490x23.4425", + "130.4000x34.9406", + "126.8585x46.1727", + "122.3516x57.0535", + "116.9134x67.5000", + "110.5855x77.4328", + "103.4160x86.7763", + "95.4594x95.4594", + "86.7763x103.4160", + "77.4328x110.5855", + "67.5000x116.9134", + "57.0535x122.3516", + "46.1727x126.8585", + "34.9406x130.4000", + "23.4425x132.9490", + "11.7660x134.4863", + "0.0000x135.0000", + "-11.7660x134.4863", + "-23.4425x132.9490", + "-34.9406x130.4000", + "-46.1727x126.8585", + "-57.0535x122.3516", + "-67.5000x116.9134", + "-77.4328x110.5855", + "-86.7763x103.4160", + "-95.4594x95.4594", + "-103.4160x86.7763", + "-110.5855x77.4328", + "-116.9134x67.5000", + "-122.3516x57.0535", + "-126.8585x46.1727", + "-130.4000x34.9406", + "-132.9490x23.4425", + "-134.4863x11.7660", + "-135.0000x0.0000", + "-134.4863x-11.7660", + "-132.9490x-23.4425", + "-130.4000x-34.9406", + "-126.8585x-46.1727", + "-122.3516x-57.0535", + "-116.9134x-67.5000", + "-110.5855x-77.4328", + "-103.4160x-86.7763", + "-95.4594x-95.4594", + "-86.7763x-103.4160", + "-77.4328x-110.5855", + "-67.5000x-116.9134", + "-57.0535x-122.3516", + "-46.1727x-126.8585", + "-34.9406x-130.4000", + "-23.4425x-132.9490", + "-11.7660x-134.4863", + "-0.0000x-135.0000", + "11.7660x-134.4863", + "23.4425x-132.9490", + "34.9406x-130.4000", + "46.1727x-126.8585", + "57.0535x-122.3516", + "67.5000x-116.9134", + "77.4328x-110.5855", + "86.7763x-103.4160", + "95.4594x-95.4594", + "103.4160x-86.7763", + "110.5855x-77.4328", + "116.9134x-67.5000", + "122.3516x-57.0535", + "126.8585x-46.1727", + "130.4000x-34.9406", + "132.9490x-23.4425", + "134.4863x-11.7660" + ], + "printable_height": "385", + "printer_agent": "", + "printer_extruder_id": [ + "1" + ], + "printer_extruder_variant": [ + "Bowden Standard" + ], + "printer_model": "SeeMeCNC RostockMAX v3.2", + "printer_notes": "", + "printer_settings_id": "SeeMeCNC RostockMAX v3.2 0.5 nozzle", + "printer_structure": "delta", + "printer_technology": "FFF", + "printer_variant": "0.5", + "printhost_authorization_type": "key", + "printhost_ssl_ignore_revoke": "0", + "printing_by_object_gcode": "", + "purge_in_prime_tower": "0", + "resonance_avoidance": "0", + "retract_before_wipe": [ + "70%" + ], + "retract_length_toolchange": [ + "3" + ], + "retract_lift_above": [ + "0" + ], + "retract_lift_below": [ + "0" + ], + "retract_lift_enforce": [ + "All Surfaces" + ], + "retract_restart_extra": [ + "0" + ], + "retract_restart_extra_toolchange": [ + "2" + ], + "retract_when_changing_layer": [ + "1" + ], + "retraction_distances_when_cut": [ + "18" + ], + "retraction_length": [ + "6" + ], + "retraction_minimum_travel": [ + "1" + ], + "retraction_speed": [ + "60" + ], + "scan_first_layer": "0", + "silent_mode": "0", + "single_extruder_multi_material": "1", + "support_air_filtration": "1", + "support_chamber_temp_control": "1", + "support_multi_bed_types": "0", + "support_object_skip_flush": "0", + "template_custom_gcode": "", + "thumbnails": "48x48/PNG, 300x300/PNG", + "thumbnails_format": "PNG", + "time_cost": "0", + "time_lapse_gcode": "", + "travel_slope": [ + "3" + ], + "upward_compatible_machine": [], + "use_firmware_retraction": "0", + "use_relative_e_distances": "1", + "wipe": [ + "1" + ], + "wipe_distance": [ + "1" + ], + "wipe_tower_type": "type2", + "wrapping_detection_gcode": "", + "wrapping_detection_layers": "20", + "wrapping_exclude_area": [], + "z_hop": [ + "0.4" + ], + "z_hop_types": [ + "Auto Lift" + ], + "z_offset": "0", + "model": "SeeMeCNC RostockMAX v3.2", + "thumbnail": "SeeMeCNC RostockMAX v3.2_cover.png", + "description": "SeeMeCNC configurations" +} diff --git a/resources/profiles/SeeMeCNC/machine/SeeMeCNC_RostockMAX_v3.2_0_7mm.json b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_RostockMAX_v3.2_0_7mm.json new file mode 100644 index 00000000000..38114f10999 --- /dev/null +++ b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_RostockMAX_v3.2_0_7mm.json @@ -0,0 +1,351 @@ +{ + "type": "machine", + "name": "SeeMeCNC RostockMAX v3.2 0.7 nozzle", + "from": "System", + "instantiation": "true", + "adaptive_bed_mesh_margin": "0", + "auxiliary_fan": "0", + "bed_custom_model": "SeeMeCNC_Buildplate_Model.STL", + "bed_custom_texture": "SeeMeCNC_Buildplate_texture.png", + "bed_exclude_area": [ + "0x0" + ], + "bed_mesh_max": "99999,99999", + "bed_mesh_min": "-99999,-99999", + "bed_mesh_probe_distance": "50,50", + "bed_temperature_formula": "by_first_filament", + "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\n{if layer_num == 1}M104 S[nozzle_temperature] ; Step down from first layer temp to print temp{endif}\nG92 E0\n", + "best_object_pos": "0.5,0.5", + "change_extrusion_role_gcode": "", + "change_filament_gcode": "{if layer_num >= 0}\nG92 E0\nG1 E-5 F3000\nG1 E-155 F5000\nT[next_extruder]\n{if layer_num == 0}\nM109 S[first_layer_temperature]\n{else}\nM109 S[nozzle_temperature]\n{endif}\nG1 E160 F5000\nG92 E0\n{endif}", + "cooling_tube_length": "5", + "cooling_tube_retraction": "160", + "default_filament_profile": [ + "SeeMeCNC PLA" + ], + "default_nozzle_volume_type": [ + "Standard" + ], + "default_print_profile": "0.35mm Standard @SeeMeCNC RostockMAX v3.2 0.7", + "deretraction_speed": [ + "60" + ], + "disable_m73": "0", + "emit_machine_limits_to_gcode": "1", + "enable_filament_ramming": "0", + "enable_long_retraction_when_cut": "0", + "enable_power_loss_recovery": "printer_configuration", + "extra_loading_move": "0", + "extruder_clearance_height_to_lid": "70", + "extruder_clearance_height_to_rod": "70", + "extruder_clearance_radius": "75", + "extruder_colour": [ + "#FCE94F" + ], + "extruder_offset": [ + "0x0" + ], + "extruder_printable_area": [], + "extruder_printable_height": [ + "385" + ], + "extruder_type": [ + "Bowden" + ], + "extruder_variant_list": [ + "Bowden Standard" + ], + "fan_kickstart": "0", + "fan_speedup_overhangs": "1", + "fan_speedup_time": "0", + "file_start_gcode": "", + "gcode_flavor": "reprapfirmware", + "grab_length": [ + "0" + ], + "head_wrap_detect_zone": [], + "high_current_on_filament_swap": "0", + "host_type": "duet", + "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", + "long_retractions_when_cut": [ + "0" + ], + "machine_end_gcode": [ + ";======= SEEMECNC ROSTOCKMAX V3.2 END G-CODE =======\nM104 S0 ; Turn off hotend\nM140 S0 ; Turn off heated bed\nM107 T0 ; Turn off part cooling fan\nG91 ; Relative positioning\nG1 Z2 E-160 F6000 ; Lift 2mm and retract 160mm\nG92 E0\nG90 ; Absolute positioning\nM203 Z18000 ; Allow fast Z for homing\nG28 ; Home all axes - clears part immediately on a delta\n;======= END G-CODE =======" + ], + "machine_load_filament_time": "4", + "machine_max_acceleration_e": [ + "5000", + "5000" + ], + "machine_max_acceleration_extruding": [ + "5000", + "5000" + ], + "machine_max_acceleration_retracting": [ + "5000", + "5000" + ], + "machine_max_acceleration_travel": [ + "5000", + "5000" + ], + "machine_max_acceleration_x": [ + "5000", + "5000" + ], + "machine_max_acceleration_y": [ + "5000", + "5000" + ], + "machine_max_acceleration_z": [ + "5000", + "5000" + ], + "machine_max_jerk_e": [ + "15", + "15" + ], + "machine_max_jerk_x": [ + "15", + "15" + ], + "machine_max_jerk_y": [ + "15", + "15" + ], + "machine_max_jerk_z": [ + "15", + "15" + ], + "machine_max_junction_deviation": [ + "0.01" + ], + "machine_max_speed_e": [ + "150", + "25" + ], + "machine_max_speed_x": [ + "300", + "300" + ], + "machine_max_speed_y": [ + "300", + "300" + ], + "machine_max_speed_z": [ + "200", + "200" + ], + "machine_min_extruding_rate": [ + "0", + "0" + ], + "machine_min_travel_rate": [ + "0", + "0" + ], + "machine_pause_gcode": "M601", + "machine_start_gcode": [ + ";======= SEEMECNC ROSTOCKMAX V3.2 START G-CODE =======\nG21 ; Set units to mm\nG90 ; Absolute positioning\nM82 ; Extruder to absolute mode\nG28 ; Home all axes\nG1 Z50 F9000 ; Lift nozzle for safe heating\n; --- SELECT STARTING TOOL ---\nT[initial_tool] ; Activate the first assigned filament in OrcaSlicer\n; --- PREHEAT ---\nM140 S[first_layer_bed_temperature] ; Start bed heating\nM104 S[first_layer_temperature] ; Start nozzle heating\nM190 S[first_layer_bed_temperature] ; Wait for bed to reach temp\nM109 S[first_layer_temperature] ; Wait for nozzle to reach temp\n; --- RE-PRIME BOWDEN TUBE ---\nG92 E0\nG1 E160.5 F3000 ; Retract 160mm\nG92 E0\n; --- PURGE LINE (curved arc near front edge, 270mm bed) ---\nG92 E0\nG1 X-50 Y-119.6 Z0.4 F5000 ; Move to arc start (inside 135mm radius)\nG1 Z0.3 F1000 ; Drop to prime height\nG3 X50 Y-119.6 R129.6 E40 F600 ; Arc purge, 100mm sweep, heavy extrusion\nG1 E38 F4500 ; Retract 2mm before wipe (Bowden)\nG1 X65 Y-109.6 Z0.2 F6000 ; Wipe move at Z0.2\nG92 E0 ; Zero extruder before print\n;======= END START G-CODE =======" + ], + "machine_tool_change_time": "0", + "machine_unload_filament_time": "4", + "manual_filament_change": "0", + "master_extruder_id": "1", + "max_layer_height": [ + "0.56" + ], + "max_resonance_avoidance_speed": "100", + "min_layer_height": [ + "0.08" + ], + "min_resonance_avoidance_speed": "50", + "nozzle_diameter": [ + "0.7" + ], + "nozzle_flush_dataset": [ + "0" + ], + "nozzle_height": "3.0", + "nozzle_hrc": "0", + "nozzle_type": [ + "brass" + ], + "nozzle_volume": [ + "0" + ], + "parking_pos_retraction": "160", + "pellet_modded_printer": "0", + "physical_extruder_map": [ + "0" + ], + "preferred_orientation": "0", + "printable_area": [ + "135.0000x0.0000", + "134.4863x11.7660", + "132.9490x23.4425", + "130.4000x34.9406", + "126.8585x46.1727", + "122.3516x57.0535", + "116.9134x67.5000", + "110.5855x77.4328", + "103.4160x86.7763", + "95.4594x95.4594", + "86.7763x103.4160", + "77.4328x110.5855", + "67.5000x116.9134", + "57.0535x122.3516", + "46.1727x126.8585", + "34.9406x130.4000", + "23.4425x132.9490", + "11.7660x134.4863", + "0.0000x135.0000", + "-11.7660x134.4863", + "-23.4425x132.9490", + "-34.9406x130.4000", + "-46.1727x126.8585", + "-57.0535x122.3516", + "-67.5000x116.9134", + "-77.4328x110.5855", + "-86.7763x103.4160", + "-95.4594x95.4594", + "-103.4160x86.7763", + "-110.5855x77.4328", + "-116.9134x67.5000", + "-122.3516x57.0535", + "-126.8585x46.1727", + "-130.4000x34.9406", + "-132.9490x23.4425", + "-134.4863x11.7660", + "-135.0000x0.0000", + "-134.4863x-11.7660", + "-132.9490x-23.4425", + "-130.4000x-34.9406", + "-126.8585x-46.1727", + "-122.3516x-57.0535", + "-116.9134x-67.5000", + "-110.5855x-77.4328", + "-103.4160x-86.7763", + "-95.4594x-95.4594", + "-86.7763x-103.4160", + "-77.4328x-110.5855", + "-67.5000x-116.9134", + "-57.0535x-122.3516", + "-46.1727x-126.8585", + "-34.9406x-130.4000", + "-23.4425x-132.9490", + "-11.7660x-134.4863", + "-0.0000x-135.0000", + "11.7660x-134.4863", + "23.4425x-132.9490", + "34.9406x-130.4000", + "46.1727x-126.8585", + "57.0535x-122.3516", + "67.5000x-116.9134", + "77.4328x-110.5855", + "86.7763x-103.4160", + "95.4594x-95.4594", + "103.4160x-86.7763", + "110.5855x-77.4328", + "116.9134x-67.5000", + "122.3516x-57.0535", + "126.8585x-46.1727", + "130.4000x-34.9406", + "132.9490x-23.4425", + "134.4863x-11.7660" + ], + "printable_height": "385", + "printer_agent": "", + "printer_extruder_id": [ + "1" + ], + "printer_extruder_variant": [ + "Bowden Standard" + ], + "printer_model": "SeeMeCNC RostockMAX v3.2", + "printer_notes": "", + "printer_settings_id": "SeeMeCNC RostockMAX v3.2 0.7 nozzle", + "printer_structure": "delta", + "printer_technology": "FFF", + "printer_variant": "0.7", + "printhost_authorization_type": "key", + "printhost_ssl_ignore_revoke": "0", + "printing_by_object_gcode": "", + "purge_in_prime_tower": "0", + "resonance_avoidance": "0", + "retract_before_wipe": [ + "70%" + ], + "retract_length_toolchange": [ + "3" + ], + "retract_lift_above": [ + "0" + ], + "retract_lift_below": [ + "0" + ], + "retract_lift_enforce": [ + "All Surfaces" + ], + "retract_restart_extra": [ + "0" + ], + "retract_restart_extra_toolchange": [ + "2" + ], + "retract_when_changing_layer": [ + "1" + ], + "retraction_distances_when_cut": [ + "18" + ], + "retraction_length": [ + "6" + ], + "retraction_minimum_travel": [ + "1" + ], + "retraction_speed": [ + "60" + ], + "scan_first_layer": "0", + "silent_mode": "0", + "single_extruder_multi_material": "1", + "support_air_filtration": "1", + "support_chamber_temp_control": "1", + "support_multi_bed_types": "0", + "support_object_skip_flush": "0", + "template_custom_gcode": "", + "thumbnails": "48x48/PNG, 300x300/PNG", + "thumbnails_format": "PNG", + "time_cost": "0", + "time_lapse_gcode": "", + "travel_slope": [ + "3" + ], + "upward_compatible_machine": [], + "use_firmware_retraction": "0", + "use_relative_e_distances": "1", + "wipe": [ + "1" + ], + "wipe_distance": [ + "1" + ], + "wipe_tower_type": "type2", + "wrapping_detection_gcode": "", + "wrapping_detection_layers": "20", + "wrapping_exclude_area": [], + "z_hop": [ + "0.4" + ], + "z_hop_types": [ + "Auto Lift" + ], + "z_offset": "0", + "model": "SeeMeCNC RostockMAX v3.2", + "thumbnail": "SeeMeCNC RostockMAX v3.2_cover.png", + "description": "SeeMeCNC configurations" +} diff --git a/resources/profiles/SeeMeCNC/machine/SeeMeCNC_RostockMAX_v3.2_1_0mm.json b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_RostockMAX_v3.2_1_0mm.json new file mode 100644 index 00000000000..31ec6793e20 --- /dev/null +++ b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_RostockMAX_v3.2_1_0mm.json @@ -0,0 +1,351 @@ +{ + "type": "machine", + "name": "SeeMeCNC RostockMAX v3.2 1.0 nozzle", + "from": "System", + "instantiation": "true", + "adaptive_bed_mesh_margin": "0", + "auxiliary_fan": "0", + "bed_custom_model": "SeeMeCNC_Buildplate_Model.STL", + "bed_custom_texture": "SeeMeCNC_Buildplate_texture.png", + "bed_exclude_area": [ + "0x0" + ], + "bed_mesh_max": "99999,99999", + "bed_mesh_min": "-99999,-99999", + "bed_mesh_probe_distance": "50,50", + "bed_temperature_formula": "by_first_filament", + "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\n{if layer_num == 1}M104 S[nozzle_temperature] ; Step down from first layer temp to print temp{endif}\nG92 E0\n", + "best_object_pos": "0.5,0.5", + "change_extrusion_role_gcode": "", + "change_filament_gcode": "{if layer_num >= 0}\nG92 E0\nG1 E-5 F3000\nG1 E-155 F5000\nT[next_extruder]\n{if layer_num == 0}\nM109 S[first_layer_temperature]\n{else}\nM109 S[nozzle_temperature]\n{endif}\nG1 E160 F5000\nG92 E0\n{endif}", + "cooling_tube_length": "5", + "cooling_tube_retraction": "160", + "default_filament_profile": [ + "SeeMeCNC PLA" + ], + "default_nozzle_volume_type": [ + "Standard" + ], + "default_print_profile": "0.50mm Standard @SeeMeCNC RostockMAX v3.2 1.0", + "deretraction_speed": [ + "60" + ], + "disable_m73": "0", + "emit_machine_limits_to_gcode": "1", + "enable_filament_ramming": "0", + "enable_long_retraction_when_cut": "0", + "enable_power_loss_recovery": "printer_configuration", + "extra_loading_move": "0", + "extruder_clearance_height_to_lid": "70", + "extruder_clearance_height_to_rod": "70", + "extruder_clearance_radius": "75", + "extruder_colour": [ + "#FCE94F" + ], + "extruder_offset": [ + "0x0" + ], + "extruder_printable_area": [], + "extruder_printable_height": [ + "385" + ], + "extruder_type": [ + "Bowden" + ], + "extruder_variant_list": [ + "Bowden Standard" + ], + "fan_kickstart": "0", + "fan_speedup_overhangs": "1", + "fan_speedup_time": "0", + "file_start_gcode": "", + "gcode_flavor": "reprapfirmware", + "grab_length": [ + "0" + ], + "head_wrap_detect_zone": [], + "high_current_on_filament_swap": "0", + "host_type": "duet", + "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", + "long_retractions_when_cut": [ + "0" + ], + "machine_end_gcode": [ + ";======= SEEMECNC ROSTOCKMAX V3.2 END G-CODE =======\nM104 S0 ; Turn off hotend\nM140 S0 ; Turn off heated bed\nM107 T0 ; Turn off part cooling fan\nG91 ; Relative positioning\nG1 Z2 E-160 F6000 ; Lift 2mm and retract 160mm\nG92 E0\nG90 ; Absolute positioning\nM203 Z18000 ; Allow fast Z for homing\nG28 ; Home all axes - clears part immediately on a delta\n;======= END G-CODE =======" + ], + "machine_load_filament_time": "4", + "machine_max_acceleration_e": [ + "5000", + "5000" + ], + "machine_max_acceleration_extruding": [ + "5000", + "5000" + ], + "machine_max_acceleration_retracting": [ + "5000", + "5000" + ], + "machine_max_acceleration_travel": [ + "5000", + "5000" + ], + "machine_max_acceleration_x": [ + "5000", + "5000" + ], + "machine_max_acceleration_y": [ + "5000", + "5000" + ], + "machine_max_acceleration_z": [ + "5000", + "5000" + ], + "machine_max_jerk_e": [ + "15", + "15" + ], + "machine_max_jerk_x": [ + "15", + "15" + ], + "machine_max_jerk_y": [ + "15", + "15" + ], + "machine_max_jerk_z": [ + "15", + "15" + ], + "machine_max_junction_deviation": [ + "0.01" + ], + "machine_max_speed_e": [ + "150", + "25" + ], + "machine_max_speed_x": [ + "300", + "300" + ], + "machine_max_speed_y": [ + "300", + "300" + ], + "machine_max_speed_z": [ + "200", + "200" + ], + "machine_min_extruding_rate": [ + "0", + "0" + ], + "machine_min_travel_rate": [ + "0", + "0" + ], + "machine_pause_gcode": "M601", + "machine_start_gcode": [ + ";======= SEEMECNC ROSTOCKMAX V3.2 START G-CODE =======\nG21 ; Set units to mm\nG90 ; Absolute positioning\nM82 ; Extruder to absolute mode\nG28 ; Home all axes\nG1 Z50 F9000 ; Lift nozzle for safe heating\n; --- SELECT STARTING TOOL ---\nT[initial_tool] ; Activate the first assigned filament in OrcaSlicer\n; --- PREHEAT ---\nM140 S[first_layer_bed_temperature] ; Start bed heating\nM104 S[first_layer_temperature] ; Start nozzle heating\nM190 S[first_layer_bed_temperature] ; Wait for bed to reach temp\nM109 S[first_layer_temperature] ; Wait for nozzle to reach temp\n; --- RE-PRIME BOWDEN TUBE ---\nG92 E0\nG1 E160.5 F3000 ; Retract 160mm\nG92 E0\n; --- PURGE LINE (curved arc near front edge, 270mm bed) ---\nG92 E0\nG1 X-50 Y-119.6 Z0.4 F5000 ; Move to arc start (inside 135mm radius)\nG1 Z0.3 F1000 ; Drop to prime height\nG3 X50 Y-119.6 R129.6 E40 F600 ; Arc purge, 100mm sweep, heavy extrusion\nG1 E38 F4500 ; Retract 2mm before wipe (Bowden)\nG1 X65 Y-109.6 Z0.2 F6000 ; Wipe move at Z0.2\nG92 E0 ; Zero extruder before print\n;======= END START G-CODE =======" + ], + "machine_tool_change_time": "0", + "machine_unload_filament_time": "4", + "manual_filament_change": "0", + "master_extruder_id": "1", + "max_layer_height": [ + "0.8" + ], + "max_resonance_avoidance_speed": "100", + "min_layer_height": [ + "0.08" + ], + "min_resonance_avoidance_speed": "50", + "nozzle_diameter": [ + "1.0" + ], + "nozzle_flush_dataset": [ + "0" + ], + "nozzle_height": "3.0", + "nozzle_hrc": "0", + "nozzle_type": [ + "brass" + ], + "nozzle_volume": [ + "0" + ], + "parking_pos_retraction": "160", + "pellet_modded_printer": "0", + "physical_extruder_map": [ + "0" + ], + "preferred_orientation": "0", + "printable_area": [ + "135.0000x0.0000", + "134.4863x11.7660", + "132.9490x23.4425", + "130.4000x34.9406", + "126.8585x46.1727", + "122.3516x57.0535", + "116.9134x67.5000", + "110.5855x77.4328", + "103.4160x86.7763", + "95.4594x95.4594", + "86.7763x103.4160", + "77.4328x110.5855", + "67.5000x116.9134", + "57.0535x122.3516", + "46.1727x126.8585", + "34.9406x130.4000", + "23.4425x132.9490", + "11.7660x134.4863", + "0.0000x135.0000", + "-11.7660x134.4863", + "-23.4425x132.9490", + "-34.9406x130.4000", + "-46.1727x126.8585", + "-57.0535x122.3516", + "-67.5000x116.9134", + "-77.4328x110.5855", + "-86.7763x103.4160", + "-95.4594x95.4594", + "-103.4160x86.7763", + "-110.5855x77.4328", + "-116.9134x67.5000", + "-122.3516x57.0535", + "-126.8585x46.1727", + "-130.4000x34.9406", + "-132.9490x23.4425", + "-134.4863x11.7660", + "-135.0000x0.0000", + "-134.4863x-11.7660", + "-132.9490x-23.4425", + "-130.4000x-34.9406", + "-126.8585x-46.1727", + "-122.3516x-57.0535", + "-116.9134x-67.5000", + "-110.5855x-77.4328", + "-103.4160x-86.7763", + "-95.4594x-95.4594", + "-86.7763x-103.4160", + "-77.4328x-110.5855", + "-67.5000x-116.9134", + "-57.0535x-122.3516", + "-46.1727x-126.8585", + "-34.9406x-130.4000", + "-23.4425x-132.9490", + "-11.7660x-134.4863", + "-0.0000x-135.0000", + "11.7660x-134.4863", + "23.4425x-132.9490", + "34.9406x-130.4000", + "46.1727x-126.8585", + "57.0535x-122.3516", + "67.5000x-116.9134", + "77.4328x-110.5855", + "86.7763x-103.4160", + "95.4594x-95.4594", + "103.4160x-86.7763", + "110.5855x-77.4328", + "116.9134x-67.5000", + "122.3516x-57.0535", + "126.8585x-46.1727", + "130.4000x-34.9406", + "132.9490x-23.4425", + "134.4863x-11.7660" + ], + "printable_height": "385", + "printer_agent": "", + "printer_extruder_id": [ + "1" + ], + "printer_extruder_variant": [ + "Bowden Standard" + ], + "printer_model": "SeeMeCNC RostockMAX v3.2", + "printer_notes": "", + "printer_settings_id": "SeeMeCNC RostockMAX v3.2 1.0 nozzle", + "printer_structure": "delta", + "printer_technology": "FFF", + "printer_variant": "1.0", + "printhost_authorization_type": "key", + "printhost_ssl_ignore_revoke": "0", + "printing_by_object_gcode": "", + "purge_in_prime_tower": "0", + "resonance_avoidance": "0", + "retract_before_wipe": [ + "70%" + ], + "retract_length_toolchange": [ + "3" + ], + "retract_lift_above": [ + "0" + ], + "retract_lift_below": [ + "0" + ], + "retract_lift_enforce": [ + "All Surfaces" + ], + "retract_restart_extra": [ + "0" + ], + "retract_restart_extra_toolchange": [ + "2" + ], + "retract_when_changing_layer": [ + "1" + ], + "retraction_distances_when_cut": [ + "18" + ], + "retraction_length": [ + "6" + ], + "retraction_minimum_travel": [ + "1" + ], + "retraction_speed": [ + "60" + ], + "scan_first_layer": "0", + "silent_mode": "0", + "single_extruder_multi_material": "1", + "support_air_filtration": "1", + "support_chamber_temp_control": "1", + "support_multi_bed_types": "0", + "support_object_skip_flush": "0", + "template_custom_gcode": "", + "thumbnails": "48x48/PNG, 300x300/PNG", + "thumbnails_format": "PNG", + "time_cost": "0", + "time_lapse_gcode": "", + "travel_slope": [ + "3" + ], + "upward_compatible_machine": [], + "use_firmware_retraction": "0", + "use_relative_e_distances": "1", + "wipe": [ + "1" + ], + "wipe_distance": [ + "1" + ], + "wipe_tower_type": "type2", + "wrapping_detection_gcode": "", + "wrapping_detection_layers": "20", + "wrapping_exclude_area": [], + "z_hop": [ + "0.4" + ], + "z_hop_types": [ + "Auto Lift" + ], + "z_offset": "0", + "model": "SeeMeCNC RostockMAX v3.2", + "thumbnail": "SeeMeCNC RostockMAX v3.2_cover.png", + "description": "SeeMeCNC configurations" +} diff --git a/resources/profiles/SeeMeCNC/machine/SeeMeCNC_RostockMAX_v4_0_4mm.json b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_RostockMAX_v4_0_4mm.json new file mode 100644 index 00000000000..18017a7ecfc --- /dev/null +++ b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_RostockMAX_v4_0_4mm.json @@ -0,0 +1,351 @@ +{ + "type": "machine", + "name": "SeeMeCNC RostockMAX v4 0.4 nozzle", + "from": "System", + "instantiation": "true", + "adaptive_bed_mesh_margin": "0", + "auxiliary_fan": "0", + "bed_custom_model": "SeeMeCNC_Buildplate_Model.STL", + "bed_custom_texture": "SeeMeCNC_Buildplate_texture.png", + "bed_exclude_area": [ + "0x0" + ], + "bed_mesh_max": "99999,99999", + "bed_mesh_min": "-99999,-99999", + "bed_mesh_probe_distance": "50,50", + "bed_temperature_formula": "by_first_filament", + "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\n{if layer_num == 1}M104 S[nozzle_temperature] ; Step down from first layer temp to print temp{endif}\nG92 E0\n", + "best_object_pos": "0.5,0.5", + "change_extrusion_role_gcode": "", + "change_filament_gcode": "{if layer_num >= 0}\nG92 E0\nG1 E-5 F3000\nG1 E-155 F5000\nT[next_extruder]\n{if layer_num == 0}\nM109 S[first_layer_temperature]\n{else}\nM109 S[nozzle_temperature]\n{endif}\nG1 E160 F5000\nG92 E0\n{endif}", + "cooling_tube_length": "5", + "cooling_tube_retraction": "160", + "default_filament_profile": [ + "SeeMeCNC PLA" + ], + "default_nozzle_volume_type": [ + "Standard" + ], + "default_print_profile": "0.20mm Standard @SeeMeCNC RostockMAX v4 0.4", + "deretraction_speed": [ + "60" + ], + "disable_m73": "0", + "emit_machine_limits_to_gcode": "1", + "enable_filament_ramming": "0", + "enable_long_retraction_when_cut": "0", + "enable_power_loss_recovery": "printer_configuration", + "extra_loading_move": "0", + "extruder_clearance_height_to_lid": "70", + "extruder_clearance_height_to_rod": "70", + "extruder_clearance_radius": "75", + "extruder_colour": [ + "#FCE94F" + ], + "extruder_offset": [ + "0x0" + ], + "extruder_printable_area": [], + "extruder_printable_height": [ + "385" + ], + "extruder_type": [ + "Bowden" + ], + "extruder_variant_list": [ + "Bowden Standard" + ], + "fan_kickstart": "0", + "fan_speedup_overhangs": "1", + "fan_speedup_time": "0", + "file_start_gcode": "", + "gcode_flavor": "reprapfirmware", + "grab_length": [ + "0" + ], + "head_wrap_detect_zone": [], + "high_current_on_filament_swap": "0", + "host_type": "duet", + "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", + "long_retractions_when_cut": [ + "0" + ], + "machine_end_gcode": [ + ";======= SEEMECNC ROSTOCKMAX V4 END G-CODE =======\nM104 S0 ; Turn off hotend\nM140 S0 ; Turn off heated bed\nM107 T0 ; Turn off part cooling fan\nG91 ; Relative positioning\nG1 Z2 E-160 F6000 ; Lift 2mm and retract 160mm\nG92 E0\nG90 ; Absolute positioning\nM203 Z18000 ; Allow fast Z for homing\nG28 ; Home all axes - clears part immediately on a delta\n;======= END G-CODE =======" + ], + "machine_load_filament_time": "4", + "machine_max_acceleration_e": [ + "5000", + "5000" + ], + "machine_max_acceleration_extruding": [ + "5000", + "5000" + ], + "machine_max_acceleration_retracting": [ + "5000", + "5000" + ], + "machine_max_acceleration_travel": [ + "5000", + "5000" + ], + "machine_max_acceleration_x": [ + "5000", + "5000" + ], + "machine_max_acceleration_y": [ + "5000", + "5000" + ], + "machine_max_acceleration_z": [ + "5000", + "5000" + ], + "machine_max_jerk_e": [ + "15", + "15" + ], + "machine_max_jerk_x": [ + "15", + "15" + ], + "machine_max_jerk_y": [ + "15", + "15" + ], + "machine_max_jerk_z": [ + "15", + "15" + ], + "machine_max_junction_deviation": [ + "0.01" + ], + "machine_max_speed_e": [ + "150", + "25" + ], + "machine_max_speed_x": [ + "300", + "300" + ], + "machine_max_speed_y": [ + "300", + "300" + ], + "machine_max_speed_z": [ + "200", + "200" + ], + "machine_min_extruding_rate": [ + "0", + "0" + ], + "machine_min_travel_rate": [ + "0", + "0" + ], + "machine_pause_gcode": "M601", + "machine_start_gcode": [ + ";======= SEEMECNC ROSTOCKMAX V4 START G-CODE =======\nG21 ; Set units to mm\nG90 ; Absolute positioning\nM82 ; Extruder to absolute mode\nG28 ; Home all axes\nG1 Z50 F9000 ; Lift nozzle for safe heating\n; --- SELECT STARTING TOOL ---\nT[initial_tool] ; Activate the first assigned filament in OrcaSlicer\n; --- PREHEAT ---\nM140 S[first_layer_bed_temperature] ; Start bed heating\nM104 S[first_layer_temperature] ; Start nozzle heating\nM190 S[first_layer_bed_temperature] ; Wait for bed to reach temp\nM109 S[first_layer_temperature] ; Wait for nozzle to reach temp\n; --- RE-PRIME BOWDEN TUBE ---\nG92 E0\nG1 E160.5 F3000 ; Retract 160mm\nG92 E0\n; --- PURGE LINE (curved arc near front edge, 280mm bed) ---\nG92 E0\nG1 X-50 Y-124.8 Z0.4 F5000 ; Move to arc start (inside 140mm radius)\nG1 Z0.3 F1000 ; Drop to prime height\nG3 X50 Y-124.8 R134.4 E40 F600 ; Arc purge, 100mm sweep, heavy extrusion\nG1 E38 F4500 ; Retract 2mm before wipe (Bowden)\nG1 X65 Y-114.8 Z0.2 F6000 ; Wipe move at Z0.2\nG92 E0 ; Zero extruder before print\n;======= END START G-CODE =======" + ], + "machine_tool_change_time": "0", + "machine_unload_filament_time": "4", + "manual_filament_change": "0", + "master_extruder_id": "1", + "max_layer_height": [ + "0.32" + ], + "max_resonance_avoidance_speed": "100", + "min_layer_height": [ + "0.08" + ], + "min_resonance_avoidance_speed": "50", + "nozzle_diameter": [ + "0.4" + ], + "nozzle_flush_dataset": [ + "0" + ], + "nozzle_height": "3.0", + "nozzle_hrc": "0", + "nozzle_type": [ + "brass" + ], + "nozzle_volume": [ + "0" + ], + "parking_pos_retraction": "160", + "pellet_modded_printer": "0", + "physical_extruder_map": [ + "0" + ], + "preferred_orientation": "0", + "printable_area": [ + "140.0000x0.0000", + "139.4673x12.2018", + "137.8731x24.3107", + "135.2296x36.2347", + "131.5570x47.8828", + "126.8831x59.1666", + "121.2436x70.0000", + "114.6813x80.3007", + "107.2462x89.9903", + "98.9949x98.9949", + "89.9903x107.2462", + "80.3007x114.6813", + "70.0000x121.2436", + "59.1666x126.8831", + "47.8828x131.5570", + "36.2347x135.2296", + "24.3107x137.8731", + "12.2018x139.4673", + "0.0000x140.0000", + "-12.2018x139.4673", + "-24.3107x137.8731", + "-36.2347x135.2296", + "-47.8828x131.5570", + "-59.1666x126.8831", + "-70.0000x121.2436", + "-80.3007x114.6813", + "-89.9903x107.2462", + "-98.9949x98.9949", + "-107.2462x89.9903", + "-114.6813x80.3007", + "-121.2436x70.0000", + "-126.8831x59.1666", + "-131.5570x47.8828", + "-135.2296x36.2347", + "-137.8731x24.3107", + "-139.4673x12.2018", + "-140.0000x0.0000", + "-139.4673x-12.2018", + "-137.8731x-24.3107", + "-135.2296x-36.2347", + "-131.5570x-47.8828", + "-126.8831x-59.1666", + "-121.2436x-70.0000", + "-114.6813x-80.3007", + "-107.2462x-89.9903", + "-98.9949x-98.9949", + "-89.9903x-107.2462", + "-80.3007x-114.6813", + "-70.0000x-121.2436", + "-59.1666x-126.8831", + "-47.8828x-131.5570", + "-36.2347x-135.2296", + "-24.3107x-137.8731", + "-12.2018x-139.4673", + "-0.0000x-140.0000", + "12.2018x-139.4673", + "24.3107x-137.8731", + "36.2347x-135.2296", + "47.8828x-131.5570", + "59.1666x-126.8831", + "70.0000x-121.2436", + "80.3007x-114.6813", + "89.9903x-107.2462", + "98.9949x-98.9949", + "107.2462x-89.9903", + "114.6813x-80.3007", + "121.2436x-70.0000", + "126.8831x-59.1666", + "131.5570x-47.8828", + "135.2296x-36.2347", + "137.8731x-24.3107", + "139.4673x-12.2018" + ], + "printable_height": "385", + "printer_agent": "", + "printer_extruder_id": [ + "1" + ], + "printer_extruder_variant": [ + "Bowden Standard" + ], + "printer_model": "SeeMeCNC RostockMAX v4", + "printer_notes": "", + "printer_settings_id": "SeeMeCNC RostockMAX v4 0.4 nozzle", + "printer_structure": "delta", + "printer_technology": "FFF", + "printer_variant": "0.4", + "printhost_authorization_type": "key", + "printhost_ssl_ignore_revoke": "0", + "printing_by_object_gcode": "", + "purge_in_prime_tower": "0", + "resonance_avoidance": "0", + "retract_before_wipe": [ + "70%" + ], + "retract_length_toolchange": [ + "3" + ], + "retract_lift_above": [ + "0" + ], + "retract_lift_below": [ + "0" + ], + "retract_lift_enforce": [ + "All Surfaces" + ], + "retract_restart_extra": [ + "0" + ], + "retract_restart_extra_toolchange": [ + "2" + ], + "retract_when_changing_layer": [ + "1" + ], + "retraction_distances_when_cut": [ + "18" + ], + "retraction_length": [ + "6" + ], + "retraction_minimum_travel": [ + "1" + ], + "retraction_speed": [ + "60" + ], + "scan_first_layer": "0", + "silent_mode": "0", + "single_extruder_multi_material": "1", + "support_air_filtration": "1", + "support_chamber_temp_control": "1", + "support_multi_bed_types": "0", + "support_object_skip_flush": "0", + "template_custom_gcode": "", + "thumbnails": "48x48/PNG, 300x300/PNG", + "thumbnails_format": "PNG", + "time_cost": "0", + "time_lapse_gcode": "", + "travel_slope": [ + "3" + ], + "upward_compatible_machine": [], + "use_firmware_retraction": "0", + "use_relative_e_distances": "1", + "wipe": [ + "1" + ], + "wipe_distance": [ + "1" + ], + "wipe_tower_type": "type2", + "wrapping_detection_gcode": "", + "wrapping_detection_layers": "20", + "wrapping_exclude_area": [], + "z_hop": [ + "0.4" + ], + "z_hop_types": [ + "Auto Lift" + ], + "z_offset": "0", + "model": "SeeMeCNC RostockMAX v4", + "thumbnail": "SeeMeCNC RostockMAX v4_cover.png", + "description": "SeeMeCNC configurations" +} diff --git a/resources/profiles/SeeMeCNC/machine/SeeMeCNC_RostockMAX_v4_0_5mm.json b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_RostockMAX_v4_0_5mm.json new file mode 100644 index 00000000000..413cce5b8e4 --- /dev/null +++ b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_RostockMAX_v4_0_5mm.json @@ -0,0 +1,351 @@ +{ + "type": "machine", + "name": "SeeMeCNC RostockMAX v4 0.5 nozzle", + "from": "System", + "instantiation": "true", + "adaptive_bed_mesh_margin": "0", + "auxiliary_fan": "0", + "bed_custom_model": "SeeMeCNC_Buildplate_Model.STL", + "bed_custom_texture": "SeeMeCNC_Buildplate_texture.png", + "bed_exclude_area": [ + "0x0" + ], + "bed_mesh_max": "99999,99999", + "bed_mesh_min": "-99999,-99999", + "bed_mesh_probe_distance": "50,50", + "bed_temperature_formula": "by_first_filament", + "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\n{if layer_num == 1}M104 S[nozzle_temperature] ; Step down from first layer temp to print temp{endif}\nG92 E0\n", + "best_object_pos": "0.5,0.5", + "change_extrusion_role_gcode": "", + "change_filament_gcode": "{if layer_num >= 0}\nG92 E0\nG1 E-5 F3000\nG1 E-155 F5000\nT[next_extruder]\n{if layer_num == 0}\nM109 S[first_layer_temperature]\n{else}\nM109 S[nozzle_temperature]\n{endif}\nG1 E160 F5000\nG92 E0\n{endif}", + "cooling_tube_length": "5", + "cooling_tube_retraction": "160", + "default_filament_profile": [ + "SeeMeCNC PLA" + ], + "default_nozzle_volume_type": [ + "Standard" + ], + "default_print_profile": "0.25mm Standard @SeeMeCNC RostockMAX v4 0.5", + "deretraction_speed": [ + "60" + ], + "disable_m73": "0", + "emit_machine_limits_to_gcode": "1", + "enable_filament_ramming": "0", + "enable_long_retraction_when_cut": "0", + "enable_power_loss_recovery": "printer_configuration", + "extra_loading_move": "0", + "extruder_clearance_height_to_lid": "70", + "extruder_clearance_height_to_rod": "70", + "extruder_clearance_radius": "75", + "extruder_colour": [ + "#FCE94F" + ], + "extruder_offset": [ + "0x0" + ], + "extruder_printable_area": [], + "extruder_printable_height": [ + "385" + ], + "extruder_type": [ + "Bowden" + ], + "extruder_variant_list": [ + "Bowden Standard" + ], + "fan_kickstart": "0", + "fan_speedup_overhangs": "1", + "fan_speedup_time": "0", + "file_start_gcode": "", + "gcode_flavor": "reprapfirmware", + "grab_length": [ + "0" + ], + "head_wrap_detect_zone": [], + "high_current_on_filament_swap": "0", + "host_type": "duet", + "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", + "long_retractions_when_cut": [ + "0" + ], + "machine_end_gcode": [ + ";======= SEEMECNC ROSTOCKMAX V4 END G-CODE =======\nM104 S0 ; Turn off hotend\nM140 S0 ; Turn off heated bed\nM107 T0 ; Turn off part cooling fan\nG91 ; Relative positioning\nG1 Z2 E-160 F6000 ; Lift 2mm and retract 160mm\nG92 E0\nG90 ; Absolute positioning\nM203 Z18000 ; Allow fast Z for homing\nG28 ; Home all axes - clears part immediately on a delta\n;======= END G-CODE =======" + ], + "machine_load_filament_time": "4", + "machine_max_acceleration_e": [ + "5000", + "5000" + ], + "machine_max_acceleration_extruding": [ + "5000", + "5000" + ], + "machine_max_acceleration_retracting": [ + "5000", + "5000" + ], + "machine_max_acceleration_travel": [ + "5000", + "5000" + ], + "machine_max_acceleration_x": [ + "5000", + "5000" + ], + "machine_max_acceleration_y": [ + "5000", + "5000" + ], + "machine_max_acceleration_z": [ + "5000", + "5000" + ], + "machine_max_jerk_e": [ + "15", + "15" + ], + "machine_max_jerk_x": [ + "15", + "15" + ], + "machine_max_jerk_y": [ + "15", + "15" + ], + "machine_max_jerk_z": [ + "15", + "15" + ], + "machine_max_junction_deviation": [ + "0.01" + ], + "machine_max_speed_e": [ + "150", + "25" + ], + "machine_max_speed_x": [ + "300", + "300" + ], + "machine_max_speed_y": [ + "300", + "300" + ], + "machine_max_speed_z": [ + "200", + "200" + ], + "machine_min_extruding_rate": [ + "0", + "0" + ], + "machine_min_travel_rate": [ + "0", + "0" + ], + "machine_pause_gcode": "M601", + "machine_start_gcode": [ + ";======= SEEMECNC ROSTOCKMAX V4 START G-CODE =======\nG21 ; Set units to mm\nG90 ; Absolute positioning\nM82 ; Extruder to absolute mode\nG28 ; Home all axes\nG1 Z50 F9000 ; Lift nozzle for safe heating\n; --- SELECT STARTING TOOL ---\nT[initial_tool] ; Activate the first assigned filament in OrcaSlicer\n; --- PREHEAT ---\nM140 S[first_layer_bed_temperature] ; Start bed heating\nM104 S[first_layer_temperature] ; Start nozzle heating\nM190 S[first_layer_bed_temperature] ; Wait for bed to reach temp\nM109 S[first_layer_temperature] ; Wait for nozzle to reach temp\n; --- RE-PRIME BOWDEN TUBE ---\nG92 E0\nG1 E160.5 F3000 ; Retract 160mm\nG92 E0\n; --- PURGE LINE (curved arc near front edge, 280mm bed) ---\nG92 E0\nG1 X-50 Y-124.8 Z0.4 F5000 ; Move to arc start (inside 140mm radius)\nG1 Z0.3 F1000 ; Drop to prime height\nG3 X50 Y-124.8 R134.4 E40 F600 ; Arc purge, 100mm sweep, heavy extrusion\nG1 E38 F4500 ; Retract 2mm before wipe (Bowden)\nG1 X65 Y-114.8 Z0.2 F6000 ; Wipe move at Z0.2\nG92 E0 ; Zero extruder before print\n;======= END START G-CODE =======" + ], + "machine_tool_change_time": "0", + "machine_unload_filament_time": "4", + "manual_filament_change": "0", + "master_extruder_id": "1", + "max_layer_height": [ + "0.40" + ], + "max_resonance_avoidance_speed": "100", + "min_layer_height": [ + "0.10" + ], + "min_resonance_avoidance_speed": "50", + "nozzle_diameter": [ + "0.5" + ], + "nozzle_flush_dataset": [ + "0" + ], + "nozzle_height": "3.0", + "nozzle_hrc": "0", + "nozzle_type": [ + "brass" + ], + "nozzle_volume": [ + "0" + ], + "parking_pos_retraction": "160", + "pellet_modded_printer": "0", + "physical_extruder_map": [ + "0" + ], + "preferred_orientation": "0", + "printable_area": [ + "140.0000x0.0000", + "139.4673x12.2018", + "137.8731x24.3107", + "135.2296x36.2347", + "131.5570x47.8828", + "126.8831x59.1666", + "121.2436x70.0000", + "114.6813x80.3007", + "107.2462x89.9903", + "98.9949x98.9949", + "89.9903x107.2462", + "80.3007x114.6813", + "70.0000x121.2436", + "59.1666x126.8831", + "47.8828x131.5570", + "36.2347x135.2296", + "24.3107x137.8731", + "12.2018x139.4673", + "0.0000x140.0000", + "-12.2018x139.4673", + "-24.3107x137.8731", + "-36.2347x135.2296", + "-47.8828x131.5570", + "-59.1666x126.8831", + "-70.0000x121.2436", + "-80.3007x114.6813", + "-89.9903x107.2462", + "-98.9949x98.9949", + "-107.2462x89.9903", + "-114.6813x80.3007", + "-121.2436x70.0000", + "-126.8831x59.1666", + "-131.5570x47.8828", + "-135.2296x36.2347", + "-137.8731x24.3107", + "-139.4673x12.2018", + "-140.0000x0.0000", + "-139.4673x-12.2018", + "-137.8731x-24.3107", + "-135.2296x-36.2347", + "-131.5570x-47.8828", + "-126.8831x-59.1666", + "-121.2436x-70.0000", + "-114.6813x-80.3007", + "-107.2462x-89.9903", + "-98.9949x-98.9949", + "-89.9903x-107.2462", + "-80.3007x-114.6813", + "-70.0000x-121.2436", + "-59.1666x-126.8831", + "-47.8828x-131.5570", + "-36.2347x-135.2296", + "-24.3107x-137.8731", + "-12.2018x-139.4673", + "-0.0000x-140.0000", + "12.2018x-139.4673", + "24.3107x-137.8731", + "36.2347x-135.2296", + "47.8828x-131.5570", + "59.1666x-126.8831", + "70.0000x-121.2436", + "80.3007x-114.6813", + "89.9903x-107.2462", + "98.9949x-98.9949", + "107.2462x-89.9903", + "114.6813x-80.3007", + "121.2436x-70.0000", + "126.8831x-59.1666", + "131.5570x-47.8828", + "135.2296x-36.2347", + "137.8731x-24.3107", + "139.4673x-12.2018" + ], + "printable_height": "385", + "printer_agent": "", + "printer_extruder_id": [ + "1" + ], + "printer_extruder_variant": [ + "Bowden Standard" + ], + "printer_model": "SeeMeCNC RostockMAX v4", + "printer_notes": "", + "printer_settings_id": "SeeMeCNC RostockMAX v4 0.5 nozzle", + "printer_structure": "delta", + "printer_technology": "FFF", + "printer_variant": "0.5", + "printhost_authorization_type": "key", + "printhost_ssl_ignore_revoke": "0", + "printing_by_object_gcode": "", + "purge_in_prime_tower": "0", + "resonance_avoidance": "0", + "retract_before_wipe": [ + "70%" + ], + "retract_length_toolchange": [ + "3" + ], + "retract_lift_above": [ + "0" + ], + "retract_lift_below": [ + "0" + ], + "retract_lift_enforce": [ + "All Surfaces" + ], + "retract_restart_extra": [ + "0" + ], + "retract_restart_extra_toolchange": [ + "2" + ], + "retract_when_changing_layer": [ + "1" + ], + "retraction_distances_when_cut": [ + "18" + ], + "retraction_length": [ + "6" + ], + "retraction_minimum_travel": [ + "1" + ], + "retraction_speed": [ + "60" + ], + "scan_first_layer": "0", + "silent_mode": "0", + "single_extruder_multi_material": "1", + "support_air_filtration": "1", + "support_chamber_temp_control": "1", + "support_multi_bed_types": "0", + "support_object_skip_flush": "0", + "template_custom_gcode": "", + "thumbnails": "48x48/PNG, 300x300/PNG", + "thumbnails_format": "PNG", + "time_cost": "0", + "time_lapse_gcode": "", + "travel_slope": [ + "3" + ], + "upward_compatible_machine": [], + "use_firmware_retraction": "0", + "use_relative_e_distances": "1", + "wipe": [ + "1" + ], + "wipe_distance": [ + "1" + ], + "wipe_tower_type": "type2", + "wrapping_detection_gcode": "", + "wrapping_detection_layers": "20", + "wrapping_exclude_area": [], + "z_hop": [ + "0.4" + ], + "z_hop_types": [ + "Auto Lift" + ], + "z_offset": "0", + "model": "SeeMeCNC RostockMAX v4", + "thumbnail": "SeeMeCNC RostockMAX v4_cover.png", + "description": "SeeMeCNC configurations" +} diff --git a/resources/profiles/SeeMeCNC/machine/SeeMeCNC_RostockMAX_v4_0_7mm.json b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_RostockMAX_v4_0_7mm.json new file mode 100644 index 00000000000..9cf89c92700 --- /dev/null +++ b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_RostockMAX_v4_0_7mm.json @@ -0,0 +1,351 @@ +{ + "type": "machine", + "name": "SeeMeCNC RostockMAX v4 0.7 nozzle", + "from": "System", + "instantiation": "true", + "adaptive_bed_mesh_margin": "0", + "auxiliary_fan": "0", + "bed_custom_model": "SeeMeCNC_Buildplate_Model.STL", + "bed_custom_texture": "SeeMeCNC_Buildplate_texture.png", + "bed_exclude_area": [ + "0x0" + ], + "bed_mesh_max": "99999,99999", + "bed_mesh_min": "-99999,-99999", + "bed_mesh_probe_distance": "50,50", + "bed_temperature_formula": "by_first_filament", + "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\n{if layer_num == 1}M104 S[nozzle_temperature] ; Step down from first layer temp to print temp{endif}\nG92 E0\n", + "best_object_pos": "0.5,0.5", + "change_extrusion_role_gcode": "", + "change_filament_gcode": "{if layer_num >= 0}\nG92 E0\nG1 E-5 F3000\nG1 E-155 F5000\nT[next_extruder]\n{if layer_num == 0}\nM109 S[first_layer_temperature]\n{else}\nM109 S[nozzle_temperature]\n{endif}\nG1 E160 F5000\nG92 E0\n{endif}", + "cooling_tube_length": "5", + "cooling_tube_retraction": "160", + "default_filament_profile": [ + "SeeMeCNC PLA" + ], + "default_nozzle_volume_type": [ + "Standard" + ], + "default_print_profile": "0.35mm Standard @SeeMeCNC RostockMAX v4 0.7", + "deretraction_speed": [ + "60" + ], + "disable_m73": "0", + "emit_machine_limits_to_gcode": "1", + "enable_filament_ramming": "0", + "enable_long_retraction_when_cut": "0", + "enable_power_loss_recovery": "printer_configuration", + "extra_loading_move": "0", + "extruder_clearance_height_to_lid": "70", + "extruder_clearance_height_to_rod": "70", + "extruder_clearance_radius": "75", + "extruder_colour": [ + "#FCE94F" + ], + "extruder_offset": [ + "0x0" + ], + "extruder_printable_area": [], + "extruder_printable_height": [ + "385" + ], + "extruder_type": [ + "Bowden" + ], + "extruder_variant_list": [ + "Bowden Standard" + ], + "fan_kickstart": "0", + "fan_speedup_overhangs": "1", + "fan_speedup_time": "0", + "file_start_gcode": "", + "gcode_flavor": "reprapfirmware", + "grab_length": [ + "0" + ], + "head_wrap_detect_zone": [], + "high_current_on_filament_swap": "0", + "host_type": "duet", + "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", + "long_retractions_when_cut": [ + "0" + ], + "machine_end_gcode": [ + ";======= SEEMECNC ROSTOCKMAX V4 END G-CODE =======\nM104 S0 ; Turn off hotend\nM140 S0 ; Turn off heated bed\nM107 T0 ; Turn off part cooling fan\nG91 ; Relative positioning\nG1 Z2 E-160 F6000 ; Lift 2mm and retract 160mm\nG92 E0\nG90 ; Absolute positioning\nM203 Z18000 ; Allow fast Z for homing\nG28 ; Home all axes - clears part immediately on a delta\n;======= END G-CODE =======" + ], + "machine_load_filament_time": "4", + "machine_max_acceleration_e": [ + "5000", + "5000" + ], + "machine_max_acceleration_extruding": [ + "5000", + "5000" + ], + "machine_max_acceleration_retracting": [ + "5000", + "5000" + ], + "machine_max_acceleration_travel": [ + "5000", + "5000" + ], + "machine_max_acceleration_x": [ + "5000", + "5000" + ], + "machine_max_acceleration_y": [ + "5000", + "5000" + ], + "machine_max_acceleration_z": [ + "5000", + "5000" + ], + "machine_max_jerk_e": [ + "15", + "15" + ], + "machine_max_jerk_x": [ + "15", + "15" + ], + "machine_max_jerk_y": [ + "15", + "15" + ], + "machine_max_jerk_z": [ + "15", + "15" + ], + "machine_max_junction_deviation": [ + "0.01" + ], + "machine_max_speed_e": [ + "150", + "25" + ], + "machine_max_speed_x": [ + "300", + "300" + ], + "machine_max_speed_y": [ + "300", + "300" + ], + "machine_max_speed_z": [ + "200", + "200" + ], + "machine_min_extruding_rate": [ + "0", + "0" + ], + "machine_min_travel_rate": [ + "0", + "0" + ], + "machine_pause_gcode": "M601", + "machine_start_gcode": [ + ";======= SEEMECNC ROSTOCKMAX V4 START G-CODE =======\nG21 ; Set units to mm\nG90 ; Absolute positioning\nM82 ; Extruder to absolute mode\nG28 ; Home all axes\nG1 Z50 F9000 ; Lift nozzle for safe heating\n; --- SELECT STARTING TOOL ---\nT[initial_tool] ; Activate the first assigned filament in OrcaSlicer\n; --- PREHEAT ---\nM140 S[first_layer_bed_temperature] ; Start bed heating\nM104 S[first_layer_temperature] ; Start nozzle heating\nM190 S[first_layer_bed_temperature] ; Wait for bed to reach temp\nM109 S[first_layer_temperature] ; Wait for nozzle to reach temp\n; --- RE-PRIME BOWDEN TUBE ---\nG92 E0\nG1 E160.5 F3000 ; Retract 160mm\nG92 E0\n; --- PURGE LINE (curved arc near front edge, 280mm bed) ---\nG92 E0\nG1 X-50 Y-124.8 Z0.4 F5000 ; Move to arc start (inside 140mm radius)\nG1 Z0.3 F1000 ; Drop to prime height\nG3 X50 Y-124.8 R134.4 E40 F600 ; Arc purge, 100mm sweep, heavy extrusion\nG1 E38 F4500 ; Retract 2mm before wipe (Bowden)\nG1 X65 Y-114.8 Z0.2 F6000 ; Wipe move at Z0.2\nG92 E0 ; Zero extruder before print\n;======= END START G-CODE =======" + ], + "machine_tool_change_time": "0", + "machine_unload_filament_time": "4", + "manual_filament_change": "0", + "master_extruder_id": "1", + "max_layer_height": [ + "0.56" + ], + "max_resonance_avoidance_speed": "100", + "min_layer_height": [ + "0.15" + ], + "min_resonance_avoidance_speed": "50", + "nozzle_diameter": [ + "0.7" + ], + "nozzle_flush_dataset": [ + "0" + ], + "nozzle_height": "3.0", + "nozzle_hrc": "0", + "nozzle_type": [ + "brass" + ], + "nozzle_volume": [ + "0" + ], + "parking_pos_retraction": "160", + "pellet_modded_printer": "0", + "physical_extruder_map": [ + "0" + ], + "preferred_orientation": "0", + "printable_area": [ + "140.0000x0.0000", + "139.4673x12.2018", + "137.8731x24.3107", + "135.2296x36.2347", + "131.5570x47.8828", + "126.8831x59.1666", + "121.2436x70.0000", + "114.6813x80.3007", + "107.2462x89.9903", + "98.9949x98.9949", + "89.9903x107.2462", + "80.3007x114.6813", + "70.0000x121.2436", + "59.1666x126.8831", + "47.8828x131.5570", + "36.2347x135.2296", + "24.3107x137.8731", + "12.2018x139.4673", + "0.0000x140.0000", + "-12.2018x139.4673", + "-24.3107x137.8731", + "-36.2347x135.2296", + "-47.8828x131.5570", + "-59.1666x126.8831", + "-70.0000x121.2436", + "-80.3007x114.6813", + "-89.9903x107.2462", + "-98.9949x98.9949", + "-107.2462x89.9903", + "-114.6813x80.3007", + "-121.2436x70.0000", + "-126.8831x59.1666", + "-131.5570x47.8828", + "-135.2296x36.2347", + "-137.8731x24.3107", + "-139.4673x12.2018", + "-140.0000x0.0000", + "-139.4673x-12.2018", + "-137.8731x-24.3107", + "-135.2296x-36.2347", + "-131.5570x-47.8828", + "-126.8831x-59.1666", + "-121.2436x-70.0000", + "-114.6813x-80.3007", + "-107.2462x-89.9903", + "-98.9949x-98.9949", + "-89.9903x-107.2462", + "-80.3007x-114.6813", + "-70.0000x-121.2436", + "-59.1666x-126.8831", + "-47.8828x-131.5570", + "-36.2347x-135.2296", + "-24.3107x-137.8731", + "-12.2018x-139.4673", + "-0.0000x-140.0000", + "12.2018x-139.4673", + "24.3107x-137.8731", + "36.2347x-135.2296", + "47.8828x-131.5570", + "59.1666x-126.8831", + "70.0000x-121.2436", + "80.3007x-114.6813", + "89.9903x-107.2462", + "98.9949x-98.9949", + "107.2462x-89.9903", + "114.6813x-80.3007", + "121.2436x-70.0000", + "126.8831x-59.1666", + "131.5570x-47.8828", + "135.2296x-36.2347", + "137.8731x-24.3107", + "139.4673x-12.2018" + ], + "printable_height": "385", + "printer_agent": "", + "printer_extruder_id": [ + "1" + ], + "printer_extruder_variant": [ + "Bowden Standard" + ], + "printer_model": "SeeMeCNC RostockMAX v4", + "printer_notes": "", + "printer_settings_id": "SeeMeCNC RostockMAX v4 0.7 nozzle", + "printer_structure": "delta", + "printer_technology": "FFF", + "printer_variant": "0.7", + "printhost_authorization_type": "key", + "printhost_ssl_ignore_revoke": "0", + "printing_by_object_gcode": "", + "purge_in_prime_tower": "0", + "resonance_avoidance": "0", + "retract_before_wipe": [ + "70%" + ], + "retract_length_toolchange": [ + "3" + ], + "retract_lift_above": [ + "0" + ], + "retract_lift_below": [ + "0" + ], + "retract_lift_enforce": [ + "All Surfaces" + ], + "retract_restart_extra": [ + "0" + ], + "retract_restart_extra_toolchange": [ + "2" + ], + "retract_when_changing_layer": [ + "1" + ], + "retraction_distances_when_cut": [ + "18" + ], + "retraction_length": [ + "6" + ], + "retraction_minimum_travel": [ + "1" + ], + "retraction_speed": [ + "60" + ], + "scan_first_layer": "0", + "silent_mode": "0", + "single_extruder_multi_material": "1", + "support_air_filtration": "1", + "support_chamber_temp_control": "1", + "support_multi_bed_types": "0", + "support_object_skip_flush": "0", + "template_custom_gcode": "", + "thumbnails": "48x48/PNG, 300x300/PNG", + "thumbnails_format": "PNG", + "time_cost": "0", + "time_lapse_gcode": "", + "travel_slope": [ + "3" + ], + "upward_compatible_machine": [], + "use_firmware_retraction": "0", + "use_relative_e_distances": "1", + "wipe": [ + "1" + ], + "wipe_distance": [ + "1" + ], + "wipe_tower_type": "type2", + "wrapping_detection_gcode": "", + "wrapping_detection_layers": "20", + "wrapping_exclude_area": [], + "z_hop": [ + "0.4" + ], + "z_hop_types": [ + "Auto Lift" + ], + "z_offset": "0", + "model": "SeeMeCNC RostockMAX v4", + "thumbnail": "SeeMeCNC RostockMAX v4_cover.png", + "description": "SeeMeCNC configurations" +} diff --git a/resources/profiles/SeeMeCNC/machine/SeeMeCNC_RostockMAX_v4_1_0mm.json b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_RostockMAX_v4_1_0mm.json new file mode 100644 index 00000000000..69316f794cc --- /dev/null +++ b/resources/profiles/SeeMeCNC/machine/SeeMeCNC_RostockMAX_v4_1_0mm.json @@ -0,0 +1,351 @@ +{ + "type": "machine", + "name": "SeeMeCNC RostockMAX v4 1.0 nozzle", + "from": "System", + "instantiation": "true", + "adaptive_bed_mesh_margin": "0", + "auxiliary_fan": "0", + "bed_custom_model": "SeeMeCNC_Buildplate_Model.STL", + "bed_custom_texture": "SeeMeCNC_Buildplate_texture.png", + "bed_exclude_area": [ + "0x0" + ], + "bed_mesh_max": "99999,99999", + "bed_mesh_min": "-99999,-99999", + "bed_mesh_probe_distance": "50,50", + "bed_temperature_formula": "by_first_filament", + "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\n{if layer_num == 1}M104 S[nozzle_temperature] ; Step down from first layer temp to print temp{endif}\nG92 E0\n", + "best_object_pos": "0.5,0.5", + "change_extrusion_role_gcode": "", + "change_filament_gcode": "{if layer_num >= 0}\nG92 E0\nG1 E-5 F3000\nG1 E-155 F5000\nT[next_extruder]\n{if layer_num == 0}\nM109 S[first_layer_temperature]\n{else}\nM109 S[nozzle_temperature]\n{endif}\nG1 E160 F5000\nG92 E0\n{endif}", + "cooling_tube_length": "5", + "cooling_tube_retraction": "160", + "default_filament_profile": [ + "SeeMeCNC PLA" + ], + "default_nozzle_volume_type": [ + "Standard" + ], + "default_print_profile": "0.50mm Standard @SeeMeCNC RostockMAX v4 1.0", + "deretraction_speed": [ + "60" + ], + "disable_m73": "0", + "emit_machine_limits_to_gcode": "1", + "enable_filament_ramming": "0", + "enable_long_retraction_when_cut": "0", + "enable_power_loss_recovery": "printer_configuration", + "extra_loading_move": "0", + "extruder_clearance_height_to_lid": "70", + "extruder_clearance_height_to_rod": "70", + "extruder_clearance_radius": "75", + "extruder_colour": [ + "#FCE94F" + ], + "extruder_offset": [ + "0x0" + ], + "extruder_printable_area": [], + "extruder_printable_height": [ + "385" + ], + "extruder_type": [ + "Bowden" + ], + "extruder_variant_list": [ + "Bowden Standard" + ], + "fan_kickstart": "0", + "fan_speedup_overhangs": "1", + "fan_speedup_time": "0", + "file_start_gcode": "", + "gcode_flavor": "reprapfirmware", + "grab_length": [ + "0" + ], + "head_wrap_detect_zone": [], + "high_current_on_filament_swap": "0", + "host_type": "duet", + "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", + "long_retractions_when_cut": [ + "0" + ], + "machine_end_gcode": [ + ";======= SEEMECNC ROSTOCKMAX V4 END G-CODE =======\nM104 S0 ; Turn off hotend\nM140 S0 ; Turn off heated bed\nM107 T0 ; Turn off part cooling fan\nG91 ; Relative positioning\nG1 Z2 E-160 F6000 ; Lift 2mm and retract 160mm\nG92 E0\nG90 ; Absolute positioning\nM203 Z18000 ; Allow fast Z for homing\nG28 ; Home all axes - clears part immediately on a delta\n;======= END G-CODE =======" + ], + "machine_load_filament_time": "4", + "machine_max_acceleration_e": [ + "5000", + "5000" + ], + "machine_max_acceleration_extruding": [ + "5000", + "5000" + ], + "machine_max_acceleration_retracting": [ + "5000", + "5000" + ], + "machine_max_acceleration_travel": [ + "5000", + "5000" + ], + "machine_max_acceleration_x": [ + "5000", + "5000" + ], + "machine_max_acceleration_y": [ + "5000", + "5000" + ], + "machine_max_acceleration_z": [ + "5000", + "5000" + ], + "machine_max_jerk_e": [ + "15", + "15" + ], + "machine_max_jerk_x": [ + "15", + "15" + ], + "machine_max_jerk_y": [ + "15", + "15" + ], + "machine_max_jerk_z": [ + "15", + "15" + ], + "machine_max_junction_deviation": [ + "0.01" + ], + "machine_max_speed_e": [ + "150", + "25" + ], + "machine_max_speed_x": [ + "300", + "300" + ], + "machine_max_speed_y": [ + "300", + "300" + ], + "machine_max_speed_z": [ + "200", + "200" + ], + "machine_min_extruding_rate": [ + "0", + "0" + ], + "machine_min_travel_rate": [ + "0", + "0" + ], + "machine_pause_gcode": "M601", + "machine_start_gcode": [ + ";======= SEEMECNC ROSTOCKMAX V4 START G-CODE =======\nG21 ; Set units to mm\nG90 ; Absolute positioning\nM82 ; Extruder to absolute mode\nG28 ; Home all axes\nG1 Z50 F9000 ; Lift nozzle for safe heating\n; --- SELECT STARTING TOOL ---\nT[initial_tool] ; Activate the first assigned filament in OrcaSlicer\n; --- PREHEAT ---\nM140 S[first_layer_bed_temperature] ; Start bed heating\nM104 S[first_layer_temperature] ; Start nozzle heating\nM190 S[first_layer_bed_temperature] ; Wait for bed to reach temp\nM109 S[first_layer_temperature] ; Wait for nozzle to reach temp\n; --- RE-PRIME BOWDEN TUBE ---\nG92 E0\nG1 E160.5 F3000 ; Retract 160mm\nG92 E0\n; --- PURGE LINE (curved arc near front edge, 280mm bed) ---\nG92 E0\nG1 X-50 Y-124.8 Z0.4 F5000 ; Move to arc start (inside 140mm radius)\nG1 Z0.3 F1000 ; Drop to prime height\nG3 X50 Y-124.8 R134.4 E40 F600 ; Arc purge, 100mm sweep, heavy extrusion\nG1 E38 F4500 ; Retract 2mm before wipe (Bowden)\nG1 X65 Y-114.8 Z0.2 F6000 ; Wipe move at Z0.2\nG92 E0 ; Zero extruder before print\n;======= END START G-CODE =======" + ], + "machine_tool_change_time": "0", + "machine_unload_filament_time": "4", + "manual_filament_change": "0", + "master_extruder_id": "1", + "max_layer_height": [ + "0.80" + ], + "max_resonance_avoidance_speed": "100", + "min_layer_height": [ + "0.20" + ], + "min_resonance_avoidance_speed": "50", + "nozzle_diameter": [ + "1.0" + ], + "nozzle_flush_dataset": [ + "0" + ], + "nozzle_height": "3.0", + "nozzle_hrc": "0", + "nozzle_type": [ + "brass" + ], + "nozzle_volume": [ + "0" + ], + "parking_pos_retraction": "160", + "pellet_modded_printer": "0", + "physical_extruder_map": [ + "0" + ], + "preferred_orientation": "0", + "printable_area": [ + "140.0000x0.0000", + "139.4673x12.2018", + "137.8731x24.3107", + "135.2296x36.2347", + "131.5570x47.8828", + "126.8831x59.1666", + "121.2436x70.0000", + "114.6813x80.3007", + "107.2462x89.9903", + "98.9949x98.9949", + "89.9903x107.2462", + "80.3007x114.6813", + "70.0000x121.2436", + "59.1666x126.8831", + "47.8828x131.5570", + "36.2347x135.2296", + "24.3107x137.8731", + "12.2018x139.4673", + "0.0000x140.0000", + "-12.2018x139.4673", + "-24.3107x137.8731", + "-36.2347x135.2296", + "-47.8828x131.5570", + "-59.1666x126.8831", + "-70.0000x121.2436", + "-80.3007x114.6813", + "-89.9903x107.2462", + "-98.9949x98.9949", + "-107.2462x89.9903", + "-114.6813x80.3007", + "-121.2436x70.0000", + "-126.8831x59.1666", + "-131.5570x47.8828", + "-135.2296x36.2347", + "-137.8731x24.3107", + "-139.4673x12.2018", + "-140.0000x0.0000", + "-139.4673x-12.2018", + "-137.8731x-24.3107", + "-135.2296x-36.2347", + "-131.5570x-47.8828", + "-126.8831x-59.1666", + "-121.2436x-70.0000", + "-114.6813x-80.3007", + "-107.2462x-89.9903", + "-98.9949x-98.9949", + "-89.9903x-107.2462", + "-80.3007x-114.6813", + "-70.0000x-121.2436", + "-59.1666x-126.8831", + "-47.8828x-131.5570", + "-36.2347x-135.2296", + "-24.3107x-137.8731", + "-12.2018x-139.4673", + "-0.0000x-140.0000", + "12.2018x-139.4673", + "24.3107x-137.8731", + "36.2347x-135.2296", + "47.8828x-131.5570", + "59.1666x-126.8831", + "70.0000x-121.2436", + "80.3007x-114.6813", + "89.9903x-107.2462", + "98.9949x-98.9949", + "107.2462x-89.9903", + "114.6813x-80.3007", + "121.2436x-70.0000", + "126.8831x-59.1666", + "131.5570x-47.8828", + "135.2296x-36.2347", + "137.8731x-24.3107", + "139.4673x-12.2018" + ], + "printable_height": "385", + "printer_agent": "", + "printer_extruder_id": [ + "1" + ], + "printer_extruder_variant": [ + "Bowden Standard" + ], + "printer_model": "SeeMeCNC RostockMAX v4", + "printer_notes": "", + "printer_settings_id": "SeeMeCNC RostockMAX v4 1.0 nozzle", + "printer_structure": "delta", + "printer_technology": "FFF", + "printer_variant": "1.0", + "printhost_authorization_type": "key", + "printhost_ssl_ignore_revoke": "0", + "printing_by_object_gcode": "", + "purge_in_prime_tower": "0", + "resonance_avoidance": "0", + "retract_before_wipe": [ + "70%" + ], + "retract_length_toolchange": [ + "3" + ], + "retract_lift_above": [ + "0" + ], + "retract_lift_below": [ + "0" + ], + "retract_lift_enforce": [ + "All Surfaces" + ], + "retract_restart_extra": [ + "0" + ], + "retract_restart_extra_toolchange": [ + "2" + ], + "retract_when_changing_layer": [ + "1" + ], + "retraction_distances_when_cut": [ + "18" + ], + "retraction_length": [ + "6" + ], + "retraction_minimum_travel": [ + "1" + ], + "retraction_speed": [ + "60" + ], + "scan_first_layer": "0", + "silent_mode": "0", + "single_extruder_multi_material": "1", + "support_air_filtration": "1", + "support_chamber_temp_control": "1", + "support_multi_bed_types": "0", + "support_object_skip_flush": "0", + "template_custom_gcode": "", + "thumbnails": "48x48/PNG, 300x300/PNG", + "thumbnails_format": "PNG", + "time_cost": "0", + "time_lapse_gcode": "", + "travel_slope": [ + "3" + ], + "upward_compatible_machine": [], + "use_firmware_retraction": "0", + "use_relative_e_distances": "1", + "wipe": [ + "1" + ], + "wipe_distance": [ + "1" + ], + "wipe_tower_type": "type2", + "wrapping_detection_gcode": "", + "wrapping_detection_layers": "20", + "wrapping_exclude_area": [], + "z_hop": [ + "0.4" + ], + "z_hop_types": [ + "Auto Lift" + ], + "z_offset": "0", + "model": "SeeMeCNC RostockMAX v4", + "thumbnail": "SeeMeCNC RostockMAX v4_cover.png", + "description": "SeeMeCNC configurations" +} diff --git a/resources/profiles/SeeMeCNC/process/0.16mm Fine @SeeMeCNC Artemis 0.4.json b/resources/profiles/SeeMeCNC/process/0.16mm Fine @SeeMeCNC Artemis 0.4.json new file mode 100644 index 00000000000..378dfb41569 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.16mm Fine @SeeMeCNC Artemis 0.4.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.16mm Fine @SeeMeCNC Artemis 0.4", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.16mm Fine @SeeMeCNC Artemis 0.4", + "compatible_printers": [ + "SeeMeCNC Artemis 0.4 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.2", + "layer_height": "0.16", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1500", + "inner_wall_acceleration": "1500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.16mm Fine @SeeMeCNC BOSSdelta 300 0.4.json b/resources/profiles/SeeMeCNC/process/0.16mm Fine @SeeMeCNC BOSSdelta 300 0.4.json new file mode 100644 index 00000000000..1ca1eb7ddff --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.16mm Fine @SeeMeCNC BOSSdelta 300 0.4.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.16mm Fine @SeeMeCNC BOSSdelta 300 0.4", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.16mm Fine @SeeMeCNC BOSSdelta 300 0.4", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 300 0.4 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.2", + "layer_height": "0.16", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1500", + "inner_wall_acceleration": "1500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.16mm Fine @SeeMeCNC BOSSdelta 500 0505 0.4.json b/resources/profiles/SeeMeCNC/process/0.16mm Fine @SeeMeCNC BOSSdelta 500 0505 0.4.json new file mode 100644 index 00000000000..06da9f7edd3 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.16mm Fine @SeeMeCNC BOSSdelta 500 0505 0.4.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.16mm Fine @SeeMeCNC BOSSdelta 500 0505 0.4", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.16mm Fine @SeeMeCNC BOSSdelta 500 0505 0.4", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0505 0.4 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.2", + "layer_height": "0.16", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1500", + "inner_wall_acceleration": "1500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.16mm Fine @SeeMeCNC BOSSdelta 500 0510 0.4.json b/resources/profiles/SeeMeCNC/process/0.16mm Fine @SeeMeCNC BOSSdelta 500 0510 0.4.json new file mode 100644 index 00000000000..304f3ac56a6 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.16mm Fine @SeeMeCNC BOSSdelta 500 0510 0.4.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.16mm Fine @SeeMeCNC BOSSdelta 500 0510 0.4", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.16mm Fine @SeeMeCNC BOSSdelta 500 0510 0.4", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0510 0.4 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.2", + "layer_height": "0.16", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1500", + "inner_wall_acceleration": "1500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.16mm Fine @SeeMeCNC BOSSdelta 500 0521 0.4.json b/resources/profiles/SeeMeCNC/process/0.16mm Fine @SeeMeCNC BOSSdelta 500 0521 0.4.json new file mode 100644 index 00000000000..44449b9c29d --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.16mm Fine @SeeMeCNC BOSSdelta 500 0521 0.4.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.16mm Fine @SeeMeCNC BOSSdelta 500 0521 0.4", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.16mm Fine @SeeMeCNC BOSSdelta 500 0521 0.4", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0521 0.4 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.2", + "layer_height": "0.16", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1500", + "inner_wall_acceleration": "1500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.16mm Fine @SeeMeCNC RostockMAX v3.2 0.4.json b/resources/profiles/SeeMeCNC/process/0.16mm Fine @SeeMeCNC RostockMAX v3.2 0.4.json new file mode 100644 index 00000000000..5f4d7c43917 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.16mm Fine @SeeMeCNC RostockMAX v3.2 0.4.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.16mm Fine @SeeMeCNC RostockMAX v3.2 0.4", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.16mm Fine @SeeMeCNC RostockMAX v3.2 0.4", + "compatible_printers": [ + "SeeMeCNC RostockMAX v3.2 0.4 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.2", + "layer_height": "0.16", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1500", + "inner_wall_acceleration": "1500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.16mm Fine @SeeMeCNC RostockMAX v4 0.4.json b/resources/profiles/SeeMeCNC/process/0.16mm Fine @SeeMeCNC RostockMAX v4 0.4.json new file mode 100644 index 00000000000..391f49e552e --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.16mm Fine @SeeMeCNC RostockMAX v4 0.4.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.16mm Fine @SeeMeCNC RostockMAX v4 0.4", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.16mm Fine @SeeMeCNC RostockMAX v4 0.4", + "compatible_printers": [ + "SeeMeCNC RostockMAX v4 0.4 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.2", + "layer_height": "0.16", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1500", + "inner_wall_acceleration": "1500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.20mm Draft @SeeMeCNC RostockMAX v3.2 0.4.json b/resources/profiles/SeeMeCNC/process/0.20mm Draft @SeeMeCNC RostockMAX v3.2 0.4.json new file mode 100644 index 00000000000..c0f111db6e8 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.20mm Draft @SeeMeCNC RostockMAX v3.2 0.4.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.20mm Draft @SeeMeCNC RostockMAX v3.2 0.4", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.20mm Draft @SeeMeCNC RostockMAX v3.2 0.4", + "compatible_printers": [ + "SeeMeCNC RostockMAX v3.2 0.4 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.2", + "layer_height": "0.2", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1500", + "inner_wall_acceleration": "1500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.20mm Fine @SeeMeCNC Artemis 0.5.json b/resources/profiles/SeeMeCNC/process/0.20mm Fine @SeeMeCNC Artemis 0.5.json new file mode 100644 index 00000000000..a3f564d43c3 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.20mm Fine @SeeMeCNC Artemis 0.5.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.20mm Fine @SeeMeCNC Artemis 0.5", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.20mm Fine @SeeMeCNC Artemis 0.5", + "compatible_printers": [ + "SeeMeCNC Artemis 0.5 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.25", + "layer_height": "0.2", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1200", + "inner_wall_acceleration": "1200" +} diff --git a/resources/profiles/SeeMeCNC/process/0.20mm Fine @SeeMeCNC BOSSdelta 300 0.5.json b/resources/profiles/SeeMeCNC/process/0.20mm Fine @SeeMeCNC BOSSdelta 300 0.5.json new file mode 100644 index 00000000000..b93716667eb --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.20mm Fine @SeeMeCNC BOSSdelta 300 0.5.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.20mm Fine @SeeMeCNC BOSSdelta 300 0.5", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.20mm Fine @SeeMeCNC BOSSdelta 300 0.5", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 300 0.5 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.25", + "layer_height": "0.2", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1200", + "inner_wall_acceleration": "1200" +} diff --git a/resources/profiles/SeeMeCNC/process/0.20mm Fine @SeeMeCNC BOSSdelta 500 0505 0.5.json b/resources/profiles/SeeMeCNC/process/0.20mm Fine @SeeMeCNC BOSSdelta 500 0505 0.5.json new file mode 100644 index 00000000000..ea1e85ed85a --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.20mm Fine @SeeMeCNC BOSSdelta 500 0505 0.5.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.20mm Fine @SeeMeCNC BOSSdelta 500 0505 0.5", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.20mm Fine @SeeMeCNC BOSSdelta 500 0505 0.5", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0505 0.5 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.25", + "layer_height": "0.2", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1200", + "inner_wall_acceleration": "1200" +} diff --git a/resources/profiles/SeeMeCNC/process/0.20mm Fine @SeeMeCNC BOSSdelta 500 0510 0.5.json b/resources/profiles/SeeMeCNC/process/0.20mm Fine @SeeMeCNC BOSSdelta 500 0510 0.5.json new file mode 100644 index 00000000000..4083a4d82ac --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.20mm Fine @SeeMeCNC BOSSdelta 500 0510 0.5.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.20mm Fine @SeeMeCNC BOSSdelta 500 0510 0.5", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.20mm Fine @SeeMeCNC BOSSdelta 500 0510 0.5", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0510 0.5 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.25", + "layer_height": "0.2", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1200", + "inner_wall_acceleration": "1200" +} diff --git a/resources/profiles/SeeMeCNC/process/0.20mm Fine @SeeMeCNC BOSSdelta 500 0521 0.5.json b/resources/profiles/SeeMeCNC/process/0.20mm Fine @SeeMeCNC BOSSdelta 500 0521 0.5.json new file mode 100644 index 00000000000..89f80c76291 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.20mm Fine @SeeMeCNC BOSSdelta 500 0521 0.5.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.20mm Fine @SeeMeCNC BOSSdelta 500 0521 0.5", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.20mm Fine @SeeMeCNC BOSSdelta 500 0521 0.5", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0521 0.5 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.25", + "layer_height": "0.2", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1200", + "inner_wall_acceleration": "1200" +} diff --git a/resources/profiles/SeeMeCNC/process/0.20mm Fine @SeeMeCNC RostockMAX v3.2 0.5.json b/resources/profiles/SeeMeCNC/process/0.20mm Fine @SeeMeCNC RostockMAX v3.2 0.5.json new file mode 100644 index 00000000000..a4317bea61e --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.20mm Fine @SeeMeCNC RostockMAX v3.2 0.5.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.20mm Fine @SeeMeCNC RostockMAX v3.2 0.5", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.20mm Fine @SeeMeCNC RostockMAX v3.2 0.5", + "compatible_printers": [ + "SeeMeCNC RostockMAX v3.2 0.5 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.25", + "layer_height": "0.2", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1200", + "inner_wall_acceleration": "1200" +} diff --git a/resources/profiles/SeeMeCNC/process/0.20mm Fine @SeeMeCNC RostockMAX v4 0.5.json b/resources/profiles/SeeMeCNC/process/0.20mm Fine @SeeMeCNC RostockMAX v4 0.5.json new file mode 100644 index 00000000000..08468cb9238 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.20mm Fine @SeeMeCNC RostockMAX v4 0.5.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.20mm Fine @SeeMeCNC RostockMAX v4 0.5", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.20mm Fine @SeeMeCNC RostockMAX v4 0.5", + "compatible_printers": [ + "SeeMeCNC RostockMAX v4 0.5 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.25", + "layer_height": "0.2", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1200", + "inner_wall_acceleration": "1200" +} diff --git a/resources/profiles/SeeMeCNC/process/0.20mm Standard @SeeMeCNC Artemis 0.4.json b/resources/profiles/SeeMeCNC/process/0.20mm Standard @SeeMeCNC Artemis 0.4.json new file mode 100644 index 00000000000..031733d390f --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.20mm Standard @SeeMeCNC Artemis 0.4.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.20mm Standard @SeeMeCNC Artemis 0.4", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.20mm Standard @SeeMeCNC Artemis 0.4", + "compatible_printers": [ + "SeeMeCNC Artemis 0.4 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.2", + "layer_height": "0.2", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1500", + "inner_wall_acceleration": "1500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.20mm Standard @SeeMeCNC BOSSdelta 300 0.4.json b/resources/profiles/SeeMeCNC/process/0.20mm Standard @SeeMeCNC BOSSdelta 300 0.4.json new file mode 100644 index 00000000000..741776c8c71 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.20mm Standard @SeeMeCNC BOSSdelta 300 0.4.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.20mm Standard @SeeMeCNC BOSSdelta 300 0.4", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.20mm Standard @SeeMeCNC BOSSdelta 300 0.4", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 300 0.4 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.2", + "layer_height": "0.2", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1500", + "inner_wall_acceleration": "1500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.20mm Standard @SeeMeCNC BOSSdelta 500 0505 0.4.json b/resources/profiles/SeeMeCNC/process/0.20mm Standard @SeeMeCNC BOSSdelta 500 0505 0.4.json new file mode 100644 index 00000000000..48c4ca98b33 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.20mm Standard @SeeMeCNC BOSSdelta 500 0505 0.4.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.20mm Standard @SeeMeCNC BOSSdelta 500 0505 0.4", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.20mm Standard @SeeMeCNC BOSSdelta 500 0505 0.4", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0505 0.4 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.2", + "layer_height": "0.2", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1500", + "inner_wall_acceleration": "1500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.20mm Standard @SeeMeCNC BOSSdelta 500 0510 0.4.json b/resources/profiles/SeeMeCNC/process/0.20mm Standard @SeeMeCNC BOSSdelta 500 0510 0.4.json new file mode 100644 index 00000000000..cf6e7a5ad03 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.20mm Standard @SeeMeCNC BOSSdelta 500 0510 0.4.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.20mm Standard @SeeMeCNC BOSSdelta 500 0510 0.4", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.20mm Standard @SeeMeCNC BOSSdelta 500 0510 0.4", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0510 0.4 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.2", + "layer_height": "0.2", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1500", + "inner_wall_acceleration": "1500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.20mm Standard @SeeMeCNC BOSSdelta 500 0521 0.4.json b/resources/profiles/SeeMeCNC/process/0.20mm Standard @SeeMeCNC BOSSdelta 500 0521 0.4.json new file mode 100644 index 00000000000..1c99ac7b4f2 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.20mm Standard @SeeMeCNC BOSSdelta 500 0521 0.4.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.20mm Standard @SeeMeCNC BOSSdelta 500 0521 0.4", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.20mm Standard @SeeMeCNC BOSSdelta 500 0521 0.4", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0521 0.4 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.2", + "layer_height": "0.2", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1500", + "inner_wall_acceleration": "1500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.20mm Standard @SeeMeCNC RostockMAX v3.2 0.4.json b/resources/profiles/SeeMeCNC/process/0.20mm Standard @SeeMeCNC RostockMAX v3.2 0.4.json new file mode 100644 index 00000000000..0eb24230487 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.20mm Standard @SeeMeCNC RostockMAX v3.2 0.4.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.20mm Standard @SeeMeCNC RostockMAX v3.2 0.4", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.20mm Standard @SeeMeCNC RostockMAX v3.2 0.4", + "compatible_printers": [ + "SeeMeCNC RostockMAX v3.2 0.4 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.2", + "layer_height": "0.2", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1500", + "inner_wall_acceleration": "1500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.20mm Standard @SeeMeCNC RostockMAX v4 0.4.json b/resources/profiles/SeeMeCNC/process/0.20mm Standard @SeeMeCNC RostockMAX v4 0.4.json new file mode 100644 index 00000000000..3b829e46d67 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.20mm Standard @SeeMeCNC RostockMAX v4 0.4.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.20mm Standard @SeeMeCNC RostockMAX v4 0.4", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.20mm Standard @SeeMeCNC RostockMAX v4 0.4", + "compatible_printers": [ + "SeeMeCNC RostockMAX v4 0.4 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.2", + "layer_height": "0.2", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1500", + "inner_wall_acceleration": "1500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.24mm Draft @SeeMeCNC Artemis 0.4.json b/resources/profiles/SeeMeCNC/process/0.24mm Draft @SeeMeCNC Artemis 0.4.json new file mode 100644 index 00000000000..a1eeadf8c1b --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.24mm Draft @SeeMeCNC Artemis 0.4.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.24mm Draft @SeeMeCNC Artemis 0.4", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.24mm Draft @SeeMeCNC Artemis 0.4", + "compatible_printers": [ + "SeeMeCNC Artemis 0.4 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.2", + "layer_height": "0.24", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1500", + "inner_wall_acceleration": "1500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.24mm Draft @SeeMeCNC BOSSdelta 300 0.4.json b/resources/profiles/SeeMeCNC/process/0.24mm Draft @SeeMeCNC BOSSdelta 300 0.4.json new file mode 100644 index 00000000000..a8b05dfa20c --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.24mm Draft @SeeMeCNC BOSSdelta 300 0.4.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.24mm Draft @SeeMeCNC BOSSdelta 300 0.4", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.24mm Draft @SeeMeCNC BOSSdelta 300 0.4", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 300 0.4 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.2", + "layer_height": "0.24", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1500", + "inner_wall_acceleration": "1500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.24mm Draft @SeeMeCNC BOSSdelta 500 0505 0.4.json b/resources/profiles/SeeMeCNC/process/0.24mm Draft @SeeMeCNC BOSSdelta 500 0505 0.4.json new file mode 100644 index 00000000000..7c571ed4873 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.24mm Draft @SeeMeCNC BOSSdelta 500 0505 0.4.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.24mm Draft @SeeMeCNC BOSSdelta 500 0505 0.4", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.24mm Draft @SeeMeCNC BOSSdelta 500 0505 0.4", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0505 0.4 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.2", + "layer_height": "0.24", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1500", + "inner_wall_acceleration": "1500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.24mm Draft @SeeMeCNC BOSSdelta 500 0510 0.4.json b/resources/profiles/SeeMeCNC/process/0.24mm Draft @SeeMeCNC BOSSdelta 500 0510 0.4.json new file mode 100644 index 00000000000..1f2fbdbecb4 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.24mm Draft @SeeMeCNC BOSSdelta 500 0510 0.4.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.24mm Draft @SeeMeCNC BOSSdelta 500 0510 0.4", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.24mm Draft @SeeMeCNC BOSSdelta 500 0510 0.4", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0510 0.4 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.2", + "layer_height": "0.24", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1500", + "inner_wall_acceleration": "1500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.24mm Draft @SeeMeCNC BOSSdelta 500 0521 0.4.json b/resources/profiles/SeeMeCNC/process/0.24mm Draft @SeeMeCNC BOSSdelta 500 0521 0.4.json new file mode 100644 index 00000000000..d476011b5e3 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.24mm Draft @SeeMeCNC BOSSdelta 500 0521 0.4.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.24mm Draft @SeeMeCNC BOSSdelta 500 0521 0.4", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.24mm Draft @SeeMeCNC BOSSdelta 500 0521 0.4", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0521 0.4 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.2", + "layer_height": "0.24", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1500", + "inner_wall_acceleration": "1500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.24mm Draft @SeeMeCNC RostockMAX v3.2 0.4.json b/resources/profiles/SeeMeCNC/process/0.24mm Draft @SeeMeCNC RostockMAX v3.2 0.4.json new file mode 100644 index 00000000000..d1b9e76880b --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.24mm Draft @SeeMeCNC RostockMAX v3.2 0.4.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.24mm Draft @SeeMeCNC RostockMAX v3.2 0.4", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.24mm Draft @SeeMeCNC RostockMAX v3.2 0.4", + "compatible_printers": [ + "SeeMeCNC RostockMAX v3.2 0.4 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.2", + "layer_height": "0.24", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1500", + "inner_wall_acceleration": "1500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.24mm Draft @SeeMeCNC RostockMAX v4 0.4.json b/resources/profiles/SeeMeCNC/process/0.24mm Draft @SeeMeCNC RostockMAX v4 0.4.json new file mode 100644 index 00000000000..f47222828cc --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.24mm Draft @SeeMeCNC RostockMAX v4 0.4.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.24mm Draft @SeeMeCNC RostockMAX v4 0.4", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.24mm Draft @SeeMeCNC RostockMAX v4 0.4", + "compatible_printers": [ + "SeeMeCNC RostockMAX v4 0.4 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.2", + "layer_height": "0.24", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1500", + "inner_wall_acceleration": "1500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.25mm Standard @SeeMeCNC Artemis 0.5.json b/resources/profiles/SeeMeCNC/process/0.25mm Standard @SeeMeCNC Artemis 0.5.json new file mode 100644 index 00000000000..3700a954c8c --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.25mm Standard @SeeMeCNC Artemis 0.5.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.25mm Standard @SeeMeCNC Artemis 0.5", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.25mm Standard @SeeMeCNC Artemis 0.5", + "compatible_printers": [ + "SeeMeCNC Artemis 0.5 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.25", + "layer_height": "0.25", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1200", + "inner_wall_acceleration": "1200" +} diff --git a/resources/profiles/SeeMeCNC/process/0.25mm Standard @SeeMeCNC BOSSdelta 300 0.5.json b/resources/profiles/SeeMeCNC/process/0.25mm Standard @SeeMeCNC BOSSdelta 300 0.5.json new file mode 100644 index 00000000000..3d1d4258dcd --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.25mm Standard @SeeMeCNC BOSSdelta 300 0.5.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.25mm Standard @SeeMeCNC BOSSdelta 300 0.5", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.25mm Standard @SeeMeCNC BOSSdelta 300 0.5", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 300 0.5 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.25", + "layer_height": "0.25", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1200", + "inner_wall_acceleration": "1200" +} diff --git a/resources/profiles/SeeMeCNC/process/0.25mm Standard @SeeMeCNC BOSSdelta 500 0505 0.5.json b/resources/profiles/SeeMeCNC/process/0.25mm Standard @SeeMeCNC BOSSdelta 500 0505 0.5.json new file mode 100644 index 00000000000..aa5189c4f50 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.25mm Standard @SeeMeCNC BOSSdelta 500 0505 0.5.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.25mm Standard @SeeMeCNC BOSSdelta 500 0505 0.5", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.25mm Standard @SeeMeCNC BOSSdelta 500 0505 0.5", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0505 0.5 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.25", + "layer_height": "0.25", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1200", + "inner_wall_acceleration": "1200" +} diff --git a/resources/profiles/SeeMeCNC/process/0.25mm Standard @SeeMeCNC BOSSdelta 500 0510 0.5.json b/resources/profiles/SeeMeCNC/process/0.25mm Standard @SeeMeCNC BOSSdelta 500 0510 0.5.json new file mode 100644 index 00000000000..ff1b0bbfd47 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.25mm Standard @SeeMeCNC BOSSdelta 500 0510 0.5.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.25mm Standard @SeeMeCNC BOSSdelta 500 0510 0.5", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.25mm Standard @SeeMeCNC BOSSdelta 500 0510 0.5", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0510 0.5 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.25", + "layer_height": "0.25", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1200", + "inner_wall_acceleration": "1200" +} diff --git a/resources/profiles/SeeMeCNC/process/0.25mm Standard @SeeMeCNC BOSSdelta 500 0521 0.5.json b/resources/profiles/SeeMeCNC/process/0.25mm Standard @SeeMeCNC BOSSdelta 500 0521 0.5.json new file mode 100644 index 00000000000..36c391d9771 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.25mm Standard @SeeMeCNC BOSSdelta 500 0521 0.5.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.25mm Standard @SeeMeCNC BOSSdelta 500 0521 0.5", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.25mm Standard @SeeMeCNC BOSSdelta 500 0521 0.5", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0521 0.5 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.25", + "layer_height": "0.25", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1200", + "inner_wall_acceleration": "1200" +} diff --git a/resources/profiles/SeeMeCNC/process/0.25mm Standard @SeeMeCNC RostockMAX v3.2 0.5.json b/resources/profiles/SeeMeCNC/process/0.25mm Standard @SeeMeCNC RostockMAX v3.2 0.5.json new file mode 100644 index 00000000000..9205dff2780 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.25mm Standard @SeeMeCNC RostockMAX v3.2 0.5.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.25mm Standard @SeeMeCNC RostockMAX v3.2 0.5", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.25mm Standard @SeeMeCNC RostockMAX v3.2 0.5", + "compatible_printers": [ + "SeeMeCNC RostockMAX v3.2 0.5 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.25", + "layer_height": "0.25", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1200", + "inner_wall_acceleration": "1200" +} diff --git a/resources/profiles/SeeMeCNC/process/0.25mm Standard @SeeMeCNC RostockMAX v4 0.5.json b/resources/profiles/SeeMeCNC/process/0.25mm Standard @SeeMeCNC RostockMAX v4 0.5.json new file mode 100644 index 00000000000..5e7a025d075 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.25mm Standard @SeeMeCNC RostockMAX v4 0.5.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.25mm Standard @SeeMeCNC RostockMAX v4 0.5", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.25mm Standard @SeeMeCNC RostockMAX v4 0.5", + "compatible_printers": [ + "SeeMeCNC RostockMAX v4 0.5 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.25", + "layer_height": "0.25", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1200", + "inner_wall_acceleration": "1200" +} diff --git a/resources/profiles/SeeMeCNC/process/0.28mm Extra Draft @SeeMeCNC Artemis 0.4.json b/resources/profiles/SeeMeCNC/process/0.28mm Extra Draft @SeeMeCNC Artemis 0.4.json new file mode 100644 index 00000000000..66bff7d5df0 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.28mm Extra Draft @SeeMeCNC Artemis 0.4.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.28mm Extra Draft @SeeMeCNC Artemis 0.4", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.28mm Extra Draft @SeeMeCNC Artemis 0.4", + "compatible_printers": [ + "SeeMeCNC Artemis 0.4 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.2", + "layer_height": "0.28", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1500", + "inner_wall_acceleration": "1500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.28mm Extra Draft @SeeMeCNC BOSSdelta 300 0.4.json b/resources/profiles/SeeMeCNC/process/0.28mm Extra Draft @SeeMeCNC BOSSdelta 300 0.4.json new file mode 100644 index 00000000000..1e35b0eb8fa --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.28mm Extra Draft @SeeMeCNC BOSSdelta 300 0.4.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.28mm Extra Draft @SeeMeCNC BOSSdelta 300 0.4", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.28mm Extra Draft @SeeMeCNC BOSSdelta 300 0.4", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 300 0.4 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.2", + "layer_height": "0.28", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1500", + "inner_wall_acceleration": "1500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.28mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 0.4.json b/resources/profiles/SeeMeCNC/process/0.28mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 0.4.json new file mode 100644 index 00000000000..7c9ad2d8110 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.28mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 0.4.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.28mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 0.4", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.28mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 0.4", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0505 0.4 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.2", + "layer_height": "0.28", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1500", + "inner_wall_acceleration": "1500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.28mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 0.4.json b/resources/profiles/SeeMeCNC/process/0.28mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 0.4.json new file mode 100644 index 00000000000..cd7b8b6ddfc --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.28mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 0.4.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.28mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 0.4", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.28mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 0.4", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0510 0.4 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.2", + "layer_height": "0.28", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1500", + "inner_wall_acceleration": "1500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.28mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 0.4.json b/resources/profiles/SeeMeCNC/process/0.28mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 0.4.json new file mode 100644 index 00000000000..d5c48768493 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.28mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 0.4.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.28mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 0.4", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.28mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 0.4", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0521 0.4 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.2", + "layer_height": "0.28", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1500", + "inner_wall_acceleration": "1500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.28mm Extra Draft @SeeMeCNC RostockMAX v3.2 0.4.json b/resources/profiles/SeeMeCNC/process/0.28mm Extra Draft @SeeMeCNC RostockMAX v3.2 0.4.json new file mode 100644 index 00000000000..4155bb2e51a --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.28mm Extra Draft @SeeMeCNC RostockMAX v3.2 0.4.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.28mm Extra Draft @SeeMeCNC RostockMAX v3.2 0.4", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.28mm Extra Draft @SeeMeCNC RostockMAX v3.2 0.4", + "compatible_printers": [ + "SeeMeCNC RostockMAX v3.2 0.4 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.2", + "layer_height": "0.28", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1500", + "inner_wall_acceleration": "1500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.28mm Extra Draft @SeeMeCNC RostockMAX v4 0.4.json b/resources/profiles/SeeMeCNC/process/0.28mm Extra Draft @SeeMeCNC RostockMAX v4 0.4.json new file mode 100644 index 00000000000..7165fd06ee8 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.28mm Extra Draft @SeeMeCNC RostockMAX v4 0.4.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.28mm Extra Draft @SeeMeCNC RostockMAX v4 0.4", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.28mm Extra Draft @SeeMeCNC RostockMAX v4 0.4", + "compatible_printers": [ + "SeeMeCNC RostockMAX v4 0.4 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.2", + "layer_height": "0.28", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1500", + "inner_wall_acceleration": "1500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.28mm Fine @SeeMeCNC Artemis 0.7.json b/resources/profiles/SeeMeCNC/process/0.28mm Fine @SeeMeCNC Artemis 0.7.json new file mode 100644 index 00000000000..49667ba7052 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.28mm Fine @SeeMeCNC Artemis 0.7.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.28mm Fine @SeeMeCNC Artemis 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.28mm Fine @SeeMeCNC Artemis 0.7", + "compatible_printers": [ + "SeeMeCNC Artemis 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.35", + "layer_height": "0.28", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "800", + "inner_wall_acceleration": "800" +} diff --git a/resources/profiles/SeeMeCNC/process/0.28mm Fine @SeeMeCNC BOSSdelta 300 0.7.json b/resources/profiles/SeeMeCNC/process/0.28mm Fine @SeeMeCNC BOSSdelta 300 0.7.json new file mode 100644 index 00000000000..a34c19f2cc6 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.28mm Fine @SeeMeCNC BOSSdelta 300 0.7.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.28mm Fine @SeeMeCNC BOSSdelta 300 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.28mm Fine @SeeMeCNC BOSSdelta 300 0.7", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 300 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.35", + "layer_height": "0.28", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "800", + "inner_wall_acceleration": "800" +} diff --git a/resources/profiles/SeeMeCNC/process/0.28mm Fine @SeeMeCNC BOSSdelta 500 0505 0.7.json b/resources/profiles/SeeMeCNC/process/0.28mm Fine @SeeMeCNC BOSSdelta 500 0505 0.7.json new file mode 100644 index 00000000000..841444a1f18 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.28mm Fine @SeeMeCNC BOSSdelta 500 0505 0.7.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.28mm Fine @SeeMeCNC BOSSdelta 500 0505 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.28mm Fine @SeeMeCNC BOSSdelta 500 0505 0.7", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0505 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.35", + "layer_height": "0.28", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "800", + "inner_wall_acceleration": "800" +} diff --git a/resources/profiles/SeeMeCNC/process/0.28mm Fine @SeeMeCNC BOSSdelta 500 0510 0.7.json b/resources/profiles/SeeMeCNC/process/0.28mm Fine @SeeMeCNC BOSSdelta 500 0510 0.7.json new file mode 100644 index 00000000000..33bc3e82d49 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.28mm Fine @SeeMeCNC BOSSdelta 500 0510 0.7.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.28mm Fine @SeeMeCNC BOSSdelta 500 0510 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.28mm Fine @SeeMeCNC BOSSdelta 500 0510 0.7", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0510 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.35", + "layer_height": "0.28", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "800", + "inner_wall_acceleration": "800" +} diff --git a/resources/profiles/SeeMeCNC/process/0.28mm Fine @SeeMeCNC BOSSdelta 500 0521 0.7.json b/resources/profiles/SeeMeCNC/process/0.28mm Fine @SeeMeCNC BOSSdelta 500 0521 0.7.json new file mode 100644 index 00000000000..e90d3a88d69 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.28mm Fine @SeeMeCNC BOSSdelta 500 0521 0.7.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.28mm Fine @SeeMeCNC BOSSdelta 500 0521 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.28mm Fine @SeeMeCNC BOSSdelta 500 0521 0.7", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0521 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.35", + "layer_height": "0.28", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "800", + "inner_wall_acceleration": "800" +} diff --git a/resources/profiles/SeeMeCNC/process/0.28mm Fine @SeeMeCNC RostockMAX v3.2 0.7.json b/resources/profiles/SeeMeCNC/process/0.28mm Fine @SeeMeCNC RostockMAX v3.2 0.7.json new file mode 100644 index 00000000000..7520f438132 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.28mm Fine @SeeMeCNC RostockMAX v3.2 0.7.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.28mm Fine @SeeMeCNC RostockMAX v3.2 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.28mm Fine @SeeMeCNC RostockMAX v3.2 0.7", + "compatible_printers": [ + "SeeMeCNC RostockMAX v3.2 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.35", + "layer_height": "0.28", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "800", + "inner_wall_acceleration": "800" +} diff --git a/resources/profiles/SeeMeCNC/process/0.28mm Fine @SeeMeCNC RostockMAX v4 0.7.json b/resources/profiles/SeeMeCNC/process/0.28mm Fine @SeeMeCNC RostockMAX v4 0.7.json new file mode 100644 index 00000000000..bcc2c2e2c24 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.28mm Fine @SeeMeCNC RostockMAX v4 0.7.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.28mm Fine @SeeMeCNC RostockMAX v4 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.28mm Fine @SeeMeCNC RostockMAX v4 0.7", + "compatible_printers": [ + "SeeMeCNC RostockMAX v4 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.35", + "layer_height": "0.28", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "800", + "inner_wall_acceleration": "800" +} diff --git a/resources/profiles/SeeMeCNC/process/0.30mm Draft @SeeMeCNC Artemis 0.5.json b/resources/profiles/SeeMeCNC/process/0.30mm Draft @SeeMeCNC Artemis 0.5.json new file mode 100644 index 00000000000..522dd065d8b --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.30mm Draft @SeeMeCNC Artemis 0.5.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.30mm Draft @SeeMeCNC Artemis 0.5", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.30mm Draft @SeeMeCNC Artemis 0.5", + "compatible_printers": [ + "SeeMeCNC Artemis 0.5 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.25", + "layer_height": "0.3", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1200", + "inner_wall_acceleration": "1200" +} diff --git a/resources/profiles/SeeMeCNC/process/0.30mm Draft @SeeMeCNC BOSSdelta 300 0.5.json b/resources/profiles/SeeMeCNC/process/0.30mm Draft @SeeMeCNC BOSSdelta 300 0.5.json new file mode 100644 index 00000000000..256c30d2b90 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.30mm Draft @SeeMeCNC BOSSdelta 300 0.5.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.30mm Draft @SeeMeCNC BOSSdelta 300 0.5", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.30mm Draft @SeeMeCNC BOSSdelta 300 0.5", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 300 0.5 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.25", + "layer_height": "0.3", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1200", + "inner_wall_acceleration": "1200" +} diff --git a/resources/profiles/SeeMeCNC/process/0.30mm Draft @SeeMeCNC BOSSdelta 500 0505 0.5.json b/resources/profiles/SeeMeCNC/process/0.30mm Draft @SeeMeCNC BOSSdelta 500 0505 0.5.json new file mode 100644 index 00000000000..9174c0dde77 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.30mm Draft @SeeMeCNC BOSSdelta 500 0505 0.5.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.30mm Draft @SeeMeCNC BOSSdelta 500 0505 0.5", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.30mm Draft @SeeMeCNC BOSSdelta 500 0505 0.5", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0505 0.5 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.25", + "layer_height": "0.3", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1200", + "inner_wall_acceleration": "1200" +} diff --git a/resources/profiles/SeeMeCNC/process/0.30mm Draft @SeeMeCNC BOSSdelta 500 0510 0.5.json b/resources/profiles/SeeMeCNC/process/0.30mm Draft @SeeMeCNC BOSSdelta 500 0510 0.5.json new file mode 100644 index 00000000000..543e58af035 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.30mm Draft @SeeMeCNC BOSSdelta 500 0510 0.5.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.30mm Draft @SeeMeCNC BOSSdelta 500 0510 0.5", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.30mm Draft @SeeMeCNC BOSSdelta 500 0510 0.5", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0510 0.5 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.25", + "layer_height": "0.3", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1200", + "inner_wall_acceleration": "1200" +} diff --git a/resources/profiles/SeeMeCNC/process/0.30mm Draft @SeeMeCNC BOSSdelta 500 0521 0.5.json b/resources/profiles/SeeMeCNC/process/0.30mm Draft @SeeMeCNC BOSSdelta 500 0521 0.5.json new file mode 100644 index 00000000000..dd03ab70bbc --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.30mm Draft @SeeMeCNC BOSSdelta 500 0521 0.5.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.30mm Draft @SeeMeCNC BOSSdelta 500 0521 0.5", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.30mm Draft @SeeMeCNC BOSSdelta 500 0521 0.5", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0521 0.5 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.25", + "layer_height": "0.3", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1200", + "inner_wall_acceleration": "1200" +} diff --git a/resources/profiles/SeeMeCNC/process/0.30mm Draft @SeeMeCNC RostockMAX v3.2 0.5.json b/resources/profiles/SeeMeCNC/process/0.30mm Draft @SeeMeCNC RostockMAX v3.2 0.5.json new file mode 100644 index 00000000000..7ffedffa576 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.30mm Draft @SeeMeCNC RostockMAX v3.2 0.5.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.30mm Draft @SeeMeCNC RostockMAX v3.2 0.5", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.30mm Draft @SeeMeCNC RostockMAX v3.2 0.5", + "compatible_printers": [ + "SeeMeCNC RostockMAX v3.2 0.5 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.25", + "layer_height": "0.3", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1200", + "inner_wall_acceleration": "1200" +} diff --git a/resources/profiles/SeeMeCNC/process/0.30mm Draft @SeeMeCNC RostockMAX v4 0.5.json b/resources/profiles/SeeMeCNC/process/0.30mm Draft @SeeMeCNC RostockMAX v4 0.5.json new file mode 100644 index 00000000000..a06df312b04 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.30mm Draft @SeeMeCNC RostockMAX v4 0.5.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.30mm Draft @SeeMeCNC RostockMAX v4 0.5", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.30mm Draft @SeeMeCNC RostockMAX v4 0.5", + "compatible_printers": [ + "SeeMeCNC RostockMAX v4 0.5 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.25", + "layer_height": "0.3", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1200", + "inner_wall_acceleration": "1200" +} diff --git a/resources/profiles/SeeMeCNC/process/0.30mm TPU Solid @SeeMeCNC Artemis 0.7.json b/resources/profiles/SeeMeCNC/process/0.30mm TPU Solid @SeeMeCNC Artemis 0.7.json new file mode 100644 index 00000000000..2c93f40bced --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.30mm TPU Solid @SeeMeCNC Artemis 0.7.json @@ -0,0 +1,34 @@ +{ + "type": "process", + "name": "0.30mm TPU Solid @SeeMeCNC Artemis 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.30mm TPU Solid @SeeMeCNC Artemis 0.7", + "compatible_printers": [ + "SeeMeCNC Artemis 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "bottom_surface_pattern": "concentric", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.3", + "layer_height": "0.3", + "precise_z_height": "0", + "skirt_distance": "1", + "skirt_loops": "2", + "spiral_mode": "0", + "top_shell_layers": "2", + "top_surface_pattern": "concentric", + "line_width": "0.9", + "outer_wall_line_width": "0.9", + "top_surface_line_width": "0.9", + "internal_solid_infill_line_width": "0.9", + "sparse_infill_line_width": "0.9", + "initial_layer_line_width": "0.9", + "support_line_width": "0.9", + "skeleton_infill_line_width": "0.9", + "skin_infill_line_width": "0.9", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.30mm TPU Solid @SeeMeCNC BOSSdelta 300 0.7.json b/resources/profiles/SeeMeCNC/process/0.30mm TPU Solid @SeeMeCNC BOSSdelta 300 0.7.json new file mode 100644 index 00000000000..922b8d4a9d7 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.30mm TPU Solid @SeeMeCNC BOSSdelta 300 0.7.json @@ -0,0 +1,34 @@ +{ + "type": "process", + "name": "0.30mm TPU Solid @SeeMeCNC BOSSdelta 300 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.30mm TPU Solid @SeeMeCNC BOSSdelta 300 0.7", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 300 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "bottom_surface_pattern": "concentric", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.3", + "layer_height": "0.3", + "precise_z_height": "0", + "skirt_distance": "1", + "skirt_loops": "2", + "spiral_mode": "0", + "top_shell_layers": "2", + "top_surface_pattern": "concentric", + "line_width": "0.9", + "outer_wall_line_width": "0.9", + "top_surface_line_width": "0.9", + "internal_solid_infill_line_width": "0.9", + "sparse_infill_line_width": "0.9", + "initial_layer_line_width": "0.9", + "support_line_width": "0.9", + "skeleton_infill_line_width": "0.9", + "skin_infill_line_width": "0.9", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.30mm TPU Solid @SeeMeCNC BOSSdelta 500 0505 0.7.json b/resources/profiles/SeeMeCNC/process/0.30mm TPU Solid @SeeMeCNC BOSSdelta 500 0505 0.7.json new file mode 100644 index 00000000000..046aab13ee0 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.30mm TPU Solid @SeeMeCNC BOSSdelta 500 0505 0.7.json @@ -0,0 +1,34 @@ +{ + "type": "process", + "name": "0.30mm TPU Solid @SeeMeCNC BOSSdelta 500 0505 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.30mm TPU Solid @SeeMeCNC BOSSdelta 500 0505 0.7", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0505 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "bottom_surface_pattern": "concentric", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.3", + "layer_height": "0.3", + "precise_z_height": "0", + "skirt_distance": "1", + "skirt_loops": "2", + "spiral_mode": "0", + "top_shell_layers": "2", + "top_surface_pattern": "concentric", + "line_width": "0.9", + "outer_wall_line_width": "0.9", + "top_surface_line_width": "0.9", + "internal_solid_infill_line_width": "0.9", + "sparse_infill_line_width": "0.9", + "initial_layer_line_width": "0.9", + "support_line_width": "0.9", + "skeleton_infill_line_width": "0.9", + "skin_infill_line_width": "0.9", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.30mm TPU Solid @SeeMeCNC BOSSdelta 500 0510 0.7.json b/resources/profiles/SeeMeCNC/process/0.30mm TPU Solid @SeeMeCNC BOSSdelta 500 0510 0.7.json new file mode 100644 index 00000000000..8e0b8cdc367 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.30mm TPU Solid @SeeMeCNC BOSSdelta 500 0510 0.7.json @@ -0,0 +1,34 @@ +{ + "type": "process", + "name": "0.30mm TPU Solid @SeeMeCNC BOSSdelta 500 0510 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.30mm TPU Solid @SeeMeCNC BOSSdelta 500 0510 0.7", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0510 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "bottom_surface_pattern": "concentric", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.3", + "layer_height": "0.3", + "precise_z_height": "0", + "skirt_distance": "1", + "skirt_loops": "2", + "spiral_mode": "0", + "top_shell_layers": "2", + "top_surface_pattern": "concentric", + "line_width": "0.9", + "outer_wall_line_width": "0.9", + "top_surface_line_width": "0.9", + "internal_solid_infill_line_width": "0.9", + "sparse_infill_line_width": "0.9", + "initial_layer_line_width": "0.9", + "support_line_width": "0.9", + "skeleton_infill_line_width": "0.9", + "skin_infill_line_width": "0.9", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.30mm TPU Solid @SeeMeCNC BOSSdelta 500 0521 0.7.json b/resources/profiles/SeeMeCNC/process/0.30mm TPU Solid @SeeMeCNC BOSSdelta 500 0521 0.7.json new file mode 100644 index 00000000000..68729627eef --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.30mm TPU Solid @SeeMeCNC BOSSdelta 500 0521 0.7.json @@ -0,0 +1,34 @@ +{ + "type": "process", + "name": "0.30mm TPU Solid @SeeMeCNC BOSSdelta 500 0521 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.30mm TPU Solid @SeeMeCNC BOSSdelta 500 0521 0.7", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0521 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "bottom_surface_pattern": "concentric", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.3", + "layer_height": "0.3", + "precise_z_height": "0", + "skirt_distance": "1", + "skirt_loops": "2", + "spiral_mode": "0", + "top_shell_layers": "2", + "top_surface_pattern": "concentric", + "line_width": "0.9", + "outer_wall_line_width": "0.9", + "top_surface_line_width": "0.9", + "internal_solid_infill_line_width": "0.9", + "sparse_infill_line_width": "0.9", + "initial_layer_line_width": "0.9", + "support_line_width": "0.9", + "skeleton_infill_line_width": "0.9", + "skin_infill_line_width": "0.9", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.30mm TPU Solid @SeeMeCNC RostockMAX v3.2 0.7.json b/resources/profiles/SeeMeCNC/process/0.30mm TPU Solid @SeeMeCNC RostockMAX v3.2 0.7.json new file mode 100644 index 00000000000..8d4d6089813 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.30mm TPU Solid @SeeMeCNC RostockMAX v3.2 0.7.json @@ -0,0 +1,34 @@ +{ + "type": "process", + "name": "0.30mm TPU Solid @SeeMeCNC RostockMAX v3.2 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.30mm TPU Solid @SeeMeCNC RostockMAX v3.2 0.7", + "compatible_printers": [ + "SeeMeCNC RostockMAX v3.2 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "bottom_surface_pattern": "concentric", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.3", + "layer_height": "0.3", + "precise_z_height": "0", + "skirt_distance": "1", + "skirt_loops": "2", + "spiral_mode": "0", + "top_shell_layers": "2", + "top_surface_pattern": "concentric", + "line_width": "0.9", + "outer_wall_line_width": "0.9", + "top_surface_line_width": "0.9", + "internal_solid_infill_line_width": "0.9", + "sparse_infill_line_width": "0.9", + "initial_layer_line_width": "0.9", + "support_line_width": "0.9", + "skeleton_infill_line_width": "0.9", + "skin_infill_line_width": "0.9", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.30mm TPU Solid @SeeMeCNC RostockMAX v4 0.7.json b/resources/profiles/SeeMeCNC/process/0.30mm TPU Solid @SeeMeCNC RostockMAX v4 0.7.json new file mode 100644 index 00000000000..0c7063bd9b3 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.30mm TPU Solid @SeeMeCNC RostockMAX v4 0.7.json @@ -0,0 +1,34 @@ +{ + "type": "process", + "name": "0.30mm TPU Solid @SeeMeCNC RostockMAX v4 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.30mm TPU Solid @SeeMeCNC RostockMAX v4 0.7", + "compatible_printers": [ + "SeeMeCNC RostockMAX v4 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "bottom_surface_pattern": "concentric", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.3", + "layer_height": "0.3", + "precise_z_height": "0", + "skirt_distance": "1", + "skirt_loops": "2", + "spiral_mode": "0", + "top_shell_layers": "2", + "top_surface_pattern": "concentric", + "line_width": "0.9", + "outer_wall_line_width": "0.9", + "top_surface_line_width": "0.9", + "internal_solid_infill_line_width": "0.9", + "sparse_infill_line_width": "0.9", + "initial_layer_line_width": "0.9", + "support_line_width": "0.9", + "skeleton_infill_line_width": "0.9", + "skin_infill_line_width": "0.9", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.35mm Extra Draft @SeeMeCNC Artemis 0.5.json b/resources/profiles/SeeMeCNC/process/0.35mm Extra Draft @SeeMeCNC Artemis 0.5.json new file mode 100644 index 00000000000..48d7fb0b100 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.35mm Extra Draft @SeeMeCNC Artemis 0.5.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.35mm Extra Draft @SeeMeCNC Artemis 0.5", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.35mm Extra Draft @SeeMeCNC Artemis 0.5", + "compatible_printers": [ + "SeeMeCNC Artemis 0.5 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.25", + "layer_height": "0.35", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1200", + "inner_wall_acceleration": "1200" +} diff --git a/resources/profiles/SeeMeCNC/process/0.35mm Extra Draft @SeeMeCNC BOSSdelta 300 0.5.json b/resources/profiles/SeeMeCNC/process/0.35mm Extra Draft @SeeMeCNC BOSSdelta 300 0.5.json new file mode 100644 index 00000000000..3c5b9ba01f1 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.35mm Extra Draft @SeeMeCNC BOSSdelta 300 0.5.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.35mm Extra Draft @SeeMeCNC BOSSdelta 300 0.5", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.35mm Extra Draft @SeeMeCNC BOSSdelta 300 0.5", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 300 0.5 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.25", + "layer_height": "0.35", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1200", + "inner_wall_acceleration": "1200" +} diff --git a/resources/profiles/SeeMeCNC/process/0.35mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 0.5.json b/resources/profiles/SeeMeCNC/process/0.35mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 0.5.json new file mode 100644 index 00000000000..da3b820549f --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.35mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 0.5.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.35mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 0.5", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.35mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 0.5", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0505 0.5 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.25", + "layer_height": "0.35", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1200", + "inner_wall_acceleration": "1200" +} diff --git a/resources/profiles/SeeMeCNC/process/0.35mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 0.5.json b/resources/profiles/SeeMeCNC/process/0.35mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 0.5.json new file mode 100644 index 00000000000..eded24f5cb7 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.35mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 0.5.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.35mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 0.5", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.35mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 0.5", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0510 0.5 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.25", + "layer_height": "0.35", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1200", + "inner_wall_acceleration": "1200" +} diff --git a/resources/profiles/SeeMeCNC/process/0.35mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 0.5.json b/resources/profiles/SeeMeCNC/process/0.35mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 0.5.json new file mode 100644 index 00000000000..1cf97fd54c4 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.35mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 0.5.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.35mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 0.5", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.35mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 0.5", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0521 0.5 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.25", + "layer_height": "0.35", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1200", + "inner_wall_acceleration": "1200" +} diff --git a/resources/profiles/SeeMeCNC/process/0.35mm Extra Draft @SeeMeCNC RostockMAX v3.2 0.5.json b/resources/profiles/SeeMeCNC/process/0.35mm Extra Draft @SeeMeCNC RostockMAX v3.2 0.5.json new file mode 100644 index 00000000000..316a9cfc368 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.35mm Extra Draft @SeeMeCNC RostockMAX v3.2 0.5.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.35mm Extra Draft @SeeMeCNC RostockMAX v3.2 0.5", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.35mm Extra Draft @SeeMeCNC RostockMAX v3.2 0.5", + "compatible_printers": [ + "SeeMeCNC RostockMAX v3.2 0.5 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.25", + "layer_height": "0.35", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1200", + "inner_wall_acceleration": "1200" +} diff --git a/resources/profiles/SeeMeCNC/process/0.35mm Extra Draft @SeeMeCNC RostockMAX v4 0.5.json b/resources/profiles/SeeMeCNC/process/0.35mm Extra Draft @SeeMeCNC RostockMAX v4 0.5.json new file mode 100644 index 00000000000..1dc9db45b2b --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.35mm Extra Draft @SeeMeCNC RostockMAX v4 0.5.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.35mm Extra Draft @SeeMeCNC RostockMAX v4 0.5", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.35mm Extra Draft @SeeMeCNC RostockMAX v4 0.5", + "compatible_printers": [ + "SeeMeCNC RostockMAX v4 0.5 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.25", + "layer_height": "0.35", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "1200", + "inner_wall_acceleration": "1200" +} diff --git a/resources/profiles/SeeMeCNC/process/0.35mm Standard @SeeMeCNC Artemis 0.7.json b/resources/profiles/SeeMeCNC/process/0.35mm Standard @SeeMeCNC Artemis 0.7.json new file mode 100644 index 00000000000..cddbf4453c6 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.35mm Standard @SeeMeCNC Artemis 0.7.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.35mm Standard @SeeMeCNC Artemis 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.35mm Standard @SeeMeCNC Artemis 0.7", + "compatible_printers": [ + "SeeMeCNC Artemis 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.35", + "layer_height": "0.35", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "800", + "inner_wall_acceleration": "800" +} diff --git a/resources/profiles/SeeMeCNC/process/0.35mm Standard @SeeMeCNC BOSSdelta 300 0.7.json b/resources/profiles/SeeMeCNC/process/0.35mm Standard @SeeMeCNC BOSSdelta 300 0.7.json new file mode 100644 index 00000000000..90971ce7584 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.35mm Standard @SeeMeCNC BOSSdelta 300 0.7.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.35mm Standard @SeeMeCNC BOSSdelta 300 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.35mm Standard @SeeMeCNC BOSSdelta 300 0.7", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 300 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.35", + "layer_height": "0.35", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "800", + "inner_wall_acceleration": "800" +} diff --git a/resources/profiles/SeeMeCNC/process/0.35mm Standard @SeeMeCNC BOSSdelta 500 0505 0.7.json b/resources/profiles/SeeMeCNC/process/0.35mm Standard @SeeMeCNC BOSSdelta 500 0505 0.7.json new file mode 100644 index 00000000000..53155e298fc --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.35mm Standard @SeeMeCNC BOSSdelta 500 0505 0.7.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.35mm Standard @SeeMeCNC BOSSdelta 500 0505 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.35mm Standard @SeeMeCNC BOSSdelta 500 0505 0.7", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0505 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.35", + "layer_height": "0.35", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "800", + "inner_wall_acceleration": "800" +} diff --git a/resources/profiles/SeeMeCNC/process/0.35mm Standard @SeeMeCNC BOSSdelta 500 0510 0.7.json b/resources/profiles/SeeMeCNC/process/0.35mm Standard @SeeMeCNC BOSSdelta 500 0510 0.7.json new file mode 100644 index 00000000000..07594cd92d3 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.35mm Standard @SeeMeCNC BOSSdelta 500 0510 0.7.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.35mm Standard @SeeMeCNC BOSSdelta 500 0510 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.35mm Standard @SeeMeCNC BOSSdelta 500 0510 0.7", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0510 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.35", + "layer_height": "0.35", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "800", + "inner_wall_acceleration": "800" +} diff --git a/resources/profiles/SeeMeCNC/process/0.35mm Standard @SeeMeCNC BOSSdelta 500 0521 0.7.json b/resources/profiles/SeeMeCNC/process/0.35mm Standard @SeeMeCNC BOSSdelta 500 0521 0.7.json new file mode 100644 index 00000000000..8de92d88889 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.35mm Standard @SeeMeCNC BOSSdelta 500 0521 0.7.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.35mm Standard @SeeMeCNC BOSSdelta 500 0521 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.35mm Standard @SeeMeCNC BOSSdelta 500 0521 0.7", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0521 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.35", + "layer_height": "0.35", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "800", + "inner_wall_acceleration": "800" +} diff --git a/resources/profiles/SeeMeCNC/process/0.35mm Standard @SeeMeCNC RostockMAX v3.2 0.7.json b/resources/profiles/SeeMeCNC/process/0.35mm Standard @SeeMeCNC RostockMAX v3.2 0.7.json new file mode 100644 index 00000000000..eae4d527aa2 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.35mm Standard @SeeMeCNC RostockMAX v3.2 0.7.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.35mm Standard @SeeMeCNC RostockMAX v3.2 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.35mm Standard @SeeMeCNC RostockMAX v3.2 0.7", + "compatible_printers": [ + "SeeMeCNC RostockMAX v3.2 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.35", + "layer_height": "0.35", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "800", + "inner_wall_acceleration": "800" +} diff --git a/resources/profiles/SeeMeCNC/process/0.35mm Standard @SeeMeCNC RostockMAX v4 0.7.json b/resources/profiles/SeeMeCNC/process/0.35mm Standard @SeeMeCNC RostockMAX v4 0.7.json new file mode 100644 index 00000000000..bc8d5c6c4c7 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.35mm Standard @SeeMeCNC RostockMAX v4 0.7.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.35mm Standard @SeeMeCNC RostockMAX v4 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.35mm Standard @SeeMeCNC RostockMAX v4 0.7", + "compatible_printers": [ + "SeeMeCNC RostockMAX v4 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.35", + "layer_height": "0.35", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "800", + "inner_wall_acceleration": "800" +} diff --git a/resources/profiles/SeeMeCNC/process/0.35mm TPU Vase @SeeMeCNC Artemis 0.7.json b/resources/profiles/SeeMeCNC/process/0.35mm TPU Vase @SeeMeCNC Artemis 0.7.json new file mode 100644 index 00000000000..cf28c40476d --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.35mm TPU Vase @SeeMeCNC Artemis 0.7.json @@ -0,0 +1,37 @@ +{ + "type": "process", + "name": "0.35mm TPU Vase @SeeMeCNC Artemis 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.35mm TPU Vase @SeeMeCNC Artemis 0.7", + "compatible_printers": [ + "SeeMeCNC Artemis 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "bottom_shell_layers": "0", + "bottom_surface_pattern": "concentric", + "counterbore_hole_bridging": "none", + "ensure_vertical_shell_thickness": "ensure_moderate", + "initial_layer_print_height": "0.3", + "layer_height": "0.35", + "precise_z_height": "0", + "skirt_distance": "1", + "skirt_loops": "2", + "spiral_mode": "1", + "top_shell_layers": "0", + "top_surface_pattern": "concentric", + "wall_loops": "1", + "line_width": "0.9", + "outer_wall_line_width": "0.9", + "top_surface_line_width": "0.9", + "internal_solid_infill_line_width": "0.9", + "sparse_infill_line_width": "0.9", + "initial_layer_line_width": "0.9", + "support_line_width": "0.9", + "skeleton_infill_line_width": "0.9", + "skin_infill_line_width": "0.9", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.35mm TPU Vase @SeeMeCNC BOSSdelta 300 0.7.json b/resources/profiles/SeeMeCNC/process/0.35mm TPU Vase @SeeMeCNC BOSSdelta 300 0.7.json new file mode 100644 index 00000000000..68ff32cb8bc --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.35mm TPU Vase @SeeMeCNC BOSSdelta 300 0.7.json @@ -0,0 +1,37 @@ +{ + "type": "process", + "name": "0.35mm TPU Vase @SeeMeCNC BOSSdelta 300 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.35mm TPU Vase @SeeMeCNC BOSSdelta 300 0.7", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 300 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "bottom_shell_layers": "0", + "bottom_surface_pattern": "concentric", + "counterbore_hole_bridging": "none", + "ensure_vertical_shell_thickness": "ensure_moderate", + "initial_layer_print_height": "0.3", + "layer_height": "0.35", + "precise_z_height": "0", + "skirt_distance": "1", + "skirt_loops": "2", + "spiral_mode": "1", + "top_shell_layers": "0", + "top_surface_pattern": "concentric", + "wall_loops": "1", + "line_width": "0.9", + "outer_wall_line_width": "0.9", + "top_surface_line_width": "0.9", + "internal_solid_infill_line_width": "0.9", + "sparse_infill_line_width": "0.9", + "initial_layer_line_width": "0.9", + "support_line_width": "0.9", + "skeleton_infill_line_width": "0.9", + "skin_infill_line_width": "0.9", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.35mm TPU Vase @SeeMeCNC BOSSdelta 500 0505 0.7.json b/resources/profiles/SeeMeCNC/process/0.35mm TPU Vase @SeeMeCNC BOSSdelta 500 0505 0.7.json new file mode 100644 index 00000000000..dd2dcf9a5c6 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.35mm TPU Vase @SeeMeCNC BOSSdelta 500 0505 0.7.json @@ -0,0 +1,37 @@ +{ + "type": "process", + "name": "0.35mm TPU Vase @SeeMeCNC BOSSdelta 500 0505 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.35mm TPU Vase @SeeMeCNC BOSSdelta 500 0505 0.7", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0505 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "bottom_shell_layers": "0", + "bottom_surface_pattern": "concentric", + "counterbore_hole_bridging": "none", + "ensure_vertical_shell_thickness": "ensure_moderate", + "initial_layer_print_height": "0.3", + "layer_height": "0.35", + "precise_z_height": "0", + "skirt_distance": "1", + "skirt_loops": "2", + "spiral_mode": "1", + "top_shell_layers": "0", + "top_surface_pattern": "concentric", + "wall_loops": "1", + "line_width": "0.9", + "outer_wall_line_width": "0.9", + "top_surface_line_width": "0.9", + "internal_solid_infill_line_width": "0.9", + "sparse_infill_line_width": "0.9", + "initial_layer_line_width": "0.9", + "support_line_width": "0.9", + "skeleton_infill_line_width": "0.9", + "skin_infill_line_width": "0.9", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.35mm TPU Vase @SeeMeCNC BOSSdelta 500 0510 0.7.json b/resources/profiles/SeeMeCNC/process/0.35mm TPU Vase @SeeMeCNC BOSSdelta 500 0510 0.7.json new file mode 100644 index 00000000000..1b8b37262ff --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.35mm TPU Vase @SeeMeCNC BOSSdelta 500 0510 0.7.json @@ -0,0 +1,37 @@ +{ + "type": "process", + "name": "0.35mm TPU Vase @SeeMeCNC BOSSdelta 500 0510 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.35mm TPU Vase @SeeMeCNC BOSSdelta 500 0510 0.7", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0510 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "bottom_shell_layers": "0", + "bottom_surface_pattern": "concentric", + "counterbore_hole_bridging": "none", + "ensure_vertical_shell_thickness": "ensure_moderate", + "initial_layer_print_height": "0.3", + "layer_height": "0.35", + "precise_z_height": "0", + "skirt_distance": "1", + "skirt_loops": "2", + "spiral_mode": "1", + "top_shell_layers": "0", + "top_surface_pattern": "concentric", + "wall_loops": "1", + "line_width": "0.9", + "outer_wall_line_width": "0.9", + "top_surface_line_width": "0.9", + "internal_solid_infill_line_width": "0.9", + "sparse_infill_line_width": "0.9", + "initial_layer_line_width": "0.9", + "support_line_width": "0.9", + "skeleton_infill_line_width": "0.9", + "skin_infill_line_width": "0.9", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.35mm TPU Vase @SeeMeCNC BOSSdelta 500 0521 0.7.json b/resources/profiles/SeeMeCNC/process/0.35mm TPU Vase @SeeMeCNC BOSSdelta 500 0521 0.7.json new file mode 100644 index 00000000000..63645975c6f --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.35mm TPU Vase @SeeMeCNC BOSSdelta 500 0521 0.7.json @@ -0,0 +1,37 @@ +{ + "type": "process", + "name": "0.35mm TPU Vase @SeeMeCNC BOSSdelta 500 0521 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.35mm TPU Vase @SeeMeCNC BOSSdelta 500 0521 0.7", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0521 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "bottom_shell_layers": "0", + "bottom_surface_pattern": "concentric", + "counterbore_hole_bridging": "none", + "ensure_vertical_shell_thickness": "ensure_moderate", + "initial_layer_print_height": "0.3", + "layer_height": "0.35", + "precise_z_height": "0", + "skirt_distance": "1", + "skirt_loops": "2", + "spiral_mode": "1", + "top_shell_layers": "0", + "top_surface_pattern": "concentric", + "wall_loops": "1", + "line_width": "0.9", + "outer_wall_line_width": "0.9", + "top_surface_line_width": "0.9", + "internal_solid_infill_line_width": "0.9", + "sparse_infill_line_width": "0.9", + "initial_layer_line_width": "0.9", + "support_line_width": "0.9", + "skeleton_infill_line_width": "0.9", + "skin_infill_line_width": "0.9", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.35mm TPU Vase @SeeMeCNC RostockMAX v3.2 0.7.json b/resources/profiles/SeeMeCNC/process/0.35mm TPU Vase @SeeMeCNC RostockMAX v3.2 0.7.json new file mode 100644 index 00000000000..423852eda4b --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.35mm TPU Vase @SeeMeCNC RostockMAX v3.2 0.7.json @@ -0,0 +1,37 @@ +{ + "type": "process", + "name": "0.35mm TPU Vase @SeeMeCNC RostockMAX v3.2 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.35mm TPU Vase @SeeMeCNC RostockMAX v3.2 0.7", + "compatible_printers": [ + "SeeMeCNC RostockMAX v3.2 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "bottom_shell_layers": "0", + "bottom_surface_pattern": "concentric", + "counterbore_hole_bridging": "none", + "ensure_vertical_shell_thickness": "ensure_moderate", + "initial_layer_print_height": "0.3", + "layer_height": "0.35", + "precise_z_height": "0", + "skirt_distance": "1", + "skirt_loops": "2", + "spiral_mode": "1", + "top_shell_layers": "0", + "top_surface_pattern": "concentric", + "wall_loops": "1", + "line_width": "0.9", + "outer_wall_line_width": "0.9", + "top_surface_line_width": "0.9", + "internal_solid_infill_line_width": "0.9", + "sparse_infill_line_width": "0.9", + "initial_layer_line_width": "0.9", + "support_line_width": "0.9", + "skeleton_infill_line_width": "0.9", + "skin_infill_line_width": "0.9", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.35mm TPU Vase @SeeMeCNC RostockMAX v4 0.7.json b/resources/profiles/SeeMeCNC/process/0.35mm TPU Vase @SeeMeCNC RostockMAX v4 0.7.json new file mode 100644 index 00000000000..6002585396d --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.35mm TPU Vase @SeeMeCNC RostockMAX v4 0.7.json @@ -0,0 +1,37 @@ +{ + "type": "process", + "name": "0.35mm TPU Vase @SeeMeCNC RostockMAX v4 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.35mm TPU Vase @SeeMeCNC RostockMAX v4 0.7", + "compatible_printers": [ + "SeeMeCNC RostockMAX v4 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "bottom_shell_layers": "0", + "bottom_surface_pattern": "concentric", + "counterbore_hole_bridging": "none", + "ensure_vertical_shell_thickness": "ensure_moderate", + "initial_layer_print_height": "0.3", + "layer_height": "0.35", + "precise_z_height": "0", + "skirt_distance": "1", + "skirt_loops": "2", + "spiral_mode": "1", + "top_shell_layers": "0", + "top_surface_pattern": "concentric", + "wall_loops": "1", + "line_width": "0.9", + "outer_wall_line_width": "0.9", + "top_surface_line_width": "0.9", + "internal_solid_infill_line_width": "0.9", + "sparse_infill_line_width": "0.9", + "initial_layer_line_width": "0.9", + "support_line_width": "0.9", + "skeleton_infill_line_width": "0.9", + "skin_infill_line_width": "0.9", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.40mm Fine @SeeMeCNC Artemis 1.0.json b/resources/profiles/SeeMeCNC/process/0.40mm Fine @SeeMeCNC Artemis 1.0.json new file mode 100644 index 00000000000..f561a3114cc --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.40mm Fine @SeeMeCNC Artemis 1.0.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.40mm Fine @SeeMeCNC Artemis 1.0", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.40mm Fine @SeeMeCNC Artemis 1.0", + "compatible_printers": [ + "SeeMeCNC Artemis 1.0 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.3", + "layer_height": "0.4", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.40mm Fine @SeeMeCNC BOSSdelta 300 1.0.json b/resources/profiles/SeeMeCNC/process/0.40mm Fine @SeeMeCNC BOSSdelta 300 1.0.json new file mode 100644 index 00000000000..68078568899 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.40mm Fine @SeeMeCNC BOSSdelta 300 1.0.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.40mm Fine @SeeMeCNC BOSSdelta 300 1.0", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.40mm Fine @SeeMeCNC BOSSdelta 300 1.0", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 300 1.0 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.3", + "layer_height": "0.4", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.40mm Fine @SeeMeCNC BOSSdelta 500 0505 1.0.json b/resources/profiles/SeeMeCNC/process/0.40mm Fine @SeeMeCNC BOSSdelta 500 0505 1.0.json new file mode 100644 index 00000000000..6ac2d1f3679 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.40mm Fine @SeeMeCNC BOSSdelta 500 0505 1.0.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.40mm Fine @SeeMeCNC BOSSdelta 500 0505 1.0", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.40mm Fine @SeeMeCNC BOSSdelta 500 0505 1.0", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0505 1.0 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.3", + "layer_height": "0.4", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.40mm Fine @SeeMeCNC BOSSdelta 500 0510 1.0.json b/resources/profiles/SeeMeCNC/process/0.40mm Fine @SeeMeCNC BOSSdelta 500 0510 1.0.json new file mode 100644 index 00000000000..7823ab303c7 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.40mm Fine @SeeMeCNC BOSSdelta 500 0510 1.0.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.40mm Fine @SeeMeCNC BOSSdelta 500 0510 1.0", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.40mm Fine @SeeMeCNC BOSSdelta 500 0510 1.0", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0510 1.0 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.3", + "layer_height": "0.4", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.40mm Fine @SeeMeCNC BOSSdelta 500 0521 1.0.json b/resources/profiles/SeeMeCNC/process/0.40mm Fine @SeeMeCNC BOSSdelta 500 0521 1.0.json new file mode 100644 index 00000000000..fd18ed03447 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.40mm Fine @SeeMeCNC BOSSdelta 500 0521 1.0.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.40mm Fine @SeeMeCNC BOSSdelta 500 0521 1.0", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.40mm Fine @SeeMeCNC BOSSdelta 500 0521 1.0", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0521 1.0 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.3", + "layer_height": "0.4", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.40mm Fine @SeeMeCNC RostockMAX v3.2 1.0.json b/resources/profiles/SeeMeCNC/process/0.40mm Fine @SeeMeCNC RostockMAX v3.2 1.0.json new file mode 100644 index 00000000000..a238435f95b --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.40mm Fine @SeeMeCNC RostockMAX v3.2 1.0.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.40mm Fine @SeeMeCNC RostockMAX v3.2 1.0", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.40mm Fine @SeeMeCNC RostockMAX v3.2 1.0", + "compatible_printers": [ + "SeeMeCNC RostockMAX v3.2 1.0 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.3", + "layer_height": "0.4", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.40mm Fine @SeeMeCNC RostockMAX v4 1.0.json b/resources/profiles/SeeMeCNC/process/0.40mm Fine @SeeMeCNC RostockMAX v4 1.0.json new file mode 100644 index 00000000000..8193ebb0cc2 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.40mm Fine @SeeMeCNC RostockMAX v4 1.0.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.40mm Fine @SeeMeCNC RostockMAX v4 1.0", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.40mm Fine @SeeMeCNC RostockMAX v4 1.0", + "compatible_printers": [ + "SeeMeCNC RostockMAX v4 1.0 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.3", + "layer_height": "0.4", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.42mm Draft @SeeMeCNC Artemis 0.7.json b/resources/profiles/SeeMeCNC/process/0.42mm Draft @SeeMeCNC Artemis 0.7.json new file mode 100644 index 00000000000..5cf5486a13e --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.42mm Draft @SeeMeCNC Artemis 0.7.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.42mm Draft @SeeMeCNC Artemis 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.42mm Draft @SeeMeCNC Artemis 0.7", + "compatible_printers": [ + "SeeMeCNC Artemis 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.35", + "layer_height": "0.42", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "800", + "inner_wall_acceleration": "800" +} diff --git a/resources/profiles/SeeMeCNC/process/0.42mm Draft @SeeMeCNC BOSSdelta 300 0.7.json b/resources/profiles/SeeMeCNC/process/0.42mm Draft @SeeMeCNC BOSSdelta 300 0.7.json new file mode 100644 index 00000000000..553ea160b04 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.42mm Draft @SeeMeCNC BOSSdelta 300 0.7.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.42mm Draft @SeeMeCNC BOSSdelta 300 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.42mm Draft @SeeMeCNC BOSSdelta 300 0.7", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 300 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.35", + "layer_height": "0.42", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "800", + "inner_wall_acceleration": "800" +} diff --git a/resources/profiles/SeeMeCNC/process/0.42mm Draft @SeeMeCNC BOSSdelta 500 0505 0.7.json b/resources/profiles/SeeMeCNC/process/0.42mm Draft @SeeMeCNC BOSSdelta 500 0505 0.7.json new file mode 100644 index 00000000000..e815f68cd3f --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.42mm Draft @SeeMeCNC BOSSdelta 500 0505 0.7.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.42mm Draft @SeeMeCNC BOSSdelta 500 0505 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.42mm Draft @SeeMeCNC BOSSdelta 500 0505 0.7", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0505 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.35", + "layer_height": "0.42", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "800", + "inner_wall_acceleration": "800" +} diff --git a/resources/profiles/SeeMeCNC/process/0.42mm Draft @SeeMeCNC BOSSdelta 500 0510 0.7.json b/resources/profiles/SeeMeCNC/process/0.42mm Draft @SeeMeCNC BOSSdelta 500 0510 0.7.json new file mode 100644 index 00000000000..66575b6c5f2 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.42mm Draft @SeeMeCNC BOSSdelta 500 0510 0.7.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.42mm Draft @SeeMeCNC BOSSdelta 500 0510 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.42mm Draft @SeeMeCNC BOSSdelta 500 0510 0.7", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0510 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.35", + "layer_height": "0.42", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "800", + "inner_wall_acceleration": "800" +} diff --git a/resources/profiles/SeeMeCNC/process/0.42mm Draft @SeeMeCNC BOSSdelta 500 0521 0.7.json b/resources/profiles/SeeMeCNC/process/0.42mm Draft @SeeMeCNC BOSSdelta 500 0521 0.7.json new file mode 100644 index 00000000000..e2c4f31abe5 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.42mm Draft @SeeMeCNC BOSSdelta 500 0521 0.7.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.42mm Draft @SeeMeCNC BOSSdelta 500 0521 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.42mm Draft @SeeMeCNC BOSSdelta 500 0521 0.7", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0521 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.35", + "layer_height": "0.42", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "800", + "inner_wall_acceleration": "800" +} diff --git a/resources/profiles/SeeMeCNC/process/0.42mm Draft @SeeMeCNC RostockMAX v3.2 0.7.json b/resources/profiles/SeeMeCNC/process/0.42mm Draft @SeeMeCNC RostockMAX v3.2 0.7.json new file mode 100644 index 00000000000..36bf4e41d23 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.42mm Draft @SeeMeCNC RostockMAX v3.2 0.7.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.42mm Draft @SeeMeCNC RostockMAX v3.2 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.42mm Draft @SeeMeCNC RostockMAX v3.2 0.7", + "compatible_printers": [ + "SeeMeCNC RostockMAX v3.2 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.35", + "layer_height": "0.42", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "800", + "inner_wall_acceleration": "800" +} diff --git a/resources/profiles/SeeMeCNC/process/0.42mm Draft @SeeMeCNC RostockMAX v4 0.7.json b/resources/profiles/SeeMeCNC/process/0.42mm Draft @SeeMeCNC RostockMAX v4 0.7.json new file mode 100644 index 00000000000..ffc01970055 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.42mm Draft @SeeMeCNC RostockMAX v4 0.7.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.42mm Draft @SeeMeCNC RostockMAX v4 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.42mm Draft @SeeMeCNC RostockMAX v4 0.7", + "compatible_printers": [ + "SeeMeCNC RostockMAX v4 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.35", + "layer_height": "0.42", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "800", + "inner_wall_acceleration": "800" +} diff --git a/resources/profiles/SeeMeCNC/process/0.49mm Extra Draft @SeeMeCNC Artemis 0.7.json b/resources/profiles/SeeMeCNC/process/0.49mm Extra Draft @SeeMeCNC Artemis 0.7.json new file mode 100644 index 00000000000..4ab95ebeb12 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.49mm Extra Draft @SeeMeCNC Artemis 0.7.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.49mm Extra Draft @SeeMeCNC Artemis 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.49mm Extra Draft @SeeMeCNC Artemis 0.7", + "compatible_printers": [ + "SeeMeCNC Artemis 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.35", + "layer_height": "0.49", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "800", + "inner_wall_acceleration": "800" +} diff --git a/resources/profiles/SeeMeCNC/process/0.49mm Extra Draft @SeeMeCNC BOSSdelta 300 0.7.json b/resources/profiles/SeeMeCNC/process/0.49mm Extra Draft @SeeMeCNC BOSSdelta 300 0.7.json new file mode 100644 index 00000000000..b67733960d6 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.49mm Extra Draft @SeeMeCNC BOSSdelta 300 0.7.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.49mm Extra Draft @SeeMeCNC BOSSdelta 300 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.49mm Extra Draft @SeeMeCNC BOSSdelta 300 0.7", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 300 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.35", + "layer_height": "0.49", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "800", + "inner_wall_acceleration": "800" +} diff --git a/resources/profiles/SeeMeCNC/process/0.49mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 0.7.json b/resources/profiles/SeeMeCNC/process/0.49mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 0.7.json new file mode 100644 index 00000000000..4c694c42f87 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.49mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 0.7.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.49mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.49mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 0.7", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0505 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.35", + "layer_height": "0.49", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "800", + "inner_wall_acceleration": "800" +} diff --git a/resources/profiles/SeeMeCNC/process/0.49mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 0.7.json b/resources/profiles/SeeMeCNC/process/0.49mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 0.7.json new file mode 100644 index 00000000000..b444945dbd7 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.49mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 0.7.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.49mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.49mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 0.7", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0510 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.35", + "layer_height": "0.49", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "800", + "inner_wall_acceleration": "800" +} diff --git a/resources/profiles/SeeMeCNC/process/0.49mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 0.7.json b/resources/profiles/SeeMeCNC/process/0.49mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 0.7.json new file mode 100644 index 00000000000..2a4f72f3ebd --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.49mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 0.7.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.49mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.49mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 0.7", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0521 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.35", + "layer_height": "0.49", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "800", + "inner_wall_acceleration": "800" +} diff --git a/resources/profiles/SeeMeCNC/process/0.49mm Extra Draft @SeeMeCNC RostockMAX v3.2 0.7.json b/resources/profiles/SeeMeCNC/process/0.49mm Extra Draft @SeeMeCNC RostockMAX v3.2 0.7.json new file mode 100644 index 00000000000..a77c6544e03 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.49mm Extra Draft @SeeMeCNC RostockMAX v3.2 0.7.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.49mm Extra Draft @SeeMeCNC RostockMAX v3.2 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.49mm Extra Draft @SeeMeCNC RostockMAX v3.2 0.7", + "compatible_printers": [ + "SeeMeCNC RostockMAX v3.2 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.35", + "layer_height": "0.49", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "800", + "inner_wall_acceleration": "800" +} diff --git a/resources/profiles/SeeMeCNC/process/0.49mm Extra Draft @SeeMeCNC RostockMAX v4 0.7.json b/resources/profiles/SeeMeCNC/process/0.49mm Extra Draft @SeeMeCNC RostockMAX v4 0.7.json new file mode 100644 index 00000000000..eebbdcb867f --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.49mm Extra Draft @SeeMeCNC RostockMAX v4 0.7.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.49mm Extra Draft @SeeMeCNC RostockMAX v4 0.7", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.49mm Extra Draft @SeeMeCNC RostockMAX v4 0.7", + "compatible_printers": [ + "SeeMeCNC RostockMAX v4 0.7 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.35", + "layer_height": "0.49", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "800", + "inner_wall_acceleration": "800" +} diff --git a/resources/profiles/SeeMeCNC/process/0.50mm Standard @SeeMeCNC Artemis 1.0.json b/resources/profiles/SeeMeCNC/process/0.50mm Standard @SeeMeCNC Artemis 1.0.json new file mode 100644 index 00000000000..1b8877983c4 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.50mm Standard @SeeMeCNC Artemis 1.0.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.50mm Standard @SeeMeCNC Artemis 1.0", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.50mm Standard @SeeMeCNC Artemis 1.0", + "compatible_printers": [ + "SeeMeCNC Artemis 1.0 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.3", + "layer_height": "0.5", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.50mm Standard @SeeMeCNC BOSSdelta 300 1.0.json b/resources/profiles/SeeMeCNC/process/0.50mm Standard @SeeMeCNC BOSSdelta 300 1.0.json new file mode 100644 index 00000000000..dcc4b6f80f8 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.50mm Standard @SeeMeCNC BOSSdelta 300 1.0.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.50mm Standard @SeeMeCNC BOSSdelta 300 1.0", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.50mm Standard @SeeMeCNC BOSSdelta 300 1.0", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 300 1.0 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.3", + "layer_height": "0.5", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.50mm Standard @SeeMeCNC BOSSdelta 500 0505 1.0.json b/resources/profiles/SeeMeCNC/process/0.50mm Standard @SeeMeCNC BOSSdelta 500 0505 1.0.json new file mode 100644 index 00000000000..c1395ff209a --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.50mm Standard @SeeMeCNC BOSSdelta 500 0505 1.0.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.50mm Standard @SeeMeCNC BOSSdelta 500 0505 1.0", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.50mm Standard @SeeMeCNC BOSSdelta 500 0505 1.0", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0505 1.0 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.3", + "layer_height": "0.5", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.50mm Standard @SeeMeCNC BOSSdelta 500 0510 1.0.json b/resources/profiles/SeeMeCNC/process/0.50mm Standard @SeeMeCNC BOSSdelta 500 0510 1.0.json new file mode 100644 index 00000000000..f1d7f378cd8 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.50mm Standard @SeeMeCNC BOSSdelta 500 0510 1.0.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.50mm Standard @SeeMeCNC BOSSdelta 500 0510 1.0", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.50mm Standard @SeeMeCNC BOSSdelta 500 0510 1.0", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0510 1.0 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.3", + "layer_height": "0.5", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.50mm Standard @SeeMeCNC BOSSdelta 500 0521 1.0.json b/resources/profiles/SeeMeCNC/process/0.50mm Standard @SeeMeCNC BOSSdelta 500 0521 1.0.json new file mode 100644 index 00000000000..fbc9d07d341 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.50mm Standard @SeeMeCNC BOSSdelta 500 0521 1.0.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.50mm Standard @SeeMeCNC BOSSdelta 500 0521 1.0", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.50mm Standard @SeeMeCNC BOSSdelta 500 0521 1.0", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0521 1.0 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.3", + "layer_height": "0.5", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.50mm Standard @SeeMeCNC RostockMAX v3.2 1.0.json b/resources/profiles/SeeMeCNC/process/0.50mm Standard @SeeMeCNC RostockMAX v3.2 1.0.json new file mode 100644 index 00000000000..0fe9a4b8cce --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.50mm Standard @SeeMeCNC RostockMAX v3.2 1.0.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.50mm Standard @SeeMeCNC RostockMAX v3.2 1.0", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.50mm Standard @SeeMeCNC RostockMAX v3.2 1.0", + "compatible_printers": [ + "SeeMeCNC RostockMAX v3.2 1.0 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.3", + "layer_height": "0.5", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.50mm Standard @SeeMeCNC RostockMAX v4 1.0.json b/resources/profiles/SeeMeCNC/process/0.50mm Standard @SeeMeCNC RostockMAX v4 1.0.json new file mode 100644 index 00000000000..ac12c9bb5c3 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.50mm Standard @SeeMeCNC RostockMAX v4 1.0.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.50mm Standard @SeeMeCNC RostockMAX v4 1.0", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.50mm Standard @SeeMeCNC RostockMAX v4 1.0", + "compatible_printers": [ + "SeeMeCNC RostockMAX v4 1.0 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.3", + "layer_height": "0.5", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.60mm Draft @SeeMeCNC Artemis 1.0.json b/resources/profiles/SeeMeCNC/process/0.60mm Draft @SeeMeCNC Artemis 1.0.json new file mode 100644 index 00000000000..cac43f4d9f8 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.60mm Draft @SeeMeCNC Artemis 1.0.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.60mm Draft @SeeMeCNC Artemis 1.0", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.60mm Draft @SeeMeCNC Artemis 1.0", + "compatible_printers": [ + "SeeMeCNC Artemis 1.0 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.3", + "layer_height": "0.6", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.60mm Draft @SeeMeCNC BOSSdelta 300 1.0.json b/resources/profiles/SeeMeCNC/process/0.60mm Draft @SeeMeCNC BOSSdelta 300 1.0.json new file mode 100644 index 00000000000..86119f0cabf --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.60mm Draft @SeeMeCNC BOSSdelta 300 1.0.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.60mm Draft @SeeMeCNC BOSSdelta 300 1.0", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.60mm Draft @SeeMeCNC BOSSdelta 300 1.0", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 300 1.0 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.3", + "layer_height": "0.6", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.60mm Draft @SeeMeCNC BOSSdelta 500 0505 1.0.json b/resources/profiles/SeeMeCNC/process/0.60mm Draft @SeeMeCNC BOSSdelta 500 0505 1.0.json new file mode 100644 index 00000000000..81da0805336 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.60mm Draft @SeeMeCNC BOSSdelta 500 0505 1.0.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.60mm Draft @SeeMeCNC BOSSdelta 500 0505 1.0", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.60mm Draft @SeeMeCNC BOSSdelta 500 0505 1.0", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0505 1.0 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.3", + "layer_height": "0.6", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.60mm Draft @SeeMeCNC BOSSdelta 500 0510 1.0.json b/resources/profiles/SeeMeCNC/process/0.60mm Draft @SeeMeCNC BOSSdelta 500 0510 1.0.json new file mode 100644 index 00000000000..d34c5fb9dc3 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.60mm Draft @SeeMeCNC BOSSdelta 500 0510 1.0.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.60mm Draft @SeeMeCNC BOSSdelta 500 0510 1.0", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.60mm Draft @SeeMeCNC BOSSdelta 500 0510 1.0", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0510 1.0 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.3", + "layer_height": "0.6", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.60mm Draft @SeeMeCNC BOSSdelta 500 0521 1.0.json b/resources/profiles/SeeMeCNC/process/0.60mm Draft @SeeMeCNC BOSSdelta 500 0521 1.0.json new file mode 100644 index 00000000000..97b5bf671d5 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.60mm Draft @SeeMeCNC BOSSdelta 500 0521 1.0.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.60mm Draft @SeeMeCNC BOSSdelta 500 0521 1.0", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.60mm Draft @SeeMeCNC BOSSdelta 500 0521 1.0", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0521 1.0 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.3", + "layer_height": "0.6", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.60mm Draft @SeeMeCNC RostockMAX v3.2 1.0.json b/resources/profiles/SeeMeCNC/process/0.60mm Draft @SeeMeCNC RostockMAX v3.2 1.0.json new file mode 100644 index 00000000000..0cd62fecac6 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.60mm Draft @SeeMeCNC RostockMAX v3.2 1.0.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.60mm Draft @SeeMeCNC RostockMAX v3.2 1.0", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.60mm Draft @SeeMeCNC RostockMAX v3.2 1.0", + "compatible_printers": [ + "SeeMeCNC RostockMAX v3.2 1.0 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.3", + "layer_height": "0.6", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.60mm Draft @SeeMeCNC RostockMAX v4 1.0.json b/resources/profiles/SeeMeCNC/process/0.60mm Draft @SeeMeCNC RostockMAX v4 1.0.json new file mode 100644 index 00000000000..b819217d252 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.60mm Draft @SeeMeCNC RostockMAX v4 1.0.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.60mm Draft @SeeMeCNC RostockMAX v4 1.0", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.60mm Draft @SeeMeCNC RostockMAX v4 1.0", + "compatible_printers": [ + "SeeMeCNC RostockMAX v4 1.0 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.3", + "layer_height": "0.6", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.70mm Extra Draft @SeeMeCNC Artemis 1.0.json b/resources/profiles/SeeMeCNC/process/0.70mm Extra Draft @SeeMeCNC Artemis 1.0.json new file mode 100644 index 00000000000..f8c8e831266 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.70mm Extra Draft @SeeMeCNC Artemis 1.0.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.70mm Extra Draft @SeeMeCNC Artemis 1.0", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.70mm Extra Draft @SeeMeCNC Artemis 1.0", + "compatible_printers": [ + "SeeMeCNC Artemis 1.0 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.3", + "layer_height": "0.7", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.70mm Extra Draft @SeeMeCNC BOSSdelta 300 1.0.json b/resources/profiles/SeeMeCNC/process/0.70mm Extra Draft @SeeMeCNC BOSSdelta 300 1.0.json new file mode 100644 index 00000000000..3e133a208d0 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.70mm Extra Draft @SeeMeCNC BOSSdelta 300 1.0.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.70mm Extra Draft @SeeMeCNC BOSSdelta 300 1.0", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.70mm Extra Draft @SeeMeCNC BOSSdelta 300 1.0", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 300 1.0 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.3", + "layer_height": "0.7", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.70mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 1.0.json b/resources/profiles/SeeMeCNC/process/0.70mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 1.0.json new file mode 100644 index 00000000000..eed73783f68 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.70mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 1.0.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.70mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 1.0", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.70mm Extra Draft @SeeMeCNC BOSSdelta 500 0505 1.0", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0505 1.0 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.3", + "layer_height": "0.7", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.70mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 1.0.json b/resources/profiles/SeeMeCNC/process/0.70mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 1.0.json new file mode 100644 index 00000000000..4414b3557c6 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.70mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 1.0.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.70mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 1.0", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.70mm Extra Draft @SeeMeCNC BOSSdelta 500 0510 1.0", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0510 1.0 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.3", + "layer_height": "0.7", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.70mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 1.0.json b/resources/profiles/SeeMeCNC/process/0.70mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 1.0.json new file mode 100644 index 00000000000..7208968058a --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.70mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 1.0.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.70mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 1.0", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.70mm Extra Draft @SeeMeCNC BOSSdelta 500 0521 1.0", + "compatible_printers": [ + "SeeMeCNC BOSSdelta 500 0521 1.0 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.3", + "layer_height": "0.7", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.70mm Extra Draft @SeeMeCNC RostockMAX v3.2 1.0.json b/resources/profiles/SeeMeCNC/process/0.70mm Extra Draft @SeeMeCNC RostockMAX v3.2 1.0.json new file mode 100644 index 00000000000..9ddeacd0a8d --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.70mm Extra Draft @SeeMeCNC RostockMAX v3.2 1.0.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.70mm Extra Draft @SeeMeCNC RostockMAX v3.2 1.0", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.70mm Extra Draft @SeeMeCNC RostockMAX v3.2 1.0", + "compatible_printers": [ + "SeeMeCNC RostockMAX v3.2 1.0 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.3", + "layer_height": "0.7", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/0.70mm Extra Draft @SeeMeCNC RostockMAX v4 1.0.json b/resources/profiles/SeeMeCNC/process/0.70mm Extra Draft @SeeMeCNC RostockMAX v4 1.0.json new file mode 100644 index 00000000000..c7f8388a1b7 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/0.70mm Extra Draft @SeeMeCNC RostockMAX v4 1.0.json @@ -0,0 +1,22 @@ +{ + "type": "process", + "name": "0.70mm Extra Draft @SeeMeCNC RostockMAX v4 1.0", + "inherits": "SeeMeCNC process base", + "from": "System", + "instantiation": "true", + "print_settings_id": "0.70mm Extra Draft @SeeMeCNC RostockMAX v4 1.0", + "compatible_printers": [ + "SeeMeCNC RostockMAX v4 1.0 nozzle" + ], + "compatible_printers_condition": "", + "alternate_extra_wall": "0", + "counterbore_hole_bridging": "none", + "initial_layer_print_height": "0.3", + "layer_height": "0.7", + "precise_z_height": "0", + "skirt_distance": "2", + "skirt_loops": "0", + "spiral_mode": "0", + "outer_wall_acceleration": "500", + "inner_wall_acceleration": "500" +} diff --git a/resources/profiles/SeeMeCNC/process/SeeMeCNC_process_base.json b/resources/profiles/SeeMeCNC/process/SeeMeCNC_process_base.json new file mode 100644 index 00000000000..f1562c0f459 --- /dev/null +++ b/resources/profiles/SeeMeCNC/process/SeeMeCNC_process_base.json @@ -0,0 +1,351 @@ +{ + "type": "process", + "name": "SeeMeCNC process base", + "from": "system", + "instantiation": "false", + "accel_to_decel_enable": "0", + "accel_to_decel_factor": "50%", + "align_infill_direction_to_model": "0", + "bottom_shell_thickness": "0", + "bottom_solid_infill_flow_ratio": "1", + "bottom_surface_density": "100%", + "bridge_acceleration": "30%", + "bridge_angle": "0", + "bridge_density": "100%", + "bridge_flow": "0.95", + "bridge_no_support": "0", + "brim_ears_detection_length": "1", + "brim_ears_max_angle": "125", + "brim_object_gap": "0.1", + "brim_use_efc_outline": "0", + "brim_width": "5", + "calib_flowrate_topinfill_special_order": "0", + "default_acceleration": "2000", + "default_jerk": "8", + "default_junction_deviation": "0", + "detect_narrow_internal_solid_infill": "1", + "detect_overhang_wall": "1", + "dont_filter_internal_bridges": "disabled", + "draft_shield": "disabled", + "elefant_foot_compensation": "0", + "elefant_foot_compensation_layers": "1", + "enable_extra_bridge_layer": "disabled", + "enable_overhang_speed": "1", + "enable_prime_tower": "1", + "enable_support": "0", + "enable_tower_interface_cooldown_during_tower": "0", + "enable_tower_interface_features": "0", + "enable_wrapping_detection": "0", + "enforce_support_layers": "0", + "exclude_object": "1", + "extra_perimeters_on_overhangs": "1", + "extra_solid_infills": "", + "extrusion_rate_smoothing_external_perimeter_only": "0", + "filename_format": "{input_filename_base}_{filament_type[initial_tool]}_{print_time}.gcode", + "fill_multiline": "1", + "filter_out_gap_fill": "0", + "first_layer_flow_ratio": "1", + "flush_into_infill": "1", + "flush_into_objects": "0", + "flush_into_support": "1", + "fuzzy_skin": "disabled_fuzzy", + "fuzzy_skin_first_layer": "0", + "fuzzy_skin_mode": "displacement", + "fuzzy_skin_noise_type": "classic", + "fuzzy_skin_octaves": "4", + "fuzzy_skin_persistence": "0.5", + "fuzzy_skin_point_distance": "0.3", + "fuzzy_skin_scale": "1", + "fuzzy_skin_thickness": "0.2", + "gap_fill_flow_ratio": "1", + "gap_fill_target": "nowhere", + "gcode_add_line_number": "0", + "gcode_comments": "0", + "gcode_label_objects": "1", + "hole_to_polyhole": "0", + "hole_to_polyhole_threshold": "0.01", + "hole_to_polyhole_twisted": "1", + "independent_support_layer_height": "0", + "infill_anchor": "400%", + "infill_anchor_max": "20", + "infill_combination": "0", + "infill_combination_max_layer_height": "100%", + "infill_direction": "45", + "infill_jerk": "8", + "infill_lock_depth": "1", + "infill_overhang_angle": "60", + "infill_shift_step": "0.4", + "infill_wall_overlap": "25%", + "initial_layer_acceleration": "600", + "initial_layer_infill_speed": "60", + "initial_layer_jerk": "4", + "initial_layer_min_bead_width": "85%", + "initial_layer_travel_speed": "100%", + "inner_wall_acceleration": "1000", + "inner_wall_flow_ratio": "1", + "inner_wall_jerk": "8", + "interface_shells": "0", + "interlocking_beam": "0", + "interlocking_beam_layer_count": "2", + "interlocking_beam_width": "0.8", + "interlocking_boundary_avoidance": "2", + "interlocking_depth": "2", + "interlocking_orientation": "22.5", + "internal_bridge_angle": "0", + "internal_bridge_density": "100%", + "internal_bridge_flow": "1", + "internal_bridge_speed": "150%", + "internal_solid_infill_acceleration": "100%", + "internal_solid_infill_flow_ratio": "1", + "internal_solid_infill_pattern": "monotonic", + "ironing_angle": "0", + "ironing_angle_fixed": "0", + "ironing_flow": "10%", + "ironing_inset": "0", + "ironing_pattern": "rectilinear", + "ironing_spacing": "0.15", + "ironing_speed": "30", + "ironing_type": "no ironing", + "is_infill_first": "0", + "lateral_lattice_angle_1": "-45", + "lateral_lattice_angle_2": "45", + "make_overhang_printable": "0", + "make_overhang_printable_angle": "55", + "make_overhang_printable_hole_size": "0", + "max_bridge_length": "50", + "max_travel_detour_distance": "10000", + "max_volumetric_extrusion_rate_slope": "0", + "max_volumetric_extrusion_rate_slope_segment_length": "3", + "min_bead_width": "85%", + "min_feature_size": "25%", + "min_length_factor": "0.5", + "min_skirt_length": "4", + "min_width_top_surface": "300%", + "minimum_sparse_infill_area": "15", + "mmu_segmented_region_interlocking_depth": "0", + "mmu_segmented_region_max_width": "0", + "notes": "", + "only_one_wall_first_layer": "0", + "only_one_wall_top": "0", + "ooze_prevention": "0", + "outer_wall_flow_ratio": "1", + "overhang_1_4_speed": "0", + "overhang_2_4_speed": "25", + "overhang_3_4_speed": "15", + "overhang_4_4_speed": "10", + "overhang_flow_ratio": "1", + "overhang_reverse": "0", + "overhang_reverse_internal_only": "0", + "overhang_reverse_threshold": "50%", + "post_process": [], + "precise_outer_wall": "1", + "preheat_steps": "1", + "preheat_time": "30", + "prime_tower_brim_width": "3", + "prime_tower_enable_framework": "1", + "prime_tower_flat_ironing": "0", + "prime_tower_infill_gap": "150%", + "prime_tower_skip_points": "0", + "prime_tower_width": "30", + "prime_volume": "150", + "print_extruder_id": [ + "1" + ], + "print_extruder_variant": [ + "Bowden Standard" + ], + "print_flow_ratio": "1", + "print_order": "default", + "print_sequence": "by layer", + "raft_contact_distance": "0.1", + "raft_expansion": "1.5", + "raft_first_layer_density": "90%", + "raft_first_layer_expansion": "2", + "raft_layers": "0", + "reduce_crossing_wall": "0", + "reduce_infill_retraction": "1", + "resolution": "0.012", + "role_based_wipe_speed": "1", + "scarf_angle_threshold": "155", + "scarf_joint_flow_ratio": "1", + "scarf_joint_speed": "100%", + "scarf_overhang_threshold": "35%", + "seam_gap": "10%", + "seam_position": "aligned", + "seam_slope_conditional": "0", + "seam_slope_entire_loop": "0", + "seam_slope_inner_walls": "0", + "seam_slope_min_length": "20", + "seam_slope_start_height": "0", + "seam_slope_steps": "10", + "set_other_flow_ratios": "0", + "single_extruder_multi_material_priming": "0", + "single_loop_draft_shield": "0", + "skeleton_infill_density": "25%", + "skeleton_infill_line_width": "100%", + "skin_infill_density": "25%", + "skin_infill_depth": "2", + "skin_infill_line_width": "100%", + "skirt_height": "1", + "skirt_speed": "50", + "skirt_start_angle": "-135", + "skirt_type": "combined", + "slice_closing_radius": "0.049", + "slicing_mode": "regular", + "slow_down_layers": "4", + "slowdown_for_curled_perimeters": "1", + "small_area_infill_flow_compensation": "0", + "small_area_infill_flow_compensation_model": [ + "0,0", + "\n0.2,0.4444", + "\n0.4,0.6145", + "\n0.6,0.7059", + "\n0.8,0.7619", + "\n1.5,0.8571", + "\n2,0.8889", + "\n3,0.9231", + "\n5,0.9520", + "\n10,1" + ], + "solid_infill_direction": "45", + "solid_infill_filament": "1", + "solid_infill_rotate_template": "", + "sparse_infill_acceleration": "100%", + "sparse_infill_filament": "1", + "sparse_infill_flow_ratio": "1", + "sparse_infill_pattern": "gyroid", + "sparse_infill_rotate_template": "", + "spiral_finishing_flow_ratio": "0", + "spiral_mode_max_xy_smoothing": "200%", + "spiral_mode_smooth": "0", + "spiral_starting_flow_ratio": "0", + "staggered_inner_seams": "0", + "standby_temperature_delta": "-5", + "support_angle": "0", + "support_base_pattern": "rectilinear", + "support_base_pattern_spacing": "2.5", + "support_bottom_interface_spacing": "0.5", + "support_bottom_z_distance": "0.2", + "support_critical_regions_only": "1", + "support_expansion": "0", + "support_filament": "0", + "support_flow_ratio": "1", + "support_interface_bottom_layers": "2", + "support_interface_filament": "0", + "support_interface_flow_ratio": "1", + "support_interface_loop_pattern": "0", + "support_interface_not_for_body": "1", + "support_interface_pattern": "auto", + "support_interface_spacing": "0.8", + "support_interface_top_layers": "1", + "support_ironing": "0", + "support_ironing_flow": "10%", + "support_ironing_pattern": "rectilinear", + "support_ironing_spacing": "0.1", + "support_object_first_layer_gap": "0.2", + "support_object_xy_distance": "0.35", + "support_on_build_plate_only": "1", + "support_remove_small_overhang": "1", + "support_style": "default", + "support_threshold_angle": "30", + "support_threshold_overlap": "50%", + "support_top_z_distance": "0.3", + "support_type": "tree(auto)", + "symmetric_infill_y_axis": "0", + "thick_bridges": "0", + "thick_internal_bridges": "1", + "timelapse_type": "0", + "top_bottom_infill_wall_overlap": "25%", + "top_shell_thickness": "0.8", + "top_solid_infill_flow_ratio": "1", + "top_surface_density": "100%", + "top_surface_jerk": "8", + "travel_acceleration": "2000", + "travel_speed_z": "0", + "tree_support_angle_slow": "25", + "tree_support_auto_brim": "1", + "tree_support_branch_angle": "45", + "tree_support_branch_angle_organic": "40", + "tree_support_branch_diameter": "5", + "tree_support_branch_diameter_angle": "5", + "tree_support_branch_diameter_organic": "2", + "tree_support_branch_distance": "5", + "tree_support_branch_distance_organic": "1", + "tree_support_brim_width": "3", + "tree_support_tip_diameter": "0.8", + "tree_support_top_rate": "30%", + "tree_support_wall_count": "2", + "wall_direction": "auto", + "wall_distribution_count": "1", + "wall_filament": "1", + "wall_generator": "arachne", + "wall_sequence": "inner wall/outer wall", + "wall_transition_angle": "10", + "wall_transition_filter_deviation": "25%", + "wall_transition_length": "100%", + "wipe_before_external_loop": "1", + "wipe_on_loops": "0", + "wipe_speed": "80%", + "wipe_tower_bridging": "10", + "wipe_tower_cone_angle": "30", + "wipe_tower_extra_flow": "100%", + "wipe_tower_extra_rib_length": "5", + "wipe_tower_extra_spacing": "100%", + "wipe_tower_filament": "0", + "wipe_tower_fillet_wall": "1", + "wipe_tower_max_purge_speed": "60", + "wipe_tower_no_sparse_layers": "0", + "wipe_tower_rib_width": "3", + "wipe_tower_rotation_angle": "0", + "wipe_tower_wall_type": "rib", + "wiping_volumes_extruders": [ + "70", + "70", + "70", + "70", + "70", + "70", + "70", + "70", + "70", + "70" + ], + "xy_contour_compensation": "0", + "top_surface_acceleration": "600", + "travel_jerk": "10", + "initial_layer_speed": "30", + "outer_wall_acceleration": "1000", + "outer_wall_line_width": "100%", + "line_width": "100%", + "initial_layer_line_width": "125%", + "inner_wall_line_width": "100%", + "top_surface_line_width": "105%", + "sparse_infill_line_width": "125%", + "internal_solid_infill_line_width": "105%", + "support_line_width": "125%", + "outer_wall_speed": "60", + "inner_wall_speed": "80", + "sparse_infill_speed": "100", + "internal_solid_infill_speed": "100", + "gap_infill_speed": "60", + "support_speed": "60", + "support_interface_speed": "50", + "top_surface_speed": "50", + "small_perimeter_speed": "40%", + "small_perimeter_threshold": "0", + "outer_wall_jerk": "4", + "xy_hole_compensation": "0", + "description": "SeeMeCNC configurations", + "top_surface_flow_ratio": "0.95", + "travel_speed": "150", + "support_wall_loops": "0", + "wall_loops": "3", + "sparse_infill_density": "20%", + "top_surface_pattern": "monotonicline", + "bottom_shell_layers": "4", + "top_shell_layers": "4", + "bottom_surface_pattern": "monotonicline", + "detect_thin_wall": "1", + "ensure_vertical_shell_thickness": "ensure_all", + "bridge_speed": "35" +} diff --git a/resources/profiles/Snapmaker.json b/resources/profiles/Snapmaker.json index ce72bffc09b..20468768adb 100644 --- a/resources/profiles/Snapmaker.json +++ b/resources/profiles/Snapmaker.json @@ -218,6 +218,10 @@ "name": "fdm_process_U1_0.28", "sub_path": "process/fdm_process_U1_0.28.json" }, + { + "name": "fdm_process_U1_0.6_common", + "sub_path": "process/fdm_process_U1_0.6_common.json" + }, { "name": "0.08 Extra Fine @Snapmaker Artisan (0.4 nozzle)", "sub_path": "process/0.08 Extra Fine @Snapmaker Artisan (0.4 nozzle).json" @@ -434,6 +438,10 @@ "name": "0.20 Standard @Snapmaker U1 (0.4 nozzle)", "sub_path": "process/0.20 Standard @Snapmaker U1 (0.4 nozzle).json" }, + { + "name": "0.20 Standard @Snapmaker U1 (0.4+0.6 nozzle)", + "sub_path": "process/0.20 Standard @Snapmaker U1 (0.4+0.6 nozzle).json" + }, { "name": "0.20 Strength @Snapmaker U1 (0.4 nozzle)", "sub_path": "process/0.20 Strength @Snapmaker U1 (0.4 nozzle).json" @@ -454,10 +462,6 @@ "name": "0.28 Extra Draft @Snapmaker U1 (0.4 nozzle)", "sub_path": "process/0.28 Extra Draft @Snapmaker U1 (0.4 nozzle).json" }, - { - "name": "fdm_process_U1_0.6_common", - "sub_path": "process/fdm_process_U1_0.6_common.json" - }, { "name": "0.20 Standard @Snapmaker U1 (0.6 nozzle)", "sub_path": "process/0.20 Standard @Snapmaker U1 (0.6 nozzle).json" @@ -470,10 +474,6 @@ "name": "0.40 Extra Draft @Snapmaker U1 (0.6 nozzle)", "sub_path": "process/0.40 Extra Draft @Snapmaker U1 (0.6 nozzle).json" }, - { - "name": "0.20 Standard @Snapmaker U1 (0.4+0.6 nozzle)", - "sub_path": "process/0.20 Standard @Snapmaker U1 (0.4+0.6 nozzle).json" - }, { "name": "0.06 Standard @Snapmaker Artisan (0.2 nozzle)", "sub_path": "process/0.06 Standard @Snapmaker Artisan (0.2 nozzle).json" @@ -556,6 +556,10 @@ "name": "fdm_filament_tpu", "sub_path": "filament/fdm_filament_tpu.json" }, + { + "name": "Fiberon PPS-GF20 @Snapmaker U1 base", + "sub_path": "filament/Polymaker/Fiberon PPS-GF20 @Snapmaker U1 base.json" + }, { "name": "Snapmaker ABS @U1 base", "sub_path": "filament/Snapmaker ABS @U1 base.json" @@ -572,6 +576,10 @@ "name": "Snapmaker J1 ABS @base", "sub_path": "filament/Snapmaker J1 ABS @base.json" }, + { + "name": "Fiberon ASA-CF08 @Snapmaker U1 base", + "sub_path": "filament/Polymaker/Fiberon ASA-CF08 @Snapmaker U1 base.json" + }, { "name": "Snapmaker ASA @U1 base", "sub_path": "filament/Snapmaker ASA @U1 base.json" @@ -596,6 +604,18 @@ "name": "Snapmaker J1 Breakaway @base", "sub_path": "filament/Snapmaker J1 Breakaway @base.json" }, + { + "name": "Fiberon PA12-CF10 @Snapmaker U1 base", + "sub_path": "filament/Polymaker/Fiberon PA12-CF10 @Snapmaker U1 base.json" + }, + { + "name": "Fiberon PA6-CF20 @Snapmaker U1 base", + "sub_path": "filament/Polymaker/Fiberon PA6-CF20 @Snapmaker U1 base.json" + }, + { + "name": "Fiberon PA612-ESD @Snapmaker U1 base", + "sub_path": "filament/Polymaker/Fiberon PA612-ESD @Snapmaker U1 base.json" + }, { "name": "Snapmaker Dual PA-CF @base", "sub_path": "filament/Snapmaker Dual PA-CF @base.json" @@ -628,14 +648,34 @@ "name": "Snapmaker PET @base", "sub_path": "filament/Snapmaker PET @base.json" }, + { + "name": "Fiberon PETG-ESD @Snapmaker U1 base", + "sub_path": "filament/Polymaker/Fiberon PETG-ESD @Snapmaker U1 base.json" + }, { "name": "PolyLite PETG @Base", "sub_path": "filament/Polymaker/PolyLite PETG @Base.json" }, + { + "name": "PolyLite PETG @Snapmaker U1 base", + "sub_path": "filament/Polymaker/PolyLite PETG @Snapmaker U1 base.json" + }, + { + "name": "PolyLite PETG Translucent @Snapmaker U1 base", + "sub_path": "filament/Polymaker/PolyLite PETG Translucent @Snapmaker U1 base.json" + }, { "name": "Polymaker PETG @Base", "sub_path": "filament/Polymaker/Polymaker PETG @Base.json" }, + { + "name": "Polymaker PETG @Snapmaker U1 base", + "sub_path": "filament/Polymaker/Polymaker PETG @Snapmaker U1 base.json" + }, + { + "name": "Polymaker PETG Galaxy @Snapmaker U1 base", + "sub_path": "filament/Polymaker/Polymaker PETG Galaxy @Snapmaker U1 base.json" + }, { "name": "Snapmaker Dual PETG @base", "sub_path": "filament/Snapmaker Dual PETG @base.json" @@ -669,105 +709,157 @@ "sub_path": "filament/Snapmaker PETG-CF @base.json" }, { - "name": "Panchroma CoPE @U1 base", - "sub_path": "filament/Polymaker/Panchroma CoPE @U1 base.json" + "name": "Panchroma CoPE @Snapmaker U1 base", + "sub_path": "filament/Polymaker/Panchroma CoPE @Snapmaker U1 base.json" }, { - "name": "Panchroma PLA @U1 base", - "sub_path": "filament/Polymaker/Panchroma PLA @U1 base.json" + "name": "Panchroma PLA @Snapmaker U1 base", + "sub_path": "filament/Polymaker/Panchroma PLA @Snapmaker U1 base.json" }, { - "name": "Panchroma PLA Celestial @U1 base", - "sub_path": "filament/Polymaker/Panchroma PLA Celestial @U1 base.json" + "name": "Panchroma PLA Celestial @Snapmaker U1 base", + "sub_path": "filament/Polymaker/Panchroma PLA Celestial @Snapmaker U1 base.json" }, { - "name": "Panchroma PLA Galaxy @U1 base", - "sub_path": "filament/Polymaker/Panchroma PLA Galaxy @U1 base.json" + "name": "Panchroma PLA Galaxy @Snapmaker U1 base", + "sub_path": "filament/Polymaker/Panchroma PLA Galaxy @Snapmaker U1 base.json" }, { - "name": "Panchroma PLA Glow @U1 base", - "sub_path": "filament/Polymaker/Panchroma PLA Glow @U1 base.json" + "name": "Panchroma PLA Glow @Snapmaker U1 base", + "sub_path": "filament/Polymaker/Panchroma PLA Glow @Snapmaker U1 base.json" }, { - "name": "Panchroma PLA Luminous @U1 base", - "sub_path": "filament/Polymaker/Panchroma PLA Luminous @U1 base.json" + "name": "Panchroma PLA Luminous @Snapmaker U1 base", + "sub_path": "filament/Polymaker/Panchroma PLA Luminous @Snapmaker U1 base.json" }, { - "name": "Panchroma PLA Marble @U1 base", - "sub_path": "filament/Polymaker/Panchroma PLA Marble @U1 base.json" + "name": "Panchroma PLA Marble @Snapmaker U1 base", + "sub_path": "filament/Polymaker/Panchroma PLA Marble @Snapmaker U1 base.json" }, { - "name": "Panchroma PLA Matte @U1 base", - "sub_path": "filament/Polymaker/Panchroma PLA Matte @U1 base.json" + "name": "Panchroma PLA Matte @Snapmaker U1 base", + "sub_path": "filament/Polymaker/Panchroma PLA Matte @Snapmaker U1 base.json" }, { - "name": "Panchroma PLA Metallic @U1 base", - "sub_path": "filament/Polymaker/Panchroma PLA Metallic @U1 base.json" + "name": "Panchroma PLA Metallic @Snapmaker U1 base", + "sub_path": "filament/Polymaker/Panchroma PLA Metallic @Snapmaker U1 base.json" }, { - "name": "Panchroma PLA Neon @U1 base", - "sub_path": "filament/Polymaker/Panchroma PLA Neon @U1 base.json" + "name": "Panchroma PLA Neon @Snapmaker U1 base", + "sub_path": "filament/Polymaker/Panchroma PLA Neon @Snapmaker U1 base.json" }, { - "name": "Panchroma PLA Satin @U1 base", - "sub_path": "filament/Polymaker/Panchroma PLA Satin @U1 base.json" + "name": "Panchroma PLA Satin @Snapmaker U1 base", + "sub_path": "filament/Polymaker/Panchroma PLA Satin @Snapmaker U1 base.json" }, { - "name": "Panchroma PLA Silk @U1 base", - "sub_path": "filament/Polymaker/Panchroma PLA Silk @U1 base.json" + "name": "Panchroma PLA Silk @Snapmaker U1 base", + "sub_path": "filament/Polymaker/Panchroma PLA Silk @Snapmaker U1 base.json" }, { - "name": "Panchroma PLA Starlight @U1 base", - "sub_path": "filament/Polymaker/Panchroma PLA Starlight @U1 base.json" + "name": "Panchroma PLA Starlight @Snapmaker U1 base", + "sub_path": "filament/Polymaker/Panchroma PLA Starlight @Snapmaker U1 base.json" }, { - "name": "Panchroma PLA Temp Shift @U1 base", - "sub_path": "filament/Polymaker/Panchroma PLA Temp Shift @U1 base.json" + "name": "Panchroma PLA Temp Shift @Snapmaker U1 base", + "sub_path": "filament/Polymaker/Panchroma PLA Temp Shift @Snapmaker U1 base.json" }, { - "name": "Panchroma PLA Translucent @U1 base", - "sub_path": "filament/Polymaker/Panchroma PLA Translucent @U1 base.json" + "name": "Panchroma PLA Translucent @Snapmaker U1 base", + "sub_path": "filament/Polymaker/Panchroma PLA Translucent @Snapmaker U1 base.json" }, { - "name": "Panchroma PLA UV Shift @U1 base", - "sub_path": "filament/Polymaker/Panchroma PLA UV Shift @U1 base.json" + "name": "Panchroma PLA UV Shift @Snapmaker U1 base", + "sub_path": "filament/Polymaker/Panchroma PLA UV Shift @Snapmaker U1 base.json" }, { - "name": "PolyLite PLA @U1 base", - "sub_path": "filament/Polymaker/PolyLite PLA @U1 base.json" + "name": "PolyLite CosPLA @Snapmaker U1 base", + "sub_path": "filament/Polymaker/PolyLite CosPLA @Snapmaker U1 base.json" + }, + { + "name": "PolyLite PLA @Snapmaker U1 base", + "sub_path": "filament/Polymaker/PolyLite PLA @Snapmaker U1 base.json" }, { "name": "PolyLite PLA @base", "sub_path": "filament/Polymaker/PolyLite PLA @base.json" }, { - "name": "PolyLite PLA Pro @U1 base", - "sub_path": "filament/Polymaker/PolyLite PLA Pro @U1 base.json" + "name": "PolyLite PLA Galaxy @Snapmaker U1 base", + "sub_path": "filament/Polymaker/PolyLite PLA Galaxy @Snapmaker U1 base.json" }, { - "name": "PolyTerra PLA @U1 base", - "sub_path": "filament/Polymaker/PolyTerra PLA @U1 base.json" + "name": "PolyLite PLA Glow @Snapmaker U1 base", + "sub_path": "filament/Polymaker/PolyLite PLA Glow @Snapmaker U1 base.json" + }, + { + "name": "PolyLite PLA Luminous @Snapmaker U1 base", + "sub_path": "filament/Polymaker/PolyLite PLA Luminous @Snapmaker U1 base.json" + }, + { + "name": "PolyLite PLA Neon @Snapmaker U1 base", + "sub_path": "filament/Polymaker/PolyLite PLA Neon @Snapmaker U1 base.json" + }, + { + "name": "PolyLite PLA Pro @Snapmaker U1 base", + "sub_path": "filament/Polymaker/PolyLite PLA Pro @Snapmaker U1 base.json" + }, + { + "name": "PolyLite PLA Pro Metallic @Snapmaker U1 base", + "sub_path": "filament/Polymaker/PolyLite PLA Pro Metallic @Snapmaker U1 base.json" + }, + { + "name": "PolyLite PLA Starlight @Snapmaker U1 base", + "sub_path": "filament/Polymaker/PolyLite PLA Starlight @Snapmaker U1 base.json" + }, + { + "name": "PolyLite PLA Translucent @Snapmaker U1 base", + "sub_path": "filament/Polymaker/PolyLite PLA Translucent @Snapmaker U1 base.json" + }, + { + "name": "PolyTerra PLA @Snapmaker U1 base", + "sub_path": "filament/Polymaker/PolyTerra PLA @Snapmaker U1 base.json" + }, + { + "name": "PolyTerra PLA Marble @Snapmaker U1 base", + "sub_path": "filament/Polymaker/PolyTerra PLA Marble @Snapmaker U1 base.json" + }, + { + "name": "PolyTerra PLA+ @Snapmaker U1 base", + "sub_path": "filament/Polymaker/PolyTerra PLA+ @Snapmaker U1 base.json" }, { "name": "Polymaker HT-PLA @Base", "sub_path": "filament/Polymaker/Polymaker HT-PLA @Base.json" }, { - "name": "Polymaker HT-PLA @U1 base", - "sub_path": "filament/Polymaker/Polymaker HT-PLA @U1 base.json" + "name": "Polymaker HT-PLA @Snapmaker U1 base", + "sub_path": "filament/Polymaker/Polymaker HT-PLA @Snapmaker U1 base.json" }, { "name": "Polymaker HT-PLA-GF @Base", "sub_path": "filament/Polymaker/Polymaker HT-PLA-GF @Base.json" }, { - "name": "Polymaker HT-PLA-GF @U1 base", - "sub_path": "filament/Polymaker/Polymaker HT-PLA-GF @U1 base.json" + "name": "Polymaker HT-PLA-GF @Snapmaker U1 base", + "sub_path": "filament/Polymaker/Polymaker HT-PLA-GF @Snapmaker U1 base.json" + }, + { + "name": "Polymaker PLA @Snapmaker U1 base", + "sub_path": "filament/Polymaker/Polymaker PLA @Snapmaker U1 base.json" }, { "name": "Polymaker PLA Pro @Base", "sub_path": "filament/Polymaker/Polymaker PLA Pro @Base.json" }, + { + "name": "Polymaker PLA Pro @Snapmaker U1 base", + "sub_path": "filament/Polymaker/Polymaker PLA Pro @Snapmaker U1 base.json" + }, + { + "name": "Polymaker PLA Pro Metallic @Snapmaker U1 base", + "sub_path": "filament/Polymaker/Polymaker PLA Pro Metallic @Snapmaker U1 base.json" + }, { "name": "Snapmaker Dual PLA @base", "sub_path": "filament/Snapmaker Dual PLA @base.json" @@ -872,6 +964,10 @@ "name": "Snapmaker TPU @base", "sub_path": "filament/Snapmaker TPU @base.json" }, + { + "name": "Fiberon PPS-GF20 @Snapmaker U1", + "sub_path": "filament/Polymaker/Fiberon PPS-GF20 @Snapmaker U1.json" + }, { "name": "Snapmaker ABS @U1", "sub_path": "filament/Snapmaker ABS @U1.json" @@ -920,6 +1016,10 @@ "name": "Snapmaker J1 ABS Benchy", "sub_path": "filament/Snapmaker J1 ABS Benchy.json" }, + { + "name": "Fiberon ASA-CF08 @Snapmaker U1", + "sub_path": "filament/Polymaker/Fiberon ASA-CF08 @Snapmaker U1.json" + }, { "name": "Snapmaker ASA @U1", "sub_path": "filament/Snapmaker ASA @U1.json" @@ -964,6 +1064,18 @@ "name": "Snapmaker J1 Breakaway @0.2 nozzle", "sub_path": "filament/Snapmaker J1 Breakaway @0.2 nozzle.json" }, + { + "name": "Fiberon PA12-CF10 @Snapmaker U1", + "sub_path": "filament/Polymaker/Fiberon PA12-CF10 @Snapmaker U1.json" + }, + { + "name": "Fiberon PA6-CF20 @Snapmaker U1", + "sub_path": "filament/Polymaker/Fiberon PA6-CF20 @Snapmaker U1.json" + }, + { + "name": "Fiberon PA612-ESD @Snapmaker U1", + "sub_path": "filament/Polymaker/Fiberon PA612-ESD @Snapmaker U1.json" + }, { "name": "Snapmaker Dual PA-CF", "sub_path": "filament/Snapmaker Dual PA-CF.json" @@ -1000,14 +1112,26 @@ "name": "Snapmaker PET", "sub_path": "filament/Snapmaker PET.json" }, + { + "name": "Fiberon PETG-ESD @Snapmaker U1", + "sub_path": "filament/Polymaker/Fiberon PETG-ESD @Snapmaker U1.json" + }, { "name": "PolyLite PETG @Snapmaker U1", "sub_path": "filament/Polymaker/PolyLite PETG @Snapmaker U1.json" }, + { + "name": "PolyLite PETG Translucent @Snapmaker U1", + "sub_path": "filament/Polymaker/PolyLite PETG Translucent @Snapmaker U1.json" + }, { "name": "Polymaker PETG @Snapmaker U1", "sub_path": "filament/Polymaker/Polymaker PETG @Snapmaker U1.json" }, + { + "name": "Polymaker PETG Galaxy @Snapmaker U1", + "sub_path": "filament/Polymaker/Polymaker PETG Galaxy @Snapmaker U1.json" + }, { "name": "Snapmaker Dual PETG", "sub_path": "filament/Snapmaker Dual PETG.json" @@ -1061,72 +1185,76 @@ "sub_path": "filament/Snapmaker PETG-CF.json" }, { - "name": "Panchroma CoPE @U1", - "sub_path": "filament/Polymaker/Panchroma CoPE @U1.json" + "name": "Panchroma CoPE @Snapmaker U1", + "sub_path": "filament/Polymaker/Panchroma CoPE @Snapmaker U1.json" }, { - "name": "Panchroma PLA @U1", - "sub_path": "filament/Polymaker/Panchroma PLA @U1.json" + "name": "Panchroma PLA @Snapmaker U1", + "sub_path": "filament/Polymaker/Panchroma PLA @Snapmaker U1.json" }, { - "name": "Panchroma PLA Celestial @U1", - "sub_path": "filament/Polymaker/Panchroma PLA Celestial @U1.json" + "name": "Panchroma PLA Celestial @Snapmaker U1", + "sub_path": "filament/Polymaker/Panchroma PLA Celestial @Snapmaker U1.json" }, { - "name": "Panchroma PLA Galaxy @U1", - "sub_path": "filament/Polymaker/Panchroma PLA Galaxy @U1.json" + "name": "Panchroma PLA Galaxy @Snapmaker U1", + "sub_path": "filament/Polymaker/Panchroma PLA Galaxy @Snapmaker U1.json" }, { - "name": "Panchroma PLA Glow @U1", - "sub_path": "filament/Polymaker/Panchroma PLA Glow @U1.json" + "name": "Panchroma PLA Glow @Snapmaker U1", + "sub_path": "filament/Polymaker/Panchroma PLA Glow @Snapmaker U1.json" }, { - "name": "Panchroma PLA Luminous @U1", - "sub_path": "filament/Polymaker/Panchroma PLA Luminous @U1.json" + "name": "Panchroma PLA Luminous @Snapmaker U1", + "sub_path": "filament/Polymaker/Panchroma PLA Luminous @Snapmaker U1.json" }, { - "name": "Panchroma PLA Marble @U1", - "sub_path": "filament/Polymaker/Panchroma PLA Marble @U1.json" + "name": "Panchroma PLA Marble @Snapmaker U1", + "sub_path": "filament/Polymaker/Panchroma PLA Marble @Snapmaker U1.json" }, { - "name": "Panchroma PLA Matte @U1", - "sub_path": "filament/Polymaker/Panchroma PLA Matte @U1.json" + "name": "Panchroma PLA Matte @Snapmaker U1", + "sub_path": "filament/Polymaker/Panchroma PLA Matte @Snapmaker U1.json" }, { - "name": "Panchroma PLA Metallic @U1", - "sub_path": "filament/Polymaker/Panchroma PLA Metallic @U1.json" + "name": "Panchroma PLA Metallic @Snapmaker U1", + "sub_path": "filament/Polymaker/Panchroma PLA Metallic @Snapmaker U1.json" }, { - "name": "Panchroma PLA Neon @U1", - "sub_path": "filament/Polymaker/Panchroma PLA Neon @U1.json" + "name": "Panchroma PLA Neon @Snapmaker U1", + "sub_path": "filament/Polymaker/Panchroma PLA Neon @Snapmaker U1.json" }, { - "name": "Panchroma PLA Satin @U1", - "sub_path": "filament/Polymaker/Panchroma PLA Satin @U1.json" + "name": "Panchroma PLA Satin @Snapmaker U1", + "sub_path": "filament/Polymaker/Panchroma PLA Satin @Snapmaker U1.json" }, { - "name": "Panchroma PLA Silk @U1", - "sub_path": "filament/Polymaker/Panchroma PLA Silk @U1.json" + "name": "Panchroma PLA Silk @Snapmaker U1", + "sub_path": "filament/Polymaker/Panchroma PLA Silk @Snapmaker U1.json" }, { - "name": "Panchroma PLA Starlight @U1", - "sub_path": "filament/Polymaker/Panchroma PLA Starlight @U1.json" + "name": "Panchroma PLA Starlight @Snapmaker U1", + "sub_path": "filament/Polymaker/Panchroma PLA Starlight @Snapmaker U1.json" }, { - "name": "Panchroma PLA Temp Shift @U1", - "sub_path": "filament/Polymaker/Panchroma PLA Temp Shift @U1.json" + "name": "Panchroma PLA Temp Shift @Snapmaker U1", + "sub_path": "filament/Polymaker/Panchroma PLA Temp Shift @Snapmaker U1.json" }, { - "name": "Panchroma PLA Translucent @U1", - "sub_path": "filament/Polymaker/Panchroma PLA Translucent @U1.json" + "name": "Panchroma PLA Translucent @Snapmaker U1", + "sub_path": "filament/Polymaker/Panchroma PLA Translucent @Snapmaker U1.json" }, { - "name": "Panchroma PLA UV Shift @U1", - "sub_path": "filament/Polymaker/Panchroma PLA UV Shift @U1.json" + "name": "Panchroma PLA UV Shift @Snapmaker U1", + "sub_path": "filament/Polymaker/Panchroma PLA UV Shift @Snapmaker U1.json" }, { - "name": "PolyLite PLA @U1", - "sub_path": "filament/Polymaker/PolyLite PLA @U1.json" + "name": "PolyLite CosPLA @Snapmaker U1", + "sub_path": "filament/Polymaker/PolyLite CosPLA @Snapmaker U1.json" + }, + { + "name": "PolyLite PLA @Snapmaker U1", + "sub_path": "filament/Polymaker/PolyLite PLA @Snapmaker U1.json" }, { "name": "PolyLite J1 PLA", @@ -1137,33 +1265,69 @@ "sub_path": "filament/Polymaker/PolyLite PLA @0.2 nozzle.json" }, { - "name": "PolyLite PLA Pro @U1", - "sub_path": "filament/Polymaker/PolyLite PLA Pro @U1.json" + "name": "PolyLite PLA Galaxy @Snapmaker U1", + "sub_path": "filament/Polymaker/PolyLite PLA Galaxy @Snapmaker U1.json" }, { - "name": "PolyTerra PLA @U1", - "sub_path": "filament/Polymaker/PolyTerra PLA @U1.json" + "name": "PolyLite PLA Glow @Snapmaker U1", + "sub_path": "filament/Polymaker/PolyLite PLA Glow @Snapmaker U1.json" + }, + { + "name": "PolyLite PLA Luminous @Snapmaker U1", + "sub_path": "filament/Polymaker/PolyLite PLA Luminous @Snapmaker U1.json" + }, + { + "name": "PolyLite PLA Neon @Snapmaker U1", + "sub_path": "filament/Polymaker/PolyLite PLA Neon @Snapmaker U1.json" + }, + { + "name": "PolyLite PLA Pro @Snapmaker U1", + "sub_path": "filament/Polymaker/PolyLite PLA Pro @Snapmaker U1.json" + }, + { + "name": "PolyLite PLA Pro Metallic @Snapmaker U1", + "sub_path": "filament/Polymaker/PolyLite PLA Pro Metallic @Snapmaker U1.json" + }, + { + "name": "PolyLite PLA Starlight @Snapmaker U1", + "sub_path": "filament/Polymaker/PolyLite PLA Starlight @Snapmaker U1.json" + }, + { + "name": "PolyLite PLA Translucent @Snapmaker U1", + "sub_path": "filament/Polymaker/PolyLite PLA Translucent @Snapmaker U1.json" + }, + { + "name": "PolyTerra PLA @Snapmaker U1", + "sub_path": "filament/Polymaker/PolyTerra PLA @Snapmaker U1.json" + }, + { + "name": "PolyTerra PLA Marble @Snapmaker U1", + "sub_path": "filament/Polymaker/PolyTerra PLA Marble @Snapmaker U1.json" + }, + { + "name": "PolyTerra PLA+ @Snapmaker U1", + "sub_path": "filament/Polymaker/PolyTerra PLA+ @Snapmaker U1.json" }, { "name": "Polymaker HT-PLA @Snapmaker U1", "sub_path": "filament/Polymaker/Polymaker HT-PLA @Snapmaker U1.json" }, - { - "name": "Polymaker HT-PLA @U1", - "sub_path": "filament/Polymaker/Polymaker HT-PLA @U1.json" - }, { "name": "Polymaker HT-PLA-GF @Snapmaker U1", "sub_path": "filament/Polymaker/Polymaker HT-PLA-GF @Snapmaker U1.json" }, { - "name": "Polymaker HT-PLA-GF @U1", - "sub_path": "filament/Polymaker/Polymaker HT-PLA-GF @U1.json" + "name": "Polymaker PLA @Snapmaker U1", + "sub_path": "filament/Polymaker/Polymaker PLA @Snapmaker U1.json" }, { "name": "Polymaker PLA Pro @Snapmaker U1", "sub_path": "filament/Polymaker/Polymaker PLA Pro @Snapmaker U1.json" }, + { + "name": "Polymaker PLA Pro Metallic @Snapmaker U1", + "sub_path": "filament/Polymaker/Polymaker PLA Pro Metallic @Snapmaker U1.json" + }, { "name": "Snapmaker Dual PLA", "sub_path": "filament/Snapmaker Dual PLA.json" @@ -1550,14 +1714,14 @@ "name": "Snapmaker U1 (0.4 nozzle)", "sub_path": "machine/Snapmaker U1 (0.4 nozzle).json" }, - { - "name": "Snapmaker U1 (0.6 nozzle)", - "sub_path": "machine/Snapmaker U1 (0.6 nozzle).json" - }, { "name": "Snapmaker U1 (0.4+0.6 nozzle)", "sub_path": "machine/Snapmaker U1 (0.4+0.6 nozzle).json" }, + { + "name": "Snapmaker U1 (0.6 nozzle)", + "sub_path": "machine/Snapmaker U1 (0.6 nozzle).json" + }, { "name": "Snapmaker A250 BKit (0.2 nozzle)", "sub_path": "machine/Snapmaker A250 BKit (0.2 nozzle).json" diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Fiberon ASA-CF08 @Snapmaker U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Fiberon ASA-CF08 @Snapmaker U1 base.json new file mode 100644 index 00000000000..dfbff7e8fb1 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Fiberon ASA-CF08 @Snapmaker U1 base.json @@ -0,0 +1,83 @@ +{ + "type": "filament", + "name": "Fiberon ASA-CF08 @Snapmaker U1 base", + "inherits": "fdm_filament_asa", + "from": "system", + "filament_id": "GFL71", + "instantiation": "false", + "additional_cooling_fan_speed": [ + "0" + ], + "bed_type": [ + "Cool Plate" + ], + "close_fan_the_first_x_layers": [ + "1" + ], + "cool_plate_temp": [ + "105" + ], + "cool_plate_temp_initial_layer": [ + "105" + ], + "eng_plate_temp": [ + "105" + ], + "eng_plate_temp_initial_layer": [ + "100" + ], + "fan_cooling_layer_time": [ + "31" + ], + "fan_max_speed": [ + "30" + ], + "filament_cost": [ + "30" + ], + "filament_density": [ + "1.09" + ], + "filament_flow_ratio": [ + "0.88" + ], + "filament_max_volumetric_speed": [ + "8" + ], + "filament_vendor": [ + "Polymaker" + ], + "hot_plate_temp": [ + "105" + ], + "hot_plate_temp_initial_layer": [ + "100" + ], + "nozzle_temperature": [ + "250" + ], + "nozzle_temperature_initial_layer": [ + "260" + ], + "nozzle_temperature_range_low": [ + "260" + ], + "slow_down_layer_time": [ + "8" + ], + "slow_down_min_speed": [ + "30" + ], + "temperature_vitrification": [ + "110.8" + ], + "textured_plate_temp": [ + "105" + ], + "textured_plate_temp_initial_layer": [ + "100" + ], + "filament_type": [ + "ASA" + ] +} 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 new file mode 100644 index 00000000000..b627ee798dc --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Fiberon ASA-CF08 @Snapmaker U1.json @@ -0,0 +1,18 @@ +{ + "type": "filament", + "name": "Fiberon ASA-CF08 @Snapmaker U1", + "inherits": "Fiberon ASA-CF08 @Snapmaker U1 base", + "from": "system", + "setting_id": "GFSL71_00", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ], + + "pressure_advance": [ + "0.05" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Fiberon PA12-CF10 @Snapmaker U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Fiberon PA12-CF10 @Snapmaker U1 base.json new file mode 100644 index 00000000000..b292f8dd621 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Fiberon PA12-CF10 @Snapmaker U1 base.json @@ -0,0 +1,80 @@ +{ + "type": "filament", + "name": "Fiberon PA12-CF10 @Snapmaker U1 base", + "inherits": "fdm_filament_pa", + "from": "system", + "filament_id": "GFL56", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "eng_plate_temp": [ + "100" + ], + "eng_plate_temp_initial_layer": [ + "100" + ], + "fan_cooling_layer_time": [ + "31" + ], + "fan_max_speed": [ + "50" + ], + "fan_min_speed": [ + "20" + ], + "filament_cost": [ + "20" + ], + "filament_density": [ + "1.06" + ], + "filament_flow_ratio": [ + "0.87" + ], + "filament_vendor": [ + "Polymaker" + ], + "full_fan_speed_layer": [ + "0" + ], + "hot_plate_temp": [ + "100" + ], + "hot_plate_temp_initial_layer": [ + "100" + ], + "nozzle_temperature": [ + "270" + ], + "nozzle_temperature_initial_layer": [ + "270" + ], + "nozzle_temperature_range_high": [ + "300" + ], + "nozzle_temperature_range_low": [ + "280" + ], + "overhang_fan_threshold": [ + "95%" + ], + "slow_down_layer_time": [ + "8" + ], + "slow_down_min_speed": [ + "10" + ], + "temperature_vitrification": [ + "55" + ], + "textured_plate_temp": [ + "90" + ], + "textured_plate_temp_initial_layer": [ + "90" + ], + "filament_type": [ + "PA-CF" + ] +} 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 new file mode 100644 index 00000000000..fa7f298e1ba --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Fiberon PA12-CF10 @Snapmaker U1.json @@ -0,0 +1,27 @@ +{ + "type": "filament", + "name": "Fiberon PA12-CF10 @Snapmaker U1", + "inherits": "Fiberon PA12-CF10 @Snapmaker U1 base", + "from": "system", + "setting_id": "GFSL56_00", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ], + "filament_retraction_length": [ + "1.0" + ], + "filament_z_hop": [ + "0.0" + ], + + "enable_pressure_advance": [ + "1" + ], + "pressure_advance": [ + "0.05" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Fiberon PA6-CF20 @Snapmaker U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Fiberon PA6-CF20 @Snapmaker U1 base.json new file mode 100644 index 00000000000..88aab14bbfa --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Fiberon PA6-CF20 @Snapmaker U1 base.json @@ -0,0 +1,77 @@ +{ + "type": "filament", + "name": "Fiberon PA6-CF20 @Snapmaker U1 base", + "inherits": "fdm_filament_pa", + "from": "system", + "filament_id": "GFL57", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "eng_plate_temp": [ + "100" + ], + "eng_plate_temp_initial_layer": [ + "100" + ], + "fan_cooling_layer_time": [ + "31" + ], + "fan_max_speed": [ + "10" + ], + "fan_min_speed": [ + "0" + ], + "filament_cost": [ + "20" + ], + "filament_density": [ + "1.17" + ], + "filament_type": [ + "PA6-CF" + ], + "filament_vendor": [ + "Polymaker" + ], + "full_fan_speed_layer": [ + "0" + ], + "hot_plate_temp": [ + "100" + ], + "hot_plate_temp_initial_layer": [ + "100" + ], + "nozzle_temperature": [ + "290" + ], + "nozzle_temperature_initial_layer": [ + "290" + ], + "nozzle_temperature_range_high": [ + "300" + ], + "nozzle_temperature_range_low": [ + "280" + ], + "overhang_fan_threshold": [ + "95%" + ], + "slow_down_layer_time": [ + "8" + ], + "slow_down_min_speed": [ + "10" + ], + "temperature_vitrification": [ + "74.2" + ], + "textured_plate_temp": [ + "90" + ], + "textured_plate_temp_initial_layer": [ + "90" + ] +} 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 new file mode 100644 index 00000000000..ffbdfdd8c00 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Fiberon PA6-CF20 @Snapmaker U1.json @@ -0,0 +1,27 @@ +{ + "type": "filament", + "name": "Fiberon PA6-CF20 @Snapmaker U1", + "inherits": "Fiberon PA6-CF20 @Snapmaker U1 base", + "from": "system", + "setting_id": "GFSL57_00", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ], + "filament_retraction_length": [ + "1.0" + ], + "filament_z_hop": [ + "0.0" + ], + + "enable_pressure_advance": [ + "1" + ], + "pressure_advance": [ + "0.08" + ] +} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PETG-CF @base.json b/resources/profiles/Snapmaker/filament/Polymaker/Fiberon PA612-ESD @Snapmaker U1 base.json similarity index 61% rename from resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PETG-CF @base.json rename to resources/profiles/Snapmaker/filament/Polymaker/Fiberon PA612-ESD @Snapmaker U1 base.json index a0877ef403a..f14d1abc1f4 100644 --- a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PETG-CF @base.json +++ b/resources/profiles/Snapmaker/filament/Polymaker/Fiberon PA612-ESD @Snapmaker U1 base.json @@ -1,74 +1,80 @@ { "type": "filament", - "name": "Elegoo PETG-CF @base", - "inherits": "fdm_filament_pet", + "name": "Fiberon PA612-ESD @Snapmaker U1 base", + "inherits": "fdm_filament_pa", "from": "system", - "filament_id": "OGFE03", + "filament_id": "GFL72", "instantiation": "false", - "filament_cost": [ - "18.99" + "bed_type": [ + "Cool Plate" ], - "filament_density": [ - "1.29" + "eng_plate_temp": [ + "100" ], - "filament_flow_ratio": [ - "0.98" - ], - "filament_max_volumetric_speed": [ - "10" - ], - "filament_retraction_length": [ - "0.8" - ], - "filament_retraction_speed": [ - "45" - ], - "filament_deretraction_speed": [ - "45" - ], - "filament_vendor": [ - "Elegoo" - ], - "nozzle_temperature": [ - "255" - ], - "nozzle_temperature_initial_layer": [ - "250" - ], - "nozzle_temperature_range_high": [ - "270" - ], - "nozzle_temperature_range_low": [ - "240" - ], - "hot_plate_temp": [ - "65" - ], - "hot_plate_temp_initial_layer": [ - "65" - ], - "textured_plate_temp": [ - "75" - ], - "textured_plate_temp_initial_layer": [ - "75" - ], - "overhang_fan_speed": [ - "90" - ], - "fan_max_speed": [ - "80" - ], - "fan_min_speed": [ - "20" + "eng_plate_temp_initial_layer": [ + "100" ], "fan_cooling_layer_time": [ - "20" + "25" ], - "slow_down_layer_time": [ + "fan_max_speed": [ "10" ], - "slow_down_min_speed": [ + "fan_min_speed": [ + "0" + ], + "filament_cost": [ "20" + ], + "filament_density": [ + "1.1" + ], + "filament_flow_ratio": [ + "0.89" + ], + "filament_vendor": [ + "Polymaker" + ], + "full_fan_speed_layer": [ + "2" + ], + "hot_plate_temp": [ + "100" + ], + "hot_plate_temp_initial_layer": [ + "100" + ], + "nozzle_temperature": [ + "270" + ], + "nozzle_temperature_initial_layer": [ + "270" + ], + "nozzle_temperature_range_high": [ + "300" + ], + "nozzle_temperature_range_low": [ + "280" + ], + "overhang_fan_speed": [ + "40" + ], + "slow_down_layer_time": [ + "1" + ], + "slow_down_min_speed": [ + "10" + ], + "temperature_vitrification": [ + "190" + ], + "textured_plate_temp": [ + "100" + ], + "textured_plate_temp_initial_layer": [ + "100" + ], + "filament_type": [ + "PA-CF" ] } diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Fiberon PA612-ESD @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Fiberon PA612-ESD @Snapmaker U1.json new file mode 100644 index 00000000000..2ddc92605e8 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Fiberon PA612-ESD @Snapmaker U1.json @@ -0,0 +1,24 @@ +{ + "type": "filament", + "name": "Fiberon PA612-ESD @Snapmaker U1", + "inherits": "Fiberon PA612-ESD @Snapmaker U1 base", + "from": "system", + "setting_id": "GFSL72_00", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ], + "filament_retraction_length": [ + "1.0" + ], + "filament_z_hop": [ + "0.0" + ], + "description": " ", + "enable_pressure_advance": [ + "1" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Fiberon PETG-ESD @Snapmaker U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Fiberon PETG-ESD @Snapmaker U1 base.json new file mode 100644 index 00000000000..75e03cc52ac --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Fiberon PETG-ESD @Snapmaker U1 base.json @@ -0,0 +1,77 @@ +{ + "type": "filament", + "name": "Fiberon PETG-ESD @Snapmaker U1 base", + "inherits": "fdm_filament_petg", + "from": "system", + "filament_id": "GFL06", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "close_fan_the_first_x_layers": [ + "3" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "fan_cooling_layer_time": [ + "31" + ], + "fan_max_speed": [ + "20" + ], + "fan_min_speed": [ + "10" + ], + "filament_density": [ + "1.24" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "filament_vendor": [ + "Polymaker" + ], + "hot_plate_temp": [ + "80" + ], + "hot_plate_temp_initial_layer": [ + "80" + ], + "nozzle_temperature": [ + "280" + ], + "nozzle_temperature_initial_layer": [ + "280" + ], + "nozzle_temperature_range_high": [ + "290" + ], + "nozzle_temperature_range_low": [ + "250" + ], + "overhang_fan_speed": [ + "100" + ], + "overhang_fan_threshold": [ + "95%" + ], + "slow_down_min_speed": [ + "10" + ], + "temperature_vitrification": [ + "77" + ], + "textured_plate_temp": [ + "80" + ], + "textured_plate_temp_initial_layer": [ + "80" + ], + "filament_type": [ + "PETG" + ] +} 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 new file mode 100644 index 00000000000..f357b622721 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Fiberon PETG-ESD @Snapmaker U1.json @@ -0,0 +1,24 @@ +{ + "type": "filament", + "name": "Fiberon PETG-ESD @Snapmaker U1", + "inherits": "Fiberon PETG-ESD @Snapmaker U1 base", + "from": "system", + "setting_id": "GFSL06_00", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ], + "supertack_plate_temp": [ + "70" + ], + "supertack_plate_temp_initial_layer": [ + "70" + ], + + "pressure_advance": [ + "0.04" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Fiberon PPS-GF20 @Snapmaker U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Fiberon PPS-GF20 @Snapmaker U1 base.json new file mode 100644 index 00000000000..271ee8bb5d3 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Fiberon PPS-GF20 @Snapmaker U1 base.json @@ -0,0 +1,92 @@ +{ + "type": "filament", + "name": "Fiberon PPS-GF20 @Snapmaker U1 base", + "inherits": "fdm_filament_abs", + "from": "system", + "filament_id": "GFL73", + "instantiation": "false", + "additional_cooling_fan_speed": [ + "0" + ], + "bed_type": [ + "Cool Plate" + ], + "close_fan_the_first_x_layers": [ + "1" + ], + "cool_plate_temp": [ + "105" + ], + "cool_plate_temp_initial_layer": [ + "105" + ], + "eng_plate_temp": [ + "105" + ], + "eng_plate_temp_initial_layer": [ + "105" + ], + "fan_cooling_layer_time": [ + "12" + ], + "fan_max_speed": [ + "10" + ], + "fan_min_speed": [ + "0" + ], + "filament_cost": [ + "30" + ], + "filament_density": [ + "1.24" + ], + "filament_flow_ratio": [ + "1.03" + ], + "filament_max_volumetric_speed": [ + "8" + ], + "filament_vendor": [ + "Polymaker" + ], + "hot_plate_temp": [ + "105" + ], + "hot_plate_temp_initial_layer": [ + "105" + ], + "nozzle_temperature": [ + "300" + ], + "nozzle_temperature_initial_layer": [ + "300" + ], + "nozzle_temperature_range_high": [ + "330" + ], + "nozzle_temperature_range_low": [ + "300" + ], + "overhang_fan_speed": [ + "40" + ], + "slow_down_layer_time": [ + "10" + ], + "slow_down_min_speed": [ + "30" + ], + "temperature_vitrification": [ + "110" + ], + "textured_plate_temp": [ + "105" + ], + "textured_plate_temp_initial_layer": [ + "105" + ], + "filament_type": [ + "ABS" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Fiberon PPS-GF20 @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Fiberon PPS-GF20 @Snapmaker U1.json new file mode 100644 index 00000000000..ade0333b568 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Fiberon PPS-GF20 @Snapmaker U1.json @@ -0,0 +1,15 @@ +{ + "type": "filament", + "name": "Fiberon PPS-GF20 @Snapmaker U1", + "inherits": "Fiberon PPS-GF20 @Snapmaker U1 base", + "from": "system", + "setting_id": "GFSL73_00", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ], + "description": " " +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma CoPE @Snapmaker U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma CoPE @Snapmaker U1 base.json new file mode 100644 index 00000000000..85f728d3f3d --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma CoPE @Snapmaker U1 base.json @@ -0,0 +1,71 @@ +{ + "type": "filament", + "name": "Panchroma CoPE @Snapmaker U1 base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "GFPM016", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "filament_cost": [ + "19.99" + ], + "filament_density": [ + "1.29" + ], + "filament_max_volumetric_speed": [ + "20" + ], + "filament_vendor": [ + "Polymaker" + ], + "nozzle_temperature": [ + "230" + ], + "nozzle_temperature_initial_layer": [ + "230" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "nozzle_temperature_range_low": [ + "200" + ], + "overhang_fan_speed": [ + "75" + ], + "overhang_fan_threshold": [ + "50%" + ], + "slow_down_layer_time": [ + "4" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "58.2" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "filament_type": [ + "PLA" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma CoPE @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma CoPE @Snapmaker U1.json new file mode 100644 index 00000000000..e2fcea837ec --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma CoPE @Snapmaker U1.json @@ -0,0 +1,15 @@ +{ + "type": "filament", + "name": "Panchroma CoPE @Snapmaker U1", + "renamed_from": "Panchroma CoPE @U1", + "inherits": "Panchroma CoPE @Snapmaker U1 base", + "from": "system", + "setting_id": "GFSPM016_00", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma CoPE @U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma CoPE @U1 base.json deleted file mode 100644 index 3d78cca727e..00000000000 --- a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma CoPE @U1 base.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "type": "filament", - "name": "Panchroma CoPE @U1 base", - "inherits": "fdm_filament_pla", - "from": "system", - "filament_id": "GFPM016", - "instantiation": "false", - "filament_cost": [ - "19.99" - ], - "filament_density": [ - "1.29" - ], - "filament_flow_ratio": [ - "0.98" - ], - "filament_max_volumetric_speed": [ - "20" - ], - "filament_vendor": [ - "Polymaker" - ], - "nozzle_temperature": [ - "230" - ], - "nozzle_temperature_initial_layer": [ - "230" - ], - "nozzle_temperature_range_high": [ - "240" - ], - "nozzle_temperature_range_low": [ - "190" - ], - "slow_down_layer_time": [ - "4" - ], - "temperature_vitrification": [ - "58" - ] -} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma CoPE @U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma CoPE @U1.json deleted file mode 100644 index 3a60d064ab6..00000000000 --- a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma CoPE @U1.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "filament", - "name": "Panchroma CoPE @U1", - "inherits": "Panchroma CoPE @U1 base", - "from": "system", - "setting_id": "GFSPM016_00", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)" - ], - "fan_max_speed": [ - "100" - ], - "fan_min_speed": [ - "100" - ], - "filament_flow_ratio": [ - "0.98" - ], - "filament_max_volumetric_speed": [ - "20" - ], - "slow_down_layer_time": [ - "4" - ] -} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA @Snapmaker U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA @Snapmaker U1 base.json new file mode 100644 index 00000000000..2695cbee540 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA @Snapmaker U1 base.json @@ -0,0 +1,65 @@ +{ + "type": "filament", + "name": "Panchroma PLA @Snapmaker U1 base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "GFPM001", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "filament_cost": [ + "19.99" + ], + "filament_density": [ + "1.32" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "filament_vendor": [ + "Polymaker" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "overhang_fan_speed": [ + "75" + ], + "overhang_fan_threshold": [ + "50%" + ], + "slow_down_layer_time": [ + "4" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "62.5" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "filament_type": [ + "PLA" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA @Snapmaker U1.json new file mode 100644 index 00000000000..333d6259178 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA @Snapmaker U1.json @@ -0,0 +1,18 @@ +{ + "type": "filament", + "name": "Panchroma PLA @Snapmaker U1", + "renamed_from": "Panchroma PLA @U1", + "inherits": "Panchroma PLA @Snapmaker U1 base", + "from": "system", + "setting_id": "GFSPM001_00", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ], + "filament_wipe": [ + "0" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA @U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA @U1 base.json deleted file mode 100644 index e7006dd19f9..00000000000 --- a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA @U1 base.json +++ /dev/null @@ -1,44 +0,0 @@ -{ - "type": "filament", - "name": "Panchroma PLA @U1 base", - "inherits": "fdm_filament_pla", - "from": "system", - "filament_id": "GFPM001", - "instantiation": "false", - "filament_cost": [ - "19.99" - ], - "filament_density": [ - "1.32" - ], - "filament_flow_ratio": [ - "0.98" - ], - "filament_max_volumetric_speed": [ - "15" - ], - "filament_vendor": [ - "Polymaker" - ], - "filament_wipe": [ - "0" - ], - "nozzle_temperature": [ - "220" - ], - "nozzle_temperature_initial_layer": [ - "220" - ], - "nozzle_temperature_range_high": [ - "240" - ], - "nozzle_temperature_range_low": [ - "190" - ], - "slow_down_layer_time": [ - "4" - ], - "temperature_vitrification": [ - "58" - ] -} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA @U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA @U1.json deleted file mode 100644 index b440f583e54..00000000000 --- a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA @U1.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "filament", - "name": "Panchroma PLA @U1", - "inherits": "Panchroma PLA @U1 base", - "from": "system", - "setting_id": "GFSPM001_00", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)" - ], - "fan_max_speed": [ - "100" - ], - "fan_min_speed": [ - "100" - ], - "filament_flow_ratio": [ - "0.98" - ], - "filament_max_volumetric_speed": [ - "15" - ], - "slow_down_layer_time": [ - "4" - ] -} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Celestial @Snapmaker U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Celestial @Snapmaker U1 base.json new file mode 100644 index 00000000000..5b4b8725c25 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Celestial @Snapmaker U1 base.json @@ -0,0 +1,65 @@ +{ + "type": "filament", + "name": "Panchroma PLA Celestial @Snapmaker U1 base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "GFPM008", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "filament_cost": [ + "29.99" + ], + "filament_density": [ + "1.17" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "filament_vendor": [ + "Polymaker" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "overhang_fan_speed": [ + "75" + ], + "overhang_fan_threshold": [ + "50%" + ], + "slow_down_layer_time": [ + "4" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "61" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "filament_type": [ + "PLA" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Celestial @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Celestial @Snapmaker U1.json new file mode 100644 index 00000000000..203dd24b910 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Celestial @Snapmaker U1.json @@ -0,0 +1,15 @@ +{ + "type": "filament", + "name": "Panchroma PLA Celestial @Snapmaker U1", + "renamed_from": "Panchroma PLA Celestial @U1", + "inherits": "Panchroma PLA Celestial @Snapmaker U1 base", + "from": "system", + "setting_id": "GFSPM008_00", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Celestial @U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Celestial @U1 base.json deleted file mode 100644 index 3efe023bad2..00000000000 --- a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Celestial @U1 base.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "type": "filament", - "name": "Panchroma PLA Celestial @U1 base", - "inherits": "fdm_filament_pla", - "from": "system", - "filament_id": "GFPM008", - "instantiation": "false", - "filament_cost": [ - "29.99" - ], - "filament_density": [ - "1.17" - ], - "filament_flow_ratio": [ - "0.98" - ], - "filament_max_volumetric_speed": [ - "15" - ], - "filament_vendor": [ - "Polymaker" - ], - "nozzle_temperature": [ - "220" - ], - "nozzle_temperature_initial_layer": [ - "220" - ], - "nozzle_temperature_range_high": [ - "240" - ], - "nozzle_temperature_range_low": [ - "190" - ], - "slow_down_layer_time": [ - "4" - ], - "temperature_vitrification": [ - "61" - ] -} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Celestial @U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Celestial @U1.json deleted file mode 100644 index 6cd4aec9d05..00000000000 --- a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Celestial @U1.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "filament", - "name": "Panchroma PLA Celestial @U1", - "inherits": "Panchroma PLA Celestial @U1 base", - "from": "system", - "setting_id": "GFSPM008_00", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)" - ], - "fan_max_speed": [ - "100" - ], - "fan_min_speed": [ - "100" - ], - "filament_flow_ratio": [ - "0.98" - ], - "filament_max_volumetric_speed": [ - "15" - ], - "slow_down_layer_time": [ - "4" - ] -} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Galaxy @Snapmaker U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Galaxy @Snapmaker U1 base.json new file mode 100644 index 00000000000..6b14e2b6635 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Galaxy @Snapmaker U1 base.json @@ -0,0 +1,65 @@ +{ + "type": "filament", + "name": "Panchroma PLA Galaxy @Snapmaker U1 base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "GFPM007", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "filament_cost": [ + "29.99" + ], + "filament_density": [ + "1.17" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "filament_vendor": [ + "Polymaker" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "overhang_fan_speed": [ + "75" + ], + "overhang_fan_threshold": [ + "50%" + ], + "slow_down_layer_time": [ + "4" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "61" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "filament_type": [ + "PLA" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Galaxy @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Galaxy @Snapmaker U1.json new file mode 100644 index 00000000000..cd80f7c9406 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Galaxy @Snapmaker U1.json @@ -0,0 +1,15 @@ +{ + "type": "filament", + "name": "Panchroma PLA Galaxy @Snapmaker U1", + "renamed_from": "Panchroma PLA Galaxy @U1", + "inherits": "Panchroma PLA Galaxy @Snapmaker U1 base", + "from": "system", + "setting_id": "GFSPM007_00", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Galaxy @U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Galaxy @U1 base.json deleted file mode 100644 index a9f649d8c43..00000000000 --- a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Galaxy @U1 base.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "type": "filament", - "name": "Panchroma PLA Galaxy @U1 base", - "inherits": "fdm_filament_pla", - "from": "system", - "filament_id": "GFPM007", - "instantiation": "false", - "filament_cost": [ - "29.99" - ], - "filament_density": [ - "1.17" - ], - "filament_flow_ratio": [ - "0.98" - ], - "filament_max_volumetric_speed": [ - "15" - ], - "filament_vendor": [ - "Polymaker" - ], - "nozzle_temperature": [ - "220" - ], - "nozzle_temperature_initial_layer": [ - "220" - ], - "nozzle_temperature_range_high": [ - "240" - ], - "nozzle_temperature_range_low": [ - "190" - ], - "slow_down_layer_time": [ - "4" - ], - "temperature_vitrification": [ - "61" - ] -} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Galaxy @U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Galaxy @U1.json deleted file mode 100644 index 1fdd6548446..00000000000 --- a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Galaxy @U1.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "filament", - "name": "Panchroma PLA Galaxy @U1", - "inherits": "Panchroma PLA Galaxy @U1 base", - "from": "system", - "setting_id": "GFSPM007_00", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)" - ], - "fan_max_speed": [ - "100" - ], - "fan_min_speed": [ - "100" - ], - "filament_flow_ratio": [ - "0.98" - ], - "filament_max_volumetric_speed": [ - "15" - ], - "slow_down_layer_time": [ - "4" - ] -} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Glow @Snapmaker U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Glow @Snapmaker U1 base.json new file mode 100644 index 00000000000..9e9936c4a48 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Glow @Snapmaker U1 base.json @@ -0,0 +1,65 @@ +{ + "type": "filament", + "name": "Panchroma PLA Glow @Snapmaker U1 base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "GFPM010", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "filament_cost": [ + "29.99" + ], + "filament_density": [ + "1.17" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "filament_vendor": [ + "Polymaker" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "overhang_fan_speed": [ + "75" + ], + "overhang_fan_threshold": [ + "50%" + ], + "slow_down_layer_time": [ + "4" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "61" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "filament_type": [ + "PLA" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Glow @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Glow @Snapmaker U1.json new file mode 100644 index 00000000000..6b0e8a77360 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Glow @Snapmaker U1.json @@ -0,0 +1,15 @@ +{ + "type": "filament", + "name": "Panchroma PLA Glow @Snapmaker U1", + "renamed_from": "Panchroma PLA Glow @U1", + "inherits": "Panchroma PLA Glow @Snapmaker U1 base", + "from": "system", + "setting_id": "GFSPM010_00", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Glow @U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Glow @U1 base.json deleted file mode 100644 index bc4c05d4490..00000000000 --- a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Glow @U1 base.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "type": "filament", - "name": "Panchroma PLA Glow @U1 base", - "inherits": "fdm_filament_pla", - "from": "system", - "filament_id": "GFPM010", - "instantiation": "false", - "filament_cost": [ - "29.99" - ], - "filament_density": [ - "1.17" - ], - "filament_flow_ratio": [ - "0.98" - ], - "filament_max_volumetric_speed": [ - "15" - ], - "filament_vendor": [ - "Polymaker" - ], - "nozzle_temperature": [ - "220" - ], - "nozzle_temperature_initial_layer": [ - "220" - ], - "nozzle_temperature_range_high": [ - "240" - ], - "nozzle_temperature_range_low": [ - "190" - ], - "slow_down_layer_time": [ - "4" - ], - "temperature_vitrification": [ - "61" - ] -} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Glow @U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Glow @U1.json deleted file mode 100644 index 28ce6ffeaa2..00000000000 --- a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Glow @U1.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "filament", - "name": "Panchroma PLA Glow @U1", - "inherits": "Panchroma PLA Glow @U1 base", - "from": "system", - "setting_id": "GFSPM010_00", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)" - ], - "fan_max_speed": [ - "100" - ], - "fan_min_speed": [ - "100" - ], - "filament_flow_ratio": [ - "0.98" - ], - "filament_max_volumetric_speed": [ - "15" - ], - "slow_down_layer_time": [ - "4" - ] -} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Luminous @Snapmaker U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Luminous @Snapmaker U1 base.json new file mode 100644 index 00000000000..0e996eb298c --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Luminous @Snapmaker U1 base.json @@ -0,0 +1,65 @@ +{ + "type": "filament", + "name": "Panchroma PLA Luminous @Snapmaker U1 base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "GFPM011", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "filament_cost": [ + "29.99" + ], + "filament_density": [ + "1.17" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "filament_vendor": [ + "Polymaker" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "overhang_fan_speed": [ + "75" + ], + "overhang_fan_threshold": [ + "50%" + ], + "slow_down_layer_time": [ + "4" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "61" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "filament_type": [ + "PLA" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Luminous @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Luminous @Snapmaker U1.json new file mode 100644 index 00000000000..89bacd40d36 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Luminous @Snapmaker U1.json @@ -0,0 +1,15 @@ +{ + "type": "filament", + "name": "Panchroma PLA Luminous @Snapmaker U1", + "renamed_from": "Panchroma PLA Luminous @U1", + "inherits": "Panchroma PLA Luminous @Snapmaker U1 base", + "from": "system", + "setting_id": "GFSPM011_00", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Luminous @U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Luminous @U1 base.json deleted file mode 100644 index 0a2f2145140..00000000000 --- a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Luminous @U1 base.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "type": "filament", - "name": "Panchroma PLA Luminous @U1 base", - "inherits": "fdm_filament_pla", - "from": "system", - "filament_id": "GFPM011", - "instantiation": "false", - "filament_cost": [ - "29.99" - ], - "filament_density": [ - "1.17" - ], - "filament_flow_ratio": [ - "0.98" - ], - "filament_max_volumetric_speed": [ - "15" - ], - "filament_vendor": [ - "Polymaker" - ], - "nozzle_temperature": [ - "220" - ], - "nozzle_temperature_initial_layer": [ - "220" - ], - "nozzle_temperature_range_high": [ - "240" - ], - "nozzle_temperature_range_low": [ - "190" - ], - "slow_down_layer_time": [ - "4" - ], - "temperature_vitrification": [ - "61" - ] -} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Luminous @U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Luminous @U1.json deleted file mode 100644 index c1e57c3682e..00000000000 --- a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Luminous @U1.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "filament", - "name": "Panchroma PLA Luminous @U1", - "inherits": "Panchroma PLA Luminous @U1 base", - "from": "system", - "setting_id": "GFSPM011_00", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)" - ], - "fan_max_speed": [ - "100" - ], - "fan_min_speed": [ - "100" - ], - "filament_flow_ratio": [ - "0.98" - ], - "filament_max_volumetric_speed": [ - "15" - ], - "slow_down_layer_time": [ - "4" - ] -} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Marble @Snapmaker U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Marble @Snapmaker U1 base.json new file mode 100644 index 00000000000..83ae20eb10a --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Marble @Snapmaker U1 base.json @@ -0,0 +1,65 @@ +{ + "type": "filament", + "name": "Panchroma PLA Marble @Snapmaker U1 base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "GFPM003", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "filament_cost": [ + "21.99" + ], + "filament_density": [ + "1.37" + ], + "filament_max_volumetric_speed": [ + "20" + ], + "filament_vendor": [ + "Polymaker" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "overhang_fan_speed": [ + "75" + ], + "overhang_fan_threshold": [ + "50%" + ], + "slow_down_layer_time": [ + "4" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "61" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "filament_type": [ + "PLA" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Marble @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Marble @Snapmaker U1.json new file mode 100644 index 00000000000..fe034fabdc8 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Marble @Snapmaker U1.json @@ -0,0 +1,15 @@ +{ + "type": "filament", + "name": "Panchroma PLA Marble @Snapmaker U1", + "renamed_from": "Panchroma PLA Marble @U1", + "inherits": "Panchroma PLA Marble @Snapmaker U1 base", + "from": "system", + "setting_id": "GFSPM003_00", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Marble @U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Marble @U1 base.json deleted file mode 100644 index b241d93ba2e..00000000000 --- a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Marble @U1 base.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "type": "filament", - "name": "Panchroma PLA Marble @U1 base", - "inherits": "fdm_filament_pla", - "from": "system", - "filament_id": "GFPM003", - "instantiation": "false", - "filament_cost": [ - "21.99" - ], - "filament_density": [ - "1.31" - ], - "filament_flow_ratio": [ - "0.98" - ], - "filament_max_volumetric_speed": [ - "20" - ], - "filament_vendor": [ - "Polymaker" - ], - "nozzle_temperature": [ - "220" - ], - "nozzle_temperature_initial_layer": [ - "220" - ], - "nozzle_temperature_range_high": [ - "240" - ], - "nozzle_temperature_range_low": [ - "190" - ], - "slow_down_layer_time": [ - "4" - ], - "temperature_vitrification": [ - "61" - ] -} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Marble @U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Marble @U1.json deleted file mode 100644 index 3d263cb16ef..00000000000 --- a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Marble @U1.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "type": "filament", - "name": "Panchroma PLA Marble @U1", - "inherits": "Panchroma PLA Marble @U1 base", - "from": "system", - "setting_id": "GFSPM003_00", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)" - ], - "fan_max_speed": [ - "100" - ], - "fan_min_speed": [ - "100" - ], - "filament_max_volumetric_speed": [ - "20" - ], - "slow_down_layer_time": [ - "4" - ] -} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Matte @Snapmaker U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Matte @Snapmaker U1 base.json new file mode 100644 index 00000000000..6d178bca814 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Matte @Snapmaker U1 base.json @@ -0,0 +1,65 @@ +{ + "type": "filament", + "name": "Panchroma PLA Matte @Snapmaker U1 base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "GFPM002", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "filament_cost": [ + "21.99" + ], + "filament_density": [ + "1.37" + ], + "filament_max_volumetric_speed": [ + "20" + ], + "filament_vendor": [ + "Polymaker" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "overhang_fan_speed": [ + "75" + ], + "overhang_fan_threshold": [ + "50%" + ], + "slow_down_layer_time": [ + "4" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "61" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "filament_type": [ + "PLA" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Matte @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Matte @Snapmaker U1.json new file mode 100644 index 00000000000..412825477f1 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Matte @Snapmaker U1.json @@ -0,0 +1,15 @@ +{ + "type": "filament", + "name": "Panchroma PLA Matte @Snapmaker U1", + "renamed_from": "Panchroma PLA Matte @U1", + "inherits": "Panchroma PLA Matte @Snapmaker U1 base", + "from": "system", + "setting_id": "GFSPM002_00", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Matte @U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Matte @U1 base.json deleted file mode 100644 index f608c126a92..00000000000 --- a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Matte @U1 base.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "type": "filament", - "name": "Panchroma PLA Matte @U1 base", - "inherits": "fdm_filament_pla", - "from": "system", - "filament_id": "GFPM002", - "instantiation": "false", - "filament_cost": [ - "20.99" - ], - "filament_density": [ - "1.31" - ], - "filament_flow_ratio": [ - "0.98" - ], - "filament_max_volumetric_speed": [ - "20" - ], - "filament_vendor": [ - "Polymaker" - ], - "nozzle_temperature": [ - "220" - ], - "nozzle_temperature_initial_layer": [ - "220" - ], - "nozzle_temperature_range_high": [ - "240" - ], - "nozzle_temperature_range_low": [ - "190" - ], - "slow_down_layer_time": [ - "4" - ], - "temperature_vitrification": [ - "61" - ] -} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Matte @U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Matte @U1.json deleted file mode 100644 index 89de736551e..00000000000 --- a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Matte @U1.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "type": "filament", - "name": "Panchroma PLA Matte @U1", - "inherits": "Panchroma PLA Matte @U1 base", - "from": "system", - "setting_id": "GFSPM002_00", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)" - ], - "fan_max_speed": [ - "100" - ], - "fan_min_speed": [ - "100" - ], - "filament_max_volumetric_speed": [ - "20" - ], - "slow_down_layer_time": [ - "4" - ] -} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Metallic @Snapmaker U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Metallic @Snapmaker U1 base.json new file mode 100644 index 00000000000..28b29848320 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Metallic @Snapmaker U1 base.json @@ -0,0 +1,65 @@ +{ + "type": "filament", + "name": "Panchroma PLA Metallic @Snapmaker U1 base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "GFPM012", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "filament_cost": [ + "29.99" + ], + "filament_density": [ + "1.17" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "filament_vendor": [ + "Polymaker" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "overhang_fan_speed": [ + "75" + ], + "overhang_fan_threshold": [ + "50%" + ], + "slow_down_layer_time": [ + "4" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "61" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "filament_type": [ + "PLA" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Metallic @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Metallic @Snapmaker U1.json new file mode 100644 index 00000000000..12dc18fae0d --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Metallic @Snapmaker U1.json @@ -0,0 +1,15 @@ +{ + "type": "filament", + "name": "Panchroma PLA Metallic @Snapmaker U1", + "renamed_from": "Panchroma PLA Metallic @U1", + "inherits": "Panchroma PLA Metallic @Snapmaker U1 base", + "from": "system", + "setting_id": "GFSPM012_00", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Metallic @U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Metallic @U1 base.json deleted file mode 100644 index 33d18d4905b..00000000000 --- a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Metallic @U1 base.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "type": "filament", - "name": "Panchroma PLA Metallic @U1 base", - "inherits": "fdm_filament_pla", - "from": "system", - "filament_id": "GFPM012", - "instantiation": "false", - "filament_cost": [ - "29.99" - ], - "filament_density": [ - "1.17" - ], - "filament_flow_ratio": [ - "0.98" - ], - "filament_max_volumetric_speed": [ - "15" - ], - "filament_vendor": [ - "Polymaker" - ], - "nozzle_temperature": [ - "220" - ], - "nozzle_temperature_initial_layer": [ - "220" - ], - "nozzle_temperature_range_high": [ - "240" - ], - "nozzle_temperature_range_low": [ - "190" - ], - "slow_down_layer_time": [ - "4" - ], - "temperature_vitrification": [ - "61" - ] -} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Metallic @U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Metallic @U1.json deleted file mode 100644 index 3ac6a4fa38d..00000000000 --- a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Metallic @U1.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "filament", - "name": "Panchroma PLA Metallic @U1", - "inherits": "Panchroma PLA Metallic @U1 base", - "from": "system", - "setting_id": "GFSPM012_00", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)" - ], - "fan_max_speed": [ - "100" - ], - "fan_min_speed": [ - "100" - ], - "filament_flow_ratio": [ - "0.98" - ], - "filament_max_volumetric_speed": [ - "15" - ], - "slow_down_layer_time": [ - "4" - ] -} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Neon @Snapmaker U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Neon @Snapmaker U1 base.json new file mode 100644 index 00000000000..eedf3117a8c --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Neon @Snapmaker U1 base.json @@ -0,0 +1,65 @@ +{ + "type": "filament", + "name": "Panchroma PLA Neon @Snapmaker U1 base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "GFPM013", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "filament_cost": [ + "29.99" + ], + "filament_density": [ + "1.17" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "filament_vendor": [ + "Polymaker" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "overhang_fan_speed": [ + "75" + ], + "overhang_fan_threshold": [ + "50%" + ], + "slow_down_layer_time": [ + "4" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "61" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "filament_type": [ + "PLA" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Neon @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Neon @Snapmaker U1.json new file mode 100644 index 00000000000..63c1e4f4109 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Neon @Snapmaker U1.json @@ -0,0 +1,15 @@ +{ + "type": "filament", + "name": "Panchroma PLA Neon @Snapmaker U1", + "renamed_from": "Panchroma PLA Neon @U1", + "inherits": "Panchroma PLA Neon @Snapmaker U1 base", + "from": "system", + "setting_id": "GFSPM013_00", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Neon @U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Neon @U1 base.json deleted file mode 100644 index b982f2f8624..00000000000 --- a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Neon @U1 base.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "type": "filament", - "name": "Panchroma PLA Neon @U1 base", - "inherits": "fdm_filament_pla", - "from": "system", - "filament_id": "GFPM013", - "instantiation": "false", - "filament_cost": [ - "24.99" - ], - "filament_density": [ - "1.17" - ], - "filament_flow_ratio": [ - "0.98" - ], - "filament_max_volumetric_speed": [ - "15" - ], - "filament_vendor": [ - "Polymaker" - ], - "nozzle_temperature": [ - "220" - ], - "nozzle_temperature_initial_layer": [ - "220" - ], - "nozzle_temperature_range_high": [ - "240" - ], - "nozzle_temperature_range_low": [ - "190" - ], - "slow_down_layer_time": [ - "4" - ], - "temperature_vitrification": [ - "61" - ] -} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Neon @U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Neon @U1.json deleted file mode 100644 index dcbc24ddd51..00000000000 --- a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Neon @U1.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "filament", - "name": "Panchroma PLA Neon @U1", - "inherits": "Panchroma PLA Neon @U1 base", - "from": "system", - "setting_id": "GFSPM013_00", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)" - ], - "fan_max_speed": [ - "100" - ], - "fan_min_speed": [ - "100" - ], - "filament_flow_ratio": [ - "0.98" - ], - "filament_max_volumetric_speed": [ - "15" - ], - "slow_down_layer_time": [ - "4" - ] -} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Satin @Snapmaker U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Satin @Snapmaker U1 base.json new file mode 100644 index 00000000000..df011d8dd32 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Satin @Snapmaker U1 base.json @@ -0,0 +1,65 @@ +{ + "type": "filament", + "name": "Panchroma PLA Satin @Snapmaker U1 base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "GFPM005", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "filament_cost": [ + "20.99" + ], + "filament_max_volumetric_speed": [ + "20" + ], + "filament_vendor": [ + "Polymaker" + ], + "nozzle_temperature": [ + "230" + ], + "nozzle_temperature_initial_layer": [ + "230" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "overhang_fan_speed": [ + "75" + ], + "overhang_fan_threshold": [ + "50%" + ], + "slow_down_layer_time": [ + "4" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "59" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "filament_type": [ + "PLA" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Satin @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Satin @Snapmaker U1.json new file mode 100644 index 00000000000..4fc8a85ce54 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Satin @Snapmaker U1.json @@ -0,0 +1,15 @@ +{ + "type": "filament", + "name": "Panchroma PLA Satin @Snapmaker U1", + "renamed_from": "Panchroma PLA Satin @U1", + "inherits": "Panchroma PLA Satin @Snapmaker U1 base", + "from": "system", + "setting_id": "GFSPM005_00", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Satin @U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Satin @U1 base.json deleted file mode 100644 index 059527d14a4..00000000000 --- a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Satin @U1 base.json +++ /dev/null @@ -1,42 +0,0 @@ -{ - "type": "filament", - "name": "Panchroma PLA Satin @U1 base", - "renamed_from": "Panchroma PLA Stain @U1 base", - "inherits": "fdm_filament_pla", - "from": "system", - "filament_id": "GFPM005", - "instantiation": "false", - "filament_cost": [ - "20.99" - ], - "filament_density": [ - "1.24" - ], - "filament_flow_ratio": [ - "0.98" - ], - "filament_max_volumetric_speed": [ - "20" - ], - "filament_vendor": [ - "Polymaker" - ], - "nozzle_temperature": [ - "230" - ], - "nozzle_temperature_initial_layer": [ - "230" - ], - "nozzle_temperature_range_high": [ - "240" - ], - "nozzle_temperature_range_low": [ - "190" - ], - "slow_down_layer_time": [ - "4" - ], - "temperature_vitrification": [ - "59" - ] -} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Satin @U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Satin @U1.json deleted file mode 100644 index b2a79e13903..00000000000 --- a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Satin @U1.json +++ /dev/null @@ -1,27 +0,0 @@ -{ - "type": "filament", - "name": "Panchroma PLA Satin @U1", - "renamed_from": "Panchroma PLA Stain @U1", - "inherits": "Panchroma PLA Satin @U1 base", - "from": "system", - "setting_id": "GFSPM005_00", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)" - ], - "fan_max_speed": [ - "100" - ], - "fan_min_speed": [ - "100" - ], - "filament_flow_ratio": [ - "0.98" - ], - "filament_max_volumetric_speed": [ - "20" - ], - "slow_down_layer_time": [ - "4" - ] -} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Silk @Snapmaker U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Silk @Snapmaker U1 base.json new file mode 100644 index 00000000000..daa8a6ffca7 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Silk @Snapmaker U1 base.json @@ -0,0 +1,68 @@ +{ + "type": "filament", + "name": "Panchroma PLA Silk @Snapmaker U1 base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "GFPM004", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "filament_cost": [ + "24.99" + ], + "filament_density": [ + "1.34" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "filament_vendor": [ + "Polymaker" + ], + "nozzle_temperature": [ + "230" + ], + "nozzle_temperature_initial_layer": [ + "230" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "overhang_fan_speed": [ + "75" + ], + "overhang_fan_threshold": [ + "50%" + ], + "slow_down_layer_time": [ + "4" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "58.2" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "filament_type": [ + "PLA" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Silk @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Silk @Snapmaker U1.json new file mode 100644 index 00000000000..6a6ed14fa26 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Silk @Snapmaker U1.json @@ -0,0 +1,15 @@ +{ + "type": "filament", + "name": "Panchroma PLA Silk @Snapmaker U1", + "renamed_from": "Panchroma PLA Silk @U1", + "inherits": "Panchroma PLA Silk @Snapmaker U1 base", + "from": "system", + "setting_id": "GFSPM004_00", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Silk @U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Silk @U1 base.json deleted file mode 100644 index d1d74e9a7df..00000000000 --- a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Silk @U1 base.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "type": "filament", - "name": "Panchroma PLA Silk @U1 base", - "inherits": "fdm_filament_pla", - "from": "system", - "filament_id": "GFPM004", - "instantiation": "false", - "filament_cost": [ - "24.99" - ], - "filament_density": [ - "1.31" - ], - "filament_flow_ratio": [ - "0.98" - ], - "filament_max_volumetric_speed": [ - "12" - ], - "filament_vendor": [ - "Polymaker" - ], - "nozzle_temperature": [ - "230" - ], - "nozzle_temperature_initial_layer": [ - "230" - ], - "nozzle_temperature_range_high": [ - "240" - ], - "nozzle_temperature_range_low": [ - "190" - ], - "slow_down_layer_time": [ - "4" - ], - "temperature_vitrification": [ - "58" - ] -} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Silk @U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Silk @U1.json deleted file mode 100644 index f9a4f18139c..00000000000 --- a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Silk @U1.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "filament", - "name": "Panchroma PLA Silk @U1", - "inherits": "Panchroma PLA Silk @U1 base", - "from": "system", - "setting_id": "GFSPM004_00", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)" - ], - "fan_max_speed": [ - "100" - ], - "fan_min_speed": [ - "100" - ], - "filament_flow_ratio": [ - "0.98" - ], - "filament_max_volumetric_speed": [ - "12" - ], - "slow_down_layer_time": [ - "4" - ] -} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Starlight @Snapmaker U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Starlight @Snapmaker U1 base.json new file mode 100644 index 00000000000..c2841b45724 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Starlight @Snapmaker U1 base.json @@ -0,0 +1,65 @@ +{ + "type": "filament", + "name": "Panchroma PLA Starlight @Snapmaker U1 base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "GFPM009", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "filament_cost": [ + "29.99" + ], + "filament_density": [ + "1.17" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "filament_vendor": [ + "Polymaker" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "overhang_fan_speed": [ + "75" + ], + "overhang_fan_threshold": [ + "50%" + ], + "slow_down_layer_time": [ + "4" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "61" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "filament_type": [ + "PLA" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Starlight @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Starlight @Snapmaker U1.json new file mode 100644 index 00000000000..7c2e1ab3c6c --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Starlight @Snapmaker U1.json @@ -0,0 +1,15 @@ +{ + "type": "filament", + "name": "Panchroma PLA Starlight @Snapmaker U1", + "renamed_from": "Panchroma PLA Starlight @U1", + "inherits": "Panchroma PLA Starlight @Snapmaker U1 base", + "from": "system", + "setting_id": "GFSPM009_00", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Starlight @U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Starlight @U1 base.json deleted file mode 100644 index 4eb9174b3fc..00000000000 --- a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Starlight @U1 base.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "type": "filament", - "name": "Panchroma PLA Starlight @U1 base", - "inherits": "fdm_filament_pla", - "from": "system", - "filament_id": "GFPM009", - "instantiation": "false", - "filament_cost": [ - "29.99" - ], - "filament_density": [ - "1.17" - ], - "filament_flow_ratio": [ - "0.98" - ], - "filament_max_volumetric_speed": [ - "15" - ], - "filament_vendor": [ - "Polymaker" - ], - "nozzle_temperature": [ - "220" - ], - "nozzle_temperature_initial_layer": [ - "220" - ], - "nozzle_temperature_range_high": [ - "240" - ], - "nozzle_temperature_range_low": [ - "190" - ], - "slow_down_layer_time": [ - "4" - ], - "temperature_vitrification": [ - "61" - ] -} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Starlight @U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Starlight @U1.json deleted file mode 100644 index 3dc0084fa14..00000000000 --- a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Starlight @U1.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "filament", - "name": "Panchroma PLA Starlight @U1", - "inherits": "Panchroma PLA Starlight @U1 base", - "from": "system", - "setting_id": "GFSPM009_00", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)" - ], - "fan_max_speed": [ - "100" - ], - "fan_min_speed": [ - "100" - ], - "filament_flow_ratio": [ - "0.98" - ], - "filament_max_volumetric_speed": [ - "15" - ], - "slow_down_layer_time": [ - "4" - ] -} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Temp Shift @U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Temp Shift @Snapmaker U1 base.json similarity index 91% rename from resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Temp Shift @U1 base.json rename to resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Temp Shift @Snapmaker U1 base.json index a486646d797..f0ccd46a655 100644 --- a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Temp Shift @U1 base.json +++ b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Temp Shift @Snapmaker U1 base.json @@ -1,6 +1,6 @@ { "type": "filament", - "name": "Panchroma PLA Temp Shift @U1 base", + "name": "Panchroma PLA Temp Shift @Snapmaker U1 base", "inherits": "fdm_filament_pla", "from": "system", "filament_id": "GFPM015", diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Temp Shift @U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Temp Shift @Snapmaker U1.json similarity index 68% rename from resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Temp Shift @U1.json rename to resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Temp Shift @Snapmaker U1.json index cb5f9fe5f05..cbe80962742 100644 --- a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Temp Shift @U1.json +++ b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Temp Shift @Snapmaker U1.json @@ -1,7 +1,8 @@ { "type": "filament", - "name": "Panchroma PLA Temp Shift @U1", - "inherits": "Panchroma PLA Temp Shift @U1 base", + "name": "Panchroma PLA Temp Shift @Snapmaker U1", + "renamed_from": "Panchroma PLA Temp Shift @U1", + "inherits": "Panchroma PLA Temp Shift @Snapmaker U1 base", "from": "system", "setting_id": "GFSPM015_00", "instantiation": "true", diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Translucent @Snapmaker U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Translucent @Snapmaker U1 base.json new file mode 100644 index 00000000000..81d275cfaf1 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Translucent @Snapmaker U1 base.json @@ -0,0 +1,65 @@ +{ + "type": "filament", + "name": "Panchroma PLA Translucent @Snapmaker U1 base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "GFPM006", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "filament_cost": [ + "29.99" + ], + "filament_density": [ + "1.17" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "filament_vendor": [ + "Polymaker" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "overhang_fan_speed": [ + "75" + ], + "overhang_fan_threshold": [ + "50%" + ], + "slow_down_layer_time": [ + "4" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "61" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "filament_type": [ + "PLA" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Translucent @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Translucent @Snapmaker U1.json new file mode 100644 index 00000000000..fed2fcd2bd5 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Translucent @Snapmaker U1.json @@ -0,0 +1,15 @@ +{ + "type": "filament", + "name": "Panchroma PLA Translucent @Snapmaker U1", + "renamed_from": "Panchroma PLA Translucent @U1", + "inherits": "Panchroma PLA Translucent @Snapmaker U1 base", + "from": "system", + "setting_id": "GFSPM006_00", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Translucent @U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Translucent @U1 base.json deleted file mode 100644 index 052424ed480..00000000000 --- a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Translucent @U1 base.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "type": "filament", - "name": "Panchroma PLA Translucent @U1 base", - "inherits": "fdm_filament_pla", - "from": "system", - "filament_id": "GFPM006", - "instantiation": "false", - "filament_cost": [ - "24.99" - ], - "filament_density": [ - "1.17" - ], - "filament_flow_ratio": [ - "0.98" - ], - "filament_max_volumetric_speed": [ - "15" - ], - "filament_vendor": [ - "Polymaker" - ], - "nozzle_temperature": [ - "220" - ], - "nozzle_temperature_initial_layer": [ - "220" - ], - "nozzle_temperature_range_high": [ - "240" - ], - "nozzle_temperature_range_low": [ - "190" - ], - "slow_down_layer_time": [ - "4" - ], - "temperature_vitrification": [ - "61" - ] -} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Translucent @U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Translucent @U1.json deleted file mode 100644 index 31af9d2bb8b..00000000000 --- a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA Translucent @U1.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "filament", - "name": "Panchroma PLA Translucent @U1", - "inherits": "Panchroma PLA Translucent @U1 base", - "from": "system", - "setting_id": "GFSPM006_00", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)" - ], - "fan_max_speed": [ - "100" - ], - "fan_min_speed": [ - "100" - ], - "filament_flow_ratio": [ - "0.98" - ], - "filament_max_volumetric_speed": [ - "15" - ], - "slow_down_layer_time": [ - "4" - ] -} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA UV Shift @Snapmaker U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA UV Shift @Snapmaker U1 base.json new file mode 100644 index 00000000000..7ac70319b2e --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA UV Shift @Snapmaker U1 base.json @@ -0,0 +1,65 @@ +{ + "type": "filament", + "name": "Panchroma PLA UV Shift @Snapmaker U1 base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "GFPM014", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "filament_cost": [ + "29.99" + ], + "filament_density": [ + "1.17" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "filament_vendor": [ + "Polymaker" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "overhang_fan_speed": [ + "75" + ], + "overhang_fan_threshold": [ + "50%" + ], + "slow_down_layer_time": [ + "4" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "61" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "filament_type": [ + "PLA" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA UV Shift @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA UV Shift @Snapmaker U1.json new file mode 100644 index 00000000000..df6a3760771 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA UV Shift @Snapmaker U1.json @@ -0,0 +1,15 @@ +{ + "type": "filament", + "name": "Panchroma PLA UV Shift @Snapmaker U1", + "renamed_from": "Panchroma PLA UV Shift @U1", + "inherits": "Panchroma PLA UV Shift @Snapmaker U1 base", + "from": "system", + "setting_id": "GFSPM014_00", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA UV Shift @U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA UV Shift @U1 base.json deleted file mode 100644 index b2dd71f33eb..00000000000 --- a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA UV Shift @U1 base.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "type": "filament", - "name": "Panchroma PLA UV Shift @U1 base", - "inherits": "fdm_filament_pla", - "from": "system", - "filament_id": "GFPM014", - "instantiation": "false", - "filament_cost": [ - "29.99" - ], - "filament_density": [ - "1.17" - ], - "filament_flow_ratio": [ - "0.98" - ], - "filament_max_volumetric_speed": [ - "15" - ], - "filament_vendor": [ - "Polymaker" - ], - "nozzle_temperature": [ - "220" - ], - "nozzle_temperature_initial_layer": [ - "220" - ], - "nozzle_temperature_range_high": [ - "240" - ], - "nozzle_temperature_range_low": [ - "190" - ], - "slow_down_layer_time": [ - "4" - ], - "temperature_vitrification": [ - "61" - ] -} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA UV Shift @U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA UV Shift @U1.json deleted file mode 100644 index 92b67abe040..00000000000 --- a/resources/profiles/Snapmaker/filament/Polymaker/Panchroma PLA UV Shift @U1.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "filament", - "name": "Panchroma PLA UV Shift @U1", - "inherits": "Panchroma PLA UV Shift @U1 base", - "from": "system", - "setting_id": "GFSPM014_00", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)" - ], - "fan_max_speed": [ - "100" - ], - "fan_min_speed": [ - "100" - ], - "filament_flow_ratio": [ - "0.98" - ], - "filament_max_volumetric_speed": [ - "15" - ], - "slow_down_layer_time": [ - "4" - ] -} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite CosPLA @Snapmaker U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite CosPLA @Snapmaker U1 base.json new file mode 100644 index 00000000000..228df29a920 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite CosPLA @Snapmaker U1 base.json @@ -0,0 +1,65 @@ +{ + "type": "filament", + "name": "PolyLite CosPLA @Snapmaker U1 base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "GFL62", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "filament_cost": [ + "20.99" + ], + "filament_max_volumetric_speed": [ + "20" + ], + "filament_vendor": [ + "Polymaker" + ], + "nozzle_temperature": [ + "230" + ], + "nozzle_temperature_initial_layer": [ + "230" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "overhang_fan_speed": [ + "75" + ], + "overhang_fan_threshold": [ + "50%" + ], + "slow_down_layer_time": [ + "4" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "59" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "filament_type": [ + "PLA" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite CosPLA @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite CosPLA @Snapmaker U1.json new file mode 100644 index 00000000000..4f3d7bb3981 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite CosPLA @Snapmaker U1.json @@ -0,0 +1,14 @@ +{ + "type": "filament", + "name": "PolyLite CosPLA @Snapmaker U1", + "inherits": "PolyLite CosPLA @Snapmaker U1 base", + "from": "system", + "setting_id": "GFSL62_00", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PETG @Snapmaker U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PETG @Snapmaker U1 base.json new file mode 100644 index 00000000000..e8fdd834fe3 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PETG @Snapmaker U1 base.json @@ -0,0 +1,86 @@ +{ + "type": "filament", + "name": "PolyLite PETG @Snapmaker U1 base", + "inherits": "fdm_filament_petg", + "from": "system", + "filament_id": "GFG60", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "close_fan_the_first_x_layers": [ + "3" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "fan_cooling_layer_time": [ + "20" + ], + "fan_max_speed": [ + "40" + ], + "fan_min_speed": [ + "0" + ], + "filament_cost": [ + "0" + ], + "filament_density": [ + "1.25" + ], + "filament_flow_ratio": [ + "0.92" + ], + "filament_max_volumetric_speed": [ + "7.5" + ], + "filament_vendor": [ + "Polymaker" + ], + "hot_plate_temp": [ + "80" + ], + "hot_plate_temp_initial_layer": [ + "80" + ], + "nozzle_temperature": [ + "260" + ], + "nozzle_temperature_initial_layer": [ + "260" + ], + "nozzle_temperature_range_high": [ + "260" + ], + "nozzle_temperature_range_low": [ + "230" + ], + "overhang_fan_speed": [ + "100" + ], + "overhang_fan_threshold": [ + "95%" + ], + "slow_down_layer_time": [ + "6" + ], + "slow_down_min_speed": [ + "10" + ], + "temperature_vitrification": [ + "81" + ], + "textured_plate_temp": [ + "80" + ], + "textured_plate_temp_initial_layer": [ + "80" + ], + "filament_type": [ + "PETG" + ] +} 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 c904f01da0f..eda129418d5 100644 --- a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PETG @Snapmaker U1.json +++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PETG @Snapmaker U1.json @@ -1,117 +1,24 @@ { "type": "filament", "name": "PolyLite PETG @Snapmaker U1", + "inherits": "PolyLite PETG @Snapmaker U1 base", "from": "system", + "setting_id": "GFSG60_00", "instantiation": "true", - "cool_plate_temp": [ - "60" - ], - "eng_plate_temp": [ - "0" - ], - "hot_plate_temp": [ - "80" - ], - "textured_plate_temp": [ - "80" - ], - "cool_plate_temp_initial_layer": [ - "60" - ], - "eng_plate_temp_initial_layer": [ - "0" - ], - "hot_plate_temp_initial_layer": [ - "80" - ], - "textured_plate_temp_initial_layer": [ - "80" - ], - "overhang_fan_threshold": [ - "95%" - ], - "overhang_fan_speed": [ - "100" - ], - "slow_down_for_layer_cooling": [ - "1" - ], - "close_fan_the_first_x_layers": [ - "3" - ], - "filament_end_gcode": [ - "; filament end gcode \n" - ], - "filament_flow_ratio": [ - "0.92" - ], - "fan_cooling_layer_time": [ - "20" - ], - "filament_cost": [ - "0" - ], - "filament_diameter": [ - "1.75" - ], - "filament_max_volumetric_speed": [ - "7.5" + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" ], "filament_minimal_purge_on_wipe_tower": [ "15" ], - "filament_vendor": [ - "Polymaker" - ], - "bed_type": [ - "Cool Plate" - ], - "nozzle_temperature_initial_layer": [ - "260" - ], - "full_fan_speed_layer": [ - "0" - ], - "fan_max_speed": [ - "40" - ], - "fan_min_speed": [ - "0" - ], - "slow_down_min_speed": [ - "10" - ], - "slow_down_layer_time": [ - "6" - ], - "filament_start_gcode": [ - "; Filament gcode\n" - ], - "nozzle_temperature": [ - "260" - ], - "temperature_vitrification": [ - "81" - ], - "filament_id": "PMPE04", - "nozzle_temperature_range_high": [ - "260" - ], - "nozzle_temperature_range_low": [ - "230" - ], "supertack_plate_temp": [ "70" ], "supertack_plate_temp_initial_layer": [ "70" ], - "setting_id": "PMPE04_U1", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)" - ], + "pressure_advance": [ "0.05" - ], - "inherits": "PolyLite PETG @Base" + ] } diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PETG Translucent @Snapmaker U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PETG Translucent @Snapmaker U1 base.json new file mode 100644 index 00000000000..607649e569a --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PETG Translucent @Snapmaker U1 base.json @@ -0,0 +1,86 @@ +{ + "type": "filament", + "name": "PolyLite PETG Translucent @Snapmaker U1 base", + "inherits": "fdm_filament_petg", + "from": "system", + "filament_id": "GFL74", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "close_fan_the_first_x_layers": [ + "3" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "fan_cooling_layer_time": [ + "20" + ], + "fan_max_speed": [ + "40" + ], + "fan_min_speed": [ + "0" + ], + "filament_cost": [ + "0" + ], + "filament_density": [ + "1.25" + ], + "filament_flow_ratio": [ + "0.92" + ], + "filament_max_volumetric_speed": [ + "7.5" + ], + "filament_vendor": [ + "Polymaker" + ], + "hot_plate_temp": [ + "80" + ], + "hot_plate_temp_initial_layer": [ + "80" + ], + "nozzle_temperature": [ + "260" + ], + "nozzle_temperature_initial_layer": [ + "260" + ], + "nozzle_temperature_range_high": [ + "260" + ], + "nozzle_temperature_range_low": [ + "230" + ], + "overhang_fan_speed": [ + "100" + ], + "overhang_fan_threshold": [ + "95%" + ], + "slow_down_layer_time": [ + "6" + ], + "slow_down_min_speed": [ + "10" + ], + "temperature_vitrification": [ + "81" + ], + "textured_plate_temp": [ + "80" + ], + "textured_plate_temp_initial_layer": [ + "80" + ], + "filament_type": [ + "PETG" + ] +} 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 new file mode 100644 index 00000000000..9007bf75074 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PETG Translucent @Snapmaker U1.json @@ -0,0 +1,24 @@ +{ + "type": "filament", + "name": "PolyLite PETG Translucent @Snapmaker U1", + "inherits": "PolyLite PETG Translucent @Snapmaker U1 base", + "from": "system", + "setting_id": "GFSL74_00", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ], + "supertack_plate_temp": [ + "70" + ], + "supertack_plate_temp_initial_layer": [ + "70" + ], + + "pressure_advance": [ + "0.05" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA @Snapmaker U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA @Snapmaker U1 base.json new file mode 100644 index 00000000000..8f3b508aec1 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA @Snapmaker U1 base.json @@ -0,0 +1,65 @@ +{ + "type": "filament", + "name": "PolyLite PLA @Snapmaker U1 base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "GFL00", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "filament_cost": [ + "29.99" + ], + "filament_density": [ + "1.17" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "filament_vendor": [ + "Polymaker" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "overhang_fan_speed": [ + "75" + ], + "overhang_fan_threshold": [ + "50%" + ], + "slow_down_layer_time": [ + "4" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "61" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "filament_type": [ + "PLA" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA @Snapmaker U1.json new file mode 100644 index 00000000000..62eb0798ccc --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA @Snapmaker U1.json @@ -0,0 +1,15 @@ +{ + "type": "filament", + "name": "PolyLite PLA @Snapmaker U1", + "renamed_from": "PolyLite PLA @U1", + "inherits": "PolyLite PLA @Snapmaker U1 base", + "from": "system", + "setting_id": "6486836500", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA @U1.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA @U1.json deleted file mode 100644 index d361109ae6d..00000000000 --- a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA @U1.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "type": "filament", - "from": "system", - "instantiation": "true", - "name": "PolyLite PLA @U1", - "setting_id": "6486836500", - "inherits": "PolyLite PLA @U1 base", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)" - ] -} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Galaxy @Snapmaker U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Galaxy @Snapmaker U1 base.json new file mode 100644 index 00000000000..fc925c8faad --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Galaxy @Snapmaker U1 base.json @@ -0,0 +1,65 @@ +{ + "type": "filament", + "name": "PolyLite PLA Galaxy @Snapmaker U1 base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "GFL63", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "filament_cost": [ + "29.99" + ], + "filament_density": [ + "1.17" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "filament_vendor": [ + "Polymaker" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "overhang_fan_speed": [ + "75" + ], + "overhang_fan_threshold": [ + "50%" + ], + "slow_down_layer_time": [ + "4" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "61" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "filament_type": [ + "PLA" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Galaxy @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Galaxy @Snapmaker U1.json new file mode 100644 index 00000000000..adc7cb12d3d --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Galaxy @Snapmaker U1.json @@ -0,0 +1,14 @@ +{ + "type": "filament", + "name": "PolyLite PLA Galaxy @Snapmaker U1", + "inherits": "PolyLite PLA Galaxy @Snapmaker U1 base", + "from": "system", + "setting_id": "GFSL63_00", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Glow @Snapmaker U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Glow @Snapmaker U1 base.json new file mode 100644 index 00000000000..cc74173c068 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Glow @Snapmaker U1 base.json @@ -0,0 +1,65 @@ +{ + "type": "filament", + "name": "PolyLite PLA Glow @Snapmaker U1 base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "GFL64", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "filament_cost": [ + "29.99" + ], + "filament_density": [ + "1.17" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "filament_vendor": [ + "Polymaker" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "overhang_fan_speed": [ + "75" + ], + "overhang_fan_threshold": [ + "50%" + ], + "slow_down_layer_time": [ + "4" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "61" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "filament_type": [ + "PLA" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Glow @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Glow @Snapmaker U1.json new file mode 100644 index 00000000000..7bb103ab7ef --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Glow @Snapmaker U1.json @@ -0,0 +1,14 @@ +{ + "type": "filament", + "name": "PolyLite PLA Glow @Snapmaker U1", + "inherits": "PolyLite PLA Glow @Snapmaker U1 base", + "from": "system", + "setting_id": "GFSL64_00", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Luminous @Snapmaker U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Luminous @Snapmaker U1 base.json new file mode 100644 index 00000000000..a472e0bec05 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Luminous @Snapmaker U1 base.json @@ -0,0 +1,65 @@ +{ + "type": "filament", + "name": "PolyLite PLA Luminous @Snapmaker U1 base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "GFL65", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "filament_cost": [ + "29.99" + ], + "filament_density": [ + "1.17" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "filament_vendor": [ + "Polymaker" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "overhang_fan_speed": [ + "75" + ], + "overhang_fan_threshold": [ + "50%" + ], + "slow_down_layer_time": [ + "4" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "61" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "filament_type": [ + "PLA" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Luminous @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Luminous @Snapmaker U1.json new file mode 100644 index 00000000000..e9642afc2df --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Luminous @Snapmaker U1.json @@ -0,0 +1,14 @@ +{ + "type": "filament", + "name": "PolyLite PLA Luminous @Snapmaker U1", + "inherits": "PolyLite PLA Luminous @Snapmaker U1 base", + "from": "system", + "setting_id": "GFSL65_00", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Neon @Snapmaker U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Neon @Snapmaker U1 base.json new file mode 100644 index 00000000000..5638bec3ffc --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Neon @Snapmaker U1 base.json @@ -0,0 +1,65 @@ +{ + "type": "filament", + "name": "PolyLite PLA Neon @Snapmaker U1 base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "GFL66", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "filament_cost": [ + "29.99" + ], + "filament_density": [ + "1.17" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "filament_vendor": [ + "Polymaker" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "overhang_fan_speed": [ + "75" + ], + "overhang_fan_threshold": [ + "50%" + ], + "slow_down_layer_time": [ + "4" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "61" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "filament_type": [ + "PLA" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Neon @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Neon @Snapmaker U1.json new file mode 100644 index 00000000000..f40bfd290f9 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Neon @Snapmaker U1.json @@ -0,0 +1,14 @@ +{ + "type": "filament", + "name": "PolyLite PLA Neon @Snapmaker U1", + "inherits": "PolyLite PLA Neon @Snapmaker U1 base", + "from": "system", + "setting_id": "GFSL66_00", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Pro @U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Pro @Snapmaker U1 base.json similarity index 92% rename from resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Pro @U1 base.json rename to resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Pro @Snapmaker U1 base.json index 9708883d0ee..c32655ff838 100644 --- a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Pro @U1 base.json +++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Pro @Snapmaker U1 base.json @@ -1,6 +1,6 @@ { "type": "filament", - "name": "PolyLite PLA Pro @U1 base", + "name": "PolyLite PLA Pro @Snapmaker U1 base", "inherits": "fdm_filament_pla", "from": "system", "filament_id": "GFPM019", diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Pro @U1.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Pro @Snapmaker U1.json similarity index 71% rename from resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Pro @U1.json rename to resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Pro @Snapmaker U1.json index 865b177f4e2..acd8c7ff72a 100644 --- a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Pro @U1.json +++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Pro @Snapmaker U1.json @@ -1,7 +1,8 @@ { "type": "filament", - "name": "PolyLite PLA Pro @U1", - "inherits": "PolyLite PLA Pro @U1 base", + "name": "PolyLite PLA Pro @Snapmaker U1", + "renamed_from": "PolyLite PLA Pro @U1", + "inherits": "PolyLite PLA Pro @Snapmaker U1 base", "from": "system", "setting_id": "GFSPM019_00", "instantiation": "true", diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Pro Metallic @Snapmaker U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Pro Metallic @Snapmaker U1 base.json new file mode 100644 index 00000000000..898460830f2 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Pro Metallic @Snapmaker U1 base.json @@ -0,0 +1,80 @@ +{ + "type": "filament", + "name": "PolyLite PLA Pro Metallic @Snapmaker U1 base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "GFL75", + "instantiation": "false", + "additional_cooling_fan_speed": [ + "0" + ], + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "50" + ], + "cool_plate_temp_initial_layer": [ + "50" + ], + "eng_plate_temp": [ + "50" + ], + "eng_plate_temp_initial_layer": [ + "50" + ], + "filament_cost": [ + "30" + ], + "filament_density": [ + "1.22" + ], + "filament_max_volumetric_speed": [ + "20" + ], + "filament_vendor": [ + "Polymaker" + ], + "hot_plate_temp": [ + "50" + ], + "hot_plate_temp_initial_layer": [ + "50" + ], + "nozzle_temperature": [ + "230" + ], + "nozzle_temperature_initial_layer": [ + "230" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "overhang_fan_threshold": [ + "50%" + ], + "slow_down_for_layer_cooling": [ + "1", + "0", + "0", + "0" + ], + "slow_down_layer_time": [ + "10" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "62" + ], + "textured_plate_temp": [ + "50" + ], + "textured_plate_temp_initial_layer": [ + "50" + ], + "filament_type": [ + "PLA" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Pro Metallic @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Pro Metallic @Snapmaker U1.json new file mode 100644 index 00000000000..e02ed22face --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Pro Metallic @Snapmaker U1.json @@ -0,0 +1,30 @@ +{ + "type": "filament", + "name": "PolyLite PLA Pro Metallic @Snapmaker U1", + "inherits": "PolyLite PLA Pro Metallic @Snapmaker U1 base", + "from": "system", + "setting_id": "GFSL75_00", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_end_gcode": [ + "; filament end gcode \n\n" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ], + "filament_start_gcode": [ + "; filament start gcode\n{if (bed_temperature[current_extruder] >55)||(bed_temperature_initial_layer[current_extruder] >55)}M106 P3 S200\n{elsif(bed_temperature[current_extruder] >50)||(bed_temperature_initial_layer[current_extruder] >50)}M106 P3 S150\n{elsif(bed_temperature[current_extruder] >45)||(bed_temperature_initial_layer[current_extruder] >45)}M106 P3 S50\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}" + ], + "description": " ", + "enable_overhang_bridge_fan": [ + "1", + "0", + "0", + "0" + ], + "enable_pressure_advance": [ + "0" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Starlight @Snapmaker U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Starlight @Snapmaker U1 base.json new file mode 100644 index 00000000000..17e4d2816a8 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Starlight @Snapmaker U1 base.json @@ -0,0 +1,65 @@ +{ + "type": "filament", + "name": "PolyLite PLA Starlight @Snapmaker U1 base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "GFL67", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "filament_cost": [ + "29.99" + ], + "filament_density": [ + "1.17" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "filament_vendor": [ + "Polymaker" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "overhang_fan_speed": [ + "75" + ], + "overhang_fan_threshold": [ + "50%" + ], + "slow_down_layer_time": [ + "4" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "61" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "filament_type": [ + "PLA" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Starlight @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Starlight @Snapmaker U1.json new file mode 100644 index 00000000000..ffdfc293fb8 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Starlight @Snapmaker U1.json @@ -0,0 +1,14 @@ +{ + "type": "filament", + "name": "PolyLite PLA Starlight @Snapmaker U1", + "inherits": "PolyLite PLA Starlight @Snapmaker U1 base", + "from": "system", + "setting_id": "GFSL67_00", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Translucent @Snapmaker U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Translucent @Snapmaker U1 base.json new file mode 100644 index 00000000000..29341f1c598 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Translucent @Snapmaker U1 base.json @@ -0,0 +1,65 @@ +{ + "type": "filament", + "name": "PolyLite PLA Translucent @Snapmaker U1 base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "GFL68", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "filament_cost": [ + "29.99" + ], + "filament_density": [ + "1.17" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "filament_vendor": [ + "Polymaker" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "overhang_fan_speed": [ + "75" + ], + "overhang_fan_threshold": [ + "50%" + ], + "slow_down_layer_time": [ + "4" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "61" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "filament_type": [ + "PLA" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Translucent @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Translucent @Snapmaker U1.json new file mode 100644 index 00000000000..b4c83fcb945 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyLite PLA Translucent @Snapmaker U1.json @@ -0,0 +1,14 @@ +{ + "type": "filament", + "name": "PolyLite PLA Translucent @Snapmaker U1", + "inherits": "PolyLite PLA Translucent @Snapmaker U1 base", + "from": "system", + "setting_id": "GFSL68_00", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyTerra PLA @Snapmaker U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyTerra PLA @Snapmaker U1 base.json new file mode 100644 index 00000000000..533e781485d --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyTerra PLA @Snapmaker U1 base.json @@ -0,0 +1,65 @@ +{ + "type": "filament", + "name": "PolyTerra PLA @Snapmaker U1 base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "GFL01", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "filament_cost": [ + "21.99" + ], + "filament_density": [ + "1.37" + ], + "filament_max_volumetric_speed": [ + "20" + ], + "filament_vendor": [ + "Polymaker" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "overhang_fan_speed": [ + "75" + ], + "overhang_fan_threshold": [ + "50%" + ], + "slow_down_layer_time": [ + "4" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "61" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "filament_type": [ + "PLA" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyTerra PLA @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyTerra PLA @Snapmaker U1.json new file mode 100644 index 00000000000..1ab5d59becc --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyTerra PLA @Snapmaker U1.json @@ -0,0 +1,15 @@ +{ + "type": "filament", + "name": "PolyTerra PLA @Snapmaker U1", + "renamed_from": "PolyTerra PLA @U1", + "inherits": "PolyTerra PLA @Snapmaker U1 base", + "from": "system", + "setting_id": "12580059400", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyTerra PLA @U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyTerra PLA @U1 base.json deleted file mode 100644 index e6a4ed51977..00000000000 --- a/resources/profiles/Snapmaker/filament/Polymaker/PolyTerra PLA @U1 base.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "type": "filament", - "from": "system", - "instantiation": "false", - "name": "PolyTerra PLA @U1 base", - "filament_id": "37895926870", - "inherits": "fdm_filament_pla", - "filament_cost": [ - "80" - ], - "filament_density": [ - "1.31" - ], - "filament_max_volumetric_speed": [ - "14.4" - ], - "default_filament_colour": [ - "" - ] -} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyTerra PLA @U1.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyTerra PLA @U1.json deleted file mode 100644 index 2ae299695f4..00000000000 --- a/resources/profiles/Snapmaker/filament/Polymaker/PolyTerra PLA @U1.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "type": "filament", - "from": "system", - "instantiation": "true", - "name": "PolyTerra PLA @U1", - "setting_id": "12580059400", - "inherits": "PolyTerra PLA @U1 base", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)" - ] -} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyTerra PLA Marble @Snapmaker U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyTerra PLA Marble @Snapmaker U1 base.json new file mode 100644 index 00000000000..141740a4992 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyTerra PLA Marble @Snapmaker U1 base.json @@ -0,0 +1,65 @@ +{ + "type": "filament", + "name": "PolyTerra PLA Marble @Snapmaker U1 base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "GFL69", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "filament_cost": [ + "21.99" + ], + "filament_density": [ + "1.37" + ], + "filament_max_volumetric_speed": [ + "20" + ], + "filament_vendor": [ + "Polymaker" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "overhang_fan_speed": [ + "75" + ], + "overhang_fan_threshold": [ + "50%" + ], + "slow_down_layer_time": [ + "4" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "61" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "filament_type": [ + "PLA" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyTerra PLA Marble @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyTerra PLA Marble @Snapmaker U1.json new file mode 100644 index 00000000000..90261c8d46e --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyTerra PLA Marble @Snapmaker U1.json @@ -0,0 +1,14 @@ +{ + "type": "filament", + "name": "PolyTerra PLA Marble @Snapmaker U1", + "inherits": "PolyTerra PLA Marble @Snapmaker U1 base", + "from": "system", + "setting_id": "GFSL69_00", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyTerra PLA+ @Snapmaker U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyTerra PLA+ @Snapmaker U1 base.json new file mode 100644 index 00000000000..19bec7d25b9 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyTerra PLA+ @Snapmaker U1 base.json @@ -0,0 +1,65 @@ +{ + "type": "filament", + "name": "PolyTerra PLA+ @Snapmaker U1 base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "GFL70", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "eng_plate_temp": [ + "60" + ], + "eng_plate_temp_initial_layer": [ + "60" + ], + "filament_cost": [ + "20.99" + ], + "filament_max_volumetric_speed": [ + "20" + ], + "filament_vendor": [ + "Polymaker" + ], + "nozzle_temperature": [ + "230" + ], + "nozzle_temperature_initial_layer": [ + "230" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "overhang_fan_speed": [ + "75" + ], + "overhang_fan_threshold": [ + "50%" + ], + "slow_down_layer_time": [ + "4" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "59" + ], + "textured_plate_temp": [ + "60" + ], + "textured_plate_temp_initial_layer": [ + "60" + ], + "filament_type": [ + "PLA" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/PolyTerra PLA+ @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/PolyTerra PLA+ @Snapmaker U1.json new file mode 100644 index 00000000000..ad807f99e1e --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/PolyTerra PLA+ @Snapmaker U1.json @@ -0,0 +1,14 @@ +{ + "type": "filament", + "name": "PolyTerra PLA+ @Snapmaker U1", + "inherits": "PolyTerra PLA+ @Snapmaker U1 base", + "from": "system", + "setting_id": "GFSL70_00", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Polymaker HT-PLA @U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Polymaker HT-PLA @Snapmaker U1 base.json similarity index 59% rename from resources/profiles/Snapmaker/filament/Polymaker/Polymaker HT-PLA @U1 base.json rename to resources/profiles/Snapmaker/filament/Polymaker/Polymaker HT-PLA @Snapmaker U1 base.json index 491e4e2fb24..b447be14558 100644 --- a/resources/profiles/Snapmaker/filament/Polymaker/Polymaker HT-PLA @U1 base.json +++ b/resources/profiles/Snapmaker/filament/Polymaker/Polymaker HT-PLA @Snapmaker U1 base.json @@ -1,21 +1,39 @@ { "type": "filament", - "name": "Polymaker HT-PLA @U1 base", + "name": "Polymaker HT-PLA @Snapmaker U1 base", "inherits": "fdm_filament_pla", "from": "system", "filament_id": "GFPM017", "instantiation": "false", + "additional_cooling_fan_speed": [ + "0" + ], + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "50" + ], + "cool_plate_temp_initial_layer": [ + "50" + ], + "eng_plate_temp": [ + "50" + ], + "eng_plate_temp_initial_layer": [ + "50" + ], "filament_cost": [ - "26.99" + "0" ], "filament_density": [ "1.28" ], "filament_flow_ratio": [ - "0.98" + "0.96" ], "filament_max_volumetric_speed": [ - "20" + "15" ], "filament_vendor": [ "Polymaker" @@ -29,25 +47,31 @@ "nozzle_temperature": [ "220" ], - "nozzle_temperature_initial_layer": [ - "220" - ], "nozzle_temperature_range_high": [ "230" ], "nozzle_temperature_range_low": [ "210" ], + "overhang_fan_threshold": [ + "50%" + ], "slow_down_layer_time": [ - "4" + "6" + ], + "slow_down_min_speed": [ + "5" ], "temperature_vitrification": [ - "60" + "59.8" ], "textured_plate_temp": [ - "65" + "50" ], "textured_plate_temp_initial_layer": [ - "65" + "50" + ], + "filament_type": [ + "PLA" ] } diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Polymaker HT-PLA @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Polymaker HT-PLA @Snapmaker U1.json index 9e8d24a5aa2..1dc9da3491e 100644 --- a/resources/profiles/Snapmaker/filament/Polymaker/Polymaker HT-PLA @Snapmaker U1.json +++ b/resources/profiles/Snapmaker/filament/Polymaker/Polymaker HT-PLA @Snapmaker U1.json @@ -1,96 +1,15 @@ { "type": "filament", "name": "Polymaker HT-PLA @Snapmaker U1", + "renamed_from": "Polymaker HT-PLA @U1", + "inherits": "Polymaker HT-PLA @Snapmaker U1 base", "from": "system", + "setting_id": "GFSPM017_00", "instantiation": "true", - "cool_plate_temp": [ - "50" - ], - "eng_plate_temp": [ - "50" - ], - "hot_plate_temp": [ - "65" - ], - "textured_plate_temp": [ - "50" - ], - "cool_plate_temp_initial_layer": [ - "50" - ], - "eng_plate_temp_initial_layer": [ - "50" - ], - "hot_plate_temp_initial_layer": [ - "65" - ], - "textured_plate_temp_initial_layer": [ - "50" - ], - "overhang_fan_threshold": [ - "50%" - ], - "overhang_fan_speed": [ - "100" - ], - "slow_down_for_layer_cooling": [ - "1" - ], - "filament_end_gcode": [ - "; filament end gcode \n" - ], - "filament_flow_ratio": [ - "0.96" - ], - "filament_cost": [ - "0" - ], - "filament_diameter": [ - "1.75" - ], - "filament_max_volumetric_speed": [ - "15" - ], - "filament_minimal_purge_on_wipe_tower": [ - "15" - ], - "filament_vendor": [ - "Polymaker" - ], - "bed_type": [ - "Cool Plate" - ], - "full_fan_speed_layer": [ - "0" - ], - "fan_max_speed": [ - "100" - ], - "slow_down_min_speed": [ - "5" - ], - "slow_down_layer_time": [ - "6" - ], - "filament_start_gcode": [ - "; filament start gcode\n" - ], - "nozzle_temperature": [ - "220" - ], - "temperature_vitrification": [ - "60" - ], - "nozzle_temperature_range_high": [ - "230" - ], - "additional_cooling_fan_speed": [ - "0" - ], - "setting_id": "PMPL02_U1", "compatible_printers": [ "Snapmaker U1 (0.4 nozzle)" ], - "inherits": "Polymaker HT-PLA @Base", - "filament_id": "PMPL02" + "filament_minimal_purge_on_wipe_tower": [ + "15" + ] } diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Polymaker HT-PLA @U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Polymaker HT-PLA @U1.json deleted file mode 100644 index 77641bc103d..00000000000 --- a/resources/profiles/Snapmaker/filament/Polymaker/Polymaker HT-PLA @U1.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "filament", - "name": "Polymaker HT-PLA @U1", - "inherits": "Polymaker HT-PLA @U1 base", - "from": "system", - "setting_id": "GFSPM017_00", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)" - ], - "fan_max_speed": [ - "100" - ], - "fan_min_speed": [ - "100" - ], - "filament_flow_ratio": [ - "0.98" - ], - "filament_max_volumetric_speed": [ - "20" - ], - "slow_down_layer_time": [ - "4" - ] -} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Polymaker HT-PLA-GF @U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Polymaker HT-PLA-GF @Snapmaker U1 base.json similarity index 59% rename from resources/profiles/Snapmaker/filament/Polymaker/Polymaker HT-PLA-GF @U1 base.json rename to resources/profiles/Snapmaker/filament/Polymaker/Polymaker HT-PLA-GF @Snapmaker U1 base.json index b3c7aaf23d0..a98cb9b6701 100644 --- a/resources/profiles/Snapmaker/filament/Polymaker/Polymaker HT-PLA-GF @U1 base.json +++ b/resources/profiles/Snapmaker/filament/Polymaker/Polymaker HT-PLA-GF @Snapmaker U1 base.json @@ -1,21 +1,39 @@ { "type": "filament", - "name": "Polymaker HT-PLA-GF @U1 base", + "name": "Polymaker HT-PLA-GF @Snapmaker U1 base", "inherits": "fdm_filament_pla", "from": "system", "filament_id": "GFPM018", "instantiation": "false", + "additional_cooling_fan_speed": [ + "0" + ], + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "50" + ], + "cool_plate_temp_initial_layer": [ + "50" + ], + "eng_plate_temp": [ + "50" + ], + "eng_plate_temp_initial_layer": [ + "50" + ], "filament_cost": [ - "32.99" + "0" ], "filament_density": [ "1.34" ], "filament_flow_ratio": [ - "0.98" + "1.04" ], "filament_max_volumetric_speed": [ - "20" + "15" ], "filament_vendor": [ "Polymaker" @@ -29,25 +47,31 @@ "nozzle_temperature": [ "220" ], - "nozzle_temperature_initial_layer": [ - "220" - ], "nozzle_temperature_range_high": [ "230" ], "nozzle_temperature_range_low": [ "210" ], + "overhang_fan_threshold": [ + "50%" + ], "slow_down_layer_time": [ - "4" + "6" + ], + "slow_down_min_speed": [ + "5" ], "temperature_vitrification": [ - "60" + "59.76" ], "textured_plate_temp": [ - "65" + "50" ], "textured_plate_temp_initial_layer": [ - "65" + "50" + ], + "filament_type": [ + "PLA" ] } diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Polymaker HT-PLA-GF @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Polymaker HT-PLA-GF @Snapmaker U1.json index d22198f2259..5ef9570687a 100644 --- a/resources/profiles/Snapmaker/filament/Polymaker/Polymaker HT-PLA-GF @Snapmaker U1.json +++ b/resources/profiles/Snapmaker/filament/Polymaker/Polymaker HT-PLA-GF @Snapmaker U1.json @@ -1,96 +1,15 @@ { "type": "filament", "name": "Polymaker HT-PLA-GF @Snapmaker U1", + "renamed_from": "Polymaker HT-PLA-GF @U1", + "inherits": "Polymaker HT-PLA-GF @Snapmaker U1 base", "from": "system", + "setting_id": "GFSPM018_00", "instantiation": "true", - "cool_plate_temp": [ - "50" - ], - "eng_plate_temp": [ - "50" - ], - "hot_plate_temp": [ - "65" - ], - "textured_plate_temp": [ - "50" - ], - "cool_plate_temp_initial_layer": [ - "50" - ], - "eng_plate_temp_initial_layer": [ - "50" - ], - "hot_plate_temp_initial_layer": [ - "65" - ], - "textured_plate_temp_initial_layer": [ - "50" - ], - "overhang_fan_threshold": [ - "50%" - ], - "overhang_fan_speed": [ - "100" - ], - "slow_down_for_layer_cooling": [ - "1" - ], - "filament_end_gcode": [ - "; filament end gcode \n" - ], - "filament_flow_ratio": [ - "1.04" - ], - "filament_cost": [ - "0" - ], - "filament_diameter": [ - "1.75" - ], - "filament_max_volumetric_speed": [ - "15" - ], - "filament_minimal_purge_on_wipe_tower": [ - "15" - ], - "filament_vendor": [ - "Polymaker" - ], - "bed_type": [ - "Cool Plate" - ], - "full_fan_speed_layer": [ - "0" - ], - "fan_max_speed": [ - "100" - ], - "slow_down_min_speed": [ - "5" - ], - "slow_down_layer_time": [ - "6" - ], - "filament_start_gcode": [ - "; filament start gcode\n" - ], - "nozzle_temperature": [ - "220" - ], - "temperature_vitrification": [ - "60" - ], - "nozzle_temperature_range_high": [ - "230" - ], - "additional_cooling_fan_speed": [ - "0" - ], - "setting_id": "PMPL01_U1", "compatible_printers": [ "Snapmaker U1 (0.4 nozzle)" ], - "inherits": "Polymaker HT-PLA-GF @Base", - "filament_id": "PMPL01" + "filament_minimal_purge_on_wipe_tower": [ + "15" + ] } diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Polymaker HT-PLA-GF @U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Polymaker HT-PLA-GF @U1.json deleted file mode 100644 index 21f6d9c7ef1..00000000000 --- a/resources/profiles/Snapmaker/filament/Polymaker/Polymaker HT-PLA-GF @U1.json +++ /dev/null @@ -1,26 +0,0 @@ -{ - "type": "filament", - "name": "Polymaker HT-PLA-GF @U1", - "inherits": "Polymaker HT-PLA-GF @U1 base", - "from": "system", - "setting_id": "GFSPM018_00", - "instantiation": "true", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)" - ], - "fan_max_speed": [ - "100" - ], - "fan_min_speed": [ - "100" - ], - "filament_flow_ratio": [ - "0.98" - ], - "filament_max_volumetric_speed": [ - "20" - ], - "slow_down_layer_time": [ - "4" - ] -} diff --git a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PETG PRO @base.json b/resources/profiles/Snapmaker/filament/Polymaker/Polymaker PETG @Snapmaker U1 base.json similarity index 59% rename from resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PETG PRO @base.json rename to resources/profiles/Snapmaker/filament/Polymaker/Polymaker PETG @Snapmaker U1 base.json index 3e81c020fcb..2209516118d 100644 --- a/resources/profiles/OrcaFilamentLibrary/filament/Elegoo/Elegoo PETG PRO @base.json +++ b/resources/profiles/Snapmaker/filament/Polymaker/Polymaker PETG @Snapmaker U1 base.json @@ -1,74 +1,83 @@ { "type": "filament", - "name": "Elegoo PETG PRO @base", - "inherits": "fdm_filament_pet", + "name": "Polymaker PETG @Snapmaker U1 base", + "inherits": "fdm_filament_petg", "from": "system", - "filament_id": "OGFE02", + "filament_id": "GFL76", "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "close_fan_the_first_x_layers": [ + "3" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "fan_max_speed": [ + "10" + ], + "fan_min_speed": [ + "50" + ], "filament_cost": [ - "12.49" + "0" ], "filament_density": [ - "1.27" + "1.3" ], "filament_flow_ratio": [ - "0.98" + "0.96" ], "filament_max_volumetric_speed": [ - "12" - ], - "filament_retraction_length": [ - "0.8" - ], - "filament_retraction_speed": [ - "45" - ], - "filament_deretraction_speed": [ - "45" + "15" ], "filament_vendor": [ - "Elegoo" + "Polymaker" + ], + "hot_plate_temp": [ + "80" + ], + "hot_plate_temp_initial_layer": [ + "80" ], "nozzle_temperature": [ - "245" + "260" ], "nozzle_temperature_initial_layer": [ - "240" + "260" ], "nozzle_temperature_range_high": [ "260" ], "nozzle_temperature_range_low": [ - "230" - ], - "hot_plate_temp": [ - "65" - ], - "hot_plate_temp_initial_layer": [ - "65" - ], - "textured_plate_temp": [ - "75" - ], - "textured_plate_temp_initial_layer": [ - "75" + "240" ], "overhang_fan_speed": [ - "90" + "100" ], - "fan_max_speed": [ - "80" - ], - "fan_min_speed": [ - "20" - ], - "fan_cooling_layer_time": [ - "20" + "overhang_fan_threshold": [ + "95%" ], "slow_down_layer_time": [ - "10" + "6" ], "slow_down_min_speed": [ - "20" + "10" + ], + "temperature_vitrification": [ + "71.24" + ], + "textured_plate_temp": [ + "80" + ], + "textured_plate_temp_initial_layer": [ + "80" + ], + "filament_type": [ + "PETG" ] } diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Polymaker PETG @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Polymaker PETG @Snapmaker U1.json index cca59b8c23d..4b8ff8daf2c 100644 --- a/resources/profiles/Snapmaker/filament/Polymaker/Polymaker PETG @Snapmaker U1.json +++ b/resources/profiles/Snapmaker/filament/Polymaker/Polymaker PETG @Snapmaker U1.json @@ -1,111 +1,20 @@ { "type": "filament", "name": "Polymaker PETG @Snapmaker U1", + "inherits": "Polymaker PETG @Snapmaker U1 base", "from": "system", + "setting_id": "GFSL76_00", "instantiation": "true", - "cool_plate_temp": [ - "60" - ], - "eng_plate_temp": [ - "0" - ], - "hot_plate_temp": [ - "80" - ], - "textured_plate_temp": [ - "80" - ], - "cool_plate_temp_initial_layer": [ - "60" - ], - "eng_plate_temp_initial_layer": [ - "0" - ], - "hot_plate_temp_initial_layer": [ - "80" - ], - "textured_plate_temp_initial_layer": [ - "80" - ], - "overhang_fan_threshold": [ - "95%" - ], - "overhang_fan_speed": [ - "100" - ], - "slow_down_for_layer_cooling": [ - "1" - ], - "close_fan_the_first_x_layers": [ - "3" - ], - "filament_end_gcode": [ - "; filament end gcode \n" - ], - "filament_flow_ratio": [ - "0.96" - ], - "filament_cost": [ - "0" - ], - "filament_diameter": [ - "1.75" - ], - "filament_max_volumetric_speed": [ - "15" + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" ], "filament_minimal_purge_on_wipe_tower": [ "15" ], - "filament_vendor": [ - "Polymaker" - ], - "bed_type": [ - "Cool Plate" - ], - "nozzle_temperature_initial_layer": [ - "260" - ], - "full_fan_speed_layer": [ - "0" - ], - "fan_max_speed": [ - "10" - ], - "fan_min_speed": [ - "50" - ], - "slow_down_min_speed": [ - "10" - ], - "slow_down_layer_time": [ - "6" - ], - "filament_start_gcode": [ - "; Filament gcode\n" - ], - "nozzle_temperature": [ - "260" - ], - "temperature_vitrification": [ - "71" - ], - "filament_id": "PMPE01", - "nozzle_temperature_range_high": [ - "260" - ], - "nozzle_temperature_range_low": [ - "240" - ], "supertack_plate_temp": [ "70" ], "supertack_plate_temp_initial_layer": [ "70" - ], - "setting_id": "PMPE01_U1", - "compatible_printers": [ - "Snapmaker U1 (0.4 nozzle)" - ], - "inherits": "Polymaker PETG @Base" + ] } diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Polymaker PETG Galaxy @Snapmaker U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Polymaker PETG Galaxy @Snapmaker U1 base.json new file mode 100644 index 00000000000..5e32b79620f --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Polymaker PETG Galaxy @Snapmaker U1 base.json @@ -0,0 +1,83 @@ +{ + "type": "filament", + "name": "Polymaker PETG Galaxy @Snapmaker U1 base", + "inherits": "fdm_filament_petg", + "from": "system", + "filament_id": "GFL77", + "instantiation": "false", + "bed_type": [ + "Cool Plate" + ], + "close_fan_the_first_x_layers": [ + "3" + ], + "cool_plate_temp": [ + "60" + ], + "cool_plate_temp_initial_layer": [ + "60" + ], + "fan_max_speed": [ + "10" + ], + "fan_min_speed": [ + "50" + ], + "filament_cost": [ + "0" + ], + "filament_density": [ + "1.3" + ], + "filament_flow_ratio": [ + "0.96" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "filament_vendor": [ + "Polymaker" + ], + "hot_plate_temp": [ + "80" + ], + "hot_plate_temp_initial_layer": [ + "80" + ], + "nozzle_temperature": [ + "260" + ], + "nozzle_temperature_initial_layer": [ + "260" + ], + "nozzle_temperature_range_high": [ + "260" + ], + "nozzle_temperature_range_low": [ + "240" + ], + "overhang_fan_speed": [ + "100" + ], + "overhang_fan_threshold": [ + "95%" + ], + "slow_down_layer_time": [ + "6" + ], + "slow_down_min_speed": [ + "10" + ], + "temperature_vitrification": [ + "71.24" + ], + "textured_plate_temp": [ + "80" + ], + "textured_plate_temp_initial_layer": [ + "80" + ], + "filament_type": [ + "PETG" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Polymaker PETG Galaxy @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Polymaker PETG Galaxy @Snapmaker U1.json new file mode 100644 index 00000000000..47b67bb9edc --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Polymaker PETG Galaxy @Snapmaker U1.json @@ -0,0 +1,20 @@ +{ + "type": "filament", + "name": "Polymaker PETG Galaxy @Snapmaker U1", + "inherits": "Polymaker PETG Galaxy @Snapmaker U1 base", + "from": "system", + "setting_id": "GFSL77_00", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ], + "supertack_plate_temp": [ + "70" + ], + "supertack_plate_temp_initial_layer": [ + "70" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Polymaker PLA @Snapmaker U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Polymaker PLA @Snapmaker U1 base.json new file mode 100644 index 00000000000..ebd4e5b11a7 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Polymaker PLA @Snapmaker U1 base.json @@ -0,0 +1,74 @@ +{ + "type": "filament", + "name": "Polymaker PLA @Snapmaker U1 base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "GFL78", + "instantiation": "false", + "additional_cooling_fan_speed": [ + "0" + ], + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "50" + ], + "cool_plate_temp_initial_layer": [ + "50" + ], + "eng_plate_temp": [ + "50" + ], + "eng_plate_temp_initial_layer": [ + "50" + ], + "filament_cost": [ + "30" + ], + "filament_density": [ + "1.23" + ], + "filament_flow_ratio": [ + "0.96" + ], + "filament_max_volumetric_speed": [ + "20" + ], + "filament_vendor": [ + "Polymaker" + ], + "hot_plate_temp": [ + "50" + ], + "hot_plate_temp_initial_layer": [ + "50" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "overhang_fan_threshold": [ + "50%" + ], + "slow_down_layer_time": [ + "5" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "59" + ], + "textured_plate_temp": [ + "50" + ], + "textured_plate_temp_initial_layer": [ + "50" + ], + "filament_type": [ + "PLA" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Polymaker PLA @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Polymaker PLA @Snapmaker U1.json new file mode 100644 index 00000000000..d20e23922f0 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Polymaker PLA @Snapmaker U1.json @@ -0,0 +1,20 @@ +{ + "type": "filament", + "name": "Polymaker PLA @Snapmaker U1", + "inherits": "Polymaker PLA @Snapmaker U1 base", + "from": "system", + "setting_id": "GFSL78_00", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ], + "filament_extruder_variant": [ + "Direct Drive Standard" + ], + "pressure_advance": [ + "0.05" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Polymaker PLA Pro @Snapmaker U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Polymaker PLA Pro @Snapmaker U1 base.json new file mode 100644 index 00000000000..a15908f18e5 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Polymaker PLA Pro @Snapmaker U1 base.json @@ -0,0 +1,74 @@ +{ + "type": "filament", + "name": "Polymaker PLA Pro @Snapmaker U1 base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "GFL79", + "instantiation": "false", + "additional_cooling_fan_speed": [ + "0" + ], + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "50" + ], + "cool_plate_temp_initial_layer": [ + "50" + ], + "eng_plate_temp": [ + "50" + ], + "eng_plate_temp_initial_layer": [ + "50" + ], + "filament_cost": [ + "0" + ], + "filament_density": [ + "1.23" + ], + "filament_flow_ratio": [ + "0.96" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "filament_vendor": [ + "Polymaker" + ], + "hot_plate_temp": [ + "65" + ], + "hot_plate_temp_initial_layer": [ + "65" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "overhang_fan_threshold": [ + "50%" + ], + "slow_down_layer_time": [ + "6" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "55" + ], + "textured_plate_temp": [ + "50" + ], + "textured_plate_temp_initial_layer": [ + "50" + ], + "filament_type": [ + "PLA" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Polymaker PLA Pro @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Polymaker PLA Pro @Snapmaker U1.json index 23d7dfad463..2cb55a8ee50 100644 --- a/resources/profiles/Snapmaker/filament/Polymaker/Polymaker PLA Pro @Snapmaker U1.json +++ b/resources/profiles/Snapmaker/filament/Polymaker/Polymaker PLA Pro @Snapmaker U1.json @@ -1,96 +1,14 @@ { "type": "filament", "name": "Polymaker PLA Pro @Snapmaker U1", + "inherits": "Polymaker PLA Pro @Snapmaker U1 base", "from": "system", + "setting_id": "GFSL79_00", "instantiation": "true", - "cool_plate_temp": [ - "50" - ], - "eng_plate_temp": [ - "50" - ], - "hot_plate_temp": [ - "65" - ], - "textured_plate_temp": [ - "50" - ], - "cool_plate_temp_initial_layer": [ - "50" - ], - "eng_plate_temp_initial_layer": [ - "50" - ], - "hot_plate_temp_initial_layer": [ - "65" - ], - "textured_plate_temp_initial_layer": [ - "50" - ], - "overhang_fan_threshold": [ - "50%" - ], - "overhang_fan_speed": [ - "100" - ], - "slow_down_for_layer_cooling": [ - "1" - ], - "filament_end_gcode": [ - "; filament end gcode \n" - ], - "filament_flow_ratio": [ - "0.96" - ], - "filament_cost": [ - "0" - ], - "filament_diameter": [ - "1.75" - ], - "filament_max_volumetric_speed": [ - "15" - ], - "filament_minimal_purge_on_wipe_tower": [ - "15" - ], - "filament_vendor": [ - "Polymaker" - ], - "bed_type": [ - "Cool Plate" - ], - "full_fan_speed_layer": [ - "0" - ], - "fan_max_speed": [ - "100" - ], - "slow_down_min_speed": [ - "5" - ], - "slow_down_layer_time": [ - "6" - ], - "filament_start_gcode": [ - "; filament start gcode\n" - ], - "nozzle_temperature": [ - "220" - ], - "temperature_vitrification": [ - "61" - ], - "nozzle_temperature_range_high": [ - "230" - ], - "additional_cooling_fan_speed": [ - "0" - ], - "setting_id": "PMPL03_U1", "compatible_printers": [ "Snapmaker U1 (0.4 nozzle)" ], - "inherits": "Polymaker PLA Pro @Base", - "filament_id": "PMPL03" + "filament_minimal_purge_on_wipe_tower": [ + "15" + ] } diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Polymaker PLA Pro Metallic @Snapmaker U1 base.json b/resources/profiles/Snapmaker/filament/Polymaker/Polymaker PLA Pro Metallic @Snapmaker U1 base.json new file mode 100644 index 00000000000..9e2fc3f4e52 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Polymaker PLA Pro Metallic @Snapmaker U1 base.json @@ -0,0 +1,74 @@ +{ + "type": "filament", + "name": "Polymaker PLA Pro Metallic @Snapmaker U1 base", + "inherits": "fdm_filament_pla", + "from": "system", + "filament_id": "GFL80", + "instantiation": "false", + "additional_cooling_fan_speed": [ + "0" + ], + "bed_type": [ + "Cool Plate" + ], + "cool_plate_temp": [ + "50" + ], + "cool_plate_temp_initial_layer": [ + "50" + ], + "eng_plate_temp": [ + "50" + ], + "eng_plate_temp_initial_layer": [ + "50" + ], + "filament_cost": [ + "0" + ], + "filament_density": [ + "1.23" + ], + "filament_flow_ratio": [ + "0.96" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "filament_vendor": [ + "Polymaker" + ], + "hot_plate_temp": [ + "65" + ], + "hot_plate_temp_initial_layer": [ + "65" + ], + "nozzle_temperature": [ + "220" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "overhang_fan_threshold": [ + "50%" + ], + "slow_down_layer_time": [ + "6" + ], + "slow_down_min_speed": [ + "5" + ], + "temperature_vitrification": [ + "55" + ], + "textured_plate_temp": [ + "50" + ], + "textured_plate_temp_initial_layer": [ + "50" + ], + "filament_type": [ + "PLA" + ] +} diff --git a/resources/profiles/Snapmaker/filament/Polymaker/Polymaker PLA Pro Metallic @Snapmaker U1.json b/resources/profiles/Snapmaker/filament/Polymaker/Polymaker PLA Pro Metallic @Snapmaker U1.json new file mode 100644 index 00000000000..463c0f2e816 --- /dev/null +++ b/resources/profiles/Snapmaker/filament/Polymaker/Polymaker PLA Pro Metallic @Snapmaker U1.json @@ -0,0 +1,14 @@ +{ + "type": "filament", + "name": "Polymaker PLA Pro Metallic @Snapmaker U1", + "inherits": "Polymaker PLA Pro Metallic @Snapmaker U1 base", + "from": "system", + "setting_id": "GFSL80_00", + "instantiation": "true", + "compatible_printers": [ + "Snapmaker U1 (0.4 nozzle)" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ] +} 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 1ff01d474ed..dce8a24be37 100644 --- a/resources/profiles/Snapmaker/machine/Snapmaker U1 (0.4 nozzle).json +++ b/resources/profiles/Snapmaker/machine/Snapmaker U1 (0.4 nozzle).json @@ -8,7 +8,7 @@ "printer_model": "Snapmaker U1", "printer_variant": "0.4", "auxiliary_fan": "1", - "change_filament_gcode": ";===== date: 20251213=====================\n; Change Tool[previous_extruder] -> Tool[next_extruder] (layer [layer_num])\n{\nlocal max_speed_toolchange = 350.0;\nlocal wait_for_extruder_temp = true;\nposition[2] = position[2] + 2.0;\nlocal speed_toolchange = max_speed_toolchange;\nif travel_speed < max_speed_toolchange then\n speed_toolchange = travel_speed;\nendif\n\"G91\nG1 Z1.5 F1800\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", + "change_filament_gcode": ";===== date: 20260525 =====================\n; Change Tool[previous_extruder] -> Tool[next_extruder] (layer [layer_num] ; max_layer_z [max_layer_z] ; max_print_height [max_print_height])\n{\nlocal move_z = max_print_height;\nlocal max_speed_toolchange = 350.0;\nlocal wait_for_extruder_temp = true;\nposition[2] = position[2] + 2.0;\nlocal speed_toolchange = max_speed_toolchange;\nif travel_speed < max_speed_toolchange then\n speed_toolchange = travel_speed;\nendif\n\nif max_layer_z < (max_print_height - 1) then\n move_z = z_offset + min(max_layer_z + 2, max_print_height);\nendif\n\n\"G91\nG1 Z\" + move_z + \" F1800 ; Move nozzle just above tallest printed object\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", "extruder_colour": [ "#FCE94F", "#FCE94F", @@ -28,7 +28,7 @@ "0", "0" ], - "machine_end_gcode": " PRINT_END\nTIMELAPSE_STOP", + "machine_end_gcode": ";===== date: 20260525 =====================\n; (layer [layer_num] ; max_layer_z [max_layer_z])\n{\nlocal move_z = max_print_height;\n\nif max_layer_z < (max_print_height - 1) then\n move_z = z_offset + min(max_layer_z + 2, max_print_height);\nendif\n\n\"G91\nG1 Z\" + move_z + \" F1800 ; Move nozzle just above tallest printed object\nG90\n; Triggering PBO Z Movement of: \" + move_z + \"\nPRINT_END\nTIMELAPSE_STOP\n\";\n}\n", "machine_max_acceleration_extruding": [ "25000", "25000" diff --git a/resources/profiles/Z-Bolt.json b/resources/profiles/Z-Bolt.json index c38063472ed..0c9d52be1fc 100644 --- a/resources/profiles/Z-Bolt.json +++ b/resources/profiles/Z-Bolt.json @@ -148,8 +148,20 @@ "sub_path": "process/0.16mm Standard @Z-Bolt 0.6 nozzle.json" }, { - "name": "0.20mm High Quality @Z-Bolt 0.6 nozzle", - "sub_path": "process/0.20mm High Quality @Z-Bolt 0.6 nozzle.json" + "name": "0.16mm Standard @Z-Bolt S300 0.6 nozzle", + "sub_path": "process/0.16mm Standard @Z-Bolt S300 0.6 nozzle.json" + }, + { + "name": "0.16mm Standard @Z-Bolt S400 0.6 nozzle", + "sub_path": "process/0.16mm Standard @Z-Bolt S400 0.6 nozzle.json" + }, + { + "name": "0.16mm Standard @Z-Bolt S600 0.6 nozzle", + "sub_path": "process/0.16mm Standard @Z-Bolt S600 0.6 nozzle.json" + }, + { + "name": "0.16mm Standard @Z-Bolt S800 0.6 nozzle", + "sub_path": "process/0.16mm Standard @Z-Bolt S800 0.6 nozzle.json" }, { "name": "0.20mm Standard @Z-Bolt 0.4 nozzle", @@ -159,10 +171,30 @@ "name": "0.20mm Strength @Z-Bolt 0.4 nozzle", "sub_path": "process/0.20mm Strength @Z-Bolt 0.4 nozzle.json" }, + { + "name": "0.20mm High Quality @Z-Bolt 0.6 nozzle", + "sub_path": "process/0.20mm High Quality @Z-Bolt 0.6 nozzle.json" + }, { "name": "0.20mm Standard @Z-Bolt 0.6 nozzle", "sub_path": "process/0.20mm Standard @Z-Bolt 0.6 nozzle.json" }, + { + "name": "0.20mm Standard @Z-Bolt S300 0.6 nozzle", + "sub_path": "process/0.20mm Standard @Z-Bolt S300 0.6 nozzle.json" + }, + { + "name": "0.20mm Standard @Z-Bolt S400 0.6 nozzle", + "sub_path": "process/0.20mm Standard @Z-Bolt S400 0.6 nozzle.json" + }, + { + "name": "0.20mm Standard @Z-Bolt S600 0.6 nozzle", + "sub_path": "process/0.20mm Standard @Z-Bolt S600 0.6 nozzle.json" + }, + { + "name": "0.20mm Standard @Z-Bolt S800 0.6 nozzle", + "sub_path": "process/0.20mm Standard @Z-Bolt S800 0.6 nozzle.json" + }, { "name": "0.24mm Draft @Z-Bolt 0.4 nozzle", "sub_path": "process/0.24mm Draft @Z-Bolt 0.4 nozzle.json" @@ -171,10 +203,42 @@ "name": "0.24mm Standard @Z-Bolt 0.6 nozzle", "sub_path": "process/0.24mm Standard @Z-Bolt 0.6 nozzle.json" }, + { + "name": "0.24mm Standard @Z-Bolt S300 0.6 nozzle", + "sub_path": "process/0.24mm Standard @Z-Bolt S300 0.6 nozzle.json" + }, + { + "name": "0.24mm Standard @Z-Bolt S400 0.6 nozzle", + "sub_path": "process/0.24mm Standard @Z-Bolt S400 0.6 nozzle.json" + }, + { + "name": "0.24mm Standard @Z-Bolt S600 0.6 nozzle", + "sub_path": "process/0.24mm Standard @Z-Bolt S600 0.6 nozzle.json" + }, + { + "name": "0.24mm Standard @Z-Bolt S800 0.6 nozzle", + "sub_path": "process/0.24mm Standard @Z-Bolt S800 0.6 nozzle.json" + }, { "name": "0.24mm Standard @Z-Bolt 0.8 nozzle", "sub_path": "process/0.24mm Standard @Z-Bolt 0.8 nozzle.json" }, + { + "name": "0.24mm Standard @Z-Bolt S300 0.8 nozzle", + "sub_path": "process/0.24mm Standard @Z-Bolt S300 0.8 nozzle.json" + }, + { + "name": "0.24mm Standard @Z-Bolt S400 0.8 nozzle", + "sub_path": "process/0.24mm Standard @Z-Bolt S400 0.8 nozzle.json" + }, + { + "name": "0.24mm Standard @Z-Bolt S600 0.8 nozzle", + "sub_path": "process/0.24mm Standard @Z-Bolt S600 0.8 nozzle.json" + }, + { + "name": "0.24mm Standard @Z-Bolt S800 0.8 nozzle", + "sub_path": "process/0.24mm Standard @Z-Bolt S800 0.8 nozzle.json" + }, { "name": "0.28mm Extra Draft @Z-Bolt 0.4 nozzle", "sub_path": "process/0.28mm Extra Draft @Z-Bolt 0.4 nozzle.json" @@ -183,29 +247,141 @@ "name": "0.30mm Standard @Z-Bolt 0.6 nozzle", "sub_path": "process/0.30mm Standard @Z-Bolt 0.6 nozzle.json" }, + { + "name": "0.30mm Standard @Z-Bolt S300 0.6 nozzle", + "sub_path": "process/0.30mm Standard @Z-Bolt S300 0.6 nozzle.json" + }, + { + "name": "0.30mm Standard @Z-Bolt S400 0.6 nozzle", + "sub_path": "process/0.30mm Standard @Z-Bolt S400 0.6 nozzle.json" + }, + { + "name": "0.30mm Standard @Z-Bolt S600 0.6 nozzle", + "sub_path": "process/0.30mm Standard @Z-Bolt S600 0.6 nozzle.json" + }, + { + "name": "0.30mm Standard @Z-Bolt S800 0.6 nozzle", + "sub_path": "process/0.30mm Standard @Z-Bolt S800 0.6 nozzle.json" + }, { "name": "0.30mm Strength @Z-Bolt 0.6 nozzle", "sub_path": "process/0.30mm Strength @Z-Bolt 0.6 nozzle.json" }, + { + "name": "0.30mm Strength @Z-Bolt S300 0.6 nozzle", + "sub_path": "process/0.30mm Strength @Z-Bolt S300 0.6 nozzle.json" + }, + { + "name": "0.30mm Strength @Z-Bolt S400 0.6 nozzle", + "sub_path": "process/0.30mm Strength @Z-Bolt S400 0.6 nozzle.json" + }, + { + "name": "0.30mm Strength @Z-Bolt S600 0.6 nozzle", + "sub_path": "process/0.30mm Strength @Z-Bolt S600 0.6 nozzle.json" + }, + { + "name": "0.30mm Strength @Z-Bolt S800 0.6 nozzle", + "sub_path": "process/0.30mm Strength @Z-Bolt S800 0.6 nozzle.json" + }, { "name": "0.32mm Standard @Z-Bolt 0.8 nozzle", "sub_path": "process/0.32mm Standard @Z-Bolt 0.8 nozzle.json" }, + { + "name": "0.32mm Standard @Z-Bolt S300 0.8 nozzle", + "sub_path": "process/0.32mm Standard @Z-Bolt S300 0.8 nozzle.json" + }, + { + "name": "0.32mm Standard @Z-Bolt S400 0.8 nozzle", + "sub_path": "process/0.32mm Standard @Z-Bolt S400 0.8 nozzle.json" + }, + { + "name": "0.32mm Standard @Z-Bolt S600 0.8 nozzle", + "sub_path": "process/0.32mm Standard @Z-Bolt S600 0.8 nozzle.json" + }, + { + "name": "0.32mm Standard @Z-Bolt S800 0.8 nozzle", + "sub_path": "process/0.32mm Standard @Z-Bolt S800 0.8 nozzle.json" + }, { "name": "0.36mm Standard @Z-Bolt 0.6 nozzle", "sub_path": "process/0.36mm Standard @Z-Bolt 0.6 nozzle.json" }, + { + "name": "0.36mm Standard @Z-Bolt S300 0.6 nozzle", + "sub_path": "process/0.36mm Standard @Z-Bolt S300 0.6 nozzle.json" + }, + { + "name": "0.36mm Standard @Z-Bolt S400 0.6 nozzle", + "sub_path": "process/0.36mm Standard @Z-Bolt S400 0.6 nozzle.json" + }, + { + "name": "0.36mm Standard @Z-Bolt S600 0.6 nozzle", + "sub_path": "process/0.36mm Standard @Z-Bolt S600 0.6 nozzle.json" + }, + { + "name": "0.36mm Standard @Z-Bolt S800 0.6 nozzle", + "sub_path": "process/0.36mm Standard @Z-Bolt S800 0.6 nozzle.json" + }, { "name": "0.40mm Standard @Z-Bolt 0.8 nozzle", "sub_path": "process/0.40mm Standard @Z-Bolt 0.8 nozzle.json" }, + { + "name": "0.40mm Standard @Z-Bolt S300 0.8 nozzle", + "sub_path": "process/0.40mm Standard @Z-Bolt S300 0.8 nozzle.json" + }, + { + "name": "0.40mm Standard @Z-Bolt S400 0.8 nozzle", + "sub_path": "process/0.40mm Standard @Z-Bolt S400 0.8 nozzle.json" + }, + { + "name": "0.40mm Standard @Z-Bolt S600 0.8 nozzle", + "sub_path": "process/0.40mm Standard @Z-Bolt S600 0.8 nozzle.json" + }, + { + "name": "0.40mm Standard @Z-Bolt S800 0.8 nozzle", + "sub_path": "process/0.40mm Standard @Z-Bolt S800 0.8 nozzle.json" + }, { "name": "0.42mm Standard @Z-Bolt 0.6 nozzle", "sub_path": "process/0.42mm Standard @Z-Bolt 0.6 nozzle.json" }, + { + "name": "0.42mm Standard @Z-Bolt S300 0.6 nozzle", + "sub_path": "process/0.42mm Standard @Z-Bolt S300 0.6 nozzle.json" + }, + { + "name": "0.42mm Standard @Z-Bolt S400 0.6 nozzle", + "sub_path": "process/0.42mm Standard @Z-Bolt S400 0.6 nozzle.json" + }, + { + "name": "0.42mm Standard @Z-Bolt S600 0.6 nozzle", + "sub_path": "process/0.42mm Standard @Z-Bolt S600 0.6 nozzle.json" + }, + { + "name": "0.42mm Standard @Z-Bolt S800 0.6 nozzle", + "sub_path": "process/0.42mm Standard @Z-Bolt S800 0.6 nozzle.json" + }, { "name": "0.48mm Standard @Z-Bolt 0.8 nozzle", "sub_path": "process/0.48mm Standard @Z-Bolt 0.8 nozzle.json" + }, + { + "name": "0.48mm Standard @Z-Bolt S300 0.8 nozzle", + "sub_path": "process/0.48mm Standard @Z-Bolt S300 0.8 nozzle.json" + }, + { + "name": "0.48mm Standard @Z-Bolt S400 0.8 nozzle", + "sub_path": "process/0.48mm Standard @Z-Bolt S400 0.8 nozzle.json" + }, + { + "name": "0.48mm Standard @Z-Bolt S600 0.8 nozzle", + "sub_path": "process/0.48mm Standard @Z-Bolt S600 0.8 nozzle.json" + }, + { + "name": "0.48mm Standard @Z-Bolt S800 0.8 nozzle", + "sub_path": "process/0.48mm Standard @Z-Bolt S800 0.8 nozzle.json" } ], "filament_list": [ @@ -213,6 +389,18 @@ "name": "Generic ABS @Z-Bolt Base", "sub_path": "filament/Generic ABS @Z-Bolt Base.json" }, + { + "name": "Generic PA @Z-Bolt Base", + "sub_path": "filament/Generic PA @Z-Bolt Base.json" + }, + { + "name": "Generic PETG @Z-Bolt Base", + "sub_path": "filament/Generic PETG @Z-Bolt Base.json" + }, + { + "name": "Generic PLA @Z-Bolt Base", + "sub_path": "filament/Generic PLA @Z-Bolt Base.json" + }, { "name": "Generic ABS @Z-Bolt 0.4 nozzle", "sub_path": "filament/Generic ABS @Z-Bolt 0.4 nozzle.json" @@ -226,8 +414,8 @@ "sub_path": "filament/Generic ABS @Z-Bolt 0.8 nozzle.json" }, { - "name": "Generic PA @Z-Bolt Base", - "sub_path": "filament/Generic PA @Z-Bolt Base.json" + "name": "Generic ABS HT @Z-Bolt Base", + "sub_path": "filament/Generic ABS HT @Z-Bolt Base.json" }, { "name": "Generic PA @Z-Bolt 0.4 nozzle", @@ -241,10 +429,6 @@ "name": "Generic PA @Z-Bolt 0.8 nozzle", "sub_path": "filament/Generic PA @Z-Bolt 0.8 nozzle.json" }, - { - "name": "Generic PETG @Z-Bolt Base", - "sub_path": "filament/Generic PETG @Z-Bolt Base.json" - }, { "name": "Generic PETG @Z-Bolt 0.4 nozzle", "sub_path": "filament/Generic PETG @Z-Bolt 0.4 nozzle.json" @@ -257,10 +441,6 @@ "name": "Generic PETG @Z-Bolt 0.8 nozzle", "sub_path": "filament/Generic PETG @Z-Bolt 0.8 nozzle.json" }, - { - "name": "Generic PLA @Z-Bolt Base", - "sub_path": "filament/Generic PLA @Z-Bolt Base.json" - }, { "name": "Generic PLA @Z-Bolt 0.4 nozzle", "sub_path": "filament/Generic PLA @Z-Bolt 0.4 nozzle.json" @@ -273,10 +453,6 @@ "name": "Generic PLA @Z-Bolt 0.8 nozzle", "sub_path": "filament/Generic PLA @Z-Bolt 0.8 nozzle.json" }, - { - "name": "Generic ABS HT @Z-Bolt Base", - "sub_path": "filament/Generic ABS HT @Z-Bolt Base.json" - }, { "name": "Generic ABS HT @Z-Bolt 0.4 nozzle", "sub_path": "filament/Generic ABS HT @Z-Bolt 0.4 nozzle.json" diff --git a/resources/profiles/re3D.json b/resources/profiles/re3D.json index ef664c9ee2e..7ab68290f28 100644 --- a/resources/profiles/re3D.json +++ b/resources/profiles/re3D.json @@ -12,21 +12,21 @@ "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 Gigabot X2", - "sub_path": "machine/re3D Gigabot X2.json" - }, - { - "name": "re3D Gigabot X2 XLT", - "sub_path": "machine/re3D Gigabot X2 XLT.json" - }, - { - "name": "re3D Terabot X2", - "sub_path": "machine/re3D Terabot X2.json" + "name": "re3D TerabotX 2", + "sub_path": "machine/re3D TerabotX 2.json" } ], "process_list": [ @@ -43,27 +43,31 @@ "sub_path": "process/fgf_process_re3D_common.json" }, { - "name": "0.2mm Fine @re3D fdm 0.4", + "name": "0.2 Fine", "sub_path": "process/0.2mm Fine @re3D fdm 0.4.json" }, { - "name": "0.26mm Standard @re3D fdm 0.4", + "name": "0.26 Standard", "sub_path": "process/0.26mm Standard @re3D fdm 0.4.json" }, { - "name": "0.32mm Draft @re3D fdm 0.4", + "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.2mm Standard @re3D fdm 0.8", - "sub_path": "process/0.2mm Standard @re3D fdm 0.8.json" - }, - { - "name": "0.4mm Draft @re3D fdm 0.8", + "name": "0.4 Standard", "sub_path": "process/0.4mm Draft @re3D fdm 0.8.json" }, { - "name": "1.0mm Standard @re3D fgf 1.75", + "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" } ], @@ -72,6 +76,10 @@ "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" @@ -81,28 +89,64 @@ "sub_path": "filament/fdm_filament_pla.json" }, { - "name": "fdm_filament_pc", - "sub_path": "filament/fdm_filament_pc.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 PC", - "sub_path": "filament/re3D PC.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 PLA", - "sub_path": "filament/re3D PLA.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": [ @@ -143,16 +187,28 @@ "sub_path": "machine/re3D Terabot 4 0.8 nozzle.json" }, { - "name": "re3D Gigabot X2 1.75 nozzle", - "sub_path": "machine/re3D Gigabot X2 1.75 nozzle.json" + "name": "re3D GigabotX 2 0.8 nozzle", + "sub_path": "machine/re3D GigabotX 2 0.8 nozzle.json" }, { - "name": "re3D Gigabot X2 XLT 1.75 nozzle", - "sub_path": "machine/re3D Gigabot X2 XLT 1.75 nozzle.json" + "name": "re3D GigabotX 2 1.75 nozzle", + "sub_path": "machine/re3D GigabotX 2 1.75 nozzle.json" }, { - "name": "re3D Terabot X2 1.75 nozzle", - "sub_path": "machine/re3D Terabot X2 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" } ] } diff --git a/resources/profiles/re3D/filament/fdm_filament_common.json b/resources/profiles/re3D/filament/fdm_filament_common.json index 745f2581397..ce8ec10c622 100644 --- a/resources/profiles/re3D/filament/fdm_filament_common.json +++ b/resources/profiles/re3D/filament/fdm_filament_common.json @@ -2,170 +2,5 @@ "type": "filament", "name": "fdm_filament_common", "from": "system", - "instantiation": "false", - "cool_plate_temp": [ - "60" - ], - "eng_plate_temp": [ - "60" - ], - "hot_plate_temp": [ - "60" - ], - "textured_plate_temp": [ - "60" - ], - "cool_plate_temp_initial_layer": [ - "60" - ], - "eng_plate_temp_initial_layer": [ - "60" - ], - "hot_plate_temp_initial_layer": [ - "60" - ], - "textured_plate_temp_initial_layer": [ - "60" - ], - "overhang_fan_threshold": [ - "95%" - ], - "overhang_fan_speed": [ - "100" - ], - "slow_down_for_layer_cooling": [ - "1" - ], - "close_fan_the_first_x_layers": [ - "3" - ], - "filament_end_gcode": [ - "; filament end gcode \n" - ], - "filament_flow_ratio": [ - "1" - ], - "reduce_fan_stop_start_freq": [ - "0" - ], - "fan_cooling_layer_time": [ - "60" - ], - "filament_cost": [ - "0" - ], - "filament_density": [ - "0" - ], - "filament_deretraction_speed": [ - "nil" - ], - "filament_diameter": [ - "2.85" - ], - "filament_max_volumetric_speed": [ - "12" - ], - "filament_minimal_purge_on_wipe_tower": [ - "15" - ], - "filament_multitool_ramming_volume": [ - "15" - ], - "filament_multitool_ramming_flow": [ - "15" - ], - "filament_retraction_minimum_travel": [ - "nil" - ], - "filament_retract_before_wipe": [ - "nil" - ], - "filament_retract_when_changing_layer": [ - "nil" - ], - "filament_retraction_length": [ - "nil" - ], - "filament_z_hop": [ - "nil" - ], - "filament_z_hop_types": [ - "nil" - ], - "filament_retract_restart_extra": [ - "nil" - ], - "filament_retraction_speed": [ - "nil" - ], - "filament_settings_id": [ - "" - ], - "filament_soluble": [ - "0" - ], - "filament_type": [ - "PLA" - ], - "filament_vendor": [ - "Generic" - ], - "filament_wipe": [ - "nil" - ], - "filament_wipe_distance": [ - "nil" - ], - "bed_type": [ - "Cool Plate" - ], - "nozzle_temperature_initial_layer": [ - "200" - ], - "full_fan_speed_layer": [ - "0" - ], - "fan_max_speed": [ - "100" - ], - "fan_min_speed": [ - "35" - ], - "slow_down_min_speed": [ - "10" - ], - "slow_down_layer_time": [ - "8" - ], - "filament_start_gcode": [ - "; Filament gcode\n" - ], - "nozzle_temperature": [ - "200" - ], - "temperature_vitrification": [ - "100" - ], - "filament_loading_speed_start": [ - "0" - ], - "filament_loading_speed": [ - "0" - ], - "filament_unloading_speed_start": [ - "0" - ], - "filament_unloading_speed": [ - "0" - ], - "filament_cooling_moves": [ - "0" - ], - "filament_cooling_initial_speed": [ - "0" - ], - "filament_cooling_final_speed": [ - "0" - ] -} + "instantiation": "false" +} \ No newline at end of file diff --git a/resources/profiles/re3D/filament/fdm_filament_pc.json b/resources/profiles/re3D/filament/fdm_filament_pc.json index 439cf4f683d..46e7670b93d 100644 --- a/resources/profiles/re3D/filament/fdm_filament_pc.json +++ b/resources/profiles/re3D/filament/fdm_filament_pc.json @@ -4,91 +4,7 @@ "from": "system", "instantiation": "false", "inherits": "fdm_filament_common", - "pressure_advance": [ - "0.096" - ], - "cool_plate_temp": [ - "115" - ], - "eng_plate_temp": [ - "115" - ], - "hot_plate_temp": [ - "115" - ], - "textured_plate_temp": [ - "115" - ], - "cool_plate_temp_initial_layer": [ - "113" - ], - "eng_plate_temp_initial_layer": [ - "113" - ], - "hot_plate_temp_initial_layer": [ - "113" - ], - "textured_plate_temp_initial_layer": [ - "113" - ], - "slow_down_for_layer_cooling": [ - "1" - ], - "close_fan_the_first_x_layers": [ - "3" - ], - "fan_cooling_layer_time": [ - "30" - ], - "slow_down_layer_time": [ - "2" - ], - "filament_max_volumetric_speed": [ - "12" - ], "filament_type": [ "PC" - ], - "filament_density": [ - "1.04" - ], - "filament_cost": [ - "0" - ], - "nozzle_temperature_initial_layer": [ - "260" - ], - "reduce_fan_stop_start_freq": [ - "1" - ], - "fan_max_speed": [ - "60" - ], - "fan_min_speed": [ - "10" - ], - "overhang_fan_speed": [ - "60" - ], - "overhang_fan_threshold": [ - "25%" - ], - "support_material_interface_fan_speed": [ - "100" - ], - "nozzle_temperature": [ - "260" - ], - "temperature_vitrification": [ - "120" - ], - "nozzle_temperature_range_low": [ - "260" - ], - "nozzle_temperature_range_high": [ - "280" - ], - "filament_start_gcode": [ - "; filament start gcode\n" ] -} +} \ No newline at end of file diff --git a/resources/profiles/re3D/filament/fdm_filament_pet.json b/resources/profiles/re3D/filament/fdm_filament_pet.json index 73c3886a2c8..3aab46b0d51 100644 --- a/resources/profiles/re3D/filament/fdm_filament_pet.json +++ b/resources/profiles/re3D/filament/fdm_filament_pet.json @@ -4,79 +4,7 @@ "from": "system", "instantiation": "false", "inherits": "fdm_filament_common", - "filament_density": [ - "1.27" - ], - "filament_cost": [ - "0" - ], - "temperature_vitrification": [ - "70" - ], - "close_fan_the_first_x_layers": [ - "3" - ], - "enable_overhang_bridge_fan": [ - "1" - ], - "fan_cooling_layer_time": [ - "30" - ], - "fan_max_speed": [ - "100" - ], - "fan_min_speed": [ - "80" - ], - "filament_diameter": [ - "2.85" - ], - "filament_flow_ratio": [ - "0.91" - ], - "filament_max_volumetric_speed": [ - "9.5" - ], - "filament_minimal_purge_on_wipe_tower": [ - "15" - ], "filament_type": [ "PETG" - ], - "hot_plate_temp": [ - "70" - ], - "hot_plate_temp_initial_layer": [ - "70" - ], - "nozzle_temperature": [ - "250" - ], - "nozzle_temperature_initial_layer": [ - "250" - ], - "nozzle_temperature_range_low": [ - "230" - ], - "nozzle_temperature_range_high": [ - "250" - ], - "overhang_fan_threshold": [ - "95%" - ], - "pressure_advance": [ - "0.205" - ], - "reduce_fan_stop_start_freq": [ - "1" - ], - "slow_down_layer_time": [ - "8" - ], - "slow_down_min_speed": [ - "10" - ], - "support_material_interface_fan_speed": [ - "100" ] -} +} \ No newline at end of file diff --git a/resources/profiles/re3D/filament/fdm_filament_pla.json b/resources/profiles/re3D/filament/fdm_filament_pla.json index 14f0ce38289..b6782502641 100644 --- a/resources/profiles/re3D/filament/fdm_filament_pla.json +++ b/resources/profiles/re3D/filament/fdm_filament_pla.json @@ -4,97 +4,7 @@ "from": "system", "instantiation": "false", "inherits": "fdm_filament_common", - "filament_flow_ratio": [ - "0.91" - ], - "pressure_advance": [ - "0.11" - ], - "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": [ - "0%" - ], - "close_fan_the_first_x_layers": [ - "1" - ], - "nozzle_temperature": [ - "220" - ], - "temperature_vitrification": [ - "45" - ], - "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" ] -} +} \ No newline at end of file diff --git a/resources/profiles/re3D/filament/re3D Greengate rPETG @0.8 nozzle.json b/resources/profiles/re3D/filament/re3D Greengate rPETG @0.8 nozzle.json new file mode 100644 index 00000000000..0649a23f8f6 --- /dev/null +++ b/resources/profiles/re3D/filament/re3D Greengate rPETG @0.8 nozzle.json @@ -0,0 +1,113 @@ +{ + "type": "filament", + "filament_id": "GFG01", + "setting_id": "GFSG01", + "name": "re3D Greengate rPETG @0.8 nozzle", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_pet", + "nozzle_temperature_initial_layer": [ + "0" + ], + "nozzle_temperature": [ + "0" + ], + "nozzle_temperature_range_low": [ + "220" + ], + "nozzle_temperature_range_high": [ + "260" + ], + "hot_plate_temp_initial_layer": [ + "70" + ], + "hot_plate_temp": [ + "70" + ], + "filament_flow_ratio": [ + "1.0" + ], + "enable_pressure_advance": [ + "0" + ], + "slow_down_layer_time": [ + "20" + ], + "slow_down_min_speed": [ + "25" + ], + "filament_start_gcode": [ + "M190 S75\nM104 S220 T0\nM104 S210 T1\nM104 S200 T2\nM109 S220 T0\nM109 S210 T1\nM109 S200 T2" + ], + "filament_density": [ + "1.27" + ], + "filament_diameter": [ + "2.85" + ], + "filament_max_volumetric_speed": [ + "60" + ], + "cool_plate_temp": [ + "70" + ], + "cool_plate_temp_initial_layer": [ + "70" + ], + "eng_plate_temp": [ + "70" + ], + "eng_plate_temp_initial_layer": [ + "70" + ], + "textured_plate_temp": [ + "70" + ], + "textured_plate_temp_initial_layer": [ + "70" + ], + "fan_max_speed": [ + "100" + ], + "fan_min_speed": [ + "30" + ], + "fan_cooling_layer_time": [ + "20" + ], + "full_fan_speed_layer": [ + "2" + ], + "overhang_fan_threshold": [ + "95%" + ], + "overhang_fan_speed": [ + "80" + ], + "enable_overhang_bridge_fan": [ + "1" + ], + "slow_down_for_layer_cooling": [ + "1" + ], + "pressure_advance": [ + "0.205" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "temperature_vitrification": [ + "70" + ], + "support_material_interface_fan_speed": [ + "100" + ], + "filament_soluble": [ + "0" + ], + "compatible_printers": [ + "re3D GigabotX 2 0.8 nozzle", + "re3D GigabotX 2 XLT 0.8 nozzle", + "re3D TerabotX 2 0.8 nozzle" + ] +} \ No newline at end of file diff --git a/resources/profiles/re3D/filament/re3D Greengate rPETG @1.75 nozzle.json b/resources/profiles/re3D/filament/re3D Greengate rPETG @1.75 nozzle.json new file mode 100644 index 00000000000..a409f08bbe2 --- /dev/null +++ b/resources/profiles/re3D/filament/re3D Greengate rPETG @1.75 nozzle.json @@ -0,0 +1,113 @@ +{ + "type": "filament", + "filament_id": "GFG01", + "setting_id": "GFSG01_175", + "name": "re3D Greengate rPETG @1.75 nozzle", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_pet", + "nozzle_temperature_initial_layer": [ + "0" + ], + "nozzle_temperature": [ + "0" + ], + "nozzle_temperature_range_low": [ + "220" + ], + "nozzle_temperature_range_high": [ + "260" + ], + "hot_plate_temp_initial_layer": [ + "70" + ], + "hot_plate_temp": [ + "70" + ], + "filament_flow_ratio": [ + "1.0" + ], + "enable_pressure_advance": [ + "0" + ], + "slow_down_layer_time": [ + "20" + ], + "slow_down_min_speed": [ + "25" + ], + "filament_start_gcode": [ + "M190 S75\nM104 S220 T0\nM104 S210 T1\nM104 S200 T2\nM109 S220 T0\nM109 S210 T1\nM109 S200 T2" + ], + "filament_density": [ + "1.27" + ], + "filament_diameter": [ + "2.85" + ], + "filament_max_volumetric_speed": [ + "60" + ], + "cool_plate_temp": [ + "70" + ], + "cool_plate_temp_initial_layer": [ + "70" + ], + "eng_plate_temp": [ + "70" + ], + "eng_plate_temp_initial_layer": [ + "70" + ], + "textured_plate_temp": [ + "70" + ], + "textured_plate_temp_initial_layer": [ + "70" + ], + "fan_max_speed": [ + "100" + ], + "fan_min_speed": [ + "30" + ], + "fan_cooling_layer_time": [ + "20" + ], + "full_fan_speed_layer": [ + "2" + ], + "overhang_fan_threshold": [ + "95%" + ], + "overhang_fan_speed": [ + "80" + ], + "enable_overhang_bridge_fan": [ + "1" + ], + "slow_down_for_layer_cooling": [ + "1" + ], + "pressure_advance": [ + "0.205" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "temperature_vitrification": [ + "70" + ], + "support_material_interface_fan_speed": [ + "100" + ], + "filament_soluble": [ + "0" + ], + "compatible_printers": [ + "re3D GigabotX 2 1.75 nozzle", + "re3D GigabotX 2 XLT 1.75 nozzle", + "re3D TerabotX 2 1.75 nozzle" + ] +} \ No newline at end of file diff --git a/resources/profiles/re3D/filament/re3D Greengate rPETG.json b/resources/profiles/re3D/filament/re3D Greengate rPETG.json index 09eb5051024..6c56f72fb56 100644 --- a/resources/profiles/re3D/filament/re3D Greengate rPETG.json +++ b/resources/profiles/re3D/filament/re3D Greengate rPETG.json @@ -1,47 +1,20 @@ { "type": "filament", - "filament_id": "GFG99", - "setting_id": "GFSG99", "name": "re3D Greengate rPETG", "from": "system", "instantiation": "true", "inherits": "fdm_filament_pet", - "nozzle_temperature_initial_layer": [ - "255" - ], - "nozzle_temperature": [ - "255" - ], - "nozzle_temperature_range_low": [ - "220" - ], - "nozzle_temperature_range_high": [ - "260" - ], - "hot_plate_temp_initial_layer": [ - "80" - ], - "hot_plate_temp": [ - "80" - ], - "filament_flow_ratio": [ - "1.02" - ], - "enable_pressure_advance": [ - "0" - ], - "slow_down_layer_time": [ - "20" - ], - "slow_down_min_speed": [ - "25" - ], - "filament_start_gcode": [ - "M190 S75\nM104 S220 T0\nM104 S210 T1\nM104 S200 T2\nM109 S220 T0\nM109 S210 T1\nM109 S200 T2" + "filament_id": "GFG01", + "setting_id": "re3d_greengate_rpetg", + "filament_settings_id": [ + "re3D Greengate rPETG" ], "compatible_printers": [ - "re3D Gigabot X2 1.75 nozzle", - "re3D Gigabot X2 XLT 1.75 nozzle", - "re3D Terabot X2 1.75 nozzle" + "re3D GigabotX 2", + "re3D GigabotX 2 XLT", + "re3D TerabotX 2" + ], + "filament_vendor": [ + "re3D" ] -} +} \ 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 new file mode 100644 index 00000000000..97e5308b5b0 --- /dev/null +++ b/resources/profiles/re3D/filament/re3D PC @0.4 nozzle.json @@ -0,0 +1,173 @@ +{ + "type": "filament", + "name": "re3D PC @0.4 nozzle", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_pc", + "filament_id": "GFG99", + "setting_id": "re3d_pc_04", + "filament_settings_id": [ + "re3D PC @0.4 nozzle" + ], + "compatible_printers": [ + "re3D Gigabot 4 0.4 nozzle", + "re3D Gigabot 4 XLT 0.4 nozzle", + "re3D Terabot 4 0.4 nozzle" + ], + "filament_vendor": [ + "re3D" + ], + "filament_density": [ + "1.19" + ], + "filament_diameter": [ + "2.85" + ], + "filament_flow_ratio": [ + "0.99" + ], + "filament_max_volumetric_speed": [ + "11.5" + ], + "nozzle_temperature": [ + "260" + ], + "nozzle_temperature_initial_layer": [ + "20" + ], + "nozzle_temperature_range_low": [ + "250" + ], + "nozzle_temperature_range_high": [ + "270" + ], + "hot_plate_temp": [ + "115" + ], + "hot_plate_temp_initial_layer": [ + "113" + ], + "cool_plate_temp": [ + "115" + ], + "cool_plate_temp_initial_layer": [ + "113" + ], + "eng_plate_temp": [ + "115" + ], + "eng_plate_temp_initial_layer": [ + "113" + ], + "textured_plate_temp": [ + "115" + ], + "textured_plate_temp_initial_layer": [ + "113" + ], + "fan_max_speed": [ + "80" + ], + "fan_min_speed": [ + "30" + ], + "fan_cooling_layer_time": [ + "20" + ], + "close_fan_the_first_x_layers": [ + "2" + ], + "overhang_fan_threshold": [ + "50%" + ], + "overhang_fan_speed": [ + "40" + ], + "enable_overhang_bridge_fan": [ + "1" + ], + "slow_down_for_layer_cooling": [ + "1" + ], + "slow_down_layer_time": [ + "30" + ], + "slow_down_min_speed": [ + "30" + ], + "pressure_advance": [ + "0.096" + ], + "enable_pressure_advance": [ + "1" + ], + "reduce_fan_stop_start_freq": [ + "0" + ], + "filament_retraction_length": [ + "0.8" + ], + "filament_soluble": [ + "0" + ], + "support_material_interface_fan_speed": [ + "100" + ], + "filament_multitool_ramming": [ + "1" + ], + "filament_multitool_ramming_volume": [ + "20" + ], + "filament_multitool_ramming_flow": [ + "10.5" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ], + "filament_tower_interface_pre_extrusion_dist": [ + "0" + ], + "filament_tower_interface_pre_extrusion_length": [ + "0" + ], + "filament_tower_ironing_area": [ + "0" + ], + "filament_tower_interface_purge_volume": [ + "0" + ], + "filament_tower_interface_print_temp": [ + "0" + ], + "filament_loading_speed_start": [ + "0" + ], + "filament_loading_speed": [ + "0" + ], + "filament_unloading_speed_start": [ + "0" + ], + "filament_unloading_speed": [ + "0" + ], + "filament_toolchange_delay": [ + "0" + ], + "filament_cooling_moves": [ + "0" + ], + "filament_cooling_initial_speed": [ + "0" + ], + "filament_cooling_final_speed": [ + "0" + ], + "filament_stamping_loading_speed": [ + "0" + ], + "filament_stamping_distance": [ + "0" + ] +} \ No newline at end of file diff --git a/resources/profiles/re3D/filament/re3D PC @0.8 nozzle.json b/resources/profiles/re3D/filament/re3D PC @0.8 nozzle.json new file mode 100644 index 00000000000..783856f0a32 --- /dev/null +++ b/resources/profiles/re3D/filament/re3D PC @0.8 nozzle.json @@ -0,0 +1,173 @@ +{ + "type": "filament", + "name": "re3D PC @0.8 nozzle", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_pc", + "filament_id": "GFG99", + "setting_id": "re3d_pc_08", + "filament_settings_id": [ + "re3D PC @0.8 nozzle" + ], + "compatible_printers": [ + "re3D Gigabot 4 0.8 nozzle", + "re3D Gigabot 4 XLT 0.8 nozzle", + "re3D Terabot 4 0.8 nozzle" + ], + "filament_vendor": [ + "re3D" + ], + "filament_density": [ + "1.19" + ], + "filament_diameter": [ + "2.85" + ], + "filament_flow_ratio": [ + "0.99" + ], + "filament_max_volumetric_speed": [ + "11.5" + ], + "nozzle_temperature": [ + "265" + ], + "nozzle_temperature_initial_layer": [ + "265" + ], + "nozzle_temperature_range_low": [ + "250" + ], + "nozzle_temperature_range_high": [ + "270" + ], + "hot_plate_temp": [ + "115" + ], + "hot_plate_temp_initial_layer": [ + "113" + ], + "cool_plate_temp": [ + "115" + ], + "cool_plate_temp_initial_layer": [ + "113" + ], + "eng_plate_temp": [ + "115" + ], + "eng_plate_temp_initial_layer": [ + "113" + ], + "textured_plate_temp": [ + "115" + ], + "textured_plate_temp_initial_layer": [ + "113" + ], + "fan_max_speed": [ + "80" + ], + "fan_min_speed": [ + "30" + ], + "fan_cooling_layer_time": [ + "20" + ], + "close_fan_the_first_x_layers": [ + "2" + ], + "overhang_fan_threshold": [ + "50%" + ], + "overhang_fan_speed": [ + "40" + ], + "enable_overhang_bridge_fan": [ + "1" + ], + "slow_down_for_layer_cooling": [ + "1" + ], + "slow_down_layer_time": [ + "30" + ], + "slow_down_min_speed": [ + "30" + ], + "pressure_advance": [ + "0.096" + ], + "enable_pressure_advance": [ + "1" + ], + "reduce_fan_stop_start_freq": [ + "0" + ], + "filament_retraction_length": [ + "0.8" + ], + "filament_soluble": [ + "0" + ], + "support_material_interface_fan_speed": [ + "100" + ], + "filament_multitool_ramming": [ + "1" + ], + "filament_multitool_ramming_volume": [ + "20" + ], + "filament_multitool_ramming_flow": [ + "10.5" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ], + "filament_tower_interface_pre_extrusion_dist": [ + "0" + ], + "filament_tower_interface_pre_extrusion_length": [ + "0" + ], + "filament_tower_ironing_area": [ + "0" + ], + "filament_tower_interface_purge_volume": [ + "0" + ], + "filament_tower_interface_print_temp": [ + "0" + ], + "filament_loading_speed_start": [ + "0" + ], + "filament_loading_speed": [ + "0" + ], + "filament_unloading_speed_start": [ + "0" + ], + "filament_unloading_speed": [ + "0" + ], + "filament_toolchange_delay": [ + "0" + ], + "filament_cooling_moves": [ + "0" + ], + "filament_cooling_initial_speed": [ + "0" + ], + "filament_cooling_final_speed": [ + "0" + ], + "filament_stamping_loading_speed": [ + "0" + ], + "filament_stamping_distance": [ + "0" + ] +} \ No newline at end of file diff --git a/resources/profiles/re3D/filament/re3D PC.json b/resources/profiles/re3D/filament/re3D PC.json index 682eaefc334..12498c0d2b9 100644 --- a/resources/profiles/re3D/filament/re3D PC.json +++ b/resources/profiles/re3D/filament/re3D PC.json @@ -1,17 +1,20 @@ { "type": "filament", - "filament_id": "GFG99", - "setting_id": "GFSG99", "name": "re3D PC", "from": "system", "instantiation": "true", "inherits": "fdm_filament_pc", + "filament_id": "GFG99", + "setting_id": "re3d_pc", + "filament_settings_id": [ + "re3D PC" + ], "compatible_printers": [ - "re3D Gigabot 4 0.4 nozzle", - "re3D Gigabot 4 XLT 0.4 nozzle", - "re3D Terabot 4 0.4 nozzle", - "re3D Gigabot 4 0.8 nozzle", - "re3D Gigabot 4 XLT 0.8 nozzle", - "re3D Terabot 4 0.8 nozzle" + "re3D Gigabot 4", + "re3D Gigabot 4 XLT", + "re3D Terabot 4" + ], + "filament_vendor": [ + "re3D" ] -} +} \ No newline at end of file diff --git a/resources/profiles/re3D/filament/re3D PETG @0.4 nozzle.json b/resources/profiles/re3D/filament/re3D PETG @0.4 nozzle.json new file mode 100644 index 00000000000..3878394f8de --- /dev/null +++ b/resources/profiles/re3D/filament/re3D PETG @0.4 nozzle.json @@ -0,0 +1,173 @@ +{ + "type": "filament", + "name": "re3D PETG @0.4 nozzle", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_pet", + "filament_id": "GFG03", + "setting_id": "re3d_petg_04", + "filament_settings_id": [ + "re3D PETG @0.4 nozzle" + ], + "compatible_printers": [ + "re3D Gigabot 4 0.4 nozzle", + "re3D Gigabot 4 XLT 0.4 nozzle", + "re3D Terabot 4 0.4 nozzle" + ], + "filament_vendor": [ + "re3D" + ], + "close_fan_the_first_x_layers": [ + "2" + ], + "filament_density": [ + "1.27" + ], + "filament_diameter": [ + "2.85" + ], + "filament_flow_ratio": [ + "0.99" + ], + "filament_max_volumetric_speed": [ + "10.5" + ], + "nozzle_temperature": [ + "250" + ], + "nozzle_temperature_initial_layer": [ + "250" + ], + "nozzle_temperature_range_low": [ + "240" + ], + "nozzle_temperature_range_high": [ + "260" + ], + "hot_plate_temp": [ + "70" + ], + "hot_plate_temp_initial_layer": [ + "70" + ], + "cool_plate_temp": [ + "70" + ], + "cool_plate_temp_initial_layer": [ + "70" + ], + "eng_plate_temp": [ + "70" + ], + "eng_plate_temp_initial_layer": [ + "70" + ], + "textured_plate_temp": [ + "70" + ], + "textured_plate_temp_initial_layer": [ + "70" + ], + "fan_max_speed": [ + "80" + ], + "fan_min_speed": [ + "20" + ], + "fan_cooling_layer_time": [ + "20" + ], + "full_fan_speed_layer": [ + "3" + ], + "overhang_fan_threshold": [ + "50%" + ], + "overhang_fan_speed": [ + "80" + ], + "enable_overhang_bridge_fan": [ + "1" + ], + "slow_down_for_layer_cooling": [ + "1" + ], + "slow_down_layer_time": [ + "20" + ], + "slow_down_min_speed": [ + "30" + ], + "pressure_advance": [ + "0.205" + ], + "enable_pressure_advance": [ + "1" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "support_material_interface_fan_speed": [ + "100" + ], + "filament_soluble": [ + "0" + ], + "filament_multitool_ramming": [ + "1" + ], + "filament_multitool_ramming_volume": [ + "20" + ], + "filament_multitool_ramming_flow": [ + "10.5" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ], + "filament_tower_interface_pre_extrusion_dist": [ + "0" + ], + "filament_tower_interface_pre_extrusion_length": [ + "0" + ], + "filament_tower_ironing_area": [ + "0" + ], + "filament_tower_interface_purge_volume": [ + "0" + ], + "filament_tower_interface_print_temp": [ + "0" + ], + "filament_loading_speed_start": [ + "0" + ], + "filament_loading_speed": [ + "0" + ], + "filament_unloading_speed_start": [ + "0" + ], + "filament_unloading_speed": [ + "0" + ], + "filament_toolchange_delay": [ + "0" + ], + "filament_cooling_moves": [ + "0" + ], + "filament_cooling_initial_speed": [ + "0" + ], + "filament_cooling_final_speed": [ + "0" + ], + "filament_stamping_loading_speed": [ + "0" + ], + "filament_stamping_distance": [ + "0" + ] +} \ No newline at end of file diff --git a/resources/profiles/re3D/filament/re3D PETG @0.8 nozzle.json b/resources/profiles/re3D/filament/re3D PETG @0.8 nozzle.json new file mode 100644 index 00000000000..61583c2cd32 --- /dev/null +++ b/resources/profiles/re3D/filament/re3D PETG @0.8 nozzle.json @@ -0,0 +1,173 @@ +{ + "type": "filament", + "name": "re3D PETG @0.8 nozzle", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_pet", + "filament_id": "GFG03", + "setting_id": "re3d_petg_08", + "filament_settings_id": [ + "re3D PETG @0.8 nozzle" + ], + "compatible_printers": [ + "re3D Gigabot 4 0.8 nozzle", + "re3D Gigabot 4 XLT 0.8 nozzle", + "re3D Terabot 4 0.8 nozzle" + ], + "filament_vendor": [ + "re3D" + ], + "close_fan_the_first_x_layers": [ + "2" + ], + "filament_density": [ + "1.27" + ], + "filament_diameter": [ + "2.85" + ], + "filament_flow_ratio": [ + "0.99" + ], + "filament_max_volumetric_speed": [ + "10.5" + ], + "nozzle_temperature": [ + "250" + ], + "nozzle_temperature_initial_layer": [ + "250" + ], + "nozzle_temperature_range_low": [ + "240" + ], + "nozzle_temperature_range_high": [ + "260" + ], + "hot_plate_temp": [ + "70" + ], + "hot_plate_temp_initial_layer": [ + "70" + ], + "cool_plate_temp": [ + "70" + ], + "cool_plate_temp_initial_layer": [ + "70" + ], + "eng_plate_temp": [ + "70" + ], + "eng_plate_temp_initial_layer": [ + "70" + ], + "textured_plate_temp": [ + "70" + ], + "textured_plate_temp_initial_layer": [ + "70" + ], + "fan_max_speed": [ + "80" + ], + "fan_min_speed": [ + "20" + ], + "fan_cooling_layer_time": [ + "20" + ], + "full_fan_speed_layer": [ + "3" + ], + "overhang_fan_threshold": [ + "50%" + ], + "overhang_fan_speed": [ + "80" + ], + "enable_overhang_bridge_fan": [ + "1" + ], + "slow_down_for_layer_cooling": [ + "1" + ], + "slow_down_layer_time": [ + "20" + ], + "slow_down_min_speed": [ + "30" + ], + "pressure_advance": [ + "0.205" + ], + "enable_pressure_advance": [ + "1" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "support_material_interface_fan_speed": [ + "100" + ], + "filament_soluble": [ + "0" + ], + "filament_multitool_ramming": [ + "1" + ], + "filament_multitool_ramming_volume": [ + "20" + ], + "filament_multitool_ramming_flow": [ + "10.5" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ], + "filament_tower_interface_pre_extrusion_dist": [ + "0" + ], + "filament_tower_interface_pre_extrusion_length": [ + "0" + ], + "filament_tower_ironing_area": [ + "0" + ], + "filament_tower_interface_purge_volume": [ + "0" + ], + "filament_tower_interface_print_temp": [ + "0" + ], + "filament_loading_speed_start": [ + "0" + ], + "filament_loading_speed": [ + "0" + ], + "filament_unloading_speed_start": [ + "0" + ], + "filament_unloading_speed": [ + "0" + ], + "filament_toolchange_delay": [ + "0" + ], + "filament_cooling_moves": [ + "0" + ], + "filament_cooling_initial_speed": [ + "0" + ], + "filament_cooling_final_speed": [ + "0" + ], + "filament_stamping_loading_speed": [ + "0" + ], + "filament_stamping_distance": [ + "0" + ] +} \ No newline at end of file diff --git a/resources/profiles/re3D/filament/re3D PETG.json b/resources/profiles/re3D/filament/re3D PETG.json index d1dc763475e..959c5585648 100644 --- a/resources/profiles/re3D/filament/re3D PETG.json +++ b/resources/profiles/re3D/filament/re3D PETG.json @@ -1,26 +1,20 @@ { "type": "filament", - "filament_id": "GFG99", - "setting_id": "GFSG99", "name": "re3D PETG", "from": "system", "instantiation": "true", "inherits": "fdm_filament_pet", - "filament_start_gcode": [ - "; Filament gcode" - ], - "filament_end_gcode": [ - "; filament end gcode" - ], - "filament_retraction_length": [ - "1" + "filament_id": "GFG03", + "setting_id": "re3d_petg", + "filament_settings_id": [ + "re3D PETG" ], "compatible_printers": [ - "re3D Gigabot 4 0.4 nozzle", - "re3D Gigabot 4 XLT 0.4 nozzle", - "re3D Terabot 4 0.4 nozzle", - "re3D Gigabot 4 0.8 nozzle", - "re3D Gigabot 4 XLT 0.8 nozzle", - "re3D Terabot 4 0.8 nozzle" + "re3D Gigabot 4", + "re3D Gigabot 4 XLT", + "re3D Terabot 4" + ], + "filament_vendor": [ + "re3D" ] -} +} \ No newline at end of file diff --git a/resources/profiles/re3D/filament/re3D PLA @0.4 nozzle.json b/resources/profiles/re3D/filament/re3D PLA @0.4 nozzle.json new file mode 100644 index 00000000000..9b41a6b8631 --- /dev/null +++ b/resources/profiles/re3D/filament/re3D PLA @0.4 nozzle.json @@ -0,0 +1,174 @@ +{ + "type": "filament", + "name": "re3D PLA @0.4 nozzle", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_pla", + "filament_id": "GFL99", + "setting_id": "re3d_pla_04", + "filament_settings_id": [ + "re3D PLA @0.4 nozzle" + ], + "compatible_printers": [ + "re3D Gigabot 4 0.4 nozzle", + "re3D Gigabot 4 XLT 0.4 nozzle", + "re3D Terabot 4 0.4 nozzle" + ], + "filament_vendor": [ + "re3D" + ], + "close_fan_the_first_x_layers": "2", + "filament_density": [ + "1.24" + ], + "filament_diameter": [ + "2.85" + ], + "filament_flow_ratio": [ + "0.99" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "nozzle_temperature": [ + "240" + ], + "nozzle_temperature_initial_layer": [ + "240" + ], + "nozzle_temperature_range_low": [ + "220" + ], + "nozzle_temperature_range_high": [ + "250" + ], + "hot_plate_temp": [ + "65" + ], + "hot_plate_temp_initial_layer": [ + "65" + ], + "cool_plate_temp": [ + "65" + ], + "cool_plate_temp_initial_layer": [ + "65" + ], + "eng_plate_temp": [ + "65" + ], + "eng_plate_temp_initial_layer": [ + "65" + ], + "textured_plate_temp": [ + "65" + ], + "textured_plate_temp_initial_layer": [ + "65" + ], + "fan_max_speed": [ + "100" + ], + "fan_min_speed": [ + "80" + ], + "fan_cooling_layer_time": [ + "20" + ], + "full_fan_speed_layer": [ + "2" + ], + "overhang_fan_threshold": [ + "0%" + ], + "overhang_fan_speed": [ + "80" + ], + "enable_overhang_bridge_fan": [ + "1" + ], + "slow_down_for_layer_cooling": [ + "1" + ], + "slow_down_layer_time": [ + "20" + ], + "slow_down_min_speed": [ + "30" + ], + "pressure_advance": [ + "0.096" + ], + "enable_pressure_advance": [ + "1" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "temperature_vitrification": [ + "70" + ], + "support_material_interface_fan_speed": [ + "100" + ], + "filament_soluble": [ + "0" + ], + "filament_multitool_ramming": [ + "1" + ], + "filament_multitool_ramming_volume": [ + "20" + ], + "filament_multitool_ramming_flow": [ + "10.5" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ], + "filament_tower_interface_pre_extrusion_dist": [ + "0" + ], + "filament_tower_interface_pre_extrusion_length": [ + "0" + ], + "filament_tower_ironing_area": [ + "0" + ], + "filament_tower_interface_purge_volume": [ + "0" + ], + "filament_tower_interface_print_temp": [ + "0" + ], + "filament_loading_speed_start": [ + "0" + ], + "filament_loading_speed": [ + "0" + ], + "filament_unloading_speed_start": [ + "0" + ], + "filament_unloading_speed": [ + "0" + ], + "filament_toolchange_delay": [ + "0" + ], + "filament_cooling_moves": [ + "0" + ], + "filament_cooling_initial_speed": [ + "0" + ], + "filament_cooling_final_speed": [ + "0" + ], + "filament_stamping_loading_speed": [ + "0" + ], + "filament_stamping_distance": [ + "0" + ] +} \ No newline at end of file diff --git a/resources/profiles/re3D/filament/re3D PLA @0.8 nozzle.json b/resources/profiles/re3D/filament/re3D PLA @0.8 nozzle.json new file mode 100644 index 00000000000..a38682a5d00 --- /dev/null +++ b/resources/profiles/re3D/filament/re3D PLA @0.8 nozzle.json @@ -0,0 +1,174 @@ +{ + "type": "filament", + "name": "re3D PLA @0.8 nozzle", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_pla", + "filament_id": "GFL99", + "setting_id": "re3d_pla_08", + "filament_settings_id": [ + "re3D PLA @0.8 nozzle" + ], + "compatible_printers": [ + "re3D Gigabot 4 0.8 nozzle", + "re3D Gigabot 4 XLT 0.8 nozzle", + "re3D Terabot 4 0.8 nozzle" + ], + "filament_vendor": [ + "re3D" + ], + "close_fan_the_first_x_layers": "2", + "filament_density": [ + "1.24" + ], + "filament_diameter": [ + "2.85" + ], + "filament_flow_ratio": [ + "0.99" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "nozzle_temperature": [ + "240" + ], + "nozzle_temperature_initial_layer": [ + "240" + ], + "nozzle_temperature_range_low": [ + "220" + ], + "nozzle_temperature_range_high": [ + "250" + ], + "hot_plate_temp": [ + "65" + ], + "hot_plate_temp_initial_layer": [ + "65" + ], + "cool_plate_temp": [ + "65" + ], + "cool_plate_temp_initial_layer": [ + "65" + ], + "eng_plate_temp": [ + "65" + ], + "eng_plate_temp_initial_layer": [ + "65" + ], + "textured_plate_temp": [ + "65" + ], + "textured_plate_temp_initial_layer": [ + "65" + ], + "fan_max_speed": [ + "100" + ], + "fan_min_speed": [ + "80" + ], + "fan_cooling_layer_time": [ + "20" + ], + "full_fan_speed_layer": [ + "2" + ], + "overhang_fan_threshold": [ + "0%" + ], + "overhang_fan_speed": [ + "80" + ], + "enable_overhang_bridge_fan": [ + "1" + ], + "slow_down_for_layer_cooling": [ + "1" + ], + "slow_down_layer_time": [ + "20" + ], + "slow_down_min_speed": [ + "30" + ], + "pressure_advance": [ + "0.096" + ], + "enable_pressure_advance": [ + "1" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "temperature_vitrification": [ + "70" + ], + "support_material_interface_fan_speed": [ + "100" + ], + "filament_soluble": [ + "0" + ], + "filament_multitool_ramming": [ + "1" + ], + "filament_multitool_ramming_volume": [ + "20" + ], + "filament_multitool_ramming_flow": [ + "10.5" + ], + "filament_minimal_purge_on_wipe_tower": [ + "15" + ], + "filament_tower_interface_pre_extrusion_dist": [ + "0" + ], + "filament_tower_interface_pre_extrusion_length": [ + "0" + ], + "filament_tower_ironing_area": [ + "0" + ], + "filament_tower_interface_purge_volume": [ + "0" + ], + "filament_tower_interface_print_temp": [ + "0" + ], + "filament_loading_speed_start": [ + "0" + ], + "filament_loading_speed": [ + "0" + ], + "filament_unloading_speed_start": [ + "0" + ], + "filament_unloading_speed": [ + "0" + ], + "filament_toolchange_delay": [ + "0" + ], + "filament_cooling_moves": [ + "0" + ], + "filament_cooling_initial_speed": [ + "0" + ], + "filament_cooling_final_speed": [ + "0" + ], + "filament_stamping_loading_speed": [ + "0" + ], + "filament_stamping_distance": [ + "0" + ] +} \ No newline at end of file diff --git a/resources/profiles/re3D/filament/re3D PLA.json b/resources/profiles/re3D/filament/re3D PLA.json index 73a37cf35b7..bf2894030a2 100644 --- a/resources/profiles/re3D/filament/re3D PLA.json +++ b/resources/profiles/re3D/filament/re3D PLA.json @@ -1,17 +1,20 @@ { "type": "filament", - "filament_id": "GFL99", - "setting_id": "GFSL99", "name": "re3D PLA", "from": "system", "instantiation": "true", "inherits": "fdm_filament_pla", + "filament_id": "GFL99", + "setting_id": "re3d_pla", + "filament_settings_id": [ + "re3D PLA" + ], "compatible_printers": [ - "re3D Gigabot 4 0.4 nozzle", - "re3D Gigabot 4 XLT 0.4 nozzle", - "re3D Terabot 4 0.4 nozzle", - "re3D Gigabot 4 0.8 nozzle", - "re3D Gigabot 4 XLT 0.8 nozzle", - "re3D Terabot 4 0.8 nozzle" + "re3D Gigabot 4", + "re3D Gigabot 4 XLT", + "re3D Terabot 4" + ], + "filament_vendor": [ + "re3D" ] -} +} \ No newline at end of file diff --git a/resources/profiles/re3D/filament/re3D rPP @0.8 nozzle.json b/resources/profiles/re3D/filament/re3D rPP @0.8 nozzle.json new file mode 100644 index 00000000000..3312aa97024 --- /dev/null +++ b/resources/profiles/re3D/filament/re3D rPP @0.8 nozzle.json @@ -0,0 +1,65 @@ +{ + "type": "filament", + "filament_id": "GFG02", + "setting_id": "GFSG02", + "name": "re3D rPP @0.8 nozzle", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_pet", + "filament_type": [ + "PP" + ], + "filament_vendor": [ + "re3D" + ], + "close_fan_the_first_x_layers": [ + "2" + ], + "default_filament_colour": [ + "#FFFFFF" + ], + "filament_density": [ + "0.675" + ], + "filament_max_volumetric_speed": [ + "40" + ], + "nozzle_temperature_initial_layer": [ + "190" + ], + "nozzle_temperature": [ + "190" + ], + "nozzle_temperature_range_low": [ + "180" + ], + "nozzle_temperature_range_high": [ + "280" + ], + "hot_plate_temp_initial_layer": [ + "110" + ], + "hot_plate_temp": [ + "110" + ], + "filament_flow_ratio": [ + "1.1" + ], + "enable_pressure_advance": [ + "0" + ], + "slow_down_layer_time": [ + "25" + ], + "slow_down_min_speed": [ + "3" + ], + "filament_start_gcode": [ + "; filament start gcode\nM190 S110\nM104 S190 T0\nM104 S185 T1\nM104 S170 T2\nM109 S190 T0\nM109 S185 T1\nM109 S170 T2\n" + ], + "compatible_printers": [ + "re3D GigabotX 2 0.8 nozzle", + "re3D GigabotX 2 XLT 0.8 nozzle", + "re3D TerabotX 2 0.8 nozzle" + ] +} \ No newline at end of file diff --git a/resources/profiles/re3D/filament/re3D rPP @1.75 nozzle.json b/resources/profiles/re3D/filament/re3D rPP @1.75 nozzle.json new file mode 100644 index 00000000000..219216279c1 --- /dev/null +++ b/resources/profiles/re3D/filament/re3D rPP @1.75 nozzle.json @@ -0,0 +1,65 @@ +{ + "type": "filament", + "filament_id": "GFG02", + "setting_id": "GFSG02_175", + "name": "re3D rPP @1.75 nozzle", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_pet", + "filament_type": [ + "PP" + ], + "filament_vendor": [ + "re3D" + ], + "close_fan_the_first_x_layers": [ + "2" + ], + "default_filament_colour": [ + "#FFFFFF" + ], + "filament_density": [ + "0.675" + ], + "filament_max_volumetric_speed": [ + "50" + ], + "nozzle_temperature_initial_layer": [ + "185" + ], + "nozzle_temperature": [ + "185" + ], + "nozzle_temperature_range_low": [ + "180" + ], + "nozzle_temperature_range_high": [ + "280" + ], + "hot_plate_temp_initial_layer": [ + "110" + ], + "hot_plate_temp": [ + "110" + ], + "filament_flow_ratio": [ + "1.15" + ], + "enable_pressure_advance": [ + "0" + ], + "slow_down_layer_time": [ + "50" + ], + "slow_down_min_speed": [ + "3" + ], + "filament_start_gcode": [ + "; filament start gcode\nM190 S110\nM104 S185 T0\nM104 S185 T1\nM104 S185 T2\nM109 S185 T0\nM109 S185 T1\nM109 S185 T2\n" + ], + "compatible_printers": [ + "re3D GigabotX 2 1.75 nozzle", + "re3D GigabotX 2 XLT 1.75 nozzle", + "re3D TerabotX 2 1.75 nozzle" + ] +} \ No newline at end of file diff --git a/resources/profiles/re3D/filament/re3D rPP.json b/resources/profiles/re3D/filament/re3D rPP.json index 420b795366e..b82b6e46eb2 100644 --- a/resources/profiles/re3D/filament/re3D rPP.json +++ b/resources/profiles/re3D/filament/re3D rPP.json @@ -1,7 +1,5 @@ { "type": "filament", - "filament_id": "GFG99", - "setting_id": "GFSG99", "name": "re3D rPP", "from": "system", "instantiation": "true", @@ -9,42 +7,17 @@ "filament_type": [ "PP" ], - "nozzle_temperature_initial_layer": [ - "185" - ], - "nozzle_temperature": [ - "185" - ], - "nozzle_temperature_range_low": [ - "180" - ], - "nozzle_temperature_range_high": [ - "200" - ], - "hot_plate_temp_initial_layer": [ - "110" - ], - "hot_plate_temp": [ - "110" - ], - "filament_flow_ratio": [ - "1.18" - ], - "enable_pressure_advance": [ - "0" - ], - "slow_down_layer_time": [ - "60" - ], - "slow_down_min_speed": [ - "10" - ], - "filament_start_gcode": [ - "M190 S110\nM104 S185 T0\nM104 S185 T1\nM104 S185 T2\nM109 S185 T0\nM109 S185 T1\nM109 S185 T2" + "filament_id": "GFG02", + "setting_id": "re3d_rpp", + "filament_settings_id": [ + "re3D rPP" ], "compatible_printers": [ - "re3D Gigabot X2 1.75 nozzle", - "re3D Gigabot X2 XLT 1.75 nozzle", - "re3D Terabot X2 1.75 nozzle" + "re3D GigabotX 2", + "re3D GigabotX 2 XLT", + "re3D TerabotX 2" + ], + "filament_vendor": [ + "re3D" ] -} +} \ No newline at end of file diff --git a/resources/profiles/re3D/machine/fdm_machine_common.json b/resources/profiles/re3D/machine/fdm_machine_common.json index 6e711d57c54..736342291d8 100644 --- a/resources/profiles/re3D/machine/fdm_machine_common.json +++ b/resources/profiles/re3D/machine/fdm_machine_common.json @@ -3,115 +3,11 @@ "name": "fdm_machine_common", "from": "system", "instantiation": "false", - "printer_technology": "FFF", - "deretraction_speed": [ - "40" - ], - "extruder_colour": [ - "#FCE94F" - ], - "extruder_offset": [ - "0x0" - ], + "auxiliary_fan": "0", + "bed_exclude_area": ["0x0"], + "family": "re3D", "gcode_flavor": "klipper", + "emit_machine_limits_to_gcode": "0", "silent_mode": "0", - "machine_max_acceleration_e": [ - "5000" - ], - "machine_max_acceleration_extruding": [ - "10000" - ], - "machine_max_acceleration_retracting": [ - "1000" - ], - "machine_max_acceleration_x": [ - "10000" - ], - "machine_max_acceleration_y": [ - "10000" - ], - "machine_max_acceleration_z": [ - "100" - ], - "machine_max_speed_e": [ - "60" - ], - "machine_max_speed_x": [ - "500" - ], - "machine_max_speed_y": [ - "500" - ], - "machine_max_speed_z": [ - "10" - ], - "machine_max_jerk_e": [ - "5" - ], - "machine_max_jerk_x": [ - "8" - ], - "machine_max_jerk_y": [ - "8" - ], - "machine_max_jerk_z": [ - "0.4" - ], - "machine_min_extruding_rate": [ - "0" - ], - "machine_min_travel_rate": [ - "0" - ], - "max_layer_height": [ - "0.4" - ], - "min_layer_height": [ - "0.1" - ], - "printable_height": "400", - "extruder_clearance_radius": "65", - "extruder_clearance_height_to_rod": "36", - "extruder_clearance_height_to_lid": "140", - "nozzle_diameter": [ - "0.4" - ], - "printer_settings_id": "", - "printer_variant": "0.4", - "retraction_minimum_travel": [ - "2" - ], - "retract_before_wipe": [ - "70%" - ], - "retract_when_changing_layer": [ - "1" - ], - "retraction_length": [ - "5" - ], - "retract_length_toolchange": [ - "1" - ], - "z_hop": [ - "0" - ], - "retract_restart_extra": [ - "0" - ], - "retract_restart_extra_toolchange": [ - "0" - ], - "retraction_speed": [ - "60" - ], - "single_extruder_multi_material": "1", - "change_filament_gcode": "", - "wipe": [ - "1" - ], - "z_lift_type": "NormalLift", - "default_print_profile": "0.16mm Optimal @Bambu Lab X1 Carbon 0.4 nozzle", - "machine_start_gcode": "G0 Z20 F9000\nG92 E0; G1 E-10 F1200\nG28\nM970 Q1 A10 B10 C130 K0\nM970 Q1 A10 B131 C250 K1\nM974 Q1 S1 P0\nM970 Q0 A10 B10 C130 H20 K0\nM970 Q0 A10 B131 C250 K1\nM974 Q0 S1 P0\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\nG29 ;Home\nG90;\nG92 E0 ;Reset Extruder \nG1 Z2.0 F3000 ;Move Z Axis up \nG1 X10.1 Y20 Z0.28 F5000.0 ;Move to start position\nM109 S205;\nG1 X10.1 Y200.0 Z0.28 F1500.0 E15 ;Draw the first line\nG1 X10.4 Y200.0 Z0.28 F5000.0 ;Move to side a little\nG1 X10.4 Y20 Z0.28 F1500.0 E30 ;Draw the second line\nG92 E0 ;Reset Extruder \nG1 X110 Y110 Z2.0 F3000 ;Move Z Axis up", - "machine_end_gcode": "M400 ; wait for buffer to clear\nG92 E0 ; zero the extruder\nG1 E-4.0 F3600; retract \nG91\nG1 Z3;\nM104 S0 ; turn off hotend\nM140 S0 ; turn off bed\nM106 S0 ; turn off fan\nG90 \nG0 X110 Y200 F3600 \nprint_end" -} + "scan_first_layer": "0" +} \ No newline at end of file diff --git a/resources/profiles/re3D/machine/fdm_re3D_common.json b/resources/profiles/re3D/machine/fdm_re3D_common.json index 10bb924d528..b8922e2fb9e 100644 --- a/resources/profiles/re3D/machine/fdm_re3D_common.json +++ b/resources/profiles/re3D/machine/fdm_re3D_common.json @@ -1,146 +1,131 @@ { - "type": "machine", - "name": "fdm_re3D_common", - "from": "system", - "instantiation": "false", - "inherits": "fdm_machine_common", - "gcode_flavor": "klipper", - "machine_max_acceleration_e": [ - "5000", - "5000" - ], - "machine_max_acceleration_extruding": [ - "5000", - "5000" - ], - "machine_max_acceleration_retracting": [ - "5000", - "5000" - ], - "machine_max_acceleration_travel": [ - "20000", - "20000" - ], - "machine_max_acceleration_x": [ - "5000", - "5000" - ], - "machine_max_acceleration_y": [ - "5000", - "5000" - ], - "machine_max_acceleration_z": [ - "5000", - "5000" - ], - "machine_max_speed_e": [ - "20", - "20" - ], - "machine_max_speed_x": [ - "500", - "500" - ], - "machine_max_speed_y": [ - "500", - "500" - ], - "machine_max_speed_z": [ - "20", - "20" - ], - "machine_max_jerk_e": [ - "2.5", - "2.5" - ], - "machine_max_jerk_x": [ - "9", - "9" - ], - "machine_max_jerk_y": [ - "9", - "9" - ], - "machine_max_jerk_z": [ - "0.2", - "0.2" - ], - "machine_min_extruding_rate": [ - "0", - "0" - ], - "machine_min_travel_rate": [ - "0", - "0" - ], - "max_layer_height": [ - "0.32" - ], - "min_layer_height": [ - "0.2" - ], - "extruder_clearance_radius": "125", - "extruder_clearance_height_to_rod": "25", - "printer_settings_id": "", - "printer_technology": "FFF", - "printer_variant": "0.4", - "retraction_minimum_travel": [ - "1" - ], - "retract_before_wipe": [ - "70%" - ], - "retract_when_changing_layer": [ - "1" - ], - "retraction_length": [ - "1.0" - ], - "retract_length_toolchange": [ - "12" - ], - "z_hop": [ - "0" - ], - "retract_restart_extra": [ - "0" - ], - "retract_restart_extra_toolchange": [ - "-0.08" - ], - "retraction_speed": [ - "200" - ], - "deretraction_speed": [ - "200" - ], - "z_hop_types": "Normal Lift", - "silent_mode": "0", - "single_extruder_multi_material": [ - "0" - ], - "machine_tool_change_time": [ - "30" - ], - "change_filament_gcode": "", - "machine_pause_gcode": "PAUSE", - "wipe": [ - "0" - ], - "default_filament_profile": [ - "" - ], - "default_print_profile": "", "bed_exclude_area": [ "0x0" ], - "machine_start_gcode": "M220 S100\nM221 S100\nG28\nG92 E0\nG1 Z0.3 F200\n", - "machine_end_gcode": "M104 S0 T0\nM104 S0 T1\nM140 S0\n\nG28 X Y\nM18\nM107\n", - "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", - "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\nG92 E0\n", - "scan_first_layer": "0", - "auxiliary_fan": "0", + "instantiation": "false", + "type": "machine", + "deretraction_speed": [ + "30", + "30" + ], + "enable_filament_ramming": "1", + "extruder_offset": [ + "0x0", + "0x0" + ], "extruders_count": [ "2" - ] -} + ], + "inherits": "fdm_machine_common", + "machine_end_gcode": "G92 E0\nTURN_OFF_HEATERS\nG28 X Y\nM18\nM107", + "machine_start_gcode": "M83 ; Use relative extrusion distances\nG28 ; Home all axes\nM140 S{first_layer_bed_temperature[initial_tool]} ; Start heating bed\nM190 S{first_layer_bed_temperature[initial_tool]} ; Wait for bed to reach temperature\n\nT{initial_tool}\n\n\n; ---------------------------\n; HEAT THE USED TOOL\n; ---------------------------\n{if is_extruder_used[initial_tool]}\nM104 T{initial_tool} S{first_layer_temperature[initial_tool]} ; Preheat active extruder to first layer temperature\nM109 T{initial_tool} S{first_layer_temperature[initial_tool]} ; Wait for active extruder to reach temperature\n{endif}\n\nG1 F18000\nG4 S0\nG92 E0", + "machine_tool_change_time": [ + "90" + ], + "name": "fdm_re3D_common", + "printer_technology": "FFF", + "retract_before_wipe": [ + "70%", + "70%" + ], + "retract_length_toolchange": [ + "12", + "12" + ], + "retract_restart_extra": [ + "0", + "0" + ], + "retract_restart_extra_toolchange": [ + "-0.08", + "-0.08" + ], + "retract_when_changing_layer": [ + "1", + "1" + ], + "retraction_length": [ + "1.0", + "1.0" + ], + "retraction_minimum_travel": [ + "1", + "1" + ], + "retraction_speed": [ + "30", + "30" + ], + "single_extruder_multi_material": "0", + "wipe": [ + "1", + "1" + ], + "z_hop": [ + "0", + "0" + ], + "z_hop_types": [ + "Normal Lift", + "Normal Lift" + ], + "bed_temperature_formula": "by_first_filament", + "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\nG92 E0\n", + "best_object_pos": "0.5,0.5", + "cooling_tube_length": "0", + "cooling_tube_retraction": "0", + "default_nozzle_volume_type": [ + "Standard", + "Standard" + ], + "disable_m73": "0", + "extruder_colour": [ + "#FCE94F", + "#FCE94F" + ], + "extruder_type": [ + "Direct Drive", + "Direct Drive" + ], + "extruder_variant_list": [ + "Direct Drive Standard", + "Direct Drive Standard" + ], + "fan_kickstart": "0", + "fan_speedup_overhangs": "1", + "fan_speedup_time": "0", + "host_type": "octoprint", + "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", + "machine_pause_gcode": "PAUSE", + "machine_unload_filament_time": "0", + "manual_filament_change": "0", + "master_extruder_id": "1", + "physical_extruder_map": [ + "0" + ], + "preferred_orientation": "0", + "printer_extruder_id": [ + "1", + "2" + ], + "printer_extruder_variant": [ + "Direct Drive Standard", + "Direct Drive Standard" + ], + "support_air_filtration": "0", + "support_chamber_temp_control": "0", + "thumbnails": "48x48/PNG, 300x300/PNG", + "thumbnails_format": "PNG", + "travel_slope": [ + "3", + "3" + ], + "use_firmware_retraction": "0", + "use_relative_e_distances": "1", + "wipe_distance": [ + "1", + "1" + ], + "wipe_tower_type": "type2", + "z_offset": "0" +} \ No newline at end of file diff --git a/resources/profiles/re3D/machine/fgf_re3D_common.json b/resources/profiles/re3D/machine/fgf_re3D_common.json index d88c074b74a..3e0e409228f 100644 --- a/resources/profiles/re3D/machine/fgf_re3D_common.json +++ b/resources/profiles/re3D/machine/fgf_re3D_common.json @@ -5,81 +5,6 @@ "instantiation": "false", "inherits": "fdm_machine_common", "gcode_flavor": "klipper", - "machine_max_acceleration_e": [ - "5000", - "5000" - ], - "machine_max_acceleration_extruding": [ - "5000", - "5000" - ], - "machine_max_acceleration_retracting": [ - "5000", - "5000" - ], - "machine_max_acceleration_travel": [ - "20000", - "5000" - ], - "machine_max_acceleration_x": [ - "5000", - "5000" - ], - "machine_max_acceleration_y": [ - "5000", - "5000" - ], - "machine_max_acceleration_z": [ - "2000", - "2000" - ], - "machine_max_speed_e": [ - "60", - "60" - ], - "machine_max_speed_x": [ - "500", - "500" - ], - "machine_max_speed_y": [ - "500", - "500" - ], - "machine_max_speed_z": [ - "20", - "20" - ], - "machine_max_jerk_e": [ - "2.5", - "2.5" - ], - "machine_max_jerk_x": [ - "9", - "9" - ], - "machine_max_jerk_y": [ - "9", - "9" - ], - "machine_max_jerk_z": [ - "0.2", - "0.2" - ], - "machine_min_extruding_rate": [ - "0", - "0" - ], - "machine_min_travel_rate": [ - "0", - "0" - ], - "max_layer_height": [ - "2.25" - ], - "min_layer_height": [ - "0.3" - ], - "extruder_clearance_radius": "70", "printer_settings_id": "", "printer_technology": "FFF", "purge_in_prime_tower": "0", @@ -90,6 +15,9 @@ "retract_before_wipe": [ "70%" ], + "extruders_count": [ + "1" + ], "retract_when_changing_layer": [ "1" ], @@ -97,10 +25,10 @@ "0" ], "retract_length_toolchange": [ - "2" + "0" ], "z_hop": [ - "0.4" + "0" ], "retract_restart_extra": [ "0" @@ -116,16 +44,12 @@ ], "z_hop_types": "Normal Lift", "silent_mode": "0", - "single_extruder_multi_material": "1", + "single_extruder_multi_material": "0", "change_filament_gcode": "M600", "machine_pause_gcode": "PAUSE", "wipe": [ "1" ], - "default_filament_profile": [ - "re3D Greengate rPETG" - ], - "default_print_profile": "1.0mm Standard @re3D fgf 1.75", "bed_exclude_area": [ "0x0" ], @@ -136,4 +60,4 @@ "scan_first_layer": "0", "nozzle_type": "undefine", "auxiliary_fan": "0" -} +} \ No newline at end of file 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 79300ac8277..4d2b39c0960 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 @@ -1,31 +1,36 @@ { "type": "machine", - "setting_id": "GM001", "name": "re3D Gigabot 4 0.4 nozzle", - "from": "system", - "instantiation": "true", "inherits": "fdm_re3D_common", + "instantiation": "true", + "machine_tech": "FFF", + "model_id": "GB4", "printer_model": "re3D Gigabot 4", - "nozzle_diameter": [ - "0.4", - "0.4" - ], - "printer_variant": "0.4", + "bed_texture": "Gigabot 4_buildplate_texture.png", + "default_materials": "re3D PETG;re3D PLA;re3D PC", "printable_area": [ "0x0", "590x0", "590x600", "0x600" ], - "printable_height": "590", + "printable_height": "600", + "nozzle_diameter": [ + "0.4", + "0.4" + ], + "printer_variant": "0.4", "max_layer_height": [ "0.32" ], "min_layer_height": [ "0.2" ], - "retraction_length": [ - "0.6" + "default_filament_profile": [ + "re3D PLA @0.4 nozzle", + "re3D PETG @0.4 nozzle" ], - "default_print_profile": "0.28mm Standard @re3D fdm 0.4" -} + "default_print_profile": "0.26 Standard", + "printer_settings_id": "re3d_gigbot4_04", + "setting_id": "re3d_gigbot4_04" +} \ No newline at end of file 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 46655fc4b2f..15f0de246de 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 @@ -1,31 +1,36 @@ { "type": "machine", - "setting_id": "GM001", "name": "re3D Gigabot 4 0.8 nozzle", - "from": "system", - "instantiation": "true", "inherits": "fdm_re3D_common", + "instantiation": "true", + "machine_tech": "FFF", + "model_id": "GB4", "printer_model": "re3D Gigabot 4", - "nozzle_diameter": [ - "0.8", - "0.8" - ], + "bed_texture": "Gigabot 4_buildplate_texture.png", + "default_materials": "re3D PETG;re3D PLA;re3D PC", "printable_area": [ "0x0", "590x0", "590x600", "0x600" ], - "printable_height": "590", - "max_layer_height": [ - "0.64" - ], - "min_layer_height": [ - "0.3" - ], - "retraction_length": [ - "1.0" + "printable_height": "600", + "nozzle_diameter": [ + "0.8", + "0.8" ], "printer_variant": "0.8", - "default_print_profile": "0.2mm Standard @re3D fdm 0.8" -} + "max_layer_height": [ + "0.6" + ], + "min_layer_height": [ + "0.2" + ], + "default_filament_profile": [ + "re3D PLA @0.8 nozzle", + "re3D PETG @0.8 nozzle" + ], + "default_print_profile": "0.4 Standard", + "printer_settings_id": "re3d_gigbot4_08", + "setting_id": "re3d_gigbot4_08" +} \ No newline at end of file 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 e1724d5d80f..763628ee73d 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 @@ -1,15 +1,13 @@ { "type": "machine", - "setting_id": "GM001", "name": "re3D Gigabot 4 XLT 0.4 nozzle", - "from": "system", - "instantiation": "true", "inherits": "fdm_re3D_common", + "instantiation": "true", + "machine_tech": "FFF", + "model_id": "GB4", "printer_model": "re3D Gigabot 4 XLT", - "nozzle_diameter": [ - "0.4", - "0.4" - ], + "bed_texture": "Gigabot 4 XLT_buildplate_texture.png", + "default_materials": "re3D PETG;re3D PLA;re3D PC", "printable_area": [ "0x0", "590x0", @@ -17,15 +15,22 @@ "0x760" ], "printable_height": "900", + "nozzle_diameter": [ + "0.4", + "0.4" + ], + "printer_variant": "0.4", "max_layer_height": [ "0.32" ], "min_layer_height": [ "0.2" ], - "retraction_length": [ - "0.6" + "default_filament_profile": [ + "re3D PLA @0.4 nozzle", + "re3D PETG @0.4 nozzle" ], - "printer_variant": "0.4", - "default_print_profile": "0.28mm Standard @re3D fdm 0.4" -} + "default_print_profile": "0.26 Standard", + "printer_settings_id": "re3d_gigabot4_xlt_04", + "setting_id": "re3d_gigabot4_xlt_04" +} \ No newline at end of file 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 f338a789fbe..a12f8784edb 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 @@ -1,31 +1,36 @@ { "type": "machine", - "setting_id": "GM001", "name": "re3D Gigabot 4 XLT 0.8 nozzle", - "from": "system", - "instantiation": "true", "inherits": "fdm_re3D_common", + "instantiation": "true", + "machine_tech": "FFF", + "model_id": "GB4", "printer_model": "re3D Gigabot 4 XLT", + "bed_texture": "Gigabot 4 XLT_buildplate_texture.png", + "default_materials": "re3D PETG;re3D PLA;re3D PC", + "printable_area": [ + "0x0", + "590x0", + "590x760", + "0x760" + ], + "printable_height": "900", "nozzle_diameter": [ "0.8", "0.8" ], - "printable_area": [ - "0x0", - "600x0", - "600x760", - "0x760" - ], - "printable_height": "900", + "printer_variant": "0.8", "max_layer_height": [ - "0.64" + "0.6" ], "min_layer_height": [ "0.2" ], - "retraction_length": [ - "1.0" + "default_filament_profile": [ + "re3D PLA @0.8 nozzle", + "re3D PETG @0.8 nozzle" ], - "printer_variant": "0.8", - "default_print_profile": "0.2mm Standard @re3D fdm 0.8" -} + "default_print_profile": "0.4 Standard", + "printer_settings_id": "re3d_gigabot4_xlt_08", + "setting_id": "re3d_gigabot4_xlt_08" +} \ No newline at end of file diff --git a/resources/profiles/re3D/machine/re3D Gigabot 4 XLT.json b/resources/profiles/re3D/machine/re3D Gigabot 4 XLT.json index f14de38eb25..fcad038e3dd 100644 --- a/resources/profiles/re3D/machine/re3D Gigabot 4 XLT.json +++ b/resources/profiles/re3D/machine/re3D Gigabot 4 XLT.json @@ -1,8 +1,9 @@ { "type": "machine_model", "name": "re3D Gigabot 4 XLT", - "model_id": "GB4XLT", + "model_id": "re3D Gigabot 4 XLT", "nozzle_diameter": "0.4;0.8", + "instantiation": "false", "machine_tech": "FFF", "family": "re3D", "bed_model": "", diff --git a/resources/profiles/re3D/machine/re3D Gigabot 4.json b/resources/profiles/re3D/machine/re3D Gigabot 4.json index 53abd9b4590..642fabc7d8b 100644 --- a/resources/profiles/re3D/machine/re3D Gigabot 4.json +++ b/resources/profiles/re3D/machine/re3D Gigabot 4.json @@ -1,8 +1,9 @@ { "type": "machine_model", "name": "re3D Gigabot 4", - "model_id": "GB4", + "model_id": "re3D Gigabot 4", "nozzle_diameter": "0.4;0.8", + "instantiation": "false", "machine_tech": "FFF", "family": "re3D", "bed_model": "", diff --git a/resources/profiles/re3D/machine/re3D Gigabot X2 1.75 nozzle.json b/resources/profiles/re3D/machine/re3D Gigabot X2 1.75 nozzle.json deleted file mode 100644 index ef3c79727cb..00000000000 --- a/resources/profiles/re3D/machine/re3D Gigabot X2 1.75 nozzle.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "type": "machine", - "setting_id": "GM001", - "name": "re3D Gigabot X2 1.75 nozzle", - "from": "system", - "instantiation": "true", - "inherits": "fgf_re3D_common", - "printer_model": "re3D Gigabot X2", - "nozzle_diameter": [ - "1.75" - ], - "printable_area": [ - "0x0", - "552x0", - "552x593", - "0x593" - ], - "printable_height": "470", - "extruder_clearance_height_to_rod": "220", - "extruder_clearance_height_to_lid": "630", - "max_layer_height": [ - "1.4" - ], - "min_layer_height": [ - "0.4" - ], - "printer_variant": "1.75" -} diff --git a/resources/profiles/re3D/machine/re3D Gigabot X2 XLT 1.75 nozzle.json b/resources/profiles/re3D/machine/re3D Gigabot X2 XLT 1.75 nozzle.json deleted file mode 100644 index cd703130f0e..00000000000 --- a/resources/profiles/re3D/machine/re3D Gigabot X2 XLT 1.75 nozzle.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "type": "machine", - "setting_id": "GM001", - "name": "re3D Gigabot X2 XLT 1.75 nozzle", - "from": "system", - "instantiation": "true", - "inherits": "fgf_re3D_common", - "printer_model": "re3D Gigabot X2 XLT", - "nozzle_diameter": [ - "1.75" - ], - "printable_area": [ - "0x0", - "552x0", - "552x740", - "0x740" - ], - "printable_height": "765", - "extruder_clearance_height_to_rod": "220", - "extruder_clearance_height_to_lid": "630", - "max_layer_height": [ - "1.4" - ], - "min_layer_height": [ - "0.6" - ], - "printer_variant": "1.75" -} diff --git a/resources/profiles/re3D/machine/re3D Gigabot X2 XLT.json b/resources/profiles/re3D/machine/re3D Gigabot X2 XLT.json deleted file mode 100644 index c208bb1ab11..00000000000 --- a/resources/profiles/re3D/machine/re3D Gigabot X2 XLT.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "type": "machine_model", - "name": "re3D Gigabot X2 XLT", - "model_id": "GBX2XLT", - "nozzle_diameter": "1.75", - "machine_tech": "FFF", - "family": "re3D", - "bed_model": "", - "bed_texture": "re3D Gigabot X2 XLT_buildplate_texture.svg", - "hotend_model": "GBX-HOTEND.stl", - "default_materials": "re3D rPP;re3D Greengate rPETG;" -} diff --git a/resources/profiles/re3D/machine/re3D Gigabot X2.json b/resources/profiles/re3D/machine/re3D Gigabot X2.json deleted file mode 100644 index d21307184aa..00000000000 --- a/resources/profiles/re3D/machine/re3D Gigabot X2.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "type": "machine_model", - "name": "re3D Gigabot X2", - "model_id": "GBX2", - "nozzle_diameter": "1.75", - "machine_tech": "FFF", - "family": "re3D", - "bed_model": "", - "bed_texture": "re3D Gigabot X2_buildplate_texture.svg", - "hotend_model": "GBX-HOTEND.stl", - "default_materials": "re3D rPP;re3D Greengate rPETG;" -} 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 new file mode 100644 index 00000000000..b0f1e87aad1 --- /dev/null +++ b/resources/profiles/re3D/machine/re3D GigabotX 2 0.8 nozzle.json @@ -0,0 +1,33 @@ +{ + "type": "machine", + "name": "re3D GigabotX 2 0.8 nozzle", + "inherits": "fgf_re3D_common", + "instantiation": "true", + "machine_tech": "FGF", + "model_id": "re3D GBX2", + "printer_model": "re3D GigabotX 2", + "bed_texture": "Gigabot 4_buildplate_texture.png", + "printable_area": [ + "0x0", + "552x0", + "552x593", + "0x593" + ], + "printable_height": "470", + "nozzle_diameter": [ + "0.8" + ], + "printer_variant": "0.8", + "max_layer_height": [ + "0.6" + ], + "min_layer_height": [ + "0.3" + ], + "default_filament_profile": [ + "re3D Greengate rPETG @0.8 nozzle" + ], + "default_print_profile": "0.6 Standard", + "printer_settings_id": "re3d_gbx_08", + "setting_id": "re3d_gbx_08" +} \ No newline at end of file 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 new file mode 100644 index 00000000000..4e5bc46cd8b --- /dev/null +++ b/resources/profiles/re3D/machine/re3D GigabotX 2 1.75 nozzle.json @@ -0,0 +1,34 @@ +{ + "type": "machine", + "name": "re3D GigabotX 2 1.75 nozzle", + "renamed_from": "re3D Gigabot X2 1.75 nozzle", + "inherits": "fgf_re3D_common", + "instantiation": "true", + "machine_tech": "FGF", + "model_id": "re3D GBX2", + "printer_model": "re3D GigabotX 2", + "bed_texture": "Gigabot 4_buildplate_texture.png", + "printable_area": [ + "0x0", + "552x0", + "552x593", + "0x593" + ], + "printable_height": "470", + "nozzle_diameter": [ + "1.75" + ], + "printer_variant": "1.75", + "max_layer_height": [ + "1.3" + ], + "min_layer_height": [ + "0.6" + ], + "default_filament_profile": [ + "re3D Greengate rPETG @1.75 nozzle" + ], + "default_print_profile": "1.0 Standard", + "printer_settings_id": "re3d_gbx_175", + "setting_id": "re3d_gbx_175" +} \ No newline at end of file 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 new file mode 100644 index 00000000000..d62ce7e6c9a --- /dev/null +++ b/resources/profiles/re3D/machine/re3D GigabotX 2 XLT 0.8 nozzle.json @@ -0,0 +1,33 @@ +{ + "type": "machine", + "name": "re3D GigabotX 2 XLT 0.8 nozzle", + "inherits": "fgf_re3D_common", + "instantiation": "true", + "machine_tech": "FGF", + "model_id": "re3D GBX2 XLT", + "printer_model": "re3D GigabotX 2 XLT", + "bed_texture": "GigabotX 2 XLT_buildplate_texture.png", + "printable_area": [ + "0x0", + "552x0", + "552x740", + "0x740" + ], + "printable_height": "470", + "nozzle_diameter": [ + "0.8" + ], + "printer_variant": "0.8", + "max_layer_height": [ + "0.6" + ], + "min_layer_height": [ + "0.3" + ], + "default_filament_profile": [ + "re3D Greengate rPETG @0.8 nozzle" + ], + "default_print_profile": "0.6 Standard", + "printer_settings_id": "re3d_gbx_xlt_08", + "setting_id": "re3d_gbx_xlt_08" +} \ No newline at end of file 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 new file mode 100644 index 00000000000..37fd6ca0a9e --- /dev/null +++ b/resources/profiles/re3D/machine/re3D GigabotX 2 XLT 1.75 nozzle.json @@ -0,0 +1,34 @@ +{ + "type": "machine", + "name": "re3D GigabotX 2 XLT 1.75 nozzle", + "renamed_from": "re3D Gigabot X2 XLT 1.75 nozzle", + "inherits": "fgf_re3D_common", + "instantiation": "true", + "machine_tech": "FGF", + "model_id": "re3D GBX2 XLT", + "printer_model": "re3D GigabotX 2 XLT", + "bed_texture": "GigabotX 2 XLT_buildplate_texture.png", + "printable_area": [ + "0x0", + "552x0", + "552x740", + "0x740" + ], + "printable_height": "470", + "nozzle_diameter": [ + "1.75" + ], + "printer_variant": "1.75", + "max_layer_height": [ + "1.3" + ], + "min_layer_height": [ + "0.6" + ], + "default_filament_profile": [ + "re3D Greengate rPETG @1.75 nozzle" + ], + "default_print_profile": "1.0 Standard", + "printer_settings_id": "re3d_gbx_xlt_175", + "setting_id": "re3d_gbx_xlt_175" +} \ No newline at end of file diff --git a/resources/profiles/re3D/machine/re3D GigabotX 2 XLT.json b/resources/profiles/re3D/machine/re3D GigabotX 2 XLT.json new file mode 100644 index 00000000000..09a2702f3a1 --- /dev/null +++ b/resources/profiles/re3D/machine/re3D GigabotX 2 XLT.json @@ -0,0 +1,13 @@ +{ + "type": "machine_model", + "name": "re3D GigabotX 2 XLT", + "model_id": "re3D GigabotX 2 XLT", + "nozzle_diameter": "0.8;1.75", + "instantiation": "false", + "machine_tech": "FGF", + "family": "re3D", + "bed_model": "", + "bed_texture": "re3D GigabotX 2 XLT_buildplate_texture.svg", + "hotend_model": "GBX-HOTEND.stl", + "default_materials": "re3D Greengate rPETG;re3D rPP;" +} diff --git a/resources/profiles/re3D/machine/re3D GigabotX 2.json b/resources/profiles/re3D/machine/re3D GigabotX 2.json new file mode 100644 index 00000000000..cc1470ee050 --- /dev/null +++ b/resources/profiles/re3D/machine/re3D GigabotX 2.json @@ -0,0 +1,13 @@ +{ + "type": "machine_model", + "name": "re3D GigabotX 2", + "model_id": "re3D GigabotX 2", + "nozzle_diameter": "0.8;1.75", + "instantiation": "false", + "machine_tech": "FGF", + "family": "re3D", + "bed_model": "", + "bed_texture": "re3D GigabotX 2_buildplate_texture.svg", + "hotend_model": "GBX-HOTEND.stl", + "default_materials": "re3D Greengate 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 e1435eba58c..bb63aaa995c 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 @@ -1,15 +1,13 @@ { "type": "machine", - "setting_id": "GM001", "name": "re3D Terabot 4 0.4 nozzle", - "from": "system", + "inherits": "fdm_re3D_common", "instantiation": "true", - "inherits": "fgf_re3D_common", + "machine_tech": "FFF", + "model_id": "TB4", "printer_model": "re3D Terabot 4", - "nozzle_diameter": [ - "0.4", - "0.4" - ], + "bed_texture": "Gigabot 4_buildplate_texture.png", + "default_materials": "re3D PETG;re3D PLA;re3D PC", "printable_area": [ "0x0", "915x0", @@ -17,15 +15,22 @@ "0x915" ], "printable_height": "1000", + "nozzle_diameter": [ + "0.4", + "0.4" + ], + "printer_variant": "0.4", "max_layer_height": [ "0.32" ], "min_layer_height": [ "0.2" ], - "retraction_length": [ - "0.6" + "default_filament_profile": [ + "re3D PLA @0.4 nozzle", + "re3D PETG @0.4 nozzle" ], - "printer_variant": "0.4", - "default_print_profile": "0.28mm Standard @re3D fdm 0.4" -} + "default_print_profile": "0.26 Standard", + "printer_settings_id": "re3d_terabot4_04", + "setting_id": "re3d_terabot4_04" +} \ No newline at end of file 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 bbc631238ff..a9948d83abe 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 @@ -1,15 +1,13 @@ { "type": "machine", - "setting_id": "GM001", "name": "re3D Terabot 4 0.8 nozzle", - "from": "system", + "inherits": "fdm_re3D_common", "instantiation": "true", - "inherits": "fgf_re3D_common", + "machine_tech": "FFF", + "model_id": "TB4", "printer_model": "re3D Terabot 4", - "nozzle_diameter": [ - "0.8", - "0.8" - ], + "bed_texture": "Gigabot 4_buildplate_texture.png", + "default_materials": "re3D PETG;re3D PLA;re3D PC", "printable_area": [ "0x0", "915x0", @@ -17,15 +15,22 @@ "0x915" ], "printable_height": "1000", + "nozzle_diameter": [ + "0.8", + "0.8" + ], + "printer_variant": "0.8", "max_layer_height": [ - "0.64" + "0.6" ], "min_layer_height": [ "0.2" ], - "retraction_length": [ - "1.0" + "default_filament_profile": [ + "re3D PLA @0.8 nozzle", + "re3D PETG @0.8 nozzle" ], - "printer_variant": "0.8", - "default_print_profile": "0.2mm Standard @re3D fdm 0.8" -} + "default_print_profile": "0.4 Standard", + "printer_settings_id": "re3d_terabot4_08", + "setting_id": "re3d_terabot4_08" +} \ No newline at end of file diff --git a/resources/profiles/re3D/machine/re3D Terabot 4.json b/resources/profiles/re3D/machine/re3D Terabot 4.json index 294a3bbf8b5..725f67470e9 100644 --- a/resources/profiles/re3D/machine/re3D Terabot 4.json +++ b/resources/profiles/re3D/machine/re3D Terabot 4.json @@ -1,8 +1,9 @@ { "type": "machine_model", "name": "re3D Terabot 4", - "model_id": "TB4", + "model_id": "re3D Terabot 4", "nozzle_diameter": "0.4;0.8", + "instantiation": "false", "machine_tech": "FFF", "family": "re3D", "bed_model": "", diff --git a/resources/profiles/re3D/machine/re3D Terabot X2 1.75 nozzle.json b/resources/profiles/re3D/machine/re3D Terabot X2 1.75 nozzle.json deleted file mode 100644 index f246b20415a..00000000000 --- a/resources/profiles/re3D/machine/re3D Terabot X2 1.75 nozzle.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "type": "machine", - "setting_id": "GM001", - "name": "re3D Terabot X2 1.75 nozzle", - "from": "system", - "instantiation": "true", - "inherits": "fgf_re3D_common", - "printer_model": "re3D Terabot X2", - "nozzle_diameter": [ - "1.75" - ], - "printable_area": [ - "0x0", - "879x0", - "879x908", - "0x908" - ], - "printable_height": "830", - "extruder_clearance_height_to_rod": "220", - "extruder_clearance_height_to_lid": "630", - "max_layer_height": [ - "1.4" - ], - "min_layer_height": [ - "0.4" - ], - "printer_variant": "1.75" -} diff --git a/resources/profiles/re3D/machine/re3D Terabot X2.json b/resources/profiles/re3D/machine/re3D Terabot X2.json deleted file mode 100644 index 6ae22cc2e11..00000000000 --- a/resources/profiles/re3D/machine/re3D Terabot X2.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "type": "machine_model", - "name": "re3D Terabot X2", - "model_id": "TBX2", - "nozzle_diameter": "1.75", - "machine_tech": "FFF", - "family": "re3D", - "bed_model": "", - "bed_texture": "re3D Terabot X2_buildplate_texture.svg", - "hotend_model": "GBX-HOTEND.stl", - "default_materials": "re3D rPP;re3D Greengate rPETG;" -} 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 new file mode 100644 index 00000000000..f20b8fd8d4a --- /dev/null +++ b/resources/profiles/re3D/machine/re3D TerabotX 2 0.8 nozzle.json @@ -0,0 +1,33 @@ +{ + "type": "machine", + "name": "re3D TerabotX 2 0.8 nozzle", + "inherits": "fgf_re3D_common", + "instantiation": "true", + "machine_tech": "FGF", + "model_id": "re3D TBX2", + "printer_model": "re3D TerabotX 2", + "bed_texture": "Gigabot 4_buildplate_texture.png", + "printable_area": [ + "0x0", + "892x0", + "892x908", + "0x908" + ], + "printable_height": "870", + "nozzle_diameter": [ + "0.8" + ], + "printer_variant": "0.8", + "max_layer_height": [ + "0.6" + ], + "min_layer_height": [ + "0.3" + ], + "default_filament_profile": [ + "re3D Greengate rPETG @0.8 nozzle" + ], + "default_print_profile": "0.6 Standard", + "printer_settings_id": "re3d_tbx2_08", + "setting_id": "re3d_tbx2_08" +} \ No newline at end of file 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 new file mode 100644 index 00000000000..2d5f38fa734 --- /dev/null +++ b/resources/profiles/re3D/machine/re3D TerabotX 2 1.75 nozzle.json @@ -0,0 +1,34 @@ +{ + "type": "machine", + "name": "re3D TerabotX 2 1.75 nozzle", + "renamed_from": "re3D Terabot X2 1.75 nozzle", + "inherits": "fgf_re3D_common", + "instantiation": "true", + "machine_tech": "FGF", + "model_id": "re3D TBX2", + "printer_model": "re3D TerabotX 2", + "bed_texture": "Gigabot 4_buildplate_texture.png", + "printable_area": [ + "0x0", + "892x0", + "892x908", + "0x908" + ], + "printable_height": "870", + "nozzle_diameter": [ + "1.75" + ], + "printer_variant": "1.75", + "max_layer_height": [ + "1.3" + ], + "min_layer_height": [ + "0.6" + ], + "default_filament_profile": [ + "re3D Greengate rPETG @1.75 nozzle" + ], + "default_print_profile": "1.0 Standard", + "printer_settings_id": "re3d_tbx2_175", + "setting_id": "re3d_tbx2_175" +} \ No newline at end of file diff --git a/resources/profiles/re3D/machine/re3D TerabotX 2.json b/resources/profiles/re3D/machine/re3D TerabotX 2.json new file mode 100644 index 00000000000..9d8d0b2cb48 --- /dev/null +++ b/resources/profiles/re3D/machine/re3D TerabotX 2.json @@ -0,0 +1,13 @@ +{ + "type": "machine_model", + "name": "re3D TerabotX 2", + "model_id": "re3D TerabotX 2", + "nozzle_diameter": "0.8;1.75", + "instantiation": "false", + "machine_tech": "FGF", + "family": "re3D", + "bed_model": "", + "bed_texture": "re3D TerabotX 2_buildplate_texture.svg", + "hotend_model": "GBX-HOTEND.stl", + "default_materials": "re3D Greengate 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 d46ce338632..0c26f0c7484 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 @@ -1,7 +1,8 @@ { "type": "process", - "setting_id": "GP004", - "name": "0.26mm Standard @re3D fdm 0.4", + "setting_id": "fdm__04_026", + "name": "0.26 Standard", + "renamed_from": "0.26mm Standard @re3D fdm 0.4", "from": "system", "instantiation": "true", "inherits": "fdm_process_re3D_common", @@ -12,36 +13,14 @@ ], "layer_height": "0.26", "initial_layer_print_height": "0.4", - "top_shell_layers": "4", - "top_shell_thickness": "0.6", - "bottom_shell_layers": "3", - "line_width": "0.45", - "outer_wall_line_width": "0.45", - "inner_wall_line_width": "0.45", + "line_width": "0.48", + "outer_wall_line_width": "0.48", + "inner_wall_line_width": "0.48", "initial_layer_line_width": "0.6", - "sparse_infill_line_width": "0.45", - "internal_solid_infill_line_width": "0.45", - "top_surface_line_width": "0.45", - "support_line_width": "0.45", - "overhang_1_4_speed": "45", - "overhang_2_4_speed": "35", - "overhang_3_4_speed": "25", - "overhang_4_4_speed": "15", - "initial_layer_speed": "30", - "initial_layer_infill_speed": "30", - "initial_layer_travel_speed": "50", - "outer_wall_speed": "80", - "inner_wall_speed": "80", - "small_perimeter_speed": "80", - "small_perimeter_threshold": "80", - "sparse_infill_speed": "80", - "internal_solid_infill_speed": "80", - "top_surface_speed": "80", - "gap_infill_speed": "80", - "support_speed": "80", - "support_interface_speed": "80", - "travel_speed": "300", - "standby_temperature_delta": "-55", - "support_top_z_distance": "0.28", - "support_bottom_z_distance": "0.28" -} + "sparse_infill_line_width": "0.48", + "internal_solid_infill_line_width": "0.48", + "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 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 0c22fe5a841..a0845ca4022 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 @@ -1,22 +1,26 @@ { "type": "process", - "setting_id": "GP004", - "name": "0.2mm Fine @re3D fdm 0.4", + "setting_id": "fdm_04_02", + "name": "0.2 Fine", + "renamed_from": "0.2mm Fine @re3D fdm 0.4", "from": "system", "inherits": "fdm_process_re3D_common", "instantiation": "true", - "layer_height": "0.2", "compatible_printers": [ "re3D Gigabot 4 0.4 nozzle", "re3D Gigabot 4 XLT 0.4 nozzle", "re3D Terabot 4 0.4 nozzle" ], - "line_width": "0.42", - "outer_wall_line_width": "0.42", - "inner_wall_line_width": "0.42", - "initial_layer_line_width": "0.5", - "sparse_infill_line_width": "0.42", - "internal_solid_infill_line_width": "0.42", - "top_surface_line_width": "0.42", - "support_line_width": "0.42" -} + "layer_height": "0.2", + "initial_layer_print_height": "0.4", + "line_width": "0.44", + "outer_wall_line_width": "0.44", + "inner_wall_line_width": "0.44", + "initial_layer_line_width": "0.6", + "sparse_infill_line_width": "0.48", + "internal_solid_infill_line_width": "0.48", + "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 diff --git a/resources/profiles/re3D/process/0.2mm Standard @re3D fdm 0.8.json b/resources/profiles/re3D/process/0.2mm Standard @re3D fdm 0.8.json deleted file mode 100644 index 4138586ecbc..00000000000 --- a/resources/profiles/re3D/process/0.2mm Standard @re3D fdm 0.8.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "type": "process", - "setting_id": "GP004", - "name": "0.2mm Standard @re3D fdm 0.8", - "from": "system", - "inherits": "fdm_process_re3D_common", - "instantiation": "true", - "compatible_printers": [ - "re3D Gigabot 4 0.8 nozzle", - "re3D Gigabot 4 XLT 0.8 nozzle", - "re3D Terabot 4 0.8 nozzle" - ], - "layer_height": "0.2", - "initial_layer_print_height": "0.4", - "top_shell_layers": "4", - "top_shell_thickness": "0.6", - "bottom_shell_layers": "3", - "line_width": "0.8", - "outer_wall_line_width": "0.8", - "inner_wall_line_width": "0.8", - "initial_layer_line_width": "0.8", - "sparse_infill_line_width": "0.8", - "internal_solid_infill_line_width": "0.8", - "top_surface_line_width": "0.8", - "support_line_width": "0.8", - "overhang_1_4_speed": "45", - "overhang_2_4_speed": "35", - "overhang_3_4_speed": "25", - "overhang_4_4_speed": "15", - "initial_layer_speed": "30", - "initial_layer_infill_speed": "30", - "initial_layer_travel_speed": "50", - "outer_wall_speed": "45", - "inner_wall_speed": "45", - "small_perimeter_speed": "45", - "small_perimeter_threshold": "45", - "sparse_infill_speed": "45", - "internal_solid_infill_speed": "45", - "top_surface_speed": "45", - "gap_infill_speed": "45", - "support_speed": "45", - "support_interface_speed": "45", - "travel_speed": "300", - "standby_temperature_delta": "-55", - "support_top_z_distance": "0.24", - "support_bottom_z_distance": "0.24" -} 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 1a3b377d514..90dbe2bc1e5 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 @@ -1,7 +1,8 @@ { "type": "process", - "setting_id": "GP004", - "name": "0.32mm Draft @re3D fdm 0.4", + "setting_id": "fdm_04_032", + "name": "0.32 Draft", + "renamed_from": "0.32mm Draft @re3D fdm 0.4", "from": "system", "instantiation": "true", "inherits": "fdm_process_re3D_common", @@ -12,9 +13,6 @@ ], "layer_height": "0.32", "initial_layer_print_height": "0.4", - "top_shell_layers": "4", - "top_shell_thickness": "0.6", - "bottom_shell_layers": "3", "line_width": "0.48", "outer_wall_line_width": "0.48", "inner_wall_line_width": "0.48", @@ -23,25 +21,6 @@ "internal_solid_infill_line_width": "0.48", "top_surface_line_width": "0.48", "support_line_width": "0.48", - "overhang_1_4_speed": "45", - "overhang_2_4_speed": "35", - "overhang_3_4_speed": "25", - "overhang_4_4_speed": "15", - "initial_layer_speed": "30", - "initial_layer_infill_speed": "30", - "initial_layer_travel_speed": "50", - "outer_wall_speed": "80", - "inner_wall_speed": "80", - "small_perimeter_speed": "80", - "small_perimeter_threshold": "80", - "sparse_infill_speed": "80", - "internal_solid_infill_speed": "80", - "top_surface_speed": "80", - "gap_infill_speed": "80", - "support_speed": "80", - "support_interface_speed": "80", - "travel_speed": "300", - "standby_temperature_delta": "-55", "support_top_z_distance": "0.35", "support_bottom_z_distance": "0.35" -} +} \ No newline at end of file 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 new file mode 100644 index 00000000000..a6e61edca40 --- /dev/null +++ b/resources/profiles/re3D/process/0.3mm Fine @re3D fdm 0.8.json @@ -0,0 +1,26 @@ +{ + "type": "process", + "setting_id": "fdm_08_03", + "name": "0.3 Fine", + "renamed_from": "0.2mm Standard @re3D fdm 0.8", + "from": "system", + "inherits": "fdm_process_re3D_common", + "instantiation": "true", + "compatible_printers": [ + "re3D Gigabot 4 0.8 nozzle", + "re3D Gigabot 4 XLT 0.8 nozzle", + "re3D Terabot 4 0.8 nozzle" + ], + "layer_height": "0.3", + "initial_layer_print_height": "0.4", + "line_width": "1", + "outer_wall_line_width": "1", + "inner_wall_line_width": "1", + "initial_layer_line_width": "1", + "sparse_infill_line_width": "1", + "internal_solid_infill_line_width": "1", + "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 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 1e12d094fc0..e75ad362835 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 @@ -1,7 +1,8 @@ { "type": "process", - "setting_id": "GP004", - "name": "0.4mm Draft @re3D fdm 0.8", + "setting_id": "fdm_08_04", + "name": "0.4 Standard", + "renamed_from": "0.4mm Draft @re3D fdm 0.8", "from": "system", "instantiation": "true", "inherits": "fdm_process_re3D_common", @@ -12,9 +13,6 @@ ], "layer_height": "0.4", "initial_layer_print_height": "0.6", - "top_shell_layers": "4", - "top_shell_thickness": "0.6", - "bottom_shell_layers": "3", "line_width": "1", "outer_wall_line_width": "1", "inner_wall_line_width": "1", @@ -23,25 +21,6 @@ "internal_solid_infill_line_width": "1", "top_surface_line_width": "1", "support_line_width": "1", - "overhang_1_4_speed": "45", - "overhang_2_4_speed": "35", - "overhang_3_4_speed": "25", - "overhang_4_4_speed": "15", - "initial_layer_speed": "30", - "initial_layer_infill_speed": "30", - "initial_layer_travel_speed": "50", - "outer_wall_speed": "45", - "inner_wall_speed": "45", - "small_perimeter_speed": "45", - "small_perimeter_threshold": "45", - "sparse_infill_speed": "45", - "internal_solid_infill_speed": "45", - "top_surface_speed": "45", - "gap_infill_speed": "45", - "support_speed": "45", - "support_interface_speed": "45", - "travel_speed": "300", - "standby_temperature_delta": "-55", "support_top_z_distance": "0.42", "support_bottom_z_distance": "0.42" -} +} \ No newline at end of file diff --git a/resources/profiles/re3D/process/0.6mm Standard @re3D fgf 0.8.json b/resources/profiles/re3D/process/0.6mm Standard @re3D fgf 0.8.json new file mode 100644 index 00000000000..801a2b4d281 --- /dev/null +++ b/resources/profiles/re3D/process/0.6mm Standard @re3D fgf 0.8.json @@ -0,0 +1,26 @@ +{ + "type": "process", + "setting_id": "fgf_08_06", + "name": "0.6 Standard", + "from": "system", + "inherits": "fgf_process_re3D_common", + "instantiation": "true", + "layer_height": "0.6", + "initial_layer_print_height": "0.8", + "line_width": "1.0", + "outer_wall_line_width": "1.0", + "inner_wall_line_width": "1.0", + "sparse_infill_line_width": "1.0", + "internal_solid_infill_line_width": "1.0", + "top_surface_line_width": "1.0", + "support_line_width": "1.0", + "initial_layer_line_width": "1.0", + "support_top_z_distance": "0", + "top_shell_layers": "5", + "support_bottom_z_distance": "0", + "compatible_printers": [ + "re3D GigabotX 2 0.8 nozzle", + "re3D GigabotX 2 XLT 0.8 nozzle", + "re3D TerabotX 2 0.8 nozzle" + ] +} \ No newline at end of file diff --git a/resources/profiles/re3D/process/1.0mm Standard @re3D fgf 1.75.json b/resources/profiles/re3D/process/1.0mm Standard @re3D fgf 1.75.json index 9a19c419cf0..35c0c8adedc 100644 --- a/resources/profiles/re3D/process/1.0mm Standard @re3D fgf 1.75.json +++ b/resources/profiles/re3D/process/1.0mm Standard @re3D fgf 1.75.json @@ -1,16 +1,27 @@ { "type": "process", - "setting_id": "GP004", - "name": "1.0mm Standard @re3D fgf 1.75", + "setting_id": "fgf_175_10", + "name": "1.0 Standard", + "renamed_from": "1.0mm Standard @re3D fgf 1.75", "from": "system", "inherits": "fgf_process_re3D_common", "instantiation": "true", "layer_height": "1.0", - "bottom_shell_layers": "2", - "top_shell_layers": "5", + "initial_layer_print_height": "1.0", + "line_width": "1.9", + "outer_wall_line_width": "1.9", + "inner_wall_line_width": "1.9", + "initial_layer_line_width": "1.9", + "sparse_infill_line_width": "1.9", + "internal_solid_infill_line_width": "1.9", + "top_surface_line_width": "1.9", + "support_line_width": "1.9", + "support_top_z_distance": "0", + "support_bottom_z_distance": "0", + "top_shell_layers": "3", "compatible_printers": [ - "re3D Gigabot X2 1.75 nozzle", - "re3D Gigabot X2 XLT 1.75 nozzle", - "re3D Terabot X2 1.75 nozzle" + "re3D GigabotX 2 1.75 nozzle", + "re3D GigabotX 2 XLT 1.75 nozzle", + "re3D TerabotX 2 1.75 nozzle" ] -} +} \ No newline at end of file diff --git a/resources/profiles/re3D/process/fdm_process_common.json b/resources/profiles/re3D/process/fdm_process_common.json index d946a16e60a..164ff9d58af 100644 --- a/resources/profiles/re3D/process/fdm_process_common.json +++ b/resources/profiles/re3D/process/fdm_process_common.json @@ -6,33 +6,33 @@ "adaptive_layer_height": "0", "reduce_crossing_wall": "0", "bridge_flow": "0.95", - "bridge_speed": "25", + "bridge_speed": "10", "brim_width": "5", "compatible_printers": [], "print_sequence": "by layer", - "default_acceleration": "10000", + "default_acceleration": "0", "bridge_no_support": "0", "elefant_foot_compensation": "0.1", "outer_wall_line_width": "0.4", - "outer_wall_speed": "120", - "line_width": "0.45", + "outer_wall_speed": "25", + "line_width": "0.4", "infill_direction": "45", "sparse_infill_density": "15%", "sparse_infill_pattern": "crosshatch", - "initial_layer_line_width": "0.42", + "initial_layer_line_width": "0.4", "initial_layer_print_height": "0.2", - "initial_layer_speed": "20", - "gap_infill_speed": "30", + "initial_layer_speed": "15", + "gap_infill_speed": "25", "infill_combination": "0", - "sparse_infill_line_width": "0.45", + "sparse_infill_line_width": "0.4", "infill_wall_overlap": "25%", - "sparse_infill_speed": "50", + "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.45", + "inner_wall_line_width": "0.4", "inner_wall_speed": "40", "print_settings_id": "", "raft_layers": "0", @@ -40,16 +40,16 @@ "skirt_distance": "2", "skirt_height": "2", "minimum_sparse_infill_area": "0", - "internal_solid_infill_line_width": "0.45", - "internal_solid_infill_speed": "40", + "internal_solid_infill_line_width": "0.4", + "internal_solid_infill_speed": "60", "spiral_mode": "0", - "standby_temperature_delta": "-5", + "standby_temperature_delta": "-20", "enable_support": "0", "support_filament": "0", - "support_line_width": "0.42", + "support_line_width": "0.38", "support_interface_filament": "0", "support_on_build_plate_only": "0", - "support_top_z_distance": "0.15", + "support_top_z_distance": "0.2", "support_interface_loop_pattern": "0", "support_interface_top_layers": "2", "support_interface_spacing": "0", @@ -61,9 +61,9 @@ "support_object_xy_distance": "0.5", "detect_thin_wall": "0", "top_surface_line_width": "0.4", - "top_surface_speed": "30", - "travel_speed": "400", - "enable_prime_tower": "0", + "top_surface_speed": "35", + "travel_speed": "150", + "enable_prime_tower": "1", "prime_tower_width": "60", "xy_hole_compensation": "0", "xy_contour_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 e2f0eac9c99..a1547448e36 100644 --- a/resources/profiles/re3D/process/fdm_process_re3D_common.json +++ b/resources/profiles/re3D/process/fdm_process_re3D_common.json @@ -5,120 +5,112 @@ "instantiation": "false", "inherits": "fdm_process_common", "adaptive_layer_height": "0", - "reduce_crossing_wall": "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", - "bridge_flow": "1", - "bridge_speed": "25", - "brim_width": "8", "brim_object_gap": "0.1", "compatible_printers_condition": "", - "print_sequence": "by layer", - "default_acceleration": "5500", "top_surface_acceleration": "500", - "bridge_no_support": "0", "draft_shield": "disabled", - "elefant_foot_compensation": "0.0", - "enable_arc_fitting": "0", - "outer_wall_line_width": "0.44", + "enable_arc_fitting": "1", "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "0.44", "infill_direction": "45", - "sparse_infill_density": "10%", - "sparse_infill_pattern": "gyroid", "initial_layer_acceleration": "500", - "travel_acceleration": "5500", - "inner_wall_acceleration": "5500", - "initial_layer_line_width": "0.6", - "initial_layer_print_height": "0.4", - "infill_combination": "0", - "sparse_infill_line_width": "0.44", - "infill_wall_overlap": "25%", + "travel_acceleration": "5000", + "inner_wall_acceleration": "5000", "interface_shells": "0", "ironing_flow": "10%", "ironing_spacing": "0.1", "ironing_speed": "20", "ironing_type": "no ironing", - "layer_height": "0.2", - "reduce_infill_retraction": "0", - "filename_format": "{input_filename_base}_{filament_type[initial_tool]}_{print_time}.gcode", - "detect_overhang_wall": "1", "overhang_1_4_speed": "45", "overhang_2_4_speed": "35", "overhang_3_4_speed": "25", "overhang_4_4_speed": "15", - "inner_wall_line_width": "0.44", - "wall_loops": "2", - "print_settings_id": "", - "raft_layers": "0", - "seam_position": "aligned", - "skirt_distance": "10", - "skirt_height": "1", - "skirt_loops": "3", - "minimum_sparse_infill_area": "15", - "internal_solid_infill_line_width": "0.44", - "spiral_mode": "0", - "standby_temperature_delta": "-5", - "enable_support": "1", - "resolution": "0.012", + "print_settings_id": "fdm_process_re3D_common", + "skirt_loops": "2", + "resolution": "0.0", "support_type": "normal(auto)", "support_style": "snug", - "support_on_build_plate_only": "0", - "support_top_z_distance": "0.22", - "support_bottom_z_distance": "0.22", - "support_filament": "0", - "support_line_width": "0.44", - "support_interface_loop_pattern": "0", - "support_interface_filament": "0", - "support_interface_top_layers": "3", - "support_interface_bottom_layers": "1", - "support_interface_spacing": "0.5", - "support_interface_speed": "45", - "support_base_pattern": "rectilinear", - "support_base_pattern_spacing": "2.5", - "support_speed": "45", - "support_threshold_angle": "30", - "support_object_xy_distance": "0.35", + "support_interface_bottom_layers": "2", "tree_support_branch_angle": "45", "tree_support_wall_count": "0", - "detect_thin_wall": "0", "top_surface_pattern": "monotonicline", - "top_surface_line_width": "0.44", "top_shell_layers": "4", "top_shell_thickness": "0.6", - "initial_layer_speed": "30", - "initial_layer_infill_speed": "30", - "outer_wall_speed": "45", - "inner_wall_speed": "45", - "internal_solid_infill_speed": "45", - "top_surface_speed": "45", - "gap_infill_speed": "45", - "sparse_infill_speed": "45", - "travel_speed": "300", - "enable_prime_tower": "1", + "initial_layer_infill_speed": "50", "wipe_tower_no_sparse_layers": "0", - "prime_tower_width": "30", - "xy_hole_compensation": "0", - "xy_contour_compensation": "0", - "precise_outer_wall": "1", + "precise_outer_wall": "0", "outer_wall_acceleration": "2500", - "bridge_acceleration": "5500", - "sparse_infill_acceleration": "5500", - "internal_solid_infill_acceleration": "5500", + "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": "50", + "initial_layer_travel_speed": "100", "slow_down_layers": "2", - "small_perimeter_speed": "45", - "small_perimeter_threshold": "45", + "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 Terabot 4 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 diff --git a/resources/profiles/re3D/process/fgf_process_re3D_common.json b/resources/profiles/re3D/process/fgf_process_re3D_common.json index d690745a65a..32587535003 100644 --- a/resources/profiles/re3D/process/fgf_process_re3D_common.json +++ b/resources/profiles/re3D/process/fgf_process_re3D_common.json @@ -7,71 +7,61 @@ "adaptive_layer_height": "0", "reduce_crossing_wall": "1", "max_travel_detour_distance": "0", - "bottom_surface_pattern": "monotonic", + "bottom_surface_pattern": "monotonicline", "bottom_shell_layers": "2", "bottom_shell_thickness": "0", "bridge_speed": "40", "brim_type": "no_brim", "brim_width": "5", "brim_object_gap": "0.1", - "compatible_printers_condition": "", "print_sequence": "by layer", - "default_acceleration": "500", + "default_acceleration": "2500", "top_surface_acceleration": "500", "bridge_no_support": "0", "draft_shield": "disabled", "elefant_foot_compensation": "0", "enable_arc_fitting": "1", - "outer_wall_line_width": "1.9", "wall_infill_order": "inner wall/outer wall/infill", - "line_width": "1.9", "infill_direction": "45", "sparse_infill_density": "20%", - "sparse_infill_pattern": "gyroid", + "sparse_infill_pattern": "rectilinear", "initial_layer_acceleration": "500", - "travel_acceleration": "700", - "inner_wall_acceleration": "500", - "initial_layer_line_width": "1.9", - "initial_layer_print_height": "1", + "travel_acceleration": "2500", + "inner_wall_acceleration": "2500", "infill_combination": "0", - "sparse_infill_line_width": "1.9", "infill_wall_overlap": "50%", - "wall_generator": "classic", + "wall_generator": "arachne", "interface_shells": "0", "ironing_flow": "15%", "ironing_spacing": "0.1", "ironing_speed": "15", "ironing_type": "no ironing", - "layer_height": "1", "reduce_infill_retraction": "1", - "filename_format": "{input_filename_base}_{filament_type[initial_tool]}_{print_time}.gcode", + "filename_format": "{input_filename_base}.gcode", "detect_overhang_wall": "1", "overhang_1_4_speed": "0", "overhang_2_4_speed": "20", "overhang_3_4_speed": "15", "overhang_4_4_speed": "10", - "inner_wall_line_width": "1.9", "wall_loops": "2", - "print_settings_id": "", + "print_settings_id": "fgf_process_re3D_common", "raft_layers": "0", "seam_position": "aligned", - "seam_gap": "0", + "seam_gap": "10", "staggered_inner_seams": "1", - "skirt_distance": "2", + "skirt_distance": "10", "skirt_height": "1", "skirt_loops": "3", "minimum_sparse_infill_area": "15", - "internal_solid_infill_line_width": "1.9", "spiral_mode": "0", - "standby_temperature_delta": "-5", + "standby_temperature_delta": "0", "enable_support": "0", - "resolution": "0.012", + "resolution": "0.0", "support_type": "normal(auto)", "support_style": "default", "support_on_build_plate_only": "0", "support_top_z_distance": "0.2", "support_filament": "0", - "support_line_width": "1.9", "support_interface_loop_pattern": "0", "support_interface_filament": "0", "support_interface_top_layers": "2", @@ -80,14 +70,13 @@ "support_interface_speed": "100", "support_base_pattern": "rectilinear", "support_base_pattern_spacing": "2.5", - "support_speed": "150", + "support_speed": "50", "support_threshold_angle": "30", "support_object_xy_distance": "0.35", "tree_support_branch_angle": "45", "tree_support_wall_count": "0", "detect_thin_wall": "0", "top_surface_pattern": "monotonic", - "top_surface_line_width": "1.9", "top_shell_layers": "4", "top_shell_thickness": "0", "initial_layer_speed": "30", @@ -106,6 +95,7 @@ "xy_contour_compensation": "0", "infill_anchor": "2mm", "ensure_vertical_shell_thickness": "none", + "accel_to_decel_enable": "0", "slow_down_layers": "1", "default_jerk": "5", "outer_wall_jerk": "9", @@ -115,8 +105,11 @@ "first_layer_jerk": "9", "travel_jerk": "9", "compatible_printers": [ - "re3D Gigabot X2 1.75 nozzle", - "re3D Gigabot X2 XLT 1.75 nozzle", - "re3D Terabot X2 1.75 nozzle" + "re3D GigabotX 2 0.8 nozzle", + "re3D GigabotX 2 1.75 nozzle", + "re3D GigabotX 2 XLT 0.8 nozzle", + "re3D GigabotX 2 XLT 1.75 nozzle", + "re3D TerabotX 2 0.8 nozzle", + "re3D TerabotX 2 1.75 nozzle" ] -} +} \ No newline at end of file diff --git a/resources/profiles/re3D/re3D Gigabot X2 XLT_buildplate_texture.svg b/resources/profiles/re3D/re3D GigabotX 2 XLT_buildplate_texture.svg similarity index 100% rename from resources/profiles/re3D/re3D Gigabot X2 XLT_buildplate_texture.svg rename to resources/profiles/re3D/re3D GigabotX 2 XLT_buildplate_texture.svg diff --git a/resources/profiles/re3D/re3D Gigabot X2 XLT_cover.png b/resources/profiles/re3D/re3D GigabotX 2 XLT_cover.png similarity index 100% rename from resources/profiles/re3D/re3D Gigabot X2 XLT_cover.png rename to resources/profiles/re3D/re3D GigabotX 2 XLT_cover.png diff --git a/resources/profiles/re3D/re3D Gigabot X2_buildplate_texture.svg b/resources/profiles/re3D/re3D GigabotX 2_buildplate_texture.svg similarity index 100% rename from resources/profiles/re3D/re3D Gigabot X2_buildplate_texture.svg rename to resources/profiles/re3D/re3D GigabotX 2_buildplate_texture.svg diff --git a/resources/profiles/re3D/re3D Gigabot X2_cover.png b/resources/profiles/re3D/re3D GigabotX 2_cover.png similarity index 100% rename from resources/profiles/re3D/re3D Gigabot X2_cover.png rename to resources/profiles/re3D/re3D GigabotX 2_cover.png diff --git a/resources/profiles/re3D/re3D Terabot X2_buildplate_texture.svg b/resources/profiles/re3D/re3D TerabotX 2_buildplate_texture.svg similarity index 100% rename from resources/profiles/re3D/re3D Terabot X2_buildplate_texture.svg rename to resources/profiles/re3D/re3D TerabotX 2_buildplate_texture.svg diff --git a/resources/profiles/re3D/re3D Terabot X2_cover.png b/resources/profiles/re3D/re3D TerabotX 2_cover.png similarity index 100% rename from resources/profiles/re3D/re3D Terabot X2_cover.png rename to resources/profiles/re3D/re3D TerabotX 2_cover.png diff --git a/resources/web/data/text.js b/resources/web/data/text.js index 4a1fd7ea511..33fbc89087d 100644 --- a/resources/web/data/text.js +++ b/resources/web/data/text.js @@ -109,7 +109,7 @@ var LangText = { orca1: "Edit Project Info", orca2: "No model information", orca3: "Stealth Mode", - orca4: "This stops the transmission of data to Bambu's cloud services. Users who don't use BBL machines or use LAN mode only can safely turn on this function.", + orca4: "This disables all cloud features, including Orca Cloud profile syncing. Users who prefer to work entirely offline can enable this option.", orca5: "Enable Stealth Mode.", orca6: "Bambu Cloud", orca7: "Orca Cloud Account", @@ -117,6 +117,7 @@ var LangText = { orca9: "Bambu Cloud Account", orca10: "Not connected", orca11: "Connected", + orca12: "Note: When Stealth Mode is enabled, your user profiles will not be backed up to Orca Cloud.", }, ca_ES: { t1: "Benvingut a Orca Slicer", @@ -343,7 +344,6 @@ var LangText = { orca1: "Editar información del proyecto", orca2: "No hay información sobre el modelo", orca3: "Modo sigiloso", - orca4: "Esta función detiene la transmisión de datos a los servicios en la nube de Bambu. Los usuarios que no utilicen máquinas BBL o que solo usen el modo LAN pueden activar esta función con seguridad.", orca5: "Activar modo sigiloso.", orca6: "Bambu Cloud", orca7: "Orca Cloud Account", @@ -461,7 +461,6 @@ var LangText = { orca1: "Modifica informazioni progetto", orca2: "Nessuna informazione sul modello", orca3: "Modalità invisibile", - orca4: "Con questa modalità, la trasmissione dei dati ai servizi cloud di Bambu sarà interrotta. Gli utenti che non utilizzano macchine BBL o che usano solo la modalità LAN possono attivare questa funzione in modo sicuro.", orca5: "Abilita la modalità invisibile.", orca6: "Bambu Cloud", orca7: "Orca Cloud Account", @@ -1169,7 +1168,6 @@ var LangText = { orca1: "Изменить информацию", orca2: "Информация отсутствует", orca3: "Режим конфиденциальности", - orca4: "Это остановит передачу данных в облачные сервисы Bambu. Помешает только владельцам Bambu Lab, не использующим режим «Только LAN».", orca5: "Включить режим конфиденциальности", orca6: "Bambu Cloud", orca7: "Orca Cloud Account", @@ -1386,7 +1384,6 @@ var LangText = { orca1: "Proje Bilgilerini Düzenle", orca2: "Model bilgisi yok", orca3: "Gizli Mod", - orca4: "Bu, Bambu'nun bulut hizmetlerine veri iletimini durdurur. BBL makinelerini kullanmayan veya yalnızca LAN modunu kullanan kullanıcılar bu işlevi güvenle açabilir.", orca5: "Gizli Modu etkinleştirin.", orca6: "Bambu Cloud", orca7: "Orca Cloud Account", @@ -1505,7 +1502,6 @@ var LangText = { orca1: "Edytuj informacje o projekcie", orca2: "Brak informacji o modelu", orca3: "Tryb «Niewidzialny»", - orca4: "To wyłączy przesyłanie danych do usług chmurowych Bambu. Użytkownicy, którzy nie korzystają z maszyn BBL lub używają tylko trybu LAN, mogą bez obaw włączyć tę opcję.", orca5: "Włącz tryb «Niewidzialny»", orca6: "Bambu Cloud", orca7: "Orca Cloud Account", @@ -1624,7 +1620,6 @@ var LangText = { orca1: "Editar Info do Projeto", orca2: "Sem informação do modelo", orca3: "Modo Furtivo", - orca4: "Isso interrompe a transmissão de dados para os serviços de nuvem da Bambu. Usuários que não usam máquinas BBL ou usam somente o modo LAN podem ativar essa função com segurança.", orca5: "Habilita Modo Furtivo.", orca6: "Bambu Cloud", orca7: "Orca Cloud Account", @@ -1742,7 +1737,6 @@ var LangText = { orca1: "Redaguoti projekto informaciją", orca2: "Nėra informacijos apie modelį", orca3: "Slaptas režimas", - orca4: "Tai sustabdo duomenų perdavimą į Bambu debesijos paslaugas. Vartotojai, kurie nenaudoja BBL mašinų arba naudoja tik LAN režimą, gali drąsiai įjungti šią funkciją.", orca5: "Įjungti slaptą režimą.", orca6: "Bambu Cloud", orca7: "Orca Cloud Account", diff --git a/resources/web/guide/4orca/index.html b/resources/web/guide/4orca/index.html index e9b5cf5df27..df61fa4d929 100644 --- a/resources/web/guide/4orca/index.html +++ b/resources/web/guide/4orca/index.html @@ -22,7 +22,9 @@
diff --git a/src/OrcaSlicer.cpp b/src/OrcaSlicer.cpp index 7107e1ba1ee..2e445cadfd2 100644 --- a/src/OrcaSlicer.cpp +++ b/src/OrcaSlicer.cpp @@ -1591,7 +1591,7 @@ int CLI::run(int argc, char **argv) record_exit_reson(outfile_dir, CLI_FILE_VERSION_NOT_SUPPORTED, 0, cli_errors[CLI_FILE_VERSION_NOT_SUPPORTED], sliced_info); flush_and_exit(CLI_FILE_VERSION_NOT_SUPPORTED); } - Semver old_version(1, 5, 9), old_version2(1, 5, 9), old_version3(2, 0, 0), old_version4(2, 2, 0); + Semver old_version(1, 5, 9), old_version2(1, 5, 9), old_version3(2, 0, 0), old_version4(2, 2, 0), old_version5("2.4.0"); if ((file_version < old_version) && !config.empty()) { translate_old = true; BOOST_LOG_TRIVIAL(info) << boost::format("old 3mf version %1%, need to translate")%file_version.to_string(); @@ -1606,6 +1606,19 @@ int CLI::run(int argc, char **argv) BOOST_LOG_TRIVIAL(info) << boost::format("old 3mf version %1%, need to set enable_wrapping_detection to false")%file_version.to_string(); } + if ((file_version < old_version5) && !config.empty()) { + int converted_count = ConfigMigrations::migrate_legacy_feature_filament_defaults(config); + for (ModelObject *model_object : model.objects) { + converted_count += ConfigMigrations::migrate_legacy_feature_filament_defaults(model_object->config); + for (ModelVolume *model_volume : model_object->volumes) + converted_count += ConfigMigrations::migrate_legacy_feature_filament_defaults(model_volume->config); + } + + if (converted_count > 0) { + BOOST_LOG_TRIVIAL(info) << boost::format("old 3mf version %1%, migrated %2% feature filament selections from 1 to 0 (Default)") % file_version.to_string() % converted_count; + } + } + if (normative_check) { ConfigOptionStrings* postprocess_scripts = config.option("post_process"); if (postprocess_scripts) { diff --git a/src/libslic3r/AppConfig.cpp b/src/libslic3r/AppConfig.cpp index b35a754c2b3..13782fbad24 100644 --- a/src/libslic3r/AppConfig.cpp +++ b/src/libslic3r/AppConfig.cpp @@ -93,6 +93,11 @@ bool AppConfig::get_stealth_mode() return get_bool("stealth_mode"); } +bool AppConfig::get_hide_login_side_panel() +{ + return get_bool("hide_login_side_panel"); +} + void AppConfig::reset() { m_storage.clear(); @@ -347,6 +352,9 @@ void AppConfig::set_defaults() if (get("stealth_mode").empty()) { set_bool("stealth_mode", false); } + if (get("hide_login_side_panel").empty()) { + set_bool("hide_login_side_panel", false); + } if (get("allow_abnormal_storage").empty()) { set_bool("allow_abnormal_storage", false); } diff --git a/src/libslic3r/AppConfig.hpp b/src/libslic3r/AppConfig.hpp index 33f243905a8..76366784b06 100644 --- a/src/libslic3r/AppConfig.hpp +++ b/src/libslic3r/AppConfig.hpp @@ -85,6 +85,7 @@ public: std::string get_language_code(); std::string get_hms_host(); bool get_stealth_mode(); + bool get_hide_login_side_panel(); // Clear and reset to defaults. void reset(); diff --git a/src/libslic3r/Config.hpp b/src/libslic3r/Config.hpp index 8ef014564c0..443a88d9d2e 100644 --- a/src/libslic3r/Config.hpp +++ b/src/libslic3r/Config.hpp @@ -2968,6 +2968,34 @@ private: std::ostream& operator<<(std::ostream& os, const DynamicConfig::DynamicConfigDifference& diff); +namespace ConfigMigrations { + +template +inline int migrate_legacy_feature_filament_defaults(ConfigLike &cfg) +{ + static const char *feature_filament_keys[] = { + "wall_filament", + "sparse_infill_filament", + "solid_infill_filament" + }; + + int converted_count = 0; + for (const char *key : feature_filament_keys) { + if (!cfg.has(key)) + continue; + + const ConfigOption *opt = cfg.option(key); + if (opt != nullptr && opt->getInt() == 1) { + cfg.set_key_value(key, new ConfigOptionInt(0)); + ++converted_count; + } + } + + return converted_count; +} + +} + // Configuration store with a static definition of configuration values. // In Slic3r, the static configuration stores are during the slicing / g-code generation for efficiency reasons, // because the configuration values could be accessed directly. diff --git a/src/libslic3r/ExtrusionEntity.hpp b/src/libslic3r/ExtrusionEntity.hpp index b8251bf3d02..180312aa6d3 100644 --- a/src/libslic3r/ExtrusionEntity.hpp +++ b/src/libslic3r/ExtrusionEntity.hpp @@ -118,6 +118,9 @@ public: virtual void reverse() = 0; virtual Point first_point() const = 0; virtual Point last_point() const = 0; + virtual const Point3& first_point3() const = 0; + virtual const Point3& last_point3() const = 0; + // Produce a list of 2D polygons covered by the extruded paths, offsetted by the extrusion width. // Increase the offset by scaled_epsilon to achieve an overlap, so a union will produce no gaps. virtual void polygons_covered_by_width(Polygons &out, const float scaled_epsilon) const = 0; @@ -253,9 +256,9 @@ public: ExtrusionEntity* clone_move() override { return new ExtrusionPath(std::move(*this)); } void reverse() override { this->polyline.reverse(); } Point first_point() const override { return this->polyline.points.front().to_point(); } - Point3 first_point3() const { return this->polyline.points.front(); } + const Point3& first_point3() const override { return this->polyline.points.front(); } Point last_point() const override { return this->polyline.points.back().to_point(); } - Point3 last_point3() const { return this->polyline.points.back(); } + const Point3& last_point3() const override { return this->polyline.points.back(); } size_t size() const { return this->polyline.size(); } bool empty() const { return this->polyline.empty(); } bool is_closed() const { return ! this->empty() && this->polyline.points.front() == this->polyline.points.back(); } @@ -403,7 +406,9 @@ public: ExtrusionEntity* clone_move() override { return new ExtrusionMultiPath(std::move(*this)); } void reverse() override; Point first_point() const override { return this->paths.front().polyline.points.front().to_point(); } + const Point3& first_point3() const override { return this->paths.front().polyline.points.front(); } Point last_point() const override { return this->paths.back().polyline.points.back().to_point(); } + const Point3& last_point3() const override { return this->paths.back().polyline.points.back(); } size_t size() const { return this->paths.size(); } bool empty() const { return this->paths.empty(); } double length() const override; @@ -459,7 +464,9 @@ public: bool is_counter_clockwise() { return this->polygon().is_counter_clockwise(); } void reverse() override; Point first_point() const override { return this->paths.front().polyline.points.front().to_point(); } + const Point3& first_point3() const override { return this->paths.front().polyline.points.front(); } Point last_point() const override { assert(this->first_point() == this->paths.back().polyline.points.back().to_point()); return this->first_point(); } + const Point3& last_point3() const override { assert(this->first_point3() == this->paths.back().polyline.points.back()); return this->first_point3(); } Polygon polygon() const; double length() const override; bool split_at_vertex(const Point &point, const double scaled_epsilon = scaled(0.001)); @@ -510,7 +517,7 @@ public: #ifndef NDEBUG bool validate() const { - assert(this->first_point() == this->paths.back().polyline.points.back()); + assert(this->first_point3() == this->paths.back().polyline.points.back()); for (size_t i = 1; i < paths.size(); ++ i) assert(this->paths[i - 1].polyline.points.back() == this->paths[i].polyline.points.front()); return true; diff --git a/src/libslic3r/ExtrusionEntityCollection.hpp b/src/libslic3r/ExtrusionEntityCollection.hpp index 35c9e24743b..13727869fe3 100644 --- a/src/libslic3r/ExtrusionEntityCollection.hpp +++ b/src/libslic3r/ExtrusionEntityCollection.hpp @@ -119,7 +119,10 @@ public: { return this->no_sort ? *this : chained_path_from(this->entities, start_near, role); } void reverse() override; Point first_point() const override { return this->entities.front()->first_point(); } + const Point3& first_point3() const override { return this->entities.front()->first_point3(); } Point last_point() const override { return this->entities.back()->last_point(); } + const Point3& last_point3() const override { return this->entities.back()->last_point3(); } + // Produce a list of 2D polygons covered by the extruded paths, offsetted by the extrusion width. // Increase the offset by scaled_epsilon to achieve an overlap, so a union will produce no gaps. void polygons_covered_by_width(Polygons &out, const float scaled_epsilon) const override; diff --git a/src/libslic3r/Fill/Lightning/Generator.cpp b/src/libslic3r/Fill/Lightning/Generator.cpp index 6044f0f0a03..c638610aa5a 100644 --- a/src/libslic3r/Fill/Lightning/Generator.cpp +++ b/src/libslic3r/Fill/Lightning/Generator.cpp @@ -89,9 +89,9 @@ Generator::Generator(const PrintObject &print_object, const std::function& contours, std //TODO: decide whether enable density controller in advanced options or not density = std::max(0.15f, density); m_supporting_radius = coord_t(m_infill_extrusion_width) / density; - + // Keep support-lightning behavior fixed and independent of user print-region angles. const double lightning_infill_overhang_angle = M_PI / 4; // 45 degrees const double lightning_infill_prune_angle = M_PI / 4; // 45 degrees const double lightning_infill_straightening_angle = M_PI / 4; // 45 degrees diff --git a/src/libslic3r/GCode.cpp b/src/libslic3r/GCode.cpp index b6a2ddb6658..179bd564c18 100644 --- a/src/libslic3r/GCode.cpp +++ b/src/libslic3r/GCode.cpp @@ -2278,17 +2278,45 @@ namespace DoExport { ooze_prevention.enable = print.config().ooze_prevention.value && ! print.config().single_extruder_multi_material; } + // Count tool/filament changes across the print from the tool ordering. Used as a fallback when no + // wipe tower populated WipeTowerData::number_of_toolchanges (left at -1). Covers non-sequential + // prints without a wipe tower (manual swaps, toolchanger/IDEX). Note: sequential (by-object) prints + // leave print.tool_ordering() empty, so total_toolchanges stays 0 there (unchanged from before). + static int total_toolchanges_from_ordering(const ToolOrdering &tool_ordering) + { + int changes = 0; + int last = -1; + for (const LayerTools < : tool_ordering) + for (unsigned int extruder : lt.extruders) { + if (last >= 0 && int(extruder) != last) + ++ changes; + last = int(extruder); + } + return changes; + } + + // Total tool changes for the print, preferring the wipe-tower count and falling back to the tool + // ordering when no wipe tower populated it (number_of_toolchanges < 0). + static int resolve_total_toolchanges(const WipeTowerData &wipe_tower_data, const ToolOrdering &tool_ordering) + { + int changes = wipe_tower_data.number_of_toolchanges; + if (changes < 0) + changes = total_toolchanges_from_ordering(tool_ordering); + return std::max(0, changes); + } + // Fill in print_statistics and return formatted string containing filament statistics to be inserted into G-code comment section. static std::string update_print_stats_and_format_filament_stats( const bool has_wipe_tower, const WipeTowerData &wipe_tower_data, const std::vector &extruders, - PrintStatistics &print_statistics) + PrintStatistics &print_statistics, + const ToolOrdering &tool_ordering) { std::string filament_stats_string_out; print_statistics.clear(); - print_statistics.total_toolchanges = std::max(0, wipe_tower_data.number_of_toolchanges); + print_statistics.total_toolchanges = resolve_total_toolchanges(wipe_tower_data, tool_ordering); if (! extruders.empty()) { std::pair out_filament_used_mm ("; filament used [mm] = ", 0); std::pair out_filament_used_cm3("; filament used [cm3] = ", 0); @@ -2521,6 +2549,9 @@ void GCode::_do_export(Print& print, GCodeOutputStream &file, ThumbnailsGenerato std::string top_gcode_template = print.config().file_start_gcode.value; if (!top_gcode_template.empty()) { DynamicConfig top_config; + // file_start_gcode runs before the parser copy that normally restores these, so set them here. + PlaceholderParser::update_timestamp(top_config); + PlaceholderParser::update_user_name(top_config); top_config.set_key_value("print_time_sec", new ConfigOptionString(GCodeProcessor::reserved_tag(GCodeProcessor::ETags::Print_Time_Sec_Placeholder))); top_config.set_key_value("used_filament_length", new ConfigOptionString(GCodeProcessor::reserved_tag(GCodeProcessor::ETags::Used_Filament_Length_Placeholder))); std::string top_gcode = print.placeholder_parser().process(top_gcode_template, 0, &top_config); @@ -2858,7 +2889,7 @@ void GCode::_do_export(Print& print, GCodeOutputStream &file, ThumbnailsGenerato // For the start / end G-code to do the priming and final filament pull in case there is no wipe tower provided. this->placeholder_parser().set("has_wipe_tower", has_wipe_tower); this->placeholder_parser().set("has_single_extruder_multi_material_priming", wipe_tower_type == WipeTowerType::Type2 && has_wipe_tower && print.config().single_extruder_multi_material_priming); - this->placeholder_parser().set("total_toolchanges", std::max(0, print.wipe_tower_data().number_of_toolchanges)); // Check for negative toolchanges (single extruder mode) and set to 0 (no tool change). + this->placeholder_parser().set("total_toolchanges", DoExport::resolve_total_toolchanges(print.wipe_tower_data(), print.tool_ordering())); this->placeholder_parser().set("num_extruders", int(print.config().nozzle_diameter.values.size())); this->placeholder_parser().set("retract_length", new ConfigOptionFloats(print.config().retraction_length)); @@ -3141,18 +3172,24 @@ void GCode::_do_export(Print& print, GCodeOutputStream &file, ThumbnailsGenerato if (is_bbl_printers) { this->_print_first_layer_extruder_temperatures(file, print, machine_start_gcode, initial_extruder_id, true); } - // Orca: when activate_air_filtration is set on any extruder, find and set the highest during_print_exhaust_fan_speed - bool activate_air_filtration_during_print = false; - int during_print_exhaust_fan_speed = 0; - for (const auto &extruder : m_writer.extruders()) { - if (m_config.activate_air_filtration.get_at(extruder.id()) && m_config.activate_air_filtration_during_print.get_at(extruder.id())) { - activate_air_filtration_during_print = true; - during_print_exhaust_fan_speed = std::max(during_print_exhaust_fan_speed, - m_config.during_print_exhaust_fan_speed.get_at(extruder.id())); + + // Orca: when air filtration is supported, check if it needs to be activated during printing and set the exhaust fan speed accordingly + if (m_config.support_air_filtration.value) { + bool activate_air_filtration_during_print = false; + int during_print_exhaust_fan_speed = 0; + + // Orca: when activate_air_filtration is set on any extruder, find and set the highest during_print_exhaust_fan_speed + for (const auto &extruder : m_writer.extruders()) { + if (m_config.activate_air_filtration.get_at(extruder.id()) && m_config.activate_air_filtration_during_print.get_at(extruder.id())) { + activate_air_filtration_during_print = true; + during_print_exhaust_fan_speed = std::max(during_print_exhaust_fan_speed, + m_config.during_print_exhaust_fan_speed.get_at(extruder.id())); + } } + + if (activate_air_filtration_during_print) + file.write(m_writer.set_exhaust_fan(during_print_exhaust_fan_speed)); } - if (activate_air_filtration_during_print) - file.write(m_writer.set_exhaust_fan(during_print_exhaust_fan_speed, true)); print.throw_if_canceled(); @@ -3451,16 +3488,23 @@ void GCode::_do_export(Print& print, GCodeOutputStream &file, ThumbnailsGenerato if (activate_chamber_temp_control && max_chamber_temp > 0) file.write(m_writer.set_chamber_temperature(0, false)); //close chamber_temperature - bool activate_air_filtration_on_completion = false; - int complete_print_exhaust_fan_speed = 0; - for (const auto& extruder : m_writer.extruders()) { - if (m_config.activate_air_filtration.get_at(extruder.id()) && m_config.activate_air_filtration_on_completion.get_at(extruder.id())) { - activate_air_filtration_on_completion = true; - complete_print_exhaust_fan_speed = std::max(complete_print_exhaust_fan_speed, m_config.complete_print_exhaust_fan_speed.get_at(extruder.id())); + // Orca: when air filtration is supported, check if it needs to be activated after print completion and set the exhaust fan speed accordingly + if (m_config.support_air_filtration.value) { + bool activate_air_filtration_on_completion = false; + int complete_print_exhaust_fan_speed = 0; + + // Orca: when activate_air_filtration is set on any extruder, find and set the highest complete_print_exhaust_fan_speed + for (const auto& extruder : m_writer.extruders()) { + if (m_config.activate_air_filtration.get_at(extruder.id()) && m_config.activate_air_filtration_on_completion.get_at(extruder.id())) { + activate_air_filtration_on_completion = true; + complete_print_exhaust_fan_speed = std::max(complete_print_exhaust_fan_speed, m_config.complete_print_exhaust_fan_speed.get_at(extruder.id())); + } } + + if (activate_air_filtration_on_completion) + file.write(m_writer.set_exhaust_fan(complete_print_exhaust_fan_speed)); } - if (activate_air_filtration_on_completion) - file.write(m_writer.set_exhaust_fan(complete_print_exhaust_fan_speed, true)); + // adds tags for time estimators file.write_format(";%s\n", GCodeProcessor::reserved_tag(GCodeProcessor::ETags::Last_Line_M73_Placeholder).c_str()); file.write_format("; EXECUTABLE_BLOCK_END\n\n"); @@ -3473,7 +3517,9 @@ void GCode::_do_export(Print& print, GCodeOutputStream &file, ThumbnailsGenerato has_wipe_tower, print.wipe_tower_data(), m_writer.extruders(), // Modifies - print.m_print_statistics)); + print.m_print_statistics, + // Const input (tool-change fallback for non-wipe-tower prints) + print.tool_ordering())); print.m_print_statistics.initial_tool = initial_extruder_id; if (!is_bbl_printers) { file.write_format("; total filament used [g] = %.2lf\n", diff --git a/src/libslic3r/GCodeWriter.cpp b/src/libslic3r/GCodeWriter.cpp index 417a35b2eec..0e5a110c447 100644 --- a/src/libslic3r/GCodeWriter.cpp +++ b/src/libslic3r/GCodeWriter.cpp @@ -1154,13 +1154,19 @@ std::string GCodeWriter::set_additional_fan(unsigned int speed) return gcode.str(); } -std::string GCodeWriter::set_exhaust_fan( int speed,bool add_eol) +std::string GCodeWriter::set_exhaust_fan(int speed) { std::ostringstream gcode; gcode << "M106" << " P3" << " S" << (int)(speed / 100.0 * 255); - if(add_eol) - gcode << "\n"; + if (GCodeWriter::full_gcode_comment) { + if (speed == 0) + gcode << " ; disable exhaust fan "; + else + gcode << " ; enable exhaust fan "; + } + + gcode << "\n"; return gcode.str(); } diff --git a/src/libslic3r/GCodeWriter.hpp b/src/libslic3r/GCodeWriter.hpp index 3fd7a7668b1..10e52a1c8ea 100644 --- a/src/libslic3r/GCodeWriter.hpp +++ b/src/libslic3r/GCodeWriter.hpp @@ -106,7 +106,7 @@ public: std::string set_fan(unsigned int speed) const; //BBS: set additional fan speed for BBS machine only static std::string set_additional_fan(unsigned int speed); - static std::string set_exhaust_fan(int speed,bool add_eol); + static std::string set_exhaust_fan(int speed); //BBS void set_object_start_str(std::string start_string) { m_gcode_label_objects_start = start_string; } bool is_object_start_str_empty() { return m_gcode_label_objects_start.empty(); } diff --git a/src/libslic3r/Preset.cpp b/src/libslic3r/Preset.cpp index cd58e90e974..0070bdcbd77 100644 --- a/src/libslic3r/Preset.cpp +++ b/src/libslic3r/Preset.cpp @@ -1005,6 +1005,9 @@ static std::vector s_Preset_print_options{ "lateral_lattice_angle_1", "lateral_lattice_angle_2", "infill_overhang_angle", + "lightning_overhang_angle", + "lightning_prune_angle", + "lightning_straightening_angle", "top_surface_pattern", "bottom_surface_pattern", "infill_direction", @@ -1318,7 +1321,7 @@ static std::vector s_Preset_machine_limits_options { static std::vector s_Preset_printer_options { "printer_technology", - "printable_area", "extruder_printable_area", "bed_exclude_area","bed_custom_texture", "bed_custom_model", "gcode_flavor", + "printable_area", "extruder_printable_area", "support_parallel_printheads", "parallel_printheads_count", "parallel_printheads_bed_exclude_areas", "bed_exclude_area","bed_custom_texture", "bed_custom_model", "gcode_flavor", "fan_kickstart", "part_cooling_fan_min_pwm", "fan_speedup_time", "fan_speedup_overhangs", "single_extruder_multi_material", "manual_filament_change", "file_start_gcode", "machine_start_gcode", "machine_end_gcode", "before_layer_change_gcode", "printing_by_object_gcode", "layer_change_gcode", "time_lapse_gcode", "wrapping_detection_gcode", "change_filament_gcode", "change_extrusion_role_gcode", "printer_model", "printer_variant", "printer_extruder_id", "printer_extruder_variant", "extruder_variant_list", "default_nozzle_volume_type", @@ -1329,7 +1332,7 @@ static std::vector s_Preset_printer_options { "scan_first_layer", "enable_power_loss_recovery", "wrapping_detection_layers", "wrapping_exclude_area", "machine_load_filament_time", "machine_unload_filament_time", "machine_tool_change_time", "time_cost", "machine_pause_gcode", "template_custom_gcode", "nozzle_type", "nozzle_hrc","auxiliary_fan", "nozzle_volume","upward_compatible_machine", "z_hop_types", "travel_slope", "retract_lift_enforce","support_chamber_temp_control","support_air_filtration","printer_structure", "best_object_pos", "head_wrap_detect_zone", - "host_type", "print_host", "printhost_apikey", "bbl_use_printhost", "printer_agent", + "host_type", "print_host", "printhost_apikey", "flashforge_serial_number", "bbl_use_printhost", "printer_agent", "print_host_webui", "printhost_cafile","printhost_port","printhost_authorization_type", "printhost_user", "printhost_password", "printhost_ssl_ignore_revoke", "thumbnails", "thumbnails_format", @@ -3839,6 +3842,7 @@ static std::vector s_PhysicalPrinter_opts { "print_host", "print_host_webui", "printhost_apikey", + "flashforge_serial_number", "printhost_cafile", "printhost_port", "printhost_authorization_type", diff --git a/src/libslic3r/PresetBundle.cpp b/src/libslic3r/PresetBundle.cpp index 5e0ab158499..1e7ddd48496 100644 --- a/src/libslic3r/PresetBundle.cpp +++ b/src/libslic3r/PresetBundle.cpp @@ -2871,6 +2871,14 @@ void PresetBundle::load_selections(AppConfig &config, const PresetPreferences& p if (use_default_nozzle_volume_type) { project_config.option("nozzle_volume_type")->values = current_printer.config.option("default_nozzle_volume_type")->values; + } else { + // Orca: make sure `nozzle_volume_type` not shorter than `default_nozzle_volume_type`, otherwise we got array out of bound access + // later in `Tab::switch_excluder` + auto& opt = project_config.option("nozzle_volume_type")->values; + const auto& opt_default = current_printer.config.option("default_nozzle_volume_type")->values; + while (opt.size() < opt_default.size()) { + opt.emplace_back(opt_default[opt.size()]); + } } // Parse the initial physical printer name. @@ -4095,13 +4103,13 @@ DynamicPrintConfig PresetBundle::full_fff_config(bool apply_extruder, std::optio opt->value = boost::algorithm::clamp(opt->value, 0, int(num_filaments)); } - static const char* keys_1based[] = {"wall_filament", "sparse_infill_filament", "solid_infill_filament"}; - for (size_t i = 0; i < sizeof(keys_1based) / sizeof(keys_1based[0]); ++ i) { - std::string key = std::string(keys_1based[i]); + static const char* keys_with_default[] = {"wall_filament", "sparse_infill_filament", "solid_infill_filament"}; + for (size_t i = 0; i < sizeof(keys_with_default) / sizeof(keys_with_default[0]); ++ i) { + std::string key = std::string(keys_with_default[i]); auto *opt = dynamic_cast(out.option(key, false)); assert(opt != nullptr); - if(opt->value < 1 || opt->value > int(num_filaments)) - opt->value = 1; + if(opt->value < 0 || opt->value > int(num_filaments)) + opt->value = 0; } out.option("print_settings_id", true)->value = this->prints.get_selected_preset_name(); out.option("filament_settings_id", true)->values = this->filament_presets; diff --git a/src/libslic3r/Print.cpp b/src/libslic3r/Print.cpp index f2e59c3b67f..d53a168ec29 100644 --- a/src/libslic3r/Print.cpp +++ b/src/libslic3r/Print.cpp @@ -1254,10 +1254,6 @@ StringObjectException Print::check_multi_filament_valid(const Print& print) return ret; } -// Orca: this g92e0 regex is used copied from PrusaSlicer -// Matches "G92 E0" with various forms of writing the zero and with an optional comment. -boost::regex regex_g92e0 { "^[ \\t]*[gG]92[ \\t]*[eE](0(\\.0*)?|\\.0+)[ \\t]*(;.*)?$" }; - // Precondition: Print::validate() requires the Print::apply() to be called its invocation. //BBS: refine seq-print validation logic.....FIXME:StringObjectException *warning can only contain one warning, but there might be many warnings, need a vector StringObjectException Print::validate(StringObjectException *warning, Polygons* collison_polygons, std::vector>* height_polygons) const @@ -1675,26 +1671,60 @@ StringObjectException Print::validate(StringObjectException *warning, Polygons* } // Orca: G92 E0 is not supported when using absolute extruder addressing - // This check is copied from PrusaSlicer, the original author is Vojtech Bubnik - if(!is_BBL_printer()) { - bool before_layer_gcode_resets_extruder = - boost::regex_search(m_config.before_layer_change_gcode.value, regex_g92e0); - bool layer_gcode_resets_extruder = boost::regex_search(m_config.layer_change_gcode.value, regex_g92e0); - if (m_config.use_relative_e_distances) { - // See GH issues #6336 #5073 - if ((m_config.gcode_flavor == gcfMarlinLegacy || m_config.gcode_flavor == gcfMarlinFirmware) && - !before_layer_gcode_resets_extruder && !layer_gcode_resets_extruder) - return {L("Relative extruder addressing requires resetting the extruder position at each layer to " - "prevent loss of floating point accuracy. Add \"G92 E0\" to layer_gcode."), - nullptr, "before_layer_change_gcode"}; - } else if (before_layer_gcode_resets_extruder) - return {L("\"G92 E0\" was found in before_layer_gcode, which is incompatible with absolute extruder " + // This check is modified from PrusaSlicer, the original author is Vojtech Bubnik + // Orca: case‑sensitive match for exactly "G92 E0" (uppercase G and E only) + // because gcode is case sensitive and G92 e0 satisfies the regex but causes a slicing error + // https://github.com/OrcaSlicer/OrcaSlicer/issues/13927 + + // Matches any case of "G92 E0" (original pattern) + static const boost::regex regex_g92e0 { + "^[ \\t]*[gG]92[ \\t]*[eE](0(\\.0*)?|\\.0+)[ \\t]*(;.*)?$" + }; + // Matches only the exact uppercase "G92 E0" + static const boost::regex regex_g92e0_correct { + "^[ \\t]*G92[ \\t]*E(0(\\.0*)?|\\.0+)[ \\t]*(;.*)?$" + }; + + const bool before_has_g92_any = boost::regex_search( + m_config.before_layer_change_gcode.value, regex_g92e0); + const bool layer_has_g92_any = boost::regex_search( + m_config.layer_change_gcode.value, regex_g92e0); + + if (m_config.use_relative_e_distances) { + // Relative mode: "G92 E0" is required to reset extruder position. + const bool before_has_g92_exact = boost::regex_search( + m_config.before_layer_change_gcode.value, regex_g92e0_correct); + const bool layer_has_g92_exact = boost::regex_search( + m_config.layer_change_gcode.value, regex_g92e0_correct); + + // Wrong case found? + if (before_has_g92_any && !before_has_g92_exact) + return {L("\"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\"."), + nullptr, "before_layer_change_gcode"}; + if (layer_has_g92_any && !layer_has_g92_exact) + return {L("\"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\"."), + nullptr, "layer_change_gcode"}; + + // Only Marlin flavours need the reset; BBL printers do not. + if ((m_config.gcode_flavor == gcfMarlinLegacy || m_config.gcode_flavor == gcfMarlinFirmware) && + !is_BBL_printer() && + !before_has_g92_exact && !layer_has_g92_exact) + return {L("Relative extruder addressing requires resetting the extruder position at each layer to " + "prevent loss of floating point accuracy. Add \"G92 E0\" to layer_gcode."), + nullptr, "before_layer_change_gcode"}; + } else { + // Absolute mode: any occurrence of "G92 E0" is incompatible. + if (before_has_g92_any) + return {L("\"G92 E0\" was found in before_layer_change_gcode, which is incompatible with absolute extruder " "addressing."), nullptr, "before_layer_change_gcode"}; - else if (layer_gcode_resets_extruder) - return {L("\"G92 E0\" was found in layer_gcode, which is incompatible with absolute extruder addressing."), + if (layer_has_g92_any) + return {L("\"G92 E0\" was found in layer_change_gcode, which is incompatible with absolute extruder " + "addressing."), nullptr, "layer_change_gcode"}; - } + } const ConfigOptionDef* bed_type_def = print_config_def.get("curr_bed_type"); assert(bed_type_def != nullptr); @@ -3499,6 +3529,24 @@ std::string Print::output_filename(const std::string &filename_base) const config.set_key_value("plate_number", new ConfigOptionString(get_plate_number_formatted())); config.set_key_value("model_name", new ConfigOptionString(get_model_name())); + // the same type of filament contains multiple names, support exporting according to the filament name + auto full_print_config = this->full_print_config(); + const ConfigOptionStrings* filament_settings_id = full_print_config.option("filament_settings_id"); + std::string filament_name = ""; + auto extruders = this->extruders(true); + if(!extruders.empty()) { + // first extruder is the default extruder + int extruder_id = extruders.front(); + if(filament_settings_id->values.size() > extruder_id) { + filament_name = filament_settings_id->values[extruder_id]; + } + } + size_t end_pos = filament_name.find_first_of("@"); + if (end_pos != std::string::npos) { + filament_name = filament_name.substr(0, end_pos); + } + config.set_key_value("filament_name", new ConfigOptionString(filament_name)); + return this->PrintBase::output_filename(m_config.filename_format.value, ".gcode", filename_base, &config); } @@ -3591,9 +3639,12 @@ DynamicConfig PrintStatistics::config() const config.set_key_value("total_cost", new ConfigOptionFloat(this->total_cost)); config.set_key_value("total_toolchanges", new ConfigOptionInt(this->total_toolchanges)); config.set_key_value("total_weight", new ConfigOptionFloat(this->total_weight)); + config.set_key_value("extruded_weight_total", new ConfigOptionFloat(this->total_weight)); + config.set_key_value("extruded_volume_total", new ConfigOptionFloat(this->total_extruded_volume)); config.set_key_value("total_wipe_tower_cost", new ConfigOptionFloat(this->total_wipe_tower_cost)); config.set_key_value("total_wipe_tower_filament", new ConfigOptionFloat(this->total_wipe_tower_filament)); config.set_key_value("initial_tool", new ConfigOptionInt(static_cast(this->initial_tool))); + config.set_key_value("initial_extruder", new ConfigOptionInt(static_cast(this->initial_tool))); return config; } @@ -3602,8 +3653,8 @@ DynamicConfig PrintStatistics::placeholders() DynamicConfig config; for (const std::string key : { "print_time", "normal_print_time", "silent_print_time", - "used_filament", "extruded_volume", "total_cost", "total_weight", - "initial_tool", "total_toolchanges", "total_wipe_tower_cost", "total_wipe_tower_filament"}) + "used_filament", "extruded_volume", "extruded_volume_total", "total_cost", "total_weight", "extruded_weight_total", + "initial_tool", "initial_extruder", "total_toolchanges", "total_wipe_tower_cost", "total_wipe_tower_filament"}) config.set_key_value(key, new ConfigOptionString(std::string("{") + key + "}")); return config; } diff --git a/src/libslic3r/PrintApply.cpp b/src/libslic3r/PrintApply.cpp index c9b500a85c3..8f153c3037e 100644 --- a/src/libslic3r/PrintApply.cpp +++ b/src/libslic3r/PrintApply.cpp @@ -1254,6 +1254,8 @@ Print::ApplyStatus Print::apply(const Model &model, DynamicPrintConfig new_full_ BOOST_LOG_TRIVIAL(info) << __FUNCTION__ << boost::format(" %1%: found full_config_diff changed.")%__LINE__; update_apply_status(this->invalidate_step(psGCodeExport)); m_placeholder_parser.clear_config(); + // clear_config() wiped the constructor-set "version"; restore it for custom G-code. + m_placeholder_parser.set("version", std::string(SoftFever_VERSION)); // Set the profile aliases for the PrintBase::output_filename() m_placeholder_parser.set("print_preset", new_full_config.option("print_settings_id")->clone()); m_placeholder_parser.set("filament_preset", new_full_config.option("filament_settings_id")->clone()); @@ -1630,6 +1632,8 @@ Print::ApplyStatus Print::apply(const Model &model, DynamicPrintConfig new_full_ BOOST_LOG_TRIVIAL(info) << __FUNCTION__ << boost::format(" %1%: full_config_diff previous empty, need to apply now.")%__LINE__; m_placeholder_parser.clear_config(); + // clear_config() wiped the constructor-set "version"; restore it for custom G-code. + m_placeholder_parser.set("version", std::string(SoftFever_VERSION)); // Set the profile aliases for the PrintBase::output_filename() m_placeholder_parser.set("print_preset", new_full_config.option("print_settings_id")->clone()); m_placeholder_parser.set("filament_preset", new_full_config.option("filament_settings_id")->clone()); diff --git a/src/libslic3r/PrintConfig.cpp b/src/libslic3r/PrintConfig.cpp index b706283d07e..539add1bceb 100644 --- a/src/libslic3r/PrintConfig.cpp +++ b/src/libslic3r/PrintConfig.cpp @@ -693,6 +693,26 @@ void PrintConfigDef::init_common_params() def->gui_type = ConfigOptionDef::GUIType::one_string; def->set_default_value(new ConfigOptionPointsGroups{}); + def = this->add("support_parallel_printheads", coBool); + def->label = L("Support parallel printheads"); + def->tooltip = L("Enable printer settings for machines that can use multiple printheads in parallel."); + def->mode = comAdvanced; + def->set_default_value(new ConfigOptionBool{false}); + + def = this->add("parallel_printheads_count", coInt); + def->label = L("Parallel printheads count"); + def->tooltip = L("Set the number of parallel printheads for machines like OrangeStorm Giga printer."); + def->mode = comAdvanced; + def->min = 1; + def->max = 4; + def->set_default_value(new ConfigOptionInt{1}); + + def = this->add("parallel_printheads_bed_exclude_areas", coStrings); + def->label = L("Parallel printheads bed exclude areas"); + def->tooltip = L("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."); + def->mode = comAdvanced; + def->set_default_value(new ConfigOptionStrings()); + //BBS: add "bed_exclude_area" def = this->add("bed_exclude_area", coPoints); def->label = L("Bed exclude area"); @@ -828,6 +848,13 @@ void PrintConfigDef::init_common_params() def->cli = ConfigOptionDef::nocli; def->set_default_value(new ConfigOptionString()); + def = this->add("flashforge_serial_number", coString); + def->label = L("Serial Number"); + def->tooltip = L("Flashforge local API requires the printer serial number."); + def->mode = comAdvanced; + def->cli = ConfigOptionDef::nocli; + def->set_default_value(new ConfigOptionString()); + def = this->add("printhost_port", coString); def->label = L("Printer"); def->tooltip = L("Name of the printer."); @@ -1508,18 +1535,24 @@ void PrintConfigDef::init_fff_params() def->label = L("Slow down for curled perimeters"); def->category = L("Speed"); // xgettext:no-c-format, no-boost-format - def->tooltip = L("Enable this option to slow down printing in areas where perimeters may have curled upwards. " + def->tooltip = L("Enable this option to slow down printing in areas where perimeters may have curled upwards.\n" "For example, additional slowdown will be applied when printing overhangs on sharp corners like the " "front of the Benchy hull, reducing curling which compounds over multiple layers.\n\n" "It is generally recommended to have this option switched on unless your printer cooling is powerful enough or the " - "print speed slow enough that perimeter curling does not happen. If printing with a high external perimeter speed, " - "this parameter may introduce slight artifacts when slowing down due to the large variance in print speeds. " - "If you notice artifacts, ensure your pressure advance is tuned correctly.\n\n" + "print speed is slow enough that perimeter curling does not happen. \n" + "If printing with a high external perimeter speed, this parameter may introduce wall artifacts when slowing down, " + "due to the potentially large variance in print speeds causing the extruder to be unable to keep up with the requested flow change.\n" + "Root cause of these artifacts is most likely PA tuning being slightly off, especially when combined " + "with a high PA smooth time.\n\n" + "Recommendations when enabling this option:\n" + "1. Reduce Pressure Advance smooth time to 0.015 - 0.02 so the extruder reacts quickly to the speed changes.\n" + "2. Increase the minimum print speeds to limit the magnitude of the slowdown and reduce the variance between fast and slow segments.\n" + "3. If artifacts still appear, enable Extrusion Rate Smoothing (ERS) to further smooth the flow transitions.\n\n" "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. For example, when the perimeters are 100% overhanging" - ", with no wall supporting them from underneath, the 100% overhang speed will be applied."); + "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."); def->mode = comAdvanced; - def->set_default_value(new ConfigOptionBool{ true }); + def->set_default_value(new ConfigOptionBool{ false }); def = this->add("overhang_1_4_speed", coFloatOrPercent); def->label = "10%"; @@ -3014,6 +3047,36 @@ void PrintConfigDef::init_fff_params() def->mode = comAdvanced; def->set_default_value(new ConfigOptionFloat(60)); + def = this->add("lightning_overhang_angle", coFloat); + def->label = L("Lightning overhang angle"); + def->category = L("Strength"); + def->tooltip = L("Maximum overhang angle for Lightning infill support propagation."); + def->sidetext = u8"°"; + def->min = 5; + def->max = 85; + def->mode = comExpert; + def->set_default_value(new ConfigOptionFloat(45)); + + def = this->add("lightning_prune_angle", coFloat); + def->label = L("Prune angle"); + def->category = L("Strength"); + def->tooltip = L("Controls how aggressively short or unsupported Lightning branches are pruned. This angle is converted internally to a per-layer distance."); + def->sidetext = u8"°"; + def->min = 5; + def->max = 85; + def->mode = comExpert; + def->set_default_value(new ConfigOptionFloat(45)); + + def = this->add("lightning_straightening_angle", coFloat); + def->label = L("Straightening angle"); + def->category = L("Strength"); + def->tooltip = L("Maximum straightening angle used to simplify Lightning branches."); + def->sidetext = u8"°"; + def->min = 5; + def->max = 85; + def->mode = comExpert; + def->set_default_value(new ConfigOptionFloat(45)); + auto def_infill_anchor_min = def = this->add("infill_anchor", coFloatOrPercent); def->label = L("Sparse infill anchor length"); def->category = L("Strength"); @@ -4008,10 +4071,10 @@ void PrintConfigDef::init_fff_params() def->gui_type = ConfigOptionDef::GUIType::i_enum_open; def->label = L("Infill"); def->category = L("Extruders"); - def->tooltip = L("Filament to print internal sparse infill."); - def->min = 1; + def->tooltip = L("Filament to print internal sparse infill.\n\"Default\" uses the active object/part filament."); + def->min = 0; def->mode = comAdvanced; - def->set_default_value(new ConfigOptionInt(1)); + def->set_default_value(new ConfigOptionInt(0)); def = this->add("sparse_infill_line_width", coFloatOrPercent); def->label = L("Sparse infill"); @@ -4888,10 +4951,10 @@ void PrintConfigDef::init_fff_params() def->gui_type = ConfigOptionDef::GUIType::i_enum_open; def->label = L("Walls"); def->category = L("Extruders"); - def->tooltip = L("Filament to print walls."); - def->min = 1; + def->tooltip = L("Filament to print walls.\n\"Default\" uses the active object/part filament."); + def->min = 0; def->mode = comAdvanced; - def->set_default_value(new ConfigOptionInt(1)); + def->set_default_value(new ConfigOptionInt(0)); def = this->add("inner_wall_line_width", coFloatOrPercent); def->label = L("Inner wall"); @@ -5649,10 +5712,10 @@ void PrintConfigDef::init_fff_params() def->gui_type = ConfigOptionDef::GUIType::i_enum_open; def->label = L("Solid infill"); def->category = L("Extruders"); - def->tooltip = L("Filament to print solid infill."); - def->min = 1; + def->tooltip = L("Filament to print solid infill.\n\"Default\" uses the active object/part filament."); + def->min = 0; def->mode = comAdvanced; - def->set_default_value(new ConfigOptionInt(1)); + def->set_default_value(new ConfigOptionInt(0)); def = this->add("internal_solid_infill_line_width", coFloatOrPercent); def->label = L("Internal solid infill"); @@ -6028,7 +6091,7 @@ void PrintConfigDef::init_fff_params() def->gui_type = ConfigOptionDef::GUIType::i_enum_open; def->label = L("Support/raft base"); def->category = L("Support"); - def->tooltip = L("Filament to print support base and raft. \"Default\" means no specific filament for support and current filament is used."); + def->tooltip = L("Filament to print support base and raft.\n\"Default\" means no specific filament for support and current filament is used."); def->min = 0; def->mode = comSimple; def->set_default_value(new ConfigOptionInt(0)); @@ -6063,7 +6126,7 @@ void PrintConfigDef::init_fff_params() def->gui_type = ConfigOptionDef::GUIType::i_enum_open; def->label = L("Support/raft interface"); def->category = L("Support"); - def->tooltip = L("Filament to print support interface. \"Default\" means no specific filament for support interface and current filament is used."); + def->tooltip = L("Filament to print support interface.\n\"Default\" means no specific filament for support interface and current filament is used."); def->min = 0; // BBS def->mode = comSimple; @@ -8335,9 +8398,9 @@ void DynamicPrintConfig::normalize_fdm(int used_filaments) int extruder = this->option("extruder")->getInt(); this->erase("extruder"); if (extruder != 0) { - if (!this->has("sparse_infill_filament")) + if (!this->has("sparse_infill_filament") || this->option("sparse_infill_filament")->getInt() == 0) this->option("sparse_infill_filament", true)->setInt(extruder); - if (!this->has("wall_filament")) + if (!this->has("wall_filament") || this->option("wall_filament")->getInt() == 0) this->option("wall_filament", true)->setInt(extruder); // Don't propagate the current extruder to support. // For non-soluble supports, the default "0" extruder means to use the active extruder, @@ -8349,8 +8412,11 @@ void DynamicPrintConfig::normalize_fdm(int used_filaments) } } - if (!this->has("solid_infill_filament") && this->has("sparse_infill_filament")) - this->option("solid_infill_filament", true)->setInt(this->option("sparse_infill_filament")->getInt()); + if (this->has("sparse_infill_filament")) { + int sparse_infill_filament = this->option("sparse_infill_filament")->getInt(); + if (sparse_infill_filament > 0 && (!this->has("solid_infill_filament") || this->option("solid_infill_filament")->getInt() == 0)) + this->option("solid_infill_filament", true)->setInt(sparse_infill_filament); + } if (this->has("spiral_mode") && this->opt("spiral_mode", true)->value) { { @@ -8408,9 +8474,9 @@ void DynamicPrintConfig::normalize_fdm_1() int extruder = this->option("extruder")->getInt(); this->erase("extruder"); if (extruder != 0) { - if (!this->has("sparse_infill_filament")) + if (!this->has("sparse_infill_filament") || this->option("sparse_infill_filament")->getInt() == 0) this->option("sparse_infill_filament", true)->setInt(extruder); - if (!this->has("wall_filament")) + if (!this->has("wall_filament") || this->option("wall_filament")->getInt() == 0) this->option("wall_filament", true)->setInt(extruder); // Don't propagate the current extruder to support. // For non-soluble supports, the default "0" extruder means to use the active extruder, @@ -8422,8 +8488,11 @@ void DynamicPrintConfig::normalize_fdm_1() } } - if (!this->has("solid_infill_filament") && this->has("sparse_infill_filament")) - this->option("solid_infill_filament", true)->setInt(this->option("sparse_infill_filament")->getInt()); + if (this->has("sparse_infill_filament")) { + int sparse_infill_filament = this->option("sparse_infill_filament")->getInt(); + if (sparse_infill_filament > 0 && (!this->has("solid_infill_filament") || this->option("solid_infill_filament")->getInt() == 0)) + this->option("solid_infill_filament", true)->setInt(sparse_infill_filament); + } if (this->has("spiral_mode") && this->opt("spiral_mode", true)->value) { { diff --git a/src/libslic3r/PrintConfig.hpp b/src/libslic3r/PrintConfig.hpp index cdde293cfa6..aae20833d41 100644 --- a/src/libslic3r/PrintConfig.hpp +++ b/src/libslic3r/PrintConfig.hpp @@ -1103,6 +1103,9 @@ PRINT_CONFIG_CLASS_DEFINE( ((ConfigOptionFloat, lateral_lattice_angle_1)) ((ConfigOptionFloat, lateral_lattice_angle_2)) ((ConfigOptionFloat, infill_overhang_angle)) + ((ConfigOptionFloat, lightning_overhang_angle)) + ((ConfigOptionFloat, lightning_prune_angle)) + ((ConfigOptionFloat, lightning_straightening_angle)) ((ConfigOptionBool, align_infill_direction_to_model)) ((ConfigOptionString, extra_solid_infills)) ((ConfigOptionEnum, fuzzy_skin)) @@ -1480,6 +1483,9 @@ PRINT_CONFIG_CLASS_DERIVED_DEFINE( ((ConfigOptionFloatOrPercent, max_travel_detour_distance)) ((ConfigOptionPoints, printable_area)) ((ConfigOptionPointsGroups, extruder_printable_area)) + ((ConfigOptionBool, support_parallel_printheads)) + ((ConfigOptionInt, parallel_printheads_count)) + ((ConfigOptionStrings, parallel_printheads_bed_exclude_areas)) //BBS: add bed_exclude_area ((ConfigOptionPoints, bed_exclude_area)) ((ConfigOptionPoints, head_wrap_detect_zone)) diff --git a/src/libslic3r/PrintObject.cpp b/src/libslic3r/PrintObject.cpp index f572d3bbb18..65d624be46c 100644 --- a/src/libslic3r/PrintObject.cpp +++ b/src/libslic3r/PrintObject.cpp @@ -1300,6 +1300,9 @@ bool PrintObject::invalidate_state_by_config_options( || opt_key == "infill_shift_step" || opt_key == "sparse_infill_rotate_template" || opt_key == "solid_infill_rotate_template" + || opt_key == "lightning_overhang_angle" + || opt_key == "lightning_prune_angle" + || opt_key == "lightning_straightening_angle" || opt_key == "skeleton_infill_density" || opt_key == "skin_infill_density" || opt_key == "infill_lock_depth" @@ -1703,30 +1706,46 @@ void PrintObject::detect_surfaces_type() // Only iterate to the second-to-last layer, since we look at layer i+1. if( (this->config().enable_extra_bridge_layer.value == eblApplyToAll) || (this->config().enable_extra_bridge_layer.value == eblExternalBridgeOnly)){ const size_t last = (m_layers.empty() ? 0 : m_layers.size() - 1); - tbb::parallel_for( tbb::blocked_range(0, last), [this, region_id](const tbb::blocked_range &range) { + + // ORCA: Two-phase split (collect-then-apply) to eliminate a data race in the + // original single-phase parallel_for, where iteration `i` rewrote + // m_layers[i+1]->slices.surfaces via std::move while iteration `i+1` (running + // on an adjacent TBB block on another worker thread) was iterating that same + // Surfaces vector as its bot_surfs. Splitting into a read-only collect pass + // followed by a write-only apply pass removes the cross-iteration aliasing. + // + // Phase 1: read-only pass — collect each layer's stBottomBridge polygons into a + // per-layer cache. No surfaces are mutated, so concurrent reads are safe. + std::vector bridge_polys_per_layer(last); + tbb::parallel_for(tbb::blocked_range(0, last), [this, region_id, &bridge_polys_per_layer](const tbb::blocked_range &range) { for (size_t i = range.begin(); i < range.end(); ++i) { m_print->throw_if_canceled(); - - // Step 1: Find bridge polygons - // Current layer (i): Search for stBottomBridge polygons. const Surfaces &bot_surfs = m_layers[i]->m_regions[region_id]->slices.surfaces; - // Next layer (i+1): The layer where stInternal polygons may be re-classified. - Surfaces &top_surfs = m_layers[i + 1]->m_regions[region_id]->slices.surfaces; - - // Step 2: Collect the bridge polygons in the current layer region - Polygons polygons_bridge; for (const Surface &sbot : bot_surfs) { if (sbot.surface_type == stBottomBridge) { - polygons_append(polygons_bridge, to_polygons(sbot)); + polygons_append(bridge_polys_per_layer[i], to_polygons(sbot)); } } - + } + }); + + // Phase 2: write pass — each iteration mutates only m_layers[i+1]->slices.surfaces + // and reads its bridge polygons from the precomputed cache. Different iterations + // never share a write target, so there is no aliasing between worker threads. + tbb::parallel_for( tbb::blocked_range(0, last), [this, region_id, &bridge_polys_per_layer](const tbb::blocked_range &range) { + for (size_t i = range.begin(); i < range.end(); ++i) { + m_print->throw_if_canceled(); + + // Step 1 + 2: pull the precomputed bridge polygons for the current source layer. + const Polygons &polygons_bridge = bridge_polys_per_layer[i]; + // Step 3: Early termination of loop if no meaningfull bridge found // No bridge polygons found, continue to the next layer if (polygons_bridge.empty()) continue; // Step 4: Bottom bridge polygons found - scan and create layer+1 bridge polygon + Surfaces &top_surfs = m_layers[i + 1]->m_regions[region_id]->slices.surfaces; Surfaces new_surfaces; new_surfaces.reserve(top_surfs.size()); @@ -1740,7 +1759,50 @@ void PrintObject::detect_surfaces_type() // This would also skip generation of very short dual bridge layers (that are shorter than N perimeters), but these are unecessary as the bridge distance is // We could reduce this slightly to account for innacurcies in the clipping operation. // TODO: Monitor GitHub issues to check whether second bridge layers are ommited where they should be generated. If yes, reduce the filtering distance - + + // ORCA: Same-layer-top guard. + // + // Collect every stTop polygon present at layer i+1 (this region) and + // expand it by the same `offset_distance` used by the bridge filter + // above. Note that `offset_distance` here is the full wall-band + // distance for the region (external wall width + all configured + // internal wall widths, i.e. external + (wall_loops - 1) × internal), + // not a single perimeter width. Any candidate second-bridge area that + // falls under this expanded mask will be subtracted out below. + // + // Why this exists: detect_surfaces_type() classifies a layer's "top" + // surfaces as the geometry that is not covered by the layer above. Those + // stTop regions often have small stInternal islands embedded in them. + // The pre-existing wall-band filter (shrink_ex/offset_ex by + // offset_distance) is supposed to throw those tiny islands away, but + // its result is sensitive to Clipper's floating-point order of + // operations: on macOS ARM the filter eats them, on Windows/Intel it + // doesn't. Visible bridges then show up scattered across the printed + // top surface. + // + // Expanding stTop by offset_distance and subtracting it from the + // overlap makes the decision platform-independent: an island fully + // surrounded by stTop disappears regardless of which Clipper happens + // to be doing the math, while large stInternal regions away from the + // top survive intact (the expansion only nibbles the wall-band depth + // inward). + // + // Keep ExPolygons throughout so that any holes inside an stTop surface + // are offset with the correct sign (positive offset shrinks holes / + // grows the solid region). Using Polygons + expand() would treat the + // contour and each hole as independent polygons and could distort the + // mask. + ExPolygons same_layer_top_expanded; + { + ExPolygons same_layer_top; + for (const Surface &s : top_surfs) { + if (s.surface_type == stTop) + same_layer_top.push_back(s.expolygon); + } + if (! same_layer_top.empty()) + same_layer_top_expanded = offset_ex(same_layer_top, offset_distance); + } + // For each surface in the layer above for (Surface &s_up : top_surfs) { // Only reclassify stInternal polygons (i.e. what will become later solid and sparse infill) @@ -1755,7 +1817,13 @@ void PrintObject::detect_surfaces_type() // Filter out the resulting candidate bridges based on size. First perform a shrink operation... // ...followed by an expand operation to bring them back to the original size (positive offset) overlap = offset_ex(shrink_ex(overlap, offset_distance), offset_distance); - + + // ORCA: subtract the expanded same-layer stTop mask (see comment above + // the mask construction). Drops stInternal islands fully surrounded by + // stTop at i+1 without affecting bridges that lie away from the top. + if (! same_layer_top_expanded.empty() && ! overlap.empty()) + overlap = diff_ex(overlap, same_layer_top_expanded, ApplySafetyOffset::Yes); + // Now subtract the filtered new bridge layer from the remaining internal surfaces to create the new internal surface ExPolygons remainder = diff_ex(p_up, overlap, ApplySafetyOffset::Yes); @@ -2500,29 +2568,76 @@ void PrintObject::bridge_over_infill() backup_surfaces[lidx] = {}; } - tbb::parallel_for(tbb::blocked_range(0, this->layers().size()), [po = this, &backup_surfaces, - &surfaces_by_layer](tbb::blocked_range r) { + // ORCA: Two-phase split (collect-then-apply) to eliminate a data race in + // the original single-phase parallel_for, where iteration `lidx` read + // m_layers[lidx-1]->regions()->fill_surfaces (its lower_layer) to compute + // `lightning_fill`, while iteration `lidx-1`, on an adjacent TBB block, + // was concurrently std::move-ing / emplace_back-ing into that same + // SurfaceCollection. + // + // Semantic choice — read ORIGINAL surfaces in Phase 1: + // The lower_layer that iteration `lidx` looks at is the *current* layer + // for iteration `lidx-1`, which Phase 2 will modify. We therefore have to + // pick whether Phase 1 sees that layer's pre-modification or + // post-modification state. We deliberately use the original (pre-modification) + // state, for two reasons: + // 1. The gate is asking "does the layer below use lightning sparse + // infill?" — that's a property of the layer's configuration plus its + // original sparse-infill classification. Phase 2's edits only carve + // a small overhang-aligned slice of sparse into solid; they do not + // change whether the layer is using lightning. The realistic gate + // answer is the same either way. + // 2. Each layer's solid expansion is meant to give its OWN lower_layer + // something to anchor lightning lines onto. Cascading the gate + // across layers ("skip mine because the layer below already did + // some") would invert that intent and force a serial Phase 2. + // The original racy code didn't actually implement either choice + // consistently — it returned whichever bytes happened to be in the + // vector when the thread arrived. This split makes the behaviour + // defined, deterministic across runs and platforms, and equivalent to + // a clean sequential implementation that gathered all gates first and + // then applied modifications. + // + // Phase 1: read-only — for each layer, determine whether its lower_layer + // has any stInternal area inside a lightning-infill region. That's the + // sole purpose of `lightning_fill` in the original code: a gate. Capture + // it once into a per-layer bool, derived from the original (unmodified) + // surfaces, so the gate is platform-independent and order-independent. + std::vector needs_lightning_expansion(this->layers().size(), 0); + tbb::parallel_for(tbb::blocked_range(0, this->layers().size()), [po = this, &surfaces_by_layer, + &needs_lightning_expansion](tbb::blocked_range r) { PRINT_OBJECT_TIME_LIMIT_MILLIS(PRINT_OBJECT_TIME_LIMIT_DEFAULT); for (size_t lidx = r.begin(); lidx < r.end(); lidx++) { if (surfaces_by_layer.find(lidx) == surfaces_by_layer.end()) continue; - - Layer *layer = po->get_layer(lidx); + const Layer *layer = po->get_layer(lidx); const Layer *lower_layer = layer->lower_layer; if (lower_layer == nullptr) continue; - - Polygons lightning_fill; for (const LayerRegion *region : lower_layer->regions()) { - if (region->region().config().sparse_infill_pattern == ipLightning) { - Polygons lf = to_polygons(region->fill_surfaces.filter_by_type(stInternal)); - lightning_fill.insert(lightning_fill.end(), lf.begin(), lf.end()); + if (region->region().config().sparse_infill_pattern == ipLightning + && ! region->fill_surfaces.filter_by_type(stInternal).empty()) { + needs_lightning_expansion[lidx] = 1; + break; } } + } + }); - if (lightning_fill.empty()) + // Phase 2: write-only — each iteration mutates only m_layers[lidx]'s + // fill_surfaces and never reads any other layer's surfaces. Different + // iterations write to disjoint LayerRegion::fill_surfaces vectors, so + // there is no aliasing between worker threads. + tbb::parallel_for(tbb::blocked_range(0, this->layers().size()), [po = this, &backup_surfaces, + &surfaces_by_layer, + &needs_lightning_expansion](tbb::blocked_range r) { + PRINT_OBJECT_TIME_LIMIT_MILLIS(PRINT_OBJECT_TIME_LIMIT_DEFAULT); + for (size_t lidx = r.begin(); lidx < r.end(); lidx++) { + if (! needs_lightning_expansion[lidx]) continue; + Layer *layer = po->get_layer(lidx); + for (LayerRegion *region : layer->regions()) { backup_surfaces[lidx][region] = std::move( region->fill_surfaces); // Make backup copy by move!! so that pointers in candidate surfaces stay valid @@ -3232,53 +3347,75 @@ void PrintObject::bridge_over_infill() // === ORCA: Create a second internal bridge layer above the first bridge layer. ======================================================== // ====================================================================================================================================== if ( this->m_config.enable_extra_bridge_layer == eblApplyToAll || this->m_config.enable_extra_bridge_layer == eblInternalBridgeOnly) { - // Process layers in parallel up to second-to-last - tbb::parallel_for( tbb::blocked_range(0, this->layers().size() - 1), [this](const tbb::blocked_range& r) { - for (size_t lidx = r.begin(); lidx < r.end(); ++lidx) - { + // ORCA: Two-phase to eliminate the same data race as the external-bridge + // pass in detect_surfaces_type(). + // + // Phase 1: read-only — for each layer, collect its stInternalBridge polygons and + // the matching bridge angle into a per-layer cache. + struct LayerBridgeCache { + ExPolygons polys; + double angle = 0.0; + float offset_distance = 0.0f; + bool has_bridge = false; + }; + // Guard against size_t underflow when the object has 0 or 1 layers — there is + // no "layer above" to receive an extra bridge, so the whole pass is a no-op. + const size_t last = (this->layers().size() < 2) ? 0 : this->layers().size() - 1; + std::vector caches(this->layers().size()); + + tbb::parallel_for( tbb::blocked_range(0, last), [this, &caches](const tbb::blocked_range& r) { + for (size_t lidx = r.begin(); lidx < r.end(); ++lidx) { Layer* layer = this->get_layer(lidx); - - // (A) Gather internal bridging surfaces in the current layer - ExPolygons bridging_current_layer; - double bridging_angle_current = 0.0; - - bool found_any_bridge = false; - float offset_distance = 0.0f; - - // Pick a region from which to retrieve the flow width + LayerBridgeCache &cache = caches[lidx]; + if (!layer->regions().empty()) - offset_distance = layer->regions().front()->flow(frSolidInfill).scaled_width(); + cache.offset_distance = layer->regions().front()->flow(frSolidInfill).scaled_width(); for (LayerRegion *region : layer->regions()) { for (const Surface &surf : region->fill_surfaces.surfaces) { if (surf.surface_type == stInternalBridge) { - bridging_current_layer.push_back(surf.expolygon); - bridging_angle_current = surf.bridge_angle; // Store the last bridging angle of the current print object - found_any_bridge = true; + cache.polys.push_back(surf.expolygon); + cache.angle = surf.bridge_angle; // last bridge angle on this layer wins, matching prior behaviour + cache.has_bridge = true; } } } - - // If no bridging in this layer, continue with the next - if (!found_any_bridge || bridging_current_layer.empty()) + + if (!cache.has_bridge || cache.polys.empty()) { + cache.has_bridge = false; continue; - - // (B) Shrink-expand to remove trivial bridging areas - bridging_current_layer = offset_ex( shrink_ex(bridging_current_layer, offset_distance), offset_distance ); - - if (bridging_current_layer.empty()) - continue; // all bridging was trivial, continue with the next layer - + } + + // Shrink-expand to remove trivial bridging areas + cache.polys = offset_ex(shrink_ex(cache.polys, cache.offset_distance), cache.offset_distance); + if (cache.polys.empty()) + cache.has_bridge = false; + } + }); + + // Phase 2: write — each iteration mutates only m_layers[lidx+1]->fill_surfaces and + // pulls its bridge polygons from the precomputed cache. Different iterations never + // touch the same fill_surfaces vector, so there is no aliasing between workers. + tbb::parallel_for( tbb::blocked_range(0, last), [this, &caches](const tbb::blocked_range& r) { + for (size_t lidx = r.begin(); lidx < r.end(); ++lidx) + { + const LayerBridgeCache &cache = caches[lidx]; + + // If no bridging in this layer, continue with the next + if (!cache.has_bridge || cache.polys.empty()) + continue; + // (C) If there is a next layer, identify overlapping stInternal & stInternalSolid areas and convert the overlap to stSecondInternalBridge if (lidx + 1 < this->layers().size()) { Layer* next_layer = this->get_layer(lidx + 1); // second bridging angle is 90 degrees offset - double bridging_angle_second = bridging_angle_current + M_PI / 2.0; + double bridging_angle_second = cache.angle + M_PI / 2.0; // Union the bridging polygons - ExPolygons bridging_union = union_safety_offset_ex(bridging_current_layer); - + ExPolygons bridging_union = union_safety_offset_ex(cache.polys); + const float offset_distance = cache.offset_distance; + for (LayerRegion *next_region : next_layer->regions()) { Surfaces next_new_surfaces; Surfaces keep_surfaces; @@ -3377,6 +3514,12 @@ static void clamp_exturder_to_default(ConfigOptionInt &opt, size_t num_extruders opt.value = 1; } +static void clamp_feature_filament_to_valid(ConfigOptionInt &opt, size_t num_extruders) +{ + if (opt.value <= 0 || opt.value > (int)num_extruders) + opt.value = 1; +} + PrintObjectConfig PrintObject::object_config_from_model_object(const PrintObjectConfig &default_object_config, const ModelObject &object, size_t num_extruders) { PrintObjectConfig config = default_object_config; @@ -3394,61 +3537,88 @@ PrintObjectConfig PrintObject::object_config_from_model_object(const PrintObject const std::string key_extruder { "extruder" }; static constexpr const std::initializer_list keys_extruders { "sparse_infill_filament"sv, "solid_infill_filament"sv, "wall_filament"sv }; -static void apply_to_print_region_config(PrintRegionConfig &out, const DynamicPrintConfig &in) +struct FeatureFilamentOverrideMask { - // 1) Map legacy "extruder" to feature filament keys as a fallback only. - // If any feature-specific filament is explicitly set, keep those values. + bool sparse_infill_filament = false; + bool solid_infill_filament = false; + bool wall_filament = false; +}; + +static void apply_to_print_region_config(PrintRegionConfig &out, const DynamicPrintConfig &in, FeatureFilamentOverrideMask &feature_overrides) +{ + // 1) Explicit feature filament values take precedence over base extruder fallback. auto *opt_extruder = in.opt(key_extruder); - auto *opt_sparse_infill_filament = in.opt("sparse_infill_filament"); - auto *opt_solid_infill_filament = in.opt("solid_infill_filament"); - auto *opt_wall_filament = in.opt("wall_filament"); - const bool has_feature_filament_override = - (opt_sparse_infill_filament != nullptr && opt_sparse_infill_filament->value > 0) || - (opt_solid_infill_filament != nullptr && opt_solid_infill_filament->value > 0) || - (opt_wall_filament != nullptr && opt_wall_filament->value > 0); - if (opt_extruder) - if (int extruder = opt_extruder->value; extruder > 1 && ! has_feature_filament_override) { - // Not a default extruder. - out.sparse_infill_filament.value = extruder; - out.solid_infill_filament.value = extruder; - out.wall_filament.value = extruder; - } + int base_extruder = (opt_extruder != nullptr) ? opt_extruder->value : 0; + // 2) Copy the rest of the values. for (auto it = in.cbegin(); it != in.cend(); ++ it) if (it->first != key_extruder) if (ConfigOption* my_opt = out.option(it->first, false); my_opt != nullptr) { if (one_of(it->first, keys_extruders)) { - // Ignore "default" extruders. + // "Default" (0) clears explicit override for this scope and lets fallback apply. int extruder = static_cast(it->second.get())->value; - if (extruder > 0) + if (extruder > 0) { my_opt->setInt(extruder); + if (it->first == "sparse_infill_filament") + feature_overrides.sparse_infill_filament = true; + else if (it->first == "solid_infill_filament") + feature_overrides.solid_infill_filament = true; + else if (it->first == "wall_filament") + feature_overrides.wall_filament = true; + } else { + if (it->first == "sparse_infill_filament") + feature_overrides.sparse_infill_filament = false; + else if (it->first == "solid_infill_filament") + feature_overrides.solid_infill_filament = false; + else if (it->first == "wall_filament") + feature_overrides.wall_filament = false; + } } else my_opt->set(it->second.get()); } + + // 3) Apply base extruder only to features that were not explicitly overridden. + if (base_extruder > 0) { + if (!feature_overrides.sparse_infill_filament) + out.sparse_infill_filament.value = base_extruder; + if (!feature_overrides.solid_infill_filament) + out.solid_infill_filament.value = base_extruder; + if (!feature_overrides.wall_filament) + out.wall_filament.value = base_extruder; + } } PrintRegionConfig region_config_from_model_volume(const PrintRegionConfig &default_or_parent_region_config, const DynamicPrintConfig *layer_range_config, const ModelVolume &volume, size_t num_extruders) { PrintRegionConfig config = default_or_parent_region_config; + FeatureFilamentOverrideMask feature_overrides; + + // For model parts, non-zero values coming from the print defaults should stay explicit. + if (volume.is_model_part()) { + feature_overrides.sparse_infill_filament = (config.sparse_infill_filament.value > 0); + feature_overrides.solid_infill_filament = (config.solid_infill_filament.value > 0); + feature_overrides.wall_filament = (config.wall_filament.value > 0); + } + if (volume.is_model_part()) { // default_or_parent_region_config contains the Print's PrintRegionConfig. // Override with ModelObject's PrintRegionConfig values. - apply_to_print_region_config(config, volume.get_object()->config.get()); + apply_to_print_region_config(config, volume.get_object()->config.get(), feature_overrides); } else { // default_or_parent_region_config contains parent PrintRegion config, which already contains ModelVolume's config. } - apply_to_print_region_config(config, volume.config.get()); + apply_to_print_region_config(config, volume.config.get(), feature_overrides); if (! volume.material_id().empty()) - apply_to_print_region_config(config, volume.material()->config.get()); + apply_to_print_region_config(config, volume.material()->config.get(), feature_overrides); if (layer_range_config != nullptr) { // Not applicable to modifiers. assert(volume.is_model_part()); - apply_to_print_region_config(config, *layer_range_config); + apply_to_print_region_config(config, *layer_range_config, feature_overrides); } - // Clamp invalid extruders to the default extruder (with index 1). - clamp_exturder_to_default(config.sparse_infill_filament, num_extruders); - clamp_exturder_to_default(config.wall_filament, num_extruders); - clamp_exturder_to_default(config.solid_infill_filament, num_extruders); + // Resolve feature defaults and clamp invalid extruders to index 1. + clamp_feature_filament_to_valid(config.sparse_infill_filament, num_extruders); + clamp_feature_filament_to_valid(config.wall_filament, num_extruders); + clamp_feature_filament_to_valid(config.solid_infill_filament, num_extruders); if (config.sparse_infill_density.value < 0.00011f) // Switch of infill for very low infill rates, also avoid division by zero in infill generator for these very low rates. // See GH issue #5910. diff --git a/src/libslic3r/Support/TreeSupport3D.cpp b/src/libslic3r/Support/TreeSupport3D.cpp index 9b6758b8c28..8c3a66398a5 100644 --- a/src/libslic3r/Support/TreeSupport3D.cpp +++ b/src/libslic3r/Support/TreeSupport3D.cpp @@ -124,6 +124,9 @@ static std::vector>> group_me { std::vector>> grouped_meshes; + // Orca: Recompute static mesh-group state for this support generation pass. + TreeSupportSettings::zero_top_z_gap = false; + //FIXME this is ugly, it does not belong here. for (size_t object_id : print_object_ids) { const PrintObject &print_object = *print.get_object(object_id); @@ -1604,9 +1607,14 @@ static Point move_inside_if_outside(const Polygons &polygons, Point from, int di if (settings.move) { increased = relevant_offset; if (overspeed > 0) { - const coord_t safe_movement_distance = + coord_t safe_movement_distance = (current_elem.use_min_xy_dist ? config.xy_min_distance : config.xy_distance) + (std::min(config.z_distance_top_layers, config.z_distance_bottom_layers) > 0 ? config.min_feature_size : 0); + // Orca: + // safe_movement_distance is used as the safe_offset_inc() step, so keep it non-zero + // to preserve branch movement with zero-clearance support settings. + if (safe_movement_distance == 0) + safe_movement_distance = scaled(0.1); // The difference to ensure that the result not only conforms to wall_restriction, but collision/avoidance is done later. // The higher last_safe_step_movement_distance comes exactly from the fact that the collision will be subtracted later. increased = safe_offset_inc(increased, overspeed, volumes.getWallRestriction(support_element_collision_radius(config, parent.state), layer_idx, parent.state.use_min_xy_dist), @@ -1817,9 +1825,15 @@ static void increase_areas_one_layer( * layer z-1:dddddxxxxxxxxxx * For more detailed visualisation see calculateWallRestrictions */ - const coord_t safe_movement_distance = + coord_t safe_movement_distance = (elem.use_min_xy_dist ? config.xy_min_distance : config.xy_distance) + (std::min(config.z_distance_top_layers, config.z_distance_bottom_layers) > 0 ? config.min_feature_size : 0); + + // safe_movement_distance is used as a divisor and as the safe_offset_inc() step, + // so keep it non-zero to avoid division by zero and preserve branch movement. + if (safe_movement_distance == 0) + safe_movement_distance = scaled(0.1); + if (ceiled_parent_radius == volumes.ceilRadius(projected_radius_increased, parent.state.use_min_xy_dist) || projected_radius_increased < config.increase_radius_until_radius) // If it is guaranteed possible to increase the radius, the maximum movement speed can be increased, as it is assumed that the maximum movement speed is the one of the slower moving wall diff --git a/src/slic3r/GUI/3DScene.cpp b/src/slic3r/GUI/3DScene.cpp index fd3569e2ca7..50d4cfcfa6f 100644 --- a/src/slic3r/GUI/3DScene.cpp +++ b/src/slic3r/GUI/3DScene.cpp @@ -978,12 +978,51 @@ GLVolumeWithIdAndZList volumes_to_render(const GLVolumePtrs& volumes, GLVolumeCo return list; } -int GLVolumeCollection::get_selection_support_threshold_angle(bool &enable_support) const +// ORCA: Compute slope.normal_z for 3D overhang highlight directly from support settings. +// If support_threshold_angle is 0, use tree fallback angle (30 deg) for tree supports, +// and derive an equivalent angle from threshold overlap for normal supports. +float GLVolumeCollection::get_selection_support_normal_z() const { - const DynamicPrintConfig& glb_cfg = GUI::wxGetApp().preset_bundle->prints.get_edited_preset().config; - enable_support = glb_cfg.opt_bool("enable_support"); - int support_threshold_angle = glb_cfg.opt_int("support_threshold_angle"); - return support_threshold_angle ; + const DynamicPrintConfig& glb_cfg = GUI::wxGetApp().preset_bundle->prints.get_edited_preset().config; + const auto& full_cfg = GUI::wxGetApp().preset_bundle->full_config(); + const auto support_type = glb_cfg.opt_enum("support_type"); + const int support_threshold_angle = glb_cfg.opt_int("support_threshold_angle"); + double angle_rad; + + if (support_threshold_angle > 0) { + // Match support generation: explicit threshold angles are treated as inclusive. + const int effective_support_threshold_angle = std::min(support_threshold_angle + 1, 89); + angle_rad = Geometry::deg2rad(static_cast(effective_support_threshold_angle)); + } else if (is_tree(support_type)) { + angle_rad = Geometry::deg2rad(30.0); // fallback value for tree supports + } else { // For normal supports, if the angle is set to 0, calculate normal_z from overlap. + const double layer_height = full_cfg.opt_float("layer_height"); + const auto* nozzle_diameter_opt = full_cfg.option("nozzle_diameter"); + const int wall_filament = full_cfg.opt_int("wall_filament"); + const size_t nozzle_count = nozzle_diameter_opt->values.size(); + const size_t wall_extruder_idx = (wall_filament > 0 && wall_filament <= static_cast(nozzle_count)) + ? static_cast(wall_filament - 1) + : 0; // Invalid extruder index falls back to extruder 1. + + // Use wall extruder's nozzle diameter for better estimation of external perimeter width, + // which is more relevant to overhang printing than the default nozzle diameter. + const double nozzle_diameter = nozzle_diameter_opt->values[wall_extruder_idx]; + + double external_perimeter_width = full_cfg.get_abs_value("outer_wall_line_width", nozzle_diameter); + if (external_perimeter_width <= 0.0) { + external_perimeter_width = full_cfg.get_abs_value("line_width", nozzle_diameter); + + if (external_perimeter_width <= 0.0) + external_perimeter_width = nozzle_diameter; + } + + const double overlap_width = full_cfg.get_abs_value("support_threshold_overlap", external_perimeter_width); + const double lower_layer_offset = std::max(0.0, external_perimeter_width - overlap_width); + + angle_rad = lower_layer_offset <= EPSILON ? Geometry::deg2rad(89.0) : std::atan(layer_height / lower_layer_offset); + } + + return static_cast(-std::cos(std::clamp(angle_rad, 0.0, Geometry::deg2rad(89.0)))); } //BBS: add outline drawing logic @@ -1019,6 +1058,8 @@ void GLVolumeCollection::render(GLVolumeCollection::ERenderType type, if (disable_cullface) glsafe(::glDisable(GL_CULL_FACE)); + const float support_normal_z = get_selection_support_normal_z(); + for (GLVolumeWithIdAndZ& volume : to_render) { #if ENABLE_MODIFIERS_ALWAYS_TRANSPARENT if (type == ERenderType::Transparent) { @@ -1075,16 +1116,11 @@ void GLVolumeCollection::render(GLVolumeCollection::ERenderType type, //use -1 ad a invalid type shader->set_uniform("print_volume.type", -1); } - - bool enable_support; - int support_threshold_angle = get_selection_support_threshold_angle(enable_support); - - float normal_z = -::cos(Geometry::deg2rad((float) support_threshold_angle)); shader->set_uniform("volume_world_matrix", volume.first->world_matrix()); shader->set_uniform("slope.actived", m_slope.isGlobalActive && !volume.first->is_modifier && !volume.first->is_wipe_tower); shader->set_uniform("slope.volume_world_normal_matrix", static_cast(volume.first->world_matrix().matrix().block(0, 0, 3, 3).inverse().transpose().cast())); - shader->set_uniform("slope.normal_z", normal_z); + shader->set_uniform("slope.normal_z", support_normal_z); #if ENABLE_ENVIRONMENT_MAP unsigned int environment_texture_id = GUI::wxGetApp().plater()->get_environment_texture_id(); diff --git a/src/slic3r/GUI/3DScene.hpp b/src/slic3r/GUI/3DScene.hpp index b12d048aa9a..76d10620d96 100644 --- a/src/slic3r/GUI/3DScene.hpp +++ b/src/slic3r/GUI/3DScene.hpp @@ -488,7 +488,7 @@ public: GLVolume* new_toolpath_volume(const ColorRGBA& rgba); GLVolume* new_nontoolpath_volume(const ColorRGBA& rgba); - int get_selection_support_threshold_angle(bool&) const; + float get_selection_support_normal_z() const; // Render the volumes by OpenGL. //BBS: add outline drawing logic void render(ERenderType type, diff --git a/src/slic3r/GUI/AMSMaterialsSetting.cpp b/src/slic3r/GUI/AMSMaterialsSetting.cpp index 19a32c2d21c..4a429a4a5a4 100644 --- a/src/slic3r/GUI/AMSMaterialsSetting.cpp +++ b/src/slic3r/GUI/AMSMaterialsSetting.cpp @@ -863,7 +863,15 @@ void AMSMaterialsSetting::Popup(wxString filament, wxString sn, wxString temp_mi std::set filament_id_set; PresetBundle * preset_bundle = wxGetApp().preset_bundle; std::ostringstream stream; - stream << std::fixed << std::setprecision(1) << obj->GetExtderSystem()->GetNozzleDiameter(0); + // Defensive: this dialog is opened only from StatusPanel (BBL-only) today, so the fallback fires + // only during the brief BBL startup window before firmware reports nozzle info. Without this, + // the "0.0" lookup string returns an empty set and the filament dropdown goes blank. + float machine_diameter = obj->GetExtderSystem()->GetNozzleDiameter(0); + if (machine_diameter == 0.0f && preset_bundle) { + const ConfigOption *opt = preset_bundle->printers.get_selected_preset().config.option("nozzle_diameter"); + if (opt) machine_diameter = static_cast(opt)->values[0]; + } + stream << std::fixed << std::setprecision(1) << machine_diameter; std::string nozzle_diameter_str = stream.str(); std::set printer_names = preset_bundle->get_printer_names_by_printer_type_and_nozzle(DevPrinterConfigUtil::get_printer_display_name(obj->printer_type), nozzle_diameter_str); @@ -1101,8 +1109,17 @@ void AMSMaterialsSetting::on_select_filament(wxCommandEvent &evt) PresetBundle* preset_bundle = wxGetApp().preset_bundle; if (preset_bundle) { std::ostringstream stream; - if (obj) - stream << std::fixed << std::setprecision(1) << obj->GetExtderSystem()->GetNozzleDiameter(0); + if (obj) { + // Defensive: this dialog is opened only from StatusPanel (BBL-only) today, so the fallback fires + // only during the brief BBL startup window before firmware reports nozzle info. Without this, + // the "0.0" lookup string returns an empty set and filament lookup yields no results. + float machine_diameter = obj->GetExtderSystem()->GetNozzleDiameter(0); + if (machine_diameter == 0.0f) { + const ConfigOption *opt = preset_bundle->printers.get_selected_preset().config.option("nozzle_diameter"); + if (opt) machine_diameter = static_cast(opt)->values[0]; + } + stream << std::fixed << std::setprecision(1) << machine_diameter; + } std::string nozzle_diameter_str = stream.str(); std::set printer_names = preset_bundle->get_printer_names_by_printer_type_and_nozzle(DevPrinterConfigUtil::get_printer_display_name(obj->printer_type), nozzle_diameter_str); diff --git a/src/slic3r/GUI/CaliHistoryDialog.cpp b/src/slic3r/GUI/CaliHistoryDialog.cpp index 1dee391ae11..a485aaeb523 100644 --- a/src/slic3r/GUI/CaliHistoryDialog.cpp +++ b/src/slic3r/GUI/CaliHistoryDialog.cpp @@ -644,7 +644,14 @@ wxArrayString NewCalibrationHistoryDialog::get_all_filaments(const MachineObject std::set filament_id_set; std::set printer_names; std::ostringstream stream; - stream << std::fixed << std::setprecision(1) << obj->GetExtderSystem()->GetNozzleDiameter(0); + // If the machine didn't report a nozzle diameter (0.0 = unknown), fall back to the currently + // selected printer preset so the filament list isn't empty. + float machine_diameter = obj->GetExtderSystem()->GetNozzleDiameter(0); + if (machine_diameter == 0.0f && preset_bundle) { + const ConfigOption *opt = preset_bundle->printers.get_selected_preset().config.option("nozzle_diameter"); + if (opt) machine_diameter = static_cast(opt)->values[0]; + } + stream << std::fixed << std::setprecision(1) << machine_diameter; std::string nozzle_diameter_str = stream.str(); for (auto printer_it = preset_bundle->printers.begin(); printer_it != preset_bundle->printers.end(); printer_it++) { diff --git a/src/slic3r/GUI/CalibrationWizard.cpp b/src/slic3r/GUI/CalibrationWizard.cpp index c61beb3304d..ab5b920fb60 100644 --- a/src/slic3r/GUI/CalibrationWizard.cpp +++ b/src/slic3r/GUI/CalibrationWizard.cpp @@ -761,6 +761,7 @@ void PressureAdvanceWizard::on_cali_start() calib_info.extruder_id = preset_page->get_extruder_id(calib_info.ams_id); calib_info.extruder_type = preset_page->get_extruder_type(calib_info.extruder_id); calib_info.nozzle_volume_type = preset_page->get_nozzle_volume_type(calib_info.extruder_id); + calib_info.nozzle_diameter = preset_page->get_nozzle_diameter(calib_info.extruder_id); calib_info.select_ams = std::to_string(selected_tray_id); Preset *preset = selected_filaments.begin()->second; Preset * temp_filament_preset = new Preset(preset->type, preset->name + "_temp"); @@ -1293,6 +1294,7 @@ void FlowRateWizard::on_cali_start(CaliPresetStage stage, float cali_value, Flow calib_info.extruder_id = preset_page->get_extruder_id(calib_info.ams_id); calib_info.extruder_type = preset_page->get_extruder_type(calib_info.extruder_id); calib_info.nozzle_volume_type = preset_page->get_nozzle_volume_type(calib_info.extruder_id); + calib_info.nozzle_diameter = preset_page->get_nozzle_diameter(calib_info.extruder_id); Preset* preset = selected_filaments.begin()->second; temp_filament_preset = new Preset(preset->type, preset->name + "_temp"); temp_filament_preset->config = preset->config; @@ -1708,6 +1710,7 @@ void MaxVolumetricSpeedWizard::on_cali_start() calib_info.extruder_id = preset_page->get_extruder_id(calib_info.ams_id); calib_info.extruder_type = preset_page->get_extruder_type(calib_info.extruder_id); calib_info.nozzle_volume_type = preset_page->get_nozzle_volume_type(calib_info.extruder_id); + calib_info.nozzle_diameter = preset_page->get_nozzle_diameter(calib_info.extruder_id); calib_info.filament_prest = selected_filaments.begin()->second; std::map filament_list = preset_page->get_filament_ams_list(); calib_info.filament_color = filament_list[selected_filaments.begin()->first].opt_string("filament_colour", 0u); diff --git a/src/slic3r/GUI/ConfigManipulation.cpp b/src/slic3r/GUI/ConfigManipulation.cpp index 1df4dba9c22..1e5b3500393 100644 --- a/src/slic3r/GUI/ConfigManipulation.cpp +++ b/src/slic3r/GUI/ConfigManipulation.cpp @@ -836,9 +836,6 @@ void ConfigManipulation::toggle_print_fff_options(DynamicPrintConfig *config, co toggle_line("enable_tower_interface_cooldown_during_tower", have_prime_tower && config->opt_bool("enable_tower_interface_features")); - for (auto el : {"wall_filament", "sparse_infill_filament", "solid_infill_filament", "wipe_tower_filament"}) - toggle_line(el, !bSEMM); - bool purge_in_primetower = preset_bundle->printers.get_edited_preset().config.opt_bool("purge_in_prime_tower"); for (auto el : {"wipe_tower_rotation_angle", "wipe_tower_cone_angle", @@ -964,6 +961,10 @@ void ConfigManipulation::toggle_print_fff_options(DynamicPrintConfig *config, co bool lattice_options = config->opt_enum("sparse_infill_pattern") == InfillPattern::ipLateralLattice; for (auto el : { "lateral_lattice_angle_1", "lateral_lattice_angle_2"}) toggle_line(el, lattice_options); + + bool lightning_options = config->opt_enum("sparse_infill_pattern") == InfillPattern::ipLightning; + for (auto el : { "lightning_overhang_angle", "lightning_prune_angle", "lightning_straightening_angle" }) + toggle_line(el, lightning_options); // Adaptative Cubic and support cubic infill patterns do not support infill rotation. bool FillAdaptive = (pattern == InfillPattern::ipAdaptiveCubic || pattern == InfillPattern::ipSupportCubic); diff --git a/src/slic3r/GUI/CreatePresetsDialog.cpp b/src/slic3r/GUI/CreatePresetsDialog.cpp index 7f5ccede02f..8cf642ef718 100644 --- a/src/slic3r/GUI/CreatePresetsDialog.cpp +++ b/src/slic3r/GUI/CreatePresetsDialog.cpp @@ -138,7 +138,7 @@ static const std::unordered_map> printer_m "RatRig V-Core 4 IDEX 400", "RatRig V-Core 4 IDEX 400 COPY MODE", "RatRig V-Core 4 IDEX 400 MIRROR MODE", "RatRig V-Core 4 IDEX 500", "RatRig V-Core 4 IDEX 500 COPY MODE", "RatRig V-Core 4 IDEX 500 MIRROR MODE"}}, {"re3D", {"re3D Gigabot 4", "re3D Gigabot 4 XLT", "re3D Terabot 4", - "re3D Gigabot X2", "re3D Gigabot X2 XLT", "re3D Terabot X2"}}, + "re3D GigabotX 2", "re3D GigabotX 2 XLT", "re3D TerabotX 2"}}, {"RolohaunDesign", {"Rook MK1 LDO"}}, {"SecKit", {"SecKit SK-Tank", "Seckit Go3"}}, {"Snapmaker", {"Snapmaker J1", "Snapmaker A250", "Snapmaker A350", "Snapmaker A250 Dual", "Snapmaker A350 Dual", diff --git a/src/slic3r/GUI/Field.hpp b/src/slic3r/GUI/Field.hpp index a668ea3fab1..2fae710a936 100644 --- a/src/slic3r/GUI/Field.hpp +++ b/src/slic3r/GUI/Field.hpp @@ -190,6 +190,7 @@ public: /// Call the attached m_fn_edit_value method. void on_edit_value(); + virtual void propagate_value(){} public: /// parent wx item, opportunity to refactor (probably not necessary - data duplication) wxWindow* m_parent {nullptr}; @@ -317,7 +318,7 @@ public: void BUILD() override; bool value_was_changed(); // Propagate value from field to the OptionGroupe and Config after kill_focus/ENTER - void propagate_value(); + virtual void propagate_value() override; wxWindow* window {nullptr}; void set_value(const std::string& value, bool change_event = false) { diff --git a/src/slic3r/GUI/FilamentGroupPopup.cpp b/src/slic3r/GUI/FilamentGroupPopup.cpp index 2cff9c3c82b..a29e4537fbd 100644 --- a/src/slic3r/GUI/FilamentGroupPopup.cpp +++ b/src/slic3r/GUI/FilamentGroupPopup.cpp @@ -338,7 +338,21 @@ void FilamentGroupPopup::OnRadioBtn(int idx) } } -void FilamentGroupPopup::OnTimer(wxTimerEvent &event) { Dismiss(); } +void FilamentGroupPopup::OnTimer(wxTimerEvent &event) +{ +#if __APPLE__ + // On macOS, when moving cursor from slice button to this popup window, + // the popup window entering event is triggered first, then the slice button + // leaving event got triggered. So the timer is stopped first, then started + // again, causing the popup being dismissed immediately. + // To fix this, we check if cursor is still inside the popup window before + // dismissing. + wxPoint pos = this->ScreenToClient(wxGetMousePosition()); + if (this->GetClientRect().Contains(pos)) return; +#endif + + Dismiss(); +} void FilamentGroupPopup::Dismiss() { m_active = false; diff --git a/src/slic3r/GUI/GUI_App.cpp b/src/slic3r/GUI/GUI_App.cpp index 6b30dfa9cd6..bd71f001ee3 100644 --- a/src/slic3r/GUI/GUI_App.cpp +++ b/src/slic3r/GUI/GUI_App.cpp @@ -12,6 +12,7 @@ #include #include #include +#include #include // Localization headers: include libslic3r version first so everything in this file @@ -2981,7 +2982,11 @@ bool GUI_App::on_init_inner() } #endif - if (scrn) { scrn->SetText(_L("Creating main window") + dots); wxYield(); } + if (scrn) { + const auto scrn_txt = _L("Creating main window") + dots; + scrn->SetText(scrn_txt); + wxYield(); + } BOOST_LOG_TRIVIAL(info) << "create the main window"; mainframe = new MainFrame(); // hide settings tabs after first Layout @@ -3349,6 +3354,8 @@ bool GUI_App::on_init_network(bool try_backup) std::string country_code = app_config->get_country_code(); m_agent->set_country_code(country_code); m_agent->start(); + // Orca: disable Bambu telemetry up-front (before any login) so it never starts. + check_track_enable(); } // When using Orca cloud alongside the BBL network plugin, the BBL DLL agent still @@ -3365,6 +3372,12 @@ bool GUI_App::on_init_network(bool try_backup) bbl.init_log(); bbl.set_cert_file(resources_dir() + "/cert", "slicer_base64.cer"); bbl.set_country_code(app_config->get_country_code()); + // Orca: disable Bambu telemetry before start() so the DLL never spins up tracking + // workers. This covers the case where the BBL plugin is loaded for LAN discovery + // but the user has not registered BBL_CLOUD_PROVIDER (so m_agent->track_enable + // would not reach this DLL instance). + bbl.track_enable(false); + bbl.track_remove_files(); bbl.start(); } } @@ -4374,12 +4387,12 @@ void GUI_App::get_login_info(const std::string& provider/* = ORCA_CLOUD_PROVIDER if (m_agent) { if (m_agent->is_user_login(provider)) { std::string login_cmd = m_agent->build_login_cmd(provider); - wxString strJS = wxString::Format("window.postMessage(%s)", login_cmd); + wxString strJS = wxString::Format("window.postMessage(%s)", from_u8(login_cmd)); GUI::wxGetApp().run_script(strJS); } else { m_agent->user_logout(false, provider); std::string logout_cmd = m_agent->build_logout_cmd(provider); - wxString strJS = wxString::Format("window.postMessage(%s)", logout_cmd); + wxString strJS = wxString::Format("window.postMessage(%s)", from_u8(logout_cmd)); GUI::wxGetApp().run_script(strJS); } mainframe->m_webview->SetLoginPanelVisibility(true); @@ -4496,21 +4509,46 @@ std::string GUI_App::handle_web_request(std::string cmd) boost::optional command = root.get_optional("command"); if (command.has_value()) { std::string command_str = command.value(); - static const std::unordered_set stealth_blocked_commands = { + static const std::unordered_set stealth_blocked_info_commands = { "get_login_info", "get_orca_login_info", "get_bambu_login_info", + }; + static const std::unordered_set stealth_blocked_login_commands = { "homepage_login_or_register", "homepage_orca_login_or_register", "homepage_bambu_login_or_register", }; - if (app_config->get_stealth_mode() && stealth_blocked_commands.count(command_str)) { + if (app_config->get_stealth_mode() && stealth_blocked_info_commands.count(command_str)) { CallAfter([this] { if (mainframe && mainframe->m_webview) mainframe->m_webview->SendCloudProvidersInfo(); }); return ""; } + if (app_config->get_stealth_mode() && stealth_blocked_login_commands.count(command_str)) { + CallAfter([this, command_str] { + MessageDialog dlg(mainframe, + _L("You are currently in Stealth Mode. To log into the Cloud, you need to disable Stealth Mode first."), + _L("Stealth Mode"), + wxOK | wxCANCEL | wxCENTRE); + dlg.SetButtonLabel(wxID_OK, _L("Quit Stealth Mode")); + if (dlg.ShowModal() == wxID_OK) { + app_config->set_bool("stealth_mode", false); + app_config->save(); + if (mainframe && mainframe->m_webview) + mainframe->m_webview->SendCloudProvidersInfo(); + // Continue with login + if (command_str == "homepage_login_or_register") + this->request_login(true); + else if (command_str == "homepage_orca_login_or_register") + this->request_login(true, ORCA_CLOUD_PROVIDER); + else if (command_str == "homepage_bambu_login_or_register") + this->request_login(true, BBL_CLOUD_PROVIDER); + } + }); + return ""; + } if (command_str.compare("request_project_download") == 0) { if (root.get_child_optional("data") != boost::none) { pt::ptree data_node = root.get_child("data"); @@ -4800,6 +4838,8 @@ void GUI_App::handle_http_error(unsigned int status, std::string body, const std wxQueueEvent(this, evt); } +static std::mutex conflict_ids_mutex; + void GUI_App::on_http_error(wxCommandEvent &evt) { int status = evt.GetInt(); @@ -4875,32 +4915,62 @@ void GUI_App::on_http_error(wxCommandEvent &evt) return; } - static bool m_is_error_shown = false; + if (status == 409 && provider == ORCA_CLOUD_PROVIDER) { + BOOST_LOG_TRIVIAL(info) << "Http error 409."; + // Parse the conflict body to extract the error code and server profile id + int conflict_code = 0; + std::string conflict_setting_id; + try { + json conflict_body = json::parse(body_str); + if (conflict_body.contains("code")) + conflict_code = conflict_body["code"].get(); + if (conflict_body.contains("server_profile") && conflict_body["server_profile"].contains("id") + && conflict_body["server_profile"]["id"].is_string()) + conflict_setting_id = conflict_body["server_profile"]["id"].get(); + } catch (...) { + BOOST_LOG_TRIVIAL(warning) << "Failed to parse 409 conflict body."; + } + auto* plater = wxGetApp().plater(); + if (plater != nullptr && wxGetApp().imgui()->display_initialized()) { + std::string text; + if (conflict_code == -1) { + text = _u8L("Cloud sync conflict: this preset has a newer version in OrcaCloud.\n" + "Pull downloads the cloud copy. Force push overwrites it with your local preset."); + } else { + text = _u8L("Cloud sync conflict: a preset with this name already exists in OrcaCloud.\n" + "Pull downloads the cloud copy. Force push overwrites it with your local preset."); + } + plater->get_notification_manager()->push_orca_sync_conflict_notification( + text, + [this](wxEvtHandler*) { + // Runs on the GUI thread (on_http_error is a queued wx event); restart_sync_user_preset() + // already joins the old sync thread off the UI thread, so no extra thread is needed here. + if (is_closing() || !m_agent || !preset_bundle) + return false; + BOOST_LOG_TRIVIAL(info) << "Pulling Orca Cloud settings to resolve sync conflict."; + restart_sync_user_preset(); + return true; + }, + [this, conflict_setting_id](wxEvtHandler*) { + if (mainframe == nullptr) + return false; + MessageDialog + dlg(mainframe, + _L("Force push will overwrite the cloud copy with your local preset changes.\nDo you want to continue?"), + _L("Resolve cloud sync conflict"), wxCENTER | wxYES_NO | wxNO_DEFAULT | wxICON_WARNING); + if (dlg.ShowModal() != wxID_YES) + return false; + + force_push_conflicting_preset(conflict_setting_id); + return true; + }); + } + return; + } + // Show general error notification for Orca Cloud API failures (not Bambu) if (provider == ORCA_CLOUD_PROVIDER && status >= 400 && code != HttpErrorVersionLimited) { - wxString msg; - if (!error.empty()) { - msg = wxString::Format(_L("Failed to connect to OrcaCloud.\nPlease check your network connectivity\n(HTTP %u): %s"), status, wxString::FromUTF8(error)); - } else { - msg = wxString::Format(_L("Failed to connect to OrcaCloud.\nPlease check your network connectivity\n(HTTP %u)"), status); - } - - if (app_config->get_bool("developer_mode")) { - // Use notification manager if ImGui is ready; fall back to wxMessageBox on Linux - // where ImGui may not be initialized until the user switches to the Prepare tab. - if (wxGetApp().plater() != nullptr && wxGetApp().imgui()->display_initialized()) { - wxGetApp() - .plater() - ->get_notification_manager() - ->push_notification(NotificationType::PlaterError, NotificationManager::NotificationLevel::WarningNotificationLevel, - msg.ToUTF8().data()); - } - } - - if (!m_is_error_shown) { - m_is_error_shown = true; - wxMessageBox(msg, _L("Cloud Error"), wxOK | wxICON_ERROR, wxGetApp().mainframe); - } + BOOST_LOG_TRIVIAL(warning) << "API call to OrcaCloud failed with status=" << status; } } @@ -4970,7 +5040,7 @@ void GUI_App::on_user_login_handle(wxCommandEvent &evt) void GUI_App::check_track_enable() { - // Orca: alaways disable track event + // Orca: telemetry only exists on the BBL cloud agent; always disable it. if (m_agent) { m_agent->track_enable(false); m_agent->track_remove_files(); @@ -5855,15 +5925,59 @@ void GUI_App::reload_settings() if (is_closing() || !preset_bundle || !app_config || !mainframe) return; + // Snapshot each collection's edited config BEFORE any mutation. + // load_pending_vendors() via apply_vendor_config() can call select_preset(0) + // resetting all selections to defaults and overwriting m_edited_preset. + // The cloud load_user_presets() can also trigger select_preset() via + // remove_users_preset() and overwrite m_edited_preset.config via load_user_preset(). + struct PresetSnapshot { std::string name; DynamicPrintConfig config; bool dirty; }; + auto snapshot_collection = [](const PresetCollection& col) -> PresetSnapshot { + auto& sel = col.get_selected_preset(); + auto& ed = col.get_edited_preset(); + return {sel.name, ed.config, sel.is_dirty}; + }; + PresetSnapshot print_snap = snapshot_collection(preset_bundle->prints); + PresetSnapshot filament_snap = snapshot_collection(preset_bundle->filaments); + PresetSnapshot printer_snap = snapshot_collection(preset_bundle->printers); + // Check the user presets for any system vendors that need to be installed for (auto data : user_presets) { if (!check_preset_parent_available(data)) add_pending_vendor_preset(data); } load_pending_vendors(); + preset_bundle->load_user_presets(*app_config, user_presets, ForwardCompatibilitySubstitutionRule::Enable); preset_bundle->save_user_presets(*app_config, get_delete_cache_presets()); + // Re-apply any edited config that was wiped during vendor loading or sync. + auto restore_snapshot = [](PresetCollection& col, const PresetSnapshot& snap, const char* label) { + auto& ed = col.get_edited_preset(); + bool changed = !ed.config.equals(snap.config); + BOOST_LOG_TRIVIAL(info) << "reload_settings restore " << label + << ": snap_name=" << snap.name << " snap_dirty=" << snap.dirty + << " current_name=" << ed.name << " changed=" << changed; + if (!snap.dirty) return; // nothing to protect, let cloud updates stand + Preset* p = col.find_preset(snap.name, false, true); + if (p && p->name == snap.name) { + BOOST_LOG_TRIVIAL(info) << "reload_settings RESTORING " << label + << ": name=" << snap.name; + // If the snapshot preset is not currently selected, re-select it first. + if (col.get_selected_preset().name != snap.name) + col.select_preset_by_name(snap.name, true); + ed = col.get_edited_preset(); + ed.config = snap.config; + col.get_selected_preset().is_dirty = snap.dirty; + ed.is_dirty = snap.dirty; + } else { + BOOST_LOG_TRIVIAL(info) << "reload_settings restore " << label + << ": preset not found name=" << snap.name; + } + }; + restore_snapshot(preset_bundle->prints, print_snap, "print"); + restore_snapshot(preset_bundle->filaments, filament_snap, "filament"); + restore_snapshot(preset_bundle->printers, printer_snap, "printer"); + // Orca: settings changed, refresh ui to reflect the new preset values mainframe->update_side_preset_ui(); for (auto tab : tabs_list) { @@ -6125,13 +6239,14 @@ void GUI_App::load_pending_vendors() need_add_filaments.clear(); } -void GUI_App::sync_preset(Preset* preset) +void GUI_App::sync_preset(Preset* preset, bool force) { int result = -1; unsigned int http_code = 200; std::string updated_info; long long update_time = 0; // only sync user's preset + if (!m_agent) return; if (!preset->is_user()) return; auto setting_id = preset->setting_id; @@ -6203,9 +6318,9 @@ void GUI_App::sync_preset(Preset* preset) result = 0; } else { - result = m_agent->put_setting(setting_id, preset->name, &values_map, &http_code); + result = m_agent->put_setting(setting_id, preset->name, &values_map, &http_code, ORCA_CLOUD_PROVIDER, force); if (http_code >= 400) { - result = 0; + result = 0; updated_info = "hold"; BOOST_LOG_TRIVIAL(error) << "[sync_preset] put setting_id = " << setting_id << " failed, http_code = " << http_code; } else { @@ -6666,7 +6781,8 @@ void GUI_App::start_sync_user_preset(bool with_progress_dlg) // Sync once immediately, then every 60 seconds. while (!t.expired()) { ++tick_tock; - if (tick_tock % 120 == 0) { + // Sync once immediately, then every 60s, or right away when a force-push asked for it. + if (tick_tock % 120 == 0 || m_sync_user_presets_now.exchange(false, std::memory_order_acq_rel)) { tick_tock = 0; if (m_agent) { if (!m_agent->is_user_login()) { @@ -6677,9 +6793,24 @@ void GUI_App::start_sync_user_preset(bool with_progress_dlg) int total_count = 0; sync_count = preset_bundle->prints.get_user_presets(preset_bundle, presets_to_sync); + + auto sync_with_lock = [this](Preset& preset) { + bool force = false; + { + std::scoped_lock lock(conflict_ids_mutex); + auto it = std::find_if(m_pending_conflict_setting_ids.begin(), m_pending_conflict_setting_ids.end(), + [&preset](const std::string& id) { return id == preset.setting_id; }); + if (it != m_pending_conflict_setting_ids.end()) { + force = true; + m_pending_conflict_setting_ids.erase(it); + } + } + sync_preset(&preset, force); + }; + if (sync_count > 0) { for (Preset& preset : presets_to_sync) { - sync_preset(&preset); + sync_with_lock(preset); boost::this_thread::sleep_for(boost::chrono::milliseconds(100)); } } @@ -6688,7 +6819,7 @@ void GUI_App::start_sync_user_preset(bool with_progress_dlg) sync_count = preset_bundle->filaments.get_user_presets(preset_bundle, presets_to_sync); if (sync_count > 0) { for (Preset& preset : presets_to_sync) { - sync_preset(&preset); + sync_with_lock(preset); boost::this_thread::sleep_for(boost::chrono::milliseconds(100)); } } @@ -6697,7 +6828,7 @@ void GUI_App::start_sync_user_preset(bool with_progress_dlg) sync_count = preset_bundle->printers.get_user_presets(preset_bundle, presets_to_sync); if (sync_count > 0) { for (Preset& preset : presets_to_sync) { - sync_preset(&preset); + sync_with_lock(preset); boost::this_thread::sleep_for(boost::chrono::milliseconds(100)); } } @@ -6874,6 +7005,35 @@ void GUI_App::restart_sync_user_preset() }).detach(); } +void GUI_App::force_push_conflicting_preset(const std::string& setting_id) +{ + if (setting_id.empty() || !preset_bundle) + return; + + // Queue the id so the next push-sync re-uploads this preset with force=true. + { + std::scoped_lock lock(conflict_ids_mutex); + m_pending_conflict_setting_ids.push_back(setting_id); + } + + // The 409 left this preset on "hold", which get_user_presets() skips. Restore it to + // "update" so the next push-sync re-includes it and consumes the queued force flag. + // (We must NOT pull from the cloud here as the Pull path does — that would overwrite + // the local changes the user is trying to force-push.) + PresetCollection* collections[] = {&preset_bundle->prints, &preset_bundle->filaments, &preset_bundle->printers}; + for (PresetCollection* coll : collections) { + for (const Preset& preset : coll->get_presets()) { + if (preset.setting_id == setting_id && preset.sync_info == "hold") { + coll->set_sync_info_and_save(preset.name, preset.setting_id, "update", 0); + break; + } + } + } + + // Nudge the sync loop to push on its next tick instead of waiting for the 60s cadence. + m_sync_user_presets_now.store(true, std::memory_order_release); +} + void GUI_App::on_stealth_mode_enter() { stop_sync_user_preset(); diff --git a/src/slic3r/GUI/GUI_App.hpp b/src/slic3r/GUI/GUI_App.hpp index 5b6bcc6581e..dc0f1e52deb 100644 --- a/src/slic3r/GUI/GUI_App.hpp +++ b/src/slic3r/GUI/GUI_App.hpp @@ -297,6 +297,7 @@ private: NetworkAgent* m_agent { nullptr }; std::map need_delete_presets; // store setting ids of preset std::vector m_create_preset_blocked { false, false, false, false, false, false }; // excceed limit + std::vector m_pending_conflict_setting_ids; // setting_id from the most recent 409 conflict bool m_networking_compatible { false }; bool m_networking_need_update { false }; bool m_networking_cancel_update { false }; @@ -322,6 +323,7 @@ private: boost::thread m_sync_update_thread; std::shared_ptr m_user_sync_token; std::atomic m_restart_sync_pending {false}; + std::atomic m_sync_user_presets_now {false}; // request the sync loop to push user presets on its next tick bool m_is_dark_mode{ false }; bool m_adding_script_handler { false }; bool m_side_popup_status{false}; @@ -529,10 +531,13 @@ public: void add_pending_vendor_preset(const std::pair>& preset_data); void load_pending_vendors(); - void sync_preset(Preset* preset); + void sync_preset(Preset* preset, bool force = false); void start_sync_user_preset(bool with_progress_dlg = false); void stop_sync_user_preset(); void restart_sync_user_preset(); + // Resolve a cloud sync 409 by force-pushing the conflicting preset: clears the "hold" + // state the conflict left behind and queues it to be re-uploaded with force=true. + void force_push_conflicting_preset(const std::string& setting_id); void on_stealth_mode_enter(); // Bundle subscription sync diff --git a/src/slic3r/GUI/GUI_Factories.cpp b/src/slic3r/GUI/GUI_Factories.cpp index 2a47fe1aad7..357c39e47a2 100644 --- a/src/slic3r/GUI/GUI_Factories.cpp +++ b/src/slic3r/GUI/GUI_Factories.cpp @@ -121,10 +121,14 @@ std::map> SettingsFactory::PART_CATE {"bottom_shell_thickness", L("Bottom Minimum Shell Thickness"), 1}, {"bottom_surface_density", L("Bottom Surface Density"), 1}, {"sparse_infill_density", "", 1}, + {"fill_multiline", "", 1}, {"sparse_infill_pattern", "", 1}, {"lateral_lattice_angle_1", "", 1}, {"lateral_lattice_angle_2", "", 1}, {"infill_overhang_angle", "", 1}, + {"lightning_overhang_angle", "", 1}, + {"lightning_prune_angle", "", 1}, + {"lightning_straightening_angle", "", 1}, {"infill_anchor", "", 1}, {"infill_anchor_max", "", 1}, {"top_surface_pattern", "", 1}, @@ -572,35 +576,51 @@ wxMenu* MenuFactory::append_submenu_add_generic(wxMenu* menu, ModelVolumeType ty wxMenu* MenuFactory::append_submenu_add_handy_model(wxMenu* menu, ModelVolumeType type) { auto sub_menu = new wxMenu; - for (auto &item : {L("Orca Cube"), L("Orca Tolerance Test"), L("3DBenchy"), L("Cali Cat"), L("Autodesk FDM Test"), + for (auto &item : {L("Orca Cube"), L("OrcaSliced Combo"), L("Orca Tolerance Test"), L("3DBenchy"), L("Cali Cat"), L("Autodesk FDM Test"), L("Voron Cube"), L("Stanford Bunny"), L("Orca String Hell") }) { append_menu_item( sub_menu, wxID_ANY, _(item), "", [type, item](wxCommandEvent&) { std::vector input_files; bool is_stringhell = false; - std::string file_name = item; - if (file_name == L("Orca Cube")) - file_name = "OrcaCube_v2.3mf"; - else if (file_name == L("Orca Tolerance Test")) - file_name = "OrcaToleranceTest.drc"; - else if (file_name == L("3DBenchy")) - file_name = "3DBenchy.drc"; - else if (file_name == L("Cali Cat")) - file_name = "calicat.drc"; - else if (file_name == L("Autodesk FDM Test")) - file_name = "ksr_fdmtest_v4.drc"; - else if (file_name == L("Voron Cube")) - file_name = "Voron_Design_Cube_v7.drc"; - else if (file_name == L("Stanford Bunny")) - file_name = "Stanford_Bunny.drc"; - else if (file_name == L("Orca String Hell")) { - file_name = "Orca_stringhell.drc"; + std::vector file_names; + bool arrange_after_import = false; + if (item == L("Orca Cube")){ + file_names = { "OrcaCube_v2.drc", "OrcaPlug_v2.drc"}; + arrange_after_import = true; + } + else if (item == L("OrcaSliced Combo")) + { + file_names = { "OrcaSliced.3mf", "OrcaCube_v2.drc", "OrcaPlug_v2.drc" }; + arrange_after_import = true; + } + else if (item == L("Orca Tolerance Test")) + file_names = { "OrcaToleranceTest.drc" }; + else if (item == L("3DBenchy")) + file_names = { "3DBenchy.drc" }; + else if (item == L("Cali Cat")) + file_names = { "calicat.drc" }; + else if (item == L("Autodesk FDM Test")) + file_names = { "ksr_fdmtest_v4.drc" }; + else if (item == L("Voron Cube")) + file_names = { "Voron_Design_Cube_v7.drc" }; + else if (item == L("Stanford Bunny")) + file_names = { "Stanford_Bunny.drc" }; + else if (item == L("Orca String Hell")) { + file_names = { "Orca_stringhell.drc" }; is_stringhell = true; } else return; - input_files.push_back((boost::filesystem::path(Slic3r::resources_dir()) / "handy_models" / file_name)); + + input_files.reserve(file_names.size()); + for (const auto& file_name : file_names) + input_files.push_back((boost::filesystem::path(Slic3r::resources_dir()) / "handy_models" / file_name)); + plater()->load_files(input_files, LoadStrategy::LoadModel); + if (arrange_after_import) { + plater()->set_prepare_state(Job::PREPARE_STATE_MENU); + plater()->arrange(); + } // Suggest to change settings for stringhell // This serves as mini tutorial for new users diff --git a/src/slic3r/GUI/Gizmos/GLGizmoCut.cpp b/src/slic3r/GUI/Gizmos/GLGizmoCut.cpp index ea8d3c374f5..d978c0d47fa 100644 --- a/src/slic3r/GUI/Gizmos/GLGizmoCut.cpp +++ b/src/slic3r/GUI/Gizmos/GLGizmoCut.cpp @@ -793,6 +793,8 @@ indexed_triangle_set GLGizmoCut3D::its_make_groove_plane() indexed_triangle_set mesh; // handle multiple dovetails/grooves + m_groove_vertices.clear(); + m_groove_vertices.reserve(8 * groove_count); for (int i = 0; i < groove_count; ++i) { bool is_first_groove = i == 0; // when a groove is not the last groove, then limit the extent of the right plane so that it doesnt overlap the next groove bool is_last_groove = i == groove_count - 1; // do the same in reverse if a groove is not the first groove @@ -806,17 +808,14 @@ indexed_triangle_set GLGizmoCut3D::its_make_groove_plane() // Vertices of the groove used to detection if groove is valid (not used in mesh) { - m_groove_vertices.clear(); - m_groove_vertices.reserve(8); - - m_groove_vertices.emplace_back(Vec3f(-slot_neck_outer_x, -plane_half_height, slot_front_z).cast()); - m_groove_vertices.emplace_back(Vec3f(-slot_mouth_inner_x, plane_half_height, slot_front_z).cast()); - m_groove_vertices.emplace_back(Vec3f(-slot_mouth_outer_x, -plane_half_height, slot_back_z).cast()); - m_groove_vertices.emplace_back(Vec3f(-slot_neck_outer_x, plane_half_height, slot_back_z).cast()); - m_groove_vertices.emplace_back(Vec3f(slot_neck_outer_x, -plane_half_height, slot_front_z).cast()); - m_groove_vertices.emplace_back(Vec3f(slot_mouth_inner_x, plane_half_height, slot_front_z).cast()); - m_groove_vertices.emplace_back(Vec3f(slot_mouth_outer_x, -plane_half_height, slot_back_z).cast()); - m_groove_vertices.emplace_back(Vec3f(slot_neck_outer_x, plane_half_height, slot_back_z).cast()); + m_groove_vertices.emplace_back(Vec3f(-slot_neck_outer_x + offset_x, -plane_half_height, slot_front_z).cast()); + m_groove_vertices.emplace_back(Vec3f(-slot_mouth_inner_x + offset_x, plane_half_height, slot_front_z).cast()); + m_groove_vertices.emplace_back(Vec3f(-slot_mouth_outer_x + offset_x, -plane_half_height, slot_back_z).cast()); + m_groove_vertices.emplace_back(Vec3f(-slot_neck_outer_x + offset_x, plane_half_height, slot_back_z).cast()); + m_groove_vertices.emplace_back(Vec3f(slot_neck_outer_x + offset_x, -plane_half_height, slot_front_z).cast()); + m_groove_vertices.emplace_back(Vec3f(slot_mouth_inner_x + offset_x, plane_half_height, slot_front_z).cast()); + m_groove_vertices.emplace_back(Vec3f(slot_mouth_outer_x + offset_x, -plane_half_height, slot_back_z).cast()); + m_groove_vertices.emplace_back(Vec3f(slot_neck_outer_x + offset_x, plane_half_height, slot_back_z).cast()); } // ___ diff --git a/src/slic3r/GUI/Gizmos/GLGizmoScale.cpp b/src/slic3r/GUI/Gizmos/GLGizmoScale.cpp index 244ed2a2383..77fc7ef46cd 100644 --- a/src/slic3r/GUI/Gizmos/GLGizmoScale.cpp +++ b/src/slic3r/GUI/Gizmos/GLGizmoScale.cpp @@ -448,7 +448,29 @@ void GLGizmoScale3D::do_scale_uniform(const UpdateData& data) if (ratio > 0.0) { m_scale = m_starting.scale * ratio; - m_offset = Vec3d::Zero(); + if (m_starting.ctrl_down && abs(ratio-1.0f)>0.001) { + m_scale.z() = m_starting.scale.z(); + double local_offset_x = 0.5 * (m_scale.x() - m_starting.scale.x()) * m_starting.box.size().x(); + double local_offset_y = 0.5 * (m_scale.y() - m_starting.scale.y()) * m_starting.box.size().y(); + + Vec3d local_offset_vec = Vec3d::Zero(); + switch (m_hover_id) + { + case 6: { local_offset_vec = Vec3d(-local_offset_x, -local_offset_y, 0.0); break; } + case 7: { local_offset_vec = Vec3d( local_offset_x, -local_offset_y, 0.0); break; } + case 8: { local_offset_vec = Vec3d( local_offset_x, local_offset_y, 0.0); break; } + case 9: { local_offset_vec = Vec3d(-local_offset_x, local_offset_y, 0.0); break; } + default: break; + } + + if (m_object_manipulation->is_world_coordinates()) { + m_offset = local_offset_vec; + } else { + m_offset = m_grabbers_tran.get_matrix_no_offset() * local_offset_vec; + } + } else { + m_offset = Vec3d::Zero(); + } } } diff --git a/src/slic3r/GUI/HMS.cpp b/src/slic3r/GUI/HMS.cpp index f9f4d0b9f79..561b3750b2f 100644 --- a/src/slic3r/GUI/HMS.cpp +++ b/src/slic3r/GUI/HMS.cpp @@ -4,6 +4,7 @@ #include "DeviceManager.hpp" #include "DeviceCore/DevManager.h" #include "DeviceCore/DevUtil.h" +#include "libslic3r/AppConfig.hpp" #include @@ -13,6 +14,14 @@ static const char* HMS_LOCAL_IMG_PATH = "hms/local_image"; // the local HMS info static unordered_set package_dev_id_types {"094", "239", "093", "22E"}; +// HMS should be disabled when stealth mode is on or networking is not installed +static bool should_disable_hms() +{ + Slic3r::AppConfig* config = Slic3r::GUI::wxGetApp().app_config; + if (!config) return true; + return config->get_stealth_mode() || !config->get_bool("installed_networking"); +} + namespace Slic3r { namespace GUI { @@ -21,7 +30,7 @@ int get_hms_info_version(std::string& version) AppConfig* config = wxGetApp().app_config; if (!config) return -1; - if (config->get_stealth_mode()) + if (should_disable_hms()) return -1; std::string hms_host = config->get_hms_host(); if(hms_host.empty()) { @@ -61,7 +70,7 @@ int HMSQuery::download_hms_related(const std::string& hms_type, const std::strin AppConfig* config = wxGetApp().app_config; if (!config) return -1; - if (config->get_stealth_mode()) return -1; + if (should_disable_hms()) return -1; std::string hms_host = wxGetApp().app_config->get_hms_host(); std::string lang; @@ -546,7 +555,7 @@ wxString HMSQuery::query_print_image_action(const MachineObject* obj, int print_ ::sprintf(buf, "%08X", print_error); //The first three digits of SN number const auto result = _query_error_image_action(get_dev_id_type(obj),std::string(buf), button_action); - if (wxGetApp().app_config->get_stealth_mode() && result.Contains("http")) { + if (should_disable_hms() && result.Contains("http")) { return wxEmptyString; } return result; @@ -637,7 +646,7 @@ std::string get_hms_wiki_url(std::string error_code) { AppConfig* config = wxGetApp().app_config; if (!config) return ""; - if (config->get_stealth_mode()) return ""; + if (should_disable_hms()) return ""; std::string hms_host = wxGetApp().app_config->get_hms_host(); std::string lang_code = HMSQuery::hms_language_code(); @@ -663,7 +672,7 @@ std::string get_hms_wiki_url(std::string error_code) std::string get_error_message(int error_code) { - if (wxGetApp().app_config->get_stealth_mode()) return ""; + if (should_disable_hms()) return ""; char buf[64]; std::string result_str = ""; diff --git a/src/slic3r/GUI/IMSlider.cpp b/src/slic3r/GUI/IMSlider.cpp index d5945a2c1ae..8a999d85f55 100644 --- a/src/slic3r/GUI/IMSlider.cpp +++ b/src/slic3r/GUI/IMSlider.cpp @@ -2,6 +2,7 @@ #include "libslic3r/GCode.hpp" #include "GUI_App.hpp" #include "NotificationManager.hpp" +#include "Widgets/StateColor.hpp" #ifndef IMGUI_DEFINE_MATH_OPERATORS #define IMGUI_DEFINE_MATH_OPERATORS #endif @@ -30,7 +31,6 @@ static const ImU32 GROOVE_COLOR_DARK = IM_COL32(45, 45, 49, 255); static const ImU32 GROOVE_COLOR_LIGHT = IM_COL32(206, 206, 206, 255); static const ImU32 BRAND_COLOR = IM_COL32(0, 150, 136, 255); - static int m_tick_value = -1; static ImVec4 m_tick_rect; @@ -178,7 +178,6 @@ int IMSlider::GetActiveValue() const void IMSlider::SetLowerValue(const int lower_val) { - m_selection = ssLower; m_lower_value = lower_val; correct_lower_value(); set_as_dirty(); @@ -186,7 +185,6 @@ void IMSlider::SetLowerValue(const int lower_val) void IMSlider::SetHigherValue(const int higher_val) { - m_selection = ssHigher; m_higher_value = higher_val; correct_higher_value(); set_as_dirty(); @@ -455,7 +453,7 @@ bool IMSlider::switch_one_layer_mode() m_is_one_layer = !m_is_one_layer; if (!m_is_one_layer) { // DEACTIVATE - m_one_layer_value = GetHigherValue(); // ORCA Backup value on deactivate + m_one_layer_value = GetHigherValue(); // ORCA Backup value on deactivate SetLowerValue(m_min_value); SetHigherValue(m_max_value); // Higher value resets on toggling off one layer mode to show whole model }else{ // ACTIVATE @@ -465,11 +463,10 @@ bool IMSlider::switch_one_layer_mode() SetHigherValue(m_one_layer_value); } else if(GetHigherValue() == m_max_value) // ORCA Prefer backup value if higher value reseted - SetHigherValue(m_one_layer_value); // ORCA Restore value + SetHigherValue(m_one_layer_value); // ORCA Restore value else // ORCA Prefer higher value if user changed higher value. so it will show section on same view SetHigherValue(GetHigherValue()); // ORCA use same position with higher value if user changed its position. visible section stays same when switching one layer mode with this } - m_selection == ssLower ? correct_lower_value() : correct_higher_value(); if (m_selection == ssUndef) m_selection = ssHigher; set_as_dirty(); return true; @@ -503,15 +500,23 @@ bool IMSlider::horizontal_slider(const char* str_id, int* value, int v_min, int const float handle_radius = 12.0f * m_scale; const float handle_border = 2.0f * m_scale; - - const float text_frame_rounding = 2.0f * scale * m_scale; const float text_start_offset = 8.0f * m_scale; const ImVec2 text_padding = ImVec2(5.0f, 2.0f) * m_scale; - const float triangle_offsets[3] = {-3.5f * m_scale, 3.5f * m_scale, -6.06f * m_scale}; - const ImU32 white_bg = m_is_dark ? BACKGROUND_COLOR_DARK : BACKGROUND_COLOR_LIGHT; const ImU32 handle_clr = BRAND_COLOR; const ImU32 handle_border_clr = m_is_dark ? BACKGROUND_COLOR_DARK : BACKGROUND_COLOR_LIGHT; + const wxColour label_bg = StateColor::darkModeColorFor(wxGetApp().get_window_default_clr()); + const wxColour label_border = StateColor::darkModeColorFor(wxColour("#CECECE")); + const wxColour rail_inner_bg = m_is_dark ? StateColor::darkModeColorFor(wxColour("#CECECE")) : wxGetApp().get_highlight_default_clr(); + const wxColour rail_border = m_is_dark ? StateColor::darkModeColorFor(wxColour("#F0F0F1")) : wxColour("#CECECE"); + const ImU32 label_bg_clr = IM_COL32(label_bg.Red(), label_bg.Green(), label_bg.Blue(), 238); + const ImU32 label_border_clr = IM_COL32(label_border.Red(), label_border.Green(), label_border.Blue(), 255); + const ImU32 label_shadow_clr = m_is_dark ? IM_COL32(0, 0, 0, 84) : IM_COL32(0, 0, 0, 38); + ImVec4 range_fill = ImGui::ColorConvertU32ToFloat4(BRAND_COLOR); + range_fill.w = (m_is_dark ? 210.0f : 190.0f) / 255.0f; + const ImU32 range_fill_clr = ImGui::GetColorU32(range_fill); + const ImU32 rail_inner_clr = IM_COL32(rail_inner_bg.Red(), rail_inner_bg.Green(), rail_inner_bg.Blue(), 255); + const ImU32 rail_border_clr = IM_COL32(rail_border.Red(), rail_border.Green(), rail_border.Blue(), 190); // calculate groove size const ImVec2 groove_start = ImVec2(pos.x + handle_dummy_width, pos.y + size.y - ONE_LAYER_MARGIN.y * m_scale - (ONE_LAYER_BUTTON_SIZE.y / 2) * m_scale * 0.5f - GROOVE_WIDTH * m_scale * 0.5f); @@ -521,8 +526,8 @@ bool IMSlider::horizontal_slider(const char* str_id, int* value, int v_min, int const float mid_y = groove.GetCenter().y; // set mouse active region. active region. - bool hovered = ImGui::ItemHoverable(draw_region, id); - if (hovered && context.IO.MouseDown[0]) { + bool slider_hovered = ImGui::ItemHoverable(draw_region, id); + if (slider_hovered && context.IO.MouseDown[0]) { ImGui::SetActiveID(id, window); ImGui::SetFocusID(id, window); ImGui::FocusWindow(window); @@ -530,6 +535,9 @@ bool IMSlider::horizontal_slider(const char* str_id, int* value, int v_min, int // draw background draw_background_and_groove(bg_rect, groove); + window->DrawList->AddRect(groove.Min, groove.Max, rail_border_clr, 0.5f * groove.GetHeight(), 0, 1.0f * m_scale); + const ImRect rail_inner(groove.Min + ImVec2(2.0f, 2.0f) * m_scale, groove.Max - ImVec2(2.0f, 2.0f) * m_scale); + window->DrawList->AddRectFilled(rail_inner.Min, rail_inner.Max, rail_inner_clr, 0.5f * rail_inner.GetHeight()); // set scrollable region const ImRect slideable_region = ImRect(bg_rect.Min + ImVec2(handle_radius, 0.0f), bg_rect.Max - ImVec2(handle_radius, 0.0f)); @@ -543,25 +551,29 @@ bool IMSlider::horizontal_slider(const char* str_id, int* value, int v_min, int ImVec2 handle_center = handle.GetCenter(); // draw scroll line - ImRect scroll_line = ImRect(groove.Min, ImVec2(handle_center.x, groove.Max.y)); - window->DrawList->AddRectFilled(scroll_line.Min, scroll_line.Max, handle_clr, 0.5f * GROOVE_WIDTH * m_scale); + ImRect scroll_line = ImRect(ImVec2(groove.Min.x, groove.Min.y - 2.0f * m_scale), + ImVec2(handle_center.x, groove.Max.y + 2.0f * m_scale)); + window->DrawList->AddRectFilled(scroll_line.Min, scroll_line.Max, range_fill_clr, 0.5f * scroll_line.GetHeight()); // draw handle + window->DrawList->AddCircleFilled(handle_center, handle_radius + 2.0f * m_scale, handle_border_clr); window->DrawList->AddCircleFilled(handle_center, handle_radius, handle_border_clr); window->DrawList->AddCircleFilled(handle_center, handle_radius - handle_border, handle_clr); + window->DrawList->AddCircle(handle_center, handle_radius + 3.0f * m_scale, handle_clr, 0, 2.0f * m_scale); // draw label - auto text_utf8 = into_u8(std::to_string(*value)); - ImVec2 text_content_size = ImGui::CalcTextSize(text_utf8.c_str()); + const std::string value_label = std::to_string(*value); + const ImVec2 text_content_size = ImGui::CalcTextSize(value_label.c_str()); ImVec2 text_size = text_content_size + text_padding * 2; ImVec2 text_start = ImVec2(handle_center.x + handle_radius + text_start_offset, handle_center.y - 0.5 * text_size.y); ImRect text_rect(text_start, text_start + text_size); - ImGui::RenderFrame(text_rect.Min, text_rect.Max, white_bg, false, text_frame_rounding); - ImVec2 pos_1 = ImVec2(text_rect.Min.x, text_rect.GetCenter().y + triangle_offsets[0]); - ImVec2 pos_2 = ImVec2(text_rect.Min.x, text_rect.GetCenter().y + triangle_offsets[1]); - ImVec2 pos_3 = ImVec2(text_rect.Min.x + triangle_offsets[2], text_rect.GetCenter().y); - window->DrawList->AddTriangleFilled(pos_1, pos_2, pos_3, white_bg); - ImGui::RenderText(text_start + text_padding, std::to_string(*value).c_str()); + const float label_rounding = 5.0f * m_scale; + const ImVec2 shadow_offset = ImVec2(2.0f, 2.0f) * m_scale; + window->DrawList->AddRectFilled(text_rect.Min + shadow_offset, text_rect.Max + shadow_offset, label_shadow_clr, label_rounding); + ImGui::RenderFrame(text_rect.Min, text_rect.Max, label_bg_clr, false, label_rounding); + window->DrawList->AddRect(text_rect.Min, text_rect.Max, label_border_clr, label_rounding, 0, 1.0f * m_scale); + ImGui::RenderText(text_rect.Min + ImVec2((text_size.x - text_content_size.x) * 0.5f, + (text_size.y - text_content_size.y) * 0.5f), value_label.c_str()); return value_changed; } @@ -881,18 +893,27 @@ bool IMSlider::vertical_slider(const char* str_id, int* higher_value, int* lower const float handle_border = 2.0f * m_scale; const float line_width = 1.0f * m_scale; const float line_length = 12.0f * m_scale; - const float one_handle_offset = 26.0f * m_scale; - const float bar_width = 28.0f * m_scale; - const float text_frame_rounding = 2.0f * scale * m_scale; const ImVec2 text_padding = ImVec2(5.0f, 2.0f) * m_scale; - const ImVec2 triangle_offsets[3] = {ImVec2(2.0f, 0.0f) * m_scale, ImVec2(0.0f, 8.0f) * m_scale, ImVec2(9.0f, 0.0f) * m_scale}; - ImVec2 text_content_size; ImVec2 text_size; const ImU32 white_bg = m_is_dark ? BACKGROUND_COLOR_DARK : BACKGROUND_COLOR_LIGHT; const ImU32 handle_clr = BRAND_COLOR; const ImU32 handle_border_clr = m_is_dark ? BACKGROUND_COLOR_DARK : BACKGROUND_COLOR_LIGHT; + const wxColour label_bg = StateColor::darkModeColorFor(wxGetApp().get_window_default_clr()); + const wxColour label_bg_active = StateColor::darkModeColorFor(wxColour("#E5F0EE")); + const wxColour label_border = StateColor::darkModeColorFor(wxColour("#CECECE")); + const wxColour rail_inner_bg = m_is_dark ? StateColor::darkModeColorFor(wxColour("#CECECE")) : wxGetApp().get_highlight_default_clr(); + const wxColour rail_border = m_is_dark ? StateColor::darkModeColorFor(wxColour("#F0F0F1")) : wxColour("#CECECE"); + const ImU32 label_bg_clr = IM_COL32(label_bg.Red(), label_bg.Green(), label_bg.Blue(), 238); + const ImU32 label_bg_active_clr = IM_COL32(label_bg_active.Red(), label_bg_active.Green(), label_bg_active.Blue(), 246); + const ImU32 label_border_clr = IM_COL32(label_border.Red(), label_border.Green(), label_border.Blue(), 255); + const ImU32 label_shadow_clr = m_is_dark ? IM_COL32(0, 0, 0, 84) : IM_COL32(0, 0, 0, 38); + ImVec4 range_fill = ImGui::ColorConvertU32ToFloat4(BRAND_COLOR); + range_fill.w = (m_is_dark ? 210.0f : 190.0f) / 255.0f; + const ImU32 range_fill_clr = ImGui::GetColorU32(range_fill); + const ImU32 rail_inner_clr = IM_COL32(rail_inner_bg.Red(), rail_inner_bg.Green(), rail_inner_bg.Blue(), 255); + const ImU32 rail_border_clr = IM_COL32(rail_border.Red(), rail_border.Green(), rail_border.Blue(), 190); // calculate slider groove size const ImVec2 groove_start = ImVec2(pos.x + size.x - ONE_LAYER_MARGIN.x * m_scale - (ONE_LAYER_BUTTON_SIZE.x / 2) * m_scale * 0.5f - GROOVE_WIDTH * m_scale * 0.5f, pos.y + text_dummy_height); const ImVec2 groove_size = ImVec2(GROOVE_WIDTH * m_scale, size.y - 2 * text_dummy_height); @@ -900,22 +921,9 @@ bool IMSlider::vertical_slider(const char* str_id, int* higher_value, int* lower const ImRect bg_rect = ImRect(groove.Min - ImVec2(6.0f, 6.0f) * m_scale, groove.Max + ImVec2(6.0f, 6.0f) * m_scale); const float mid_x = groove.GetCenter().x; // ORCA: tune label box width to fit the slider window without overlapping the groove. - const float label_extra_padding = 10.0f * m_scale; - const float one_layer_extra_padding = 6.0f * m_scale; + const float label_width_margin = 10.0f * m_scale; const float max_label_width = std::max(0.0f, - groove.Min.x - draw_region.Min.x - triangle_offsets[2].x - text_padding.x * 2.0f - label_extra_padding); - - // set mouse active region. - const ImRect active_region = ImRect(ImVec2(draw_region.Min.x + 35.0f * m_scale, draw_region.Min.y), draw_region.Max); - bool hovered = ImGui::ItemHoverable(active_region, id) && !ImGui::ItemHoverable(m_tick_rect, id); - if (hovered && context.IO.MouseDown[0]) { - ImGui::SetActiveID(id, window); - ImGui::SetFocusID(id, window); - ImGui::FocusWindow(window); - } - - // draw background - draw_background_and_groove(bg_rect, groove); + groove.Min.x - draw_region.Min.x - label_width_margin * 2.0f - text_padding.x * 2.0f); // Processing interacting // set scrollable region @@ -931,34 +939,162 @@ bool IMSlider::vertical_slider(const char* str_id, int* higher_value, int* lower float lower_handle_pos = get_pos_from_value(v_min, v_max, *lower_value, lower_slideable_region); ImRect lower_handle = ImRect(mid_x - handle_radius, lower_handle_pos - handle_radius, mid_x + handle_radius, lower_handle_pos + handle_radius); - ImRect one_handle = ImRect(higher_handle.Min - ImVec2(one_handle_offset, 0), higher_handle.Max - ImVec2(one_handle_offset, 0)); + auto one_layer_handle = [&](int value) { + const float handle_pos = get_pos_from_value(v_min, v_max, value, one_slideable_region); + return ImRect(mid_x - handle_radius, handle_pos - handle_radius, + mid_x + handle_radius, handle_pos + handle_radius); + }; + ImRect one_handle; + if (one_layer_flag) + one_handle = one_layer_handle(*higher_value); + + // Label hit testing enables delta-based label drag without jumping to the mouse position. + SelectedSlider hovered_label = ssUndef; + const bool menu_open = ImGui::IsPopupOpen("slider_add_menu_popup") || ImGui::IsPopupOpen("slider_edit_menu_popup"); + const ImVec2 higher_text_content_size = ImGui::CalcTextSize(into_u8(higher_label).c_str()); + const ImVec2 lower_text_content_size = one_layer_flag ? ImVec2() : ImGui::CalcTextSize(into_u8(lower_label).c_str()); + auto label_hit = [&](const ImRect& label_rect, SelectedSlider selection_value) { + if (!label_rect.Contains(context.IO.MousePos)) + return; + hovered_label = selection_value; + }; + auto range_label_rect = [&](const ImRect& handle, const ImVec2& content_size, bool top_label) { + const ImVec2 text_size = ImVec2(max_label_width, content_size.y) + text_padding * 2.0f; + const ImVec2 text_start = ImVec2(handle.Min.x - text_size.x - label_width_margin, + top_label ? handle.GetCenter().y - text_size.y : handle.GetCenter().y); + return ImRect(text_start, text_start + text_size + ImVec2(label_width_margin, 0.0f)); + }; + auto one_layer_label_rect = [&](const ImRect& handle) { + const ImVec2 text_size = ImVec2(max_label_width, higher_text_content_size.y) + text_padding * 2.0f; + const ImVec2 text_start = ImVec2(handle.Min.x - text_size.x - label_width_margin, + handle.GetCenter().y - 0.5f * text_size.y); + return ImRect(text_start, text_start + text_size); + }; + auto draw_label = [&](const ImRect& rect, const ImVec2& content_size, const std::string& label, bool hovered, bool active) { + const float rounding = 5.0f * m_scale; + const ImU32 bg_clr = active ? label_bg_active_clr : label_bg_clr; + const ImVec2 shadow_offset = ImVec2(2.0f, 2.0f) * m_scale; + window->DrawList->AddRectFilled(rect.Min + shadow_offset, rect.Max + shadow_offset, label_shadow_clr, rounding); + ImGui::RenderFrame(rect.Min, rect.Max, bg_clr, false, rounding); + window->DrawList->AddRect(rect.Min, rect.Max, hovered ? handle_clr : label_border_clr, rounding, 0, hovered ? 1.5f * m_scale : 1.0f * m_scale); + const ImVec2 rect_size = rect.GetSize(); + ImGui::RenderText(rect.Min + ImVec2((rect_size.x - content_size.x) * 0.5f, + (rect_size.y - content_size.y) * 0.5f), label.c_str()); + }; + auto draw_handle = [&](const ImVec2& center) { + window->DrawList->AddCircleFilled(center, handle_radius, handle_border_clr); + window->DrawList->AddCircleFilled(center, handle_radius - handle_border, handle_clr); + }; + auto draw_active_handle = [&](const ImVec2& center) { + window->DrawList->AddCircleFilled(center, handle_radius + 2.0f * m_scale, handle_border_clr); + draw_handle(center); + window->DrawList->AddCircle(center, handle_radius + 3.0f * m_scale, handle_clr, 0, 2.0f * m_scale); + window->DrawList->AddLine(center + ImVec2(-0.5f * line_length, 0.0f), center + ImVec2(0.5f * line_length, 0.0f), white_bg, line_width); + window->DrawList->AddLine(center + ImVec2(0.0f, -0.5f * line_length), center + ImVec2(0.0f, 0.5f * line_length), white_bg, line_width); + }; + + // Prevent interaction with labels if slider add/edit menu is open + // or the mouse was pressed elsewhere and then dragged over them. + if (!menu_open && (!context.IO.MouseDown[0] || context.IO.MouseClicked[0])) { + if (!one_layer_flag) { + label_hit(range_label_rect(higher_handle, higher_text_content_size, true), ssHigher); + label_hit(range_label_rect(lower_handle, lower_text_content_size, false), ssLower); + } else { + label_hit(one_layer_label_rect(one_handle), ssHigher); + } + } + + // set mouse active region + const ImRect slider_active_region = ImRect(ImVec2(draw_region.Min.x + 35.0f * m_scale, draw_region.Min.y), draw_region.Max); + bool slider_hovered = !menu_open && ImGui::ItemHoverable(slider_active_region, id) && !ImGui::ItemHoverable(m_tick_rect, id) && hovered_label == ssUndef; + struct LabelDragState + { + ImGuiID id = 0; + SelectedSlider selection = ssUndef; + ImVec2 start_mouse; + int start_value = 0; + }; + // Persist the label that started the drag after the cursor leaves its rect. + static LabelDragState label_drag; + + if (hovered_label != ssUndef && context.IO.MouseClicked[0]) { + selection = hovered_label; + label_drag.id = id; + label_drag.selection = hovered_label; + label_drag.start_mouse = context.IO.MousePos; + label_drag.start_value = hovered_label == ssHigher ? *higher_value : *lower_value; + ImGui::SetActiveID(id, window); + ImGui::SetFocusID(id, window); + ImGui::FocusWindow(window); + } + if (slider_hovered && context.IO.MouseDown[0]) { + ImGui::SetActiveID(id, window); + ImGui::SetFocusID(id, window); + ImGui::FocusWindow(window); + } + + // draw background + draw_background_and_groove(bg_rect, groove); + window->DrawList->AddRect(groove.Min, groove.Max, rail_border_clr, 0.5f * groove.GetWidth(), 0, 1.0f * m_scale); + const ImRect rail_inner(groove.Min + ImVec2(2.0f, 2.0f) * m_scale, groove.Max - ImVec2(2.0f, 2.0f) * m_scale); + window->DrawList->AddRectFilled(rail_inner.Min, rail_inner.Max, rail_inner_clr, 0.5f * rail_inner.GetWidth()); bool value_changed = false; if (!one_layer_flag) { - // select higher handle by default - static bool h_selected = (selection == ssHigher); - if (ImGui::ItemHoverable(higher_handle, id) && context.IO.MouseClicked[0]) { - selection = ssHigher; - h_selected = true; - } - if (ImGui::ItemHoverable(lower_handle, id) && context.IO.MouseClicked[0]) { - selection = ssLower; - h_selected = false; + const SelectedSlider dragged_label = label_drag.id == id && context.IO.MouseDown[0] ? label_drag.selection : ssUndef; + if (dragged_label == ssUndef && !menu_open) { + if (ImGui::ItemHoverable(higher_handle, id) && context.IO.MouseClicked[0]) { + selection = ssHigher; + } + if (ImGui::ItemHoverable(lower_handle, id) && context.IO.MouseClicked[0]) { + selection = ssLower; + } } + bool h_selected = selection != ssLower; // update handle position and value - if (h_selected) - { - value_changed = slider_behavior(id, higher_slideable_region, v_min, v_max, - higher_value, &higher_handle, ImGuiSliderFlags_Vertical, - m_tick_value, m_tick_rect); - } - if (!h_selected) { - value_changed = slider_behavior(id, lower_slideable_region, v_min, v_max, - lower_value, &lower_handle, ImGuiSliderFlags_Vertical, - m_tick_value, m_tick_rect); + if (dragged_label != ssUndef) { + const ImRect& drag_region = dragged_label == ssHigher ? higher_slideable_region : lower_slideable_region; + const float region_height = drag_region.GetHeight(); + if (region_height > 0.0f) { + const float delta = context.IO.MousePos.y - label_drag.start_mouse.y; + const float value_delta = delta * (float)(v_max - v_min) / region_height; + const int new_value = (int)ImClamp((float)label_drag.start_value - value_delta, (float)v_min, (float)v_max); + if (dragged_label == ssHigher) { + value_changed = *higher_value != new_value; + *higher_value = new_value; + } else { + value_changed = *lower_value != new_value; + *lower_value = new_value; + } + } + h_selected = dragged_label == ssHigher; + if (dragged_label == ssHigher) { + higher_handle_pos = get_pos_from_value(v_min, v_max, *higher_value, higher_slideable_region); + higher_handle = ImRect(mid_x - handle_radius, higher_handle_pos - handle_radius, mid_x + handle_radius, higher_handle_pos + handle_radius); + } else { + lower_handle_pos = get_pos_from_value(v_min, v_max, *lower_value, lower_slideable_region); + lower_handle = ImRect(mid_x - handle_radius, lower_handle_pos - handle_radius, mid_x + handle_radius, lower_handle_pos + handle_radius); + } + } else { + if (h_selected) + { + value_changed = slider_behavior(id, higher_slideable_region, v_min, v_max, + higher_value, &higher_handle, ImGuiSliderFlags_Vertical, + m_tick_value, m_tick_rect); + } + if (!h_selected) { + value_changed = slider_behavior(id, lower_slideable_region, v_min, v_max, + lower_value, &lower_handle, ImGuiSliderFlags_Vertical, + m_tick_value, m_tick_rect); + } } + SelectedSlider active_label = ssUndef; + if (dragged_label != ssUndef) + active_label = dragged_label; + else if (context.ActiveId == id && context.IO.MouseDown[0]) + active_label = h_selected ? ssHigher : ssLower; ImVec2 higher_handle_center = higher_handle.GetCenter(); ImVec2 lower_handle_center = lower_handle.GetCenter(); @@ -978,10 +1114,10 @@ bool IMSlider::vertical_slider(const char* str_id, int* higher_value, int* lower } // judge whether to open menu - if (ImGui::ItemHoverable(h_selected ? higher_handle : lower_handle, id) && context.IO.MouseClicked[1]) + if (!menu_open && ImGui::ItemHoverable(h_selected ? higher_handle : lower_handle, id) && context.IO.MouseClicked[1]) m_show_menu = true; - if ((!ImGui::ItemHoverable(h_selected ? higher_handle : lower_handle, id) && context.IO.MouseClicked[1]) || - context.IO.MouseClicked[0]) + if (!menu_open && ((!ImGui::ItemHoverable(h_selected ? higher_handle : lower_handle, id) && context.IO.MouseClicked[1]) || + context.IO.MouseClicked[0])) m_show_menu = false; // draw ticks @@ -991,107 +1127,94 @@ bool IMSlider::vertical_slider(const char* str_id, int* higher_value, int* lower if (!m_ticks.has_tick_with_code(ToolChange)) { // draw scroll line - ImRect scroll_line = ImRect(ImVec2(groove.Min.x, higher_handle_center.y), ImVec2(groove.Max.x, lower_handle_center.y)); - window->DrawList->AddRectFilled(scroll_line.Min, scroll_line.Max, handle_clr); + ImRect scroll_line = ImRect(ImVec2(groove.Min.x - 2.0f * m_scale, higher_handle_center.y), + ImVec2(groove.Max.x + 2.0f * m_scale, lower_handle_center.y)); + window->DrawList->AddRectFilled(scroll_line.Min, scroll_line.Max, range_fill_clr, 0.5f * scroll_line.GetWidth()); } // draw handles - window->DrawList->AddCircleFilled(higher_handle_center, handle_radius, handle_border_clr); - window->DrawList->AddCircleFilled(higher_handle_center, handle_radius - handle_border, handle_clr); - window->DrawList->AddCircleFilled(lower_handle_center, handle_radius, handle_border_clr); - window->DrawList->AddCircleFilled(lower_handle_center, handle_radius - handle_border, handle_clr); - if (h_selected) { - window->DrawList->AddCircleFilled(higher_handle_center, handle_radius, handle_border_clr); - window->DrawList->AddCircleFilled(higher_handle_center, handle_radius - handle_border, handle_clr); - window->DrawList->AddLine(higher_handle_center + ImVec2(-0.5f * line_length, 0.0f), higher_handle_center + ImVec2(0.5f * line_length, 0.0f), white_bg, line_width); - window->DrawList->AddLine(higher_handle_center + ImVec2(0.0f, -0.5f * line_length), higher_handle_center + ImVec2(0.0f, 0.5f * line_length), white_bg, line_width); - } - if (!h_selected) { - window->DrawList->AddLine(lower_handle_center + ImVec2(-0.5f * line_length, 0.0f), lower_handle_center + ImVec2(0.5f * line_length, 0.0f), white_bg, line_width); - window->DrawList->AddLine(lower_handle_center + ImVec2(0.0f, -0.5f * line_length), lower_handle_center + ImVec2(0.0f, 0.5f * line_length), white_bg, line_width); - } + draw_handle(higher_handle_center); + draw_handle(lower_handle_center); + draw_active_handle(h_selected ? higher_handle_center : lower_handle_center); - // ORCA: render fixed-width label boxes - // draw higher label - auto text_utf8 = into_u8(higher_label); - text_content_size = ImGui::CalcTextSize(text_utf8.c_str()); - text_size = ImVec2(max_label_width, text_content_size.y) + text_padding * 2; - ImVec2 text_start = ImVec2(higher_handle.Min.x - text_size.x - triangle_offsets[2].x, higher_handle_center.y - text_size.y); - ImRect text_rect(text_start, text_start + text_size); - ImGui::RenderFrame(text_rect.Min, text_rect.Max, white_bg, false, text_frame_rounding); - ImVec2 pos_1 = text_rect.Max - triangle_offsets[0]; - ImVec2 pos_2 = pos_1 - triangle_offsets[1]; - ImVec2 pos_3 = pos_1 + triangle_offsets[2]; - window->DrawList->AddTriangleFilled(pos_1, pos_2, pos_3, white_bg); - ImGui::RenderText(text_start + ImVec2((text_size.x - text_content_size.x) * 0.5f, - (text_size.y - text_content_size.y) * 0.5f), higher_label.c_str()); - // draw lower label - text_utf8 = into_u8(lower_label); - text_content_size = ImGui::CalcTextSize(text_utf8.c_str()); - text_size = ImVec2(max_label_width, text_content_size.y) + text_padding * 2; - text_start = ImVec2(lower_handle.Min.x - text_size.x - triangle_offsets[2].x, lower_handle_center.y); - text_rect = ImRect(text_start, text_start + text_size); - ImGui::RenderFrame(text_rect.Min, text_rect.Max, white_bg, false, text_frame_rounding); - pos_1 = ImVec2(text_rect.Max.x, text_rect.Min.y) - triangle_offsets[0]; - pos_2 = pos_1 + triangle_offsets[1]; - pos_3 = pos_1 + triangle_offsets[2]; - window->DrawList->AddTriangleFilled(pos_1, pos_2, pos_3, white_bg); - ImGui::RenderText(text_start + ImVec2((text_size.x - text_content_size.x) * 0.5f, - (text_size.y - text_content_size.y) * 0.5f), lower_label.c_str()); + // ORCA: render fixed-width label boxes + // draw higher label + text_size = ImVec2(max_label_width, higher_text_content_size.y) + text_padding * 2; + ImVec2 text_start = ImVec2(higher_handle.Min.x - text_size.x - label_width_margin, higher_handle_center.y - text_size.y); + ImRect text_rect(text_start, text_start + text_size); + const bool higher_label_active = active_label == ssHigher; + draw_label(text_rect, higher_text_content_size, higher_label, + hovered_label == ssHigher || higher_label_active, higher_label_active); + // draw lower label + text_size = ImVec2(max_label_width, lower_text_content_size.y) + text_padding * 2; + text_start = ImVec2(lower_handle.Min.x - text_size.x - label_width_margin, lower_handle_center.y); + text_rect = ImRect(text_start, text_start + text_size); + const bool lower_label_active = active_label == ssLower; + draw_label(text_rect, lower_text_content_size, lower_label, + hovered_label == ssLower || lower_label_active, lower_label_active); // draw mouse position - if (hovered) { + if (slider_hovered && !context.IO.MouseDown[0]) { draw_tick_on_mouse_position(h_selected ? higher_slideable_region : lower_slideable_region); } } if (one_layer_flag) { // update handle position - value_changed = slider_behavior(id, one_slideable_region, v_min, v_max, - higher_value, &one_handle, ImGuiSliderFlags_Vertical, - m_tick_value, m_tick_rect); + const SelectedSlider dragged_label = label_drag.id == id && context.IO.MouseDown[0] ? label_drag.selection : ssUndef; + if (dragged_label == ssHigher) { + const float region_height = one_slideable_region.GetHeight(); + if (region_height > 0.0f) { + const float delta = context.IO.MousePos.y - label_drag.start_mouse.y; + const float value_delta = delta * (float)(v_max - v_min) / region_height; + const int new_value = (int)ImClamp((float)label_drag.start_value - value_delta, (float)v_min, (float)v_max); + value_changed = *higher_value != new_value; + *higher_value = new_value; + } + one_handle = one_layer_handle(*higher_value); + } else { + value_changed = slider_behavior(id, one_slideable_region, v_min, v_max, + higher_value, &one_handle, ImGuiSliderFlags_Vertical, + m_tick_value, m_tick_rect); + } ImVec2 handle_center = one_handle.GetCenter(); // judge whether to open menu - if (ImGui::ItemHoverable(one_handle, id) && context.IO.MouseClicked[1]) + if (!menu_open && ImGui::ItemHoverable(one_handle, id) && context.IO.MouseClicked[1]) m_show_menu = true; - if ((!ImGui::ItemHoverable(one_handle, id) && context.IO.MouseClicked[1]) || - context.IO.MouseClicked[0]) + if (!menu_open && ((!ImGui::ItemHoverable(one_handle, id) && context.IO.MouseClicked[1]) || + context.IO.MouseClicked[0])) m_show_menu = false; - ImVec2 bar_center = higher_handle.GetCenter(); - // draw ticks draw_ticks(one_slideable_region); // draw colored band draw_colored_band(groove, one_slideable_region); // draw handle - window->DrawList->AddLine(ImVec2(mid_x - 0.5 * bar_width, handle_center.y), ImVec2(mid_x + 0.5 * bar_width, handle_center.y), handle_clr, 2 * line_width); - window->DrawList->AddCircleFilled(handle_center, handle_radius, handle_border_clr); - window->DrawList->AddCircleFilled(handle_center, handle_radius - handle_border, handle_clr); - window->DrawList->AddLine(handle_center + ImVec2(-0.5f * line_length, 0.0f), handle_center + ImVec2(0.5f * line_length, 0.0f), white_bg, line_width); - window->DrawList->AddLine(handle_center + ImVec2(0.0f, -0.5f * line_length), handle_center + ImVec2(0.0f, 0.5f * line_length), white_bg, line_width); + draw_active_handle(handle_center); // draw label - auto text_utf8 = into_u8(higher_label); - text_content_size = ImGui::CalcTextSize(text_utf8.c_str()); - // ORCA: slightly narrower label box in one-layer mode to avoid left shift. - text_size = ImVec2(std::max(0.0f, max_label_width - label_extra_padding - one_layer_extra_padding), - text_content_size.y) + text_padding * 2; - ImVec2 text_start = ImVec2(one_handle.Min.x - text_size.x, handle_center.y - 0.5 * text_size.y); + text_size = ImVec2(max_label_width, higher_text_content_size.y) + text_padding * 2; + ImVec2 text_start = ImVec2(one_handle.Min.x - text_size.x - label_width_margin, handle_center.y - 0.5 * text_size.y); ImRect text_rect = ImRect(text_start, text_start + text_size); - ImGui::RenderFrame(text_rect.Min, text_rect.Max, white_bg, false, text_frame_rounding); - ImGui::RenderText(text_start + ImVec2((text_size.x - text_content_size.x) * 0.5f, - (text_size.y - text_content_size.y) * 0.5f), higher_label.c_str()); + const bool label_active = context.ActiveId == id && context.IO.MouseDown[0]; + draw_label(text_rect, higher_text_content_size, higher_label, hovered_label == ssHigher || label_active, label_active); // draw mouse position - if (hovered) { + if (slider_hovered && !context.IO.MouseDown[0]) { draw_tick_on_mouse_position(one_slideable_region); } } + if (!context.IO.MouseDown[0] && label_drag.id == id) { + label_drag.id = 0; + label_drag.selection = ssUndef; + if (context.ActiveId == id) + ImGui::ClearActiveID(); + } + return value_changed; } @@ -1130,8 +1253,6 @@ bool IMSlider::render(int canvas_width, int canvas_height) imgui.set_next_window_pos(canvas_width, 0.5f * static_cast(canvas_height), ImGuiCond_Always, 1.0f, 0.5f); imgui.begin(std::string("laysers_slider"), windows_flag); - render_menu(); - int higher_value = GetHigherValue(); int lower_value = GetLowerValue(); std::string higher_label = get_label(m_higher_value); @@ -1146,6 +1267,7 @@ bool IMSlider::render(int canvas_width, int canvas_height) SetLowerValue(lower_value); result = true; } + render_menu(); imgui.end(); imgui.set_next_window_pos(canvas_width, canvas_height, ImGuiCond_Always, 1.0f, 1.0f); @@ -1362,8 +1484,10 @@ void IMSlider::render_add_menu() { int extruder_num = m_extruder_colors.size(); - if (m_show_menu) + if (m_show_menu) { ImGui::OpenPopup("slider_add_menu_popup"); + m_show_menu = false; + } if (ImGui::BeginPopup("slider_add_menu_popup")) { bool menu_item_enable = m_draw_mode != dmSequentialFffPrint; bool hovered = false; @@ -1415,8 +1539,10 @@ void IMSlider::render_add_menu() void IMSlider::render_edit_menu(const TickCode& tick) { - if (m_show_menu) + if (m_show_menu) { ImGui::OpenPopup("slider_edit_menu_popup"); + m_show_menu = false; + } if (ImGui::BeginPopup("slider_edit_menu_popup")) { switch (tick.type) { @@ -1700,5 +1826,3 @@ std::array IMSlider::get_active_extruders_for_tick(int tick) const } } // Slic3r - - diff --git a/src/slic3r/GUI/NotificationManager.cpp b/src/slic3r/GUI/NotificationManager.cpp index 81e28fec1a0..5079dfecf04 100644 --- a/src/slic3r/GUI/NotificationManager.cpp +++ b/src/slic3r/GUI/NotificationManager.cpp @@ -791,6 +791,42 @@ void NotificationManager::PopNotification::render_hypertext(ImGuiWrapper& imgui, } +void NotificationManager::PopNotification::render_hyperlink_action(ImGuiWrapper& imgui, float text_x, float text_y, + const std::string& text, const char* button_id, const std::function& on_click) +{ + // Invisible button over the label + ImVec2 part_size = ImGui::CalcTextSize(text.c_str()); + ImGui::SetCursorPosX(text_x - 4); + ImGui::SetCursorPosY(text_y - 5); + ImGui::PushStyleColor(ImGuiCol_Button, ImVec4(.0f, .0f, .0f, .0f)); + ImGui::PushStyleColor(ImGuiCol_ButtonHovered, ImVec4(.0f, .0f, .0f, .0f)); + ImGui::PushStyleColor(ImGuiCol_ButtonActive, ImVec4(.0f, .0f, .0f, .0f)); + if (imgui.button(button_id, part_size.x + 6, part_size.y + 10) && on_click) + on_click(); + ImGui::PopStyleColor(3); + + // Hover color + ImVec4 color = m_HyperTextColor; + if (ImGui::IsItemHovered(ImGuiHoveredFlags_RectOnly)) + color = m_HyperTextColorHover; + + // Text + push_style_color(ImGuiCol_Text, color, m_state == EState::FadingOut, m_current_fade_opacity); + ImGui::SetCursorPosX(text_x); + ImGui::SetCursorPosY(text_y); + imgui.text(text.c_str()); + ImGui::PopStyleColor(); + + // Underline + ImVec2 lineEnd = ImGui::GetItemRectMax(); + lineEnd.y -= 2; + ImVec2 lineStart = lineEnd; + lineStart.x = ImGui::GetItemRectMin().x; + ImGui::GetWindowDrawList()->AddLine(lineStart, lineEnd, + IM_COL32((int)(color.x * 255), (int)(color.y * 255), (int)(color.z * 255), + (int)(color.w * 255.f * (m_state == EState::FadingOut ? m_current_fade_opacity : 1.f)))); +} + void NotificationManager::PopNotification::render_close_button(ImGuiWrapper& imgui, const float win_size_x, const float win_size_y, const float win_pos_x, const float win_pos_y) { ensure_ui_inited(); @@ -2346,40 +2382,49 @@ bool NotificationManager::SharedProfilesNotification::on_text_click() void NotificationManager::SharedProfilesNotification::render_hypertext(ImGuiWrapper& imgui, const float text_x, const float text_y, const std::string text, bool more) { - // Invisible button - ImVec2 part_size = ImGui::CalcTextSize(text.c_str()); - ImGui::SetCursorPosX(text_x - 4); - ImGui::SetCursorPosY(text_y - 5); - ImGui::PushStyleColor(ImGuiCol_Button, ImVec4(.0f, .0f, .0f, .0f)); - ImGui::PushStyleColor(ImGuiCol_ButtonHovered, ImVec4(.0f, .0f, .0f, .0f)); - ImGui::PushStyleColor(ImGuiCol_ButtonActive, ImVec4(.0f, .0f, .0f, .0f)); - if (imgui.button("##browse_btn", part_size.x + 6, part_size.y + 10)) { - if (on_text_click()) { - close(); + render_hyperlink_action(imgui, text_x, text_y, text, "##browse_btn", + [this] { if (on_text_click()) close(); }); +} + +void NotificationManager::OrcaSyncConflictNotification::init() +{ + PopNotification::init(); + // Reserve a dedicated action row for the two conflict-resolution links. + m_lines_count = m_lines_count + 1; +} + +void NotificationManager::OrcaSyncConflictNotification::render_text(ImGuiWrapper& imgui, + const float win_size_x, const float win_size_y, + const float win_pos_x, const float win_pos_y) +{ + float x_offset = m_left_indentation; + float shift_y = m_line_height; + float starting_y = m_line_height / 2; + + int last_end = 0; + std::string line; + for (size_t i = 0; i < m_endlines.size(); i++) { + if (m_text1.size() >= m_endlines[i]) { + line = m_text1.substr(last_end, m_endlines[i] - last_end); + last_end = m_endlines[i]; + if (m_text1.size() > m_endlines[i]) + last_end += (m_text1[m_endlines[i]] == '\n' || m_text1[m_endlines[i]] == ' ' ? 1 : 0); + ImGui::SetCursorPosX(x_offset); + ImGui::SetCursorPosY(starting_y + i * shift_y); + imgui.text(line.c_str()); } } - ImGui::PopStyleColor(3); - // Hover color - ImVec4 HyperColor = m_HyperTextColor; - if (ImGui::IsItemHovered(ImGuiHoveredFlags_RectOnly)) - HyperColor = m_HyperTextColorHover; - - // Text - push_style_color(ImGuiCol_Text, HyperColor, m_state == EState::FadingOut, m_current_fade_opacity); - ImGui::SetCursorPosX(text_x); - ImGui::SetCursorPosY(text_y); - imgui.text(text.c_str()); - ImGui::PopStyleColor(); - - // Underline - ImVec2 lineEnd = ImGui::GetItemRectMax(); - lineEnd.y -= 2; - ImVec2 lineStart = lineEnd; - lineStart.x = ImGui::GetItemRectMin().x; - ImGui::GetWindowDrawList()->AddLine(lineStart, lineEnd, - IM_COL32((int)(HyperColor.x * 255), (int)(HyperColor.y * 255), (int)(HyperColor.z * 255), - (int)(HyperColor.w * 255.f * (m_state == EState::FadingOut ? m_current_fade_opacity : 1.f)))); + const float action_y = starting_y + m_endlines.size() * shift_y; + const std::string pull_text = _u8L("Pull"); + render_hyperlink_action(imgui, x_offset, action_y, pull_text, "##orca_sync_pull", + [this] { if (m_pull_callback && m_pull_callback(m_evt_handler)) close(); }); + if (m_force_push_callback) { + const std::string force_push_text = _u8L("Force push"); + const float force_x = x_offset + ImGui::CalcTextSize((pull_text + " ").c_str()).x; + render_hyperlink_action(imgui, force_x, action_y, force_push_text, "##orca_sync_force_push", + [this] { if (m_force_push_callback && m_force_push_callback(m_evt_handler)) close(); }); + } } void NotificationManager::push_shared_profiles_notification(const std::string& explore_url) @@ -2391,6 +2436,16 @@ void NotificationManager::push_shared_profiles_notification(const std::string& e push_notification_data(std::make_unique(data, m_id_provider, m_evt_handler, explore_url), 0); } +void NotificationManager::push_orca_sync_conflict_notification(const std::string& text, + std::function pull_callback, + std::function force_push_callback) +{ + close_notification_of_type(NotificationType::OrcaSyncConflict); + NotificationData data{ NotificationType::OrcaSyncConflict, NotificationLevel::WarningNotificationLevel, 0, text }; + push_notification_data(std::make_unique( + data, m_id_provider, m_evt_handler, std::move(pull_callback), std::move(force_push_callback)), 0); +} + void NotificationManager::push_download_URL_progress_notification(size_t id, const std::string& text, std::function user_action_callback) { // If already exists diff --git a/src/slic3r/GUI/NotificationManager.hpp b/src/slic3r/GUI/NotificationManager.hpp index 5e8f4f7e95b..006de5cff6c 100644 --- a/src/slic3r/GUI/NotificationManager.hpp +++ b/src/slic3r/GUI/NotificationManager.hpp @@ -15,6 +15,8 @@ #include #include +#include +#include #include #include #include @@ -162,6 +164,8 @@ enum class NotificationType BBLMixUsePLAAndPETG, BBLNozzleFilamentIncompatible, OrcaSharedProfilesAvailable, + OrcaCloudAPIError, + OrcaSyncConflict, NotificationTypeCount }; @@ -274,6 +278,9 @@ public: // Shared profiles available for selected printer void push_shared_profiles_notification(const std::string& explore_url); + void push_orca_sync_conflict_notification(const std::string& text, + std::function pull_callback, + std::function force_push_callback); // Download URL progress notif void push_download_URL_progress_notification(size_t id, const std::string& text, std::function user_action_callback); @@ -491,6 +498,11 @@ private: const float text_x, const float text_y, const std::string text, bool more = false); + // Renders an underlined, hyperlink-style clickable label backed by an invisible button. + // on_click runs when pressed; the callback itself decides whether to close(). + void render_hyperlink_action(ImGuiWrapper& imgui, float text_x, float text_y, + const std::string& text, const char* button_id, + const std::function& on_click); virtual void bbl_render_block_notif_text(ImGuiWrapper& imgui, const float win_size_x, const float win_size_y, const float win_pos_x, const float win_pos_y); @@ -887,6 +899,28 @@ private: std::string m_explore_url; bool m_dont_show_clicked{ false }; }; + + class OrcaSyncConflictNotification : public PopNotification + { + public: + OrcaSyncConflictNotification(const NotificationData& n, NotificationIDProvider& id_provider, wxEvtHandler* evt_handler, + std::function pull_callback, + std::function force_push_callback) + : PopNotification(n, id_provider, evt_handler) + , m_pull_callback(std::move(pull_callback)) + , m_force_push_callback(std::move(force_push_callback)) + { + m_multiline = true; + } + protected: + void init() override; + void render_text(ImGuiWrapper& imgui, + const float win_size_x, const float win_size_y, + const float win_pos_x, const float win_pos_y) override; + + std::function m_pull_callback; + std::function m_force_push_callback; + }; class SlicingProgressNotification; // in HintNotification.hpp diff --git a/src/slic3r/GUI/ObjColorDialog.cpp b/src/slic3r/GUI/ObjColorDialog.cpp index fc5c7341483..a8ef3f046f7 100644 --- a/src/slic3r/GUI/ObjColorDialog.cpp +++ b/src/slic3r/GUI/ObjColorDialog.cpp @@ -229,7 +229,7 @@ ObjColorPanel::ObjColorPanel(wxWindow *parent, Slic3r::ObjDialogInOut &in_out, c specify_color_cluster_title->SetFont(Label::Head_14); specify_cluster_sizer->Add(specify_color_cluster_title, 0, wxALIGN_CENTER | wxALL, FromDIP(5)); - m_color_cluster_num_by_user_ebox = new SpinInput(m_page_simple, "", wxEmptyString, wxDefaultPosition, wxSize(FromDIP(45), -1), wxTE_PROCESS_ENTER); + m_color_cluster_num_by_user_ebox = new SpinInput(m_page_simple, "", wxEmptyString, wxDefaultPosition, wxSize(FromDIP(60), -1), wxTE_PROCESS_ENTER); m_color_cluster_num_by_user_ebox->SetValue(std::to_string(m_color_cluster_num_by_algo).c_str()); m_color_cluster_num_by_user_ebox->SetToolTip(_L("Enter or click the adjustment button to modify number again")); {//event @@ -284,11 +284,8 @@ ObjColorPanel::ObjColorPanel(wxWindow *parent, Slic3r::ObjDialogInOut &in_out, c } } - wxStaticText *combox_title = new wxStaticText(m_page_simple, wxID_ANY, _L("view"), wxPoint(FromDIP(216), FromDIP(312))); - // combox_title->SetTransparent(true); - combox_title->SetBackgroundColour(wxColour(240, 240, 240, 0)); - combox_title->SetForegroundColour(wxColour(107, 107, 107, 100)); - auto cur_combox = new ComboBox(m_page_simple, wxID_ANY, wxEmptyString, wxPoint(FromDIP(250), FromDIP(310)), wxSize(FromDIP(100), -1), 0, NULL, wxCB_READONLY); + wxStaticText *combox_title = new wxStaticText(m_page_simple, wxID_ANY, _L("view")); + auto cur_combox = new ComboBox(m_page_simple, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize(FromDIP(100), -1), 0, NULL, wxCB_READONLY); wxArrayString choices = get_all_camera_view_type(); for (size_t i = 0; i < choices.size(); i++) { cur_combox->Append(choices[i]); } cur_combox->SetSelection(0); @@ -310,11 +307,18 @@ ObjColorPanel::ObjColorPanel(wxWindow *parent, Slic3r::ObjDialogInOut &in_out, c wxBORDER_NONE | wxBU_AUTODRAW); m_image_button->SetBitmap(image); m_image_button->SetCanFocus(false); + #ifdef __WXGTK__ + RemoveButtonBorder(m_image_button); + #endif icon_sizer->Add(m_image_button, 0, wxEXPAND | wxALL, FromDIP(0)); // wxEXPAND | wxALL cur_combox->Raise();//for mac m_sizer_simple->Add(icon_sizer, FromDIP(0), wxALIGN_CENTER | wxALL, FromDIP(0)); + auto view_sizer = new wxBoxSizer(wxHORIZONTAL); + view_sizer->Add(combox_title, 0, wxALIGN_CENTER | wxALL, FromDIP(5)); + view_sizer->Add(cur_combox , 0, wxALIGN_CENTER | wxALL, FromDIP(5)); + m_sizer_simple->Add(view_sizer, 0, wxALIGN_RIGHT | wxRIGHT, FromDIP(20)); } wxBoxSizer * current_filaments_title_sizer = new wxBoxSizer(wxHORIZONTAL); wxStaticText *current_filaments_title = new wxStaticText(m_page_simple, wxID_ANY, _L("Current filament colors")); @@ -357,7 +361,7 @@ ObjColorPanel::ObjColorPanel(wxWindow *parent, Slic3r::ObjDialogInOut &in_out, c m_scrolledWindow->ShowScrollbars(wxScrollbarVisibility::wxSHOW_SB_NEVER, wxScrollbarVisibility::wxSHOW_SB_DEFAULT); draw_new_table(); - m_sizer_simple->Add(m_scrolledWindow, 0, wxEXPAND | wxLEFT | wxRIGHT, FromDIP(5)); + m_sizer_simple->Add(m_scrolledWindow, 0, wxEXPAND | wxLEFT | wxRIGHT, FromDIP(15)); //buttons wxBoxSizer *quick_set_sizer = new wxBoxSizer(wxHORIZONTAL); quick_set_sizer->AddSpacer(FromDIP(25)); @@ -522,9 +526,12 @@ wxBoxSizer *ObjColorPanel::create_reset_btn_sizer(wxWindow *parent) wxBoxSizer *ObjColorPanel::create_extruder_icon_and_rgba_sizer(wxWindow *parent, int id, const wxColour &color) { auto icon_sizer = new wxBoxSizer(wxHORIZONTAL); - wxButton *icon = new wxButton(parent, wxID_ANY, {}, wxDefaultPosition, ICON_SIZE, wxBORDER_NONE | wxBU_AUTODRAW); - icon->SetBitmap(*get_extruder_color_icon(color.GetAsString(wxC2S_HTML_SYNTAX).ToStdString(), std::to_string(id + 1), FromDIP(16), FromDIP(16))); + wxButton *icon = new wxButton(parent, wxID_ANY, {}, wxDefaultPosition, FromDIP(wxSize(20,20)), wxBORDER_NONE | wxBU_AUTODRAW); + icon->SetBitmap(*get_extruder_color_icon(color.GetAsString(wxC2S_HTML_SYNTAX).ToStdString(), std::to_string(id + 1), FromDIP(20), FromDIP(20))); icon->SetCanFocus(false); + #ifdef __WXGTK__ + RemoveButtonBorder(icon); + #endif m_extruder_icon_list.emplace_back(icon); icon_sizer->Add(icon, 0, wxALIGN_LEFT | wxALIGN_CENTER_VERTICAL, 0); // wxALIGN_CENTER_VERTICAL | wxTOP | wxBOTTOM //icon_sizer->AddSpacer(FromDIP(5)); @@ -553,10 +560,10 @@ ComboBox *ObjColorPanel::CreateEditorCtrl(wxWindow *parent, int id) // wxRect la if (icons.empty()) return nullptr; - ::ComboBox *c_editor = new ::ComboBox(parent, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize(FromDIP(m_combox_width), -1), 0, nullptr, + ::ComboBox *c_editor = new ::ComboBox(parent, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0, nullptr, wxCB_READONLY | CB_NO_DROP_ICON | CB_NO_TEXT); - c_editor->SetMinSize(wxSize(FromDIP(m_combox_width), -1)); - c_editor->SetMaxSize(wxSize(FromDIP(m_combox_width), -1)); + c_editor->SetMinSize(wxSize(icon_width + FromDIP(8), -1)); // match size with bitmap + c_editor->SetMaxSize(wxSize(icon_width + FromDIP(8), -1)); // match size with bitmap c_editor->GetDropDown().SetUseContentWidth(false); for (size_t i = 0; i < icons.size(); i++) { c_editor->Append(wxString::Format("%d", i), *icons[i]); @@ -910,9 +917,12 @@ wxBoxSizer *ObjColorPanel::create_color_icon_map_rgba_sizer(wxWindow *parent, in { auto icon_sizer = new wxBoxSizer(wxHORIZONTAL); //icon_sizer->AddSpacer(FromDIP(40)); - wxButton *icon = new wxButton(parent, wxID_ANY, {}, wxDefaultPosition, ICON_SIZE, wxBORDER_NONE | wxBU_AUTODRAW); - icon->SetBitmap(*get_extruder_color_icon(color.GetAsString(wxC2S_HTML_SYNTAX).ToStdString(), "", FromDIP(16), FromDIP(16))); + wxButton *icon = new wxButton(parent, wxID_ANY, {}, wxDefaultPosition, FromDIP(wxSize(20,20)), wxBORDER_NONE | wxBU_AUTODRAW); + icon->SetBitmap(*get_extruder_color_icon(color.GetAsString(wxC2S_HTML_SYNTAX).ToStdString(), "", FromDIP(20), FromDIP(20))); icon->SetCanFocus(false); +#ifdef __WXGTK__ + RemoveButtonBorder(icon); +#endif m_color_cluster_icon_list.emplace_back(icon); icon_sizer->Add(icon, 0, wxALIGN_LEFT | wxALIGN_CENTER_VERTICAL, 0); // wxALIGN_CENTER_VERTICAL | wxTOP | wxBOTTOM icon_sizer->AddSpacer(FromDIP(10)); diff --git a/src/slic3r/GUI/PartPlate.cpp b/src/slic3r/GUI/PartPlate.cpp index 5186a4384dc..3b4549e969d 100644 --- a/src/slic3r/GUI/PartPlate.cpp +++ b/src/slic3r/GUI/PartPlate.cpp @@ -1573,31 +1573,31 @@ std::vector PartPlate::get_extruders(bool conside_custom_gcode) const plate_extruders.push_back(glb_support_extr); } - int obj_wall_extr = 1; + int obj_wall_extr = 0; const ConfigOption* wall_opt = mo->config.option("wall_filament"); if (wall_opt != nullptr) obj_wall_extr = wall_opt->getInt(); - if (obj_wall_extr != 1) + if (obj_wall_extr != 0) plate_extruders.push_back(obj_wall_extr); - else if (glb_wall_extr != 1) + else if (glb_wall_extr != 0) plate_extruders.push_back(glb_wall_extr); - int obj_sparse_infill_extr = 1; + int obj_sparse_infill_extr = 0; const ConfigOption* sparse_infill_opt = mo->config.option("sparse_infill_filament"); if (sparse_infill_opt != nullptr) obj_sparse_infill_extr = sparse_infill_opt->getInt(); - if (obj_sparse_infill_extr != 1) + if (obj_sparse_infill_extr != 0) plate_extruders.push_back(obj_sparse_infill_extr); - else if (glb_sparse_infill_extr != 1) + else if (glb_sparse_infill_extr != 0) plate_extruders.push_back(glb_sparse_infill_extr); - int obj_solid_infill_extr = 1; + int obj_solid_infill_extr = 0; const ConfigOption* solid_infill_opt = mo->config.option("solid_infill_filament"); if (solid_infill_opt != nullptr) obj_solid_infill_extr = solid_infill_opt->getInt(); - if (obj_solid_infill_extr != 1) + if (obj_solid_infill_extr != 0) plate_extruders.push_back(obj_solid_infill_extr); - else if (glb_solid_infill_extr != 1) + else if (glb_solid_infill_extr != 0) plate_extruders.push_back(glb_solid_infill_extr); } @@ -1695,31 +1695,31 @@ std::vector PartPlate::get_extruders_under_cli(bool conside_custom_gcode, D else if (glb_support_extr != 0) plate_extruders.push_back(glb_support_extr); - int obj_wall_extr = 1; + int obj_wall_extr = 0; const ConfigOption* wall_opt = object->config.option("wall_filament"); if (wall_opt != nullptr) obj_wall_extr = wall_opt->getInt(); - if (obj_wall_extr != 1) + if (obj_wall_extr != 0) plate_extruders.push_back(obj_wall_extr); - else if (glb_wall_extr != 1) + else if (glb_wall_extr != 0) plate_extruders.push_back(glb_wall_extr); - int obj_sparse_infill_extr = 1; + int obj_sparse_infill_extr = 0; const ConfigOption* sparse_infill_opt = object->config.option("sparse_infill_filament"); if (sparse_infill_opt != nullptr) obj_sparse_infill_extr = sparse_infill_opt->getInt(); - if (obj_sparse_infill_extr != 1) + if (obj_sparse_infill_extr != 0) plate_extruders.push_back(obj_sparse_infill_extr); - else if (glb_sparse_infill_extr != 1) + else if (glb_sparse_infill_extr != 0) plate_extruders.push_back(glb_sparse_infill_extr); - int obj_solid_infill_extr = 1; + int obj_solid_infill_extr = 0; const ConfigOption* solid_infill_opt = object->config.option("solid_infill_filament"); if (solid_infill_opt != nullptr) obj_solid_infill_extr = solid_infill_opt->getInt(); - if (obj_solid_infill_extr != 1) + if (obj_solid_infill_extr != 0) plate_extruders.push_back(obj_solid_infill_extr); - else if (glb_solid_infill_extr != 1) + else if (glb_solid_infill_extr != 0) plate_extruders.push_back(glb_solid_infill_extr); } } diff --git a/src/slic3r/GUI/PartPlate.hpp b/src/slic3r/GUI/PartPlate.hpp index 4b41cc67227..d4c53991427 100644 --- a/src/slic3r/GUI/PartPlate.hpp +++ b/src/slic3r/GUI/PartPlate.hpp @@ -338,6 +338,7 @@ public: std::vector get_extruders_without_support(bool conside_custom_gcode = false) const; // get used filaments from gcode result, 1 based idx std::vector get_used_filaments(); + const std::vector& get_slice_filaments_info() const { return slice_filaments_info; } int get_physical_extruder_by_filament_id(const DynamicConfig& g_config, int idx) const; bool check_filament_printable(const DynamicPrintConfig & config, wxString& error_message); bool check_tpu_printable_status(const DynamicPrintConfig & config, const std::vector &tpu_filaments); diff --git a/src/slic3r/GUI/PhysicalPrinterDialog.cpp b/src/slic3r/GUI/PhysicalPrinterDialog.cpp index 667919aca3f..7a85a4c1f20 100644 --- a/src/slic3r/GUI/PhysicalPrinterDialog.cpp +++ b/src/slic3r/GUI/PhysicalPrinterDialog.cpp @@ -12,6 +12,7 @@ #include #include #include +#include #include #include @@ -31,6 +32,7 @@ #include "PrintHostDialogs.hpp" #include "../Utils/ASCIIFolding.hpp" #include "../Utils/PrintHost.hpp" +#include "../Utils/Flashforge.hpp" #include "../Utils/UndoRedo.hpp" #include "RemovableDriveManager.hpp" #include "BitmapCache.hpp" @@ -204,10 +206,37 @@ void PhysicalPrinterDialog::build_printhost_settings(ConfigOptionsGroup* m_optgr { auto sizer = create_sizer_with_btn(parent, &m_printhost_browse_btn, "printer_host_browser", _L("Browse") + " " + dots); m_printhost_browse_btn->Bind(wxEVT_BUTTON, [=](wxCommandEvent& e) { - BonjourDialog dialog(this, Preset::printer_technology(*m_config)); - if (dialog.show_and_lookup()) { - m_optgroup->set_value("print_host", dialog.get_selected(), true); - m_optgroup->get_field("print_host")->field_changed(); + const auto host_type = m_config->opt_enum("host_type"); + if (host_type == htFlashforge) { + wxBusyCursor wait; + std::vector printers; + wxString error_msg; + if (!Flashforge::discover_printers(printers, error_msg)) { + show_error(this, error_msg); + return; + } + + wxArrayString choices; + for (const auto& printer : printers) + choices.Add(from_u8((boost::format("%1% (%2%) [%3%]") % printer.name % printer.ip_address % printer.serial_number).str())); + + wxSingleChoiceDialog dialog(this, _L("Select a Flashforge printer"), _L("Discovered Printers"), choices); + if (dialog.ShowModal() == wxID_OK) { + const int idx = dialog.GetSelection(); + if (idx >= 0 && idx < static_cast(printers.size())) { + m_optgroup->set_value("print_host", from_u8(printers[idx].ip_address), true); + m_optgroup->set_value("flashforge_serial_number", from_u8(printers[idx].serial_number), true); + m_config->opt_string("print_host") = printers[idx].ip_address; + m_config->opt_string("flashforge_serial_number") = printers[idx].serial_number; + update_printhost_buttons(); + } + } + } else { + BonjourDialog dialog(this, Preset::printer_technology(*m_config)); + if (dialog.show_and_lookup()) { + m_optgroup->set_value("print_host", dialog.get_selected(), true); + m_optgroup->get_field("print_host")->field_changed(); + } } }); @@ -329,6 +358,10 @@ void PhysicalPrinterDialog::build_printhost_settings(ConfigOptionsGroup* m_optgr option.opt.width = Field::def_width_wider(); m_optgroup->append_single_option_line(option); + option = m_optgroup->get_option("flashforge_serial_number"); + option.opt.width = Field::def_width_wider(); + m_optgroup->append_single_option_line(option); + option = m_optgroup->get_option("printhost_port"); option.opt.width = Field::def_width_wider(); Line port_line = m_optgroup->create_single_option_line(option); @@ -685,13 +718,17 @@ void PhysicalPrinterDialog::update(bool printer_change) } if (opt->value == htFlashforge) { - m_optgroup->hide_field("printhost_apikey"); - m_optgroup->hide_field("printhost_authorization_type"); - } + m_optgroup->show_field("printhost_apikey"); + m_optgroup->show_field("flashforge_serial_number"); + m_optgroup->hide_field("printhost_authorization_type"); + } else { + m_optgroup->hide_field("flashforge_serial_number"); + } } else { m_optgroup->set_value("host_type", int(PrintHostType::htOctoPrint), false); m_optgroup->hide_field("host_type"); + m_optgroup->hide_field("flashforge_serial_number"); m_optgroup->show_field("printhost_authorization_type"); @@ -809,7 +846,7 @@ void PhysicalPrinterDialog::on_dpi_changed(const wxRect& suggested_rect) void PhysicalPrinterDialog::check_host_key_valid() { - std::vector keys = {"print_host", "print_host_webui", "printhost_apikey", "printhost_cafile", "printhost_user", "printhost_password", "printhost_port"}; + std::vector keys = {"print_host", "print_host_webui", "printhost_apikey", "flashforge_serial_number", "printhost_cafile", "printhost_user", "printhost_password", "printhost_port"}; for (auto &key : keys) { auto it = m_config->option(key); if (!it) m_config->set_key_value(key, new ConfigOptionString("")); diff --git a/src/slic3r/GUI/Plater.cpp b/src/slic3r/GUI/Plater.cpp index a015c8624e1..06d1575cca5 100644 --- a/src/slic3r/GUI/Plater.cpp +++ b/src/slic3r/GUI/Plater.cpp @@ -876,54 +876,6 @@ struct DynamicFilamentList : DynamicList } }; -struct DynamicFilamentList1Based : DynamicFilamentList -{ - void apply_on(Choice *c) override - { - if (items.empty()) - update(true); - auto cb = dynamic_cast(c->window); - auto n = cb->GetSelection(); - cb->Clear(); - for (auto i : items) { - cb->Append(i.first, *i.second); - } - if (n < cb->GetCount()) - cb->SetSelection(n); - } - wxString get_value(int index) override - { - wxString str; - str << index+1; - return str; - } - int index_of(wxString value) override - { - long n = 0; - if(!value.ToLong(&n)) - return -1; - --n; - return (n >= 0 && n <= items.size()) ? int(n) : -1; - } - void update(bool force = false) - { - items.clear(); - if (!force && m_choices.empty()) - return; - auto icons = get_extruder_color_icons(true); - auto presets = wxGetApp().preset_bundle->filament_presets; - for (int i = 0; i < presets.size(); ++i) { - wxString str; - std::string type; - wxGetApp().preset_bundle->filaments.find_preset(presets[i])->get_filament_type(type); - str << type; - items.push_back({str, i < icons.size() ? icons[i] : nullptr}); - } - DynamicList::update(); - } - -}; - // Check if the machine supports Junction Deviation (Marlin firmware with machine_max_junction_deviation > 0) static bool has_junction_deviation(const DynamicPrintConfig* printer_config) { @@ -940,7 +892,6 @@ static bool has_junction_deviation(const DynamicPrintConfig* printer_config) } static DynamicFilamentList dynamic_filament_list; -static DynamicFilamentList1Based dynamic_filament_list_1_based; class AMSCountPopupWindow : public PopupWindow { @@ -1647,9 +1598,9 @@ Sidebar::Sidebar(Plater *parent) { Choice::register_dynamic_list("support_filament", &dynamic_filament_list); Choice::register_dynamic_list("support_interface_filament", &dynamic_filament_list); - Choice::register_dynamic_list("wall_filament", &dynamic_filament_list_1_based); - Choice::register_dynamic_list("sparse_infill_filament", &dynamic_filament_list_1_based); - Choice::register_dynamic_list("solid_infill_filament", &dynamic_filament_list_1_based); + Choice::register_dynamic_list("wall_filament", &dynamic_filament_list); + Choice::register_dynamic_list("sparse_infill_filament", &dynamic_filament_list); + Choice::register_dynamic_list("solid_infill_filament", &dynamic_filament_list); Choice::register_dynamic_list("wipe_tower_filament", &dynamic_filament_list); p->scrolled = new wxPanel(this); @@ -1853,6 +1804,14 @@ Sidebar::Sidebar(Plater *parent) e.Skip(); }); w->Bind(wxEVT_LEAVE_WINDOW, [this, panel_color](wxMouseEvent &e) { + // Orca: if the edit button is already hidden the handler has no + // state to change, so skip the expensive wxFindWindowAtPoint tree + // walk. Without this guard, when the parent window is on an + // inactive Hyprland/Wayland workspace, GTK keeps delivering + // synthetic leave events and the Hide()+Layout() below re-enters + // the same handler in a feedback loop that pegs a CPU core. + // (IsShownOnScreen() can't be used here — see Plater.cpp:9304.) + if (!p->btn_edit_printer->IsShown()) { e.Skip(); return; } // Use event-relative coords instead of wxGetMousePosition() which // returns (0,0) on Wayland for global screen coordinates. wxWindow* evtObj = dynamic_cast(e.GetEventObject()); @@ -3759,7 +3718,6 @@ void Sidebar::show_SEMM_buttons() void Sidebar::update_dynamic_filament_list() { dynamic_filament_list.update(); - dynamic_filament_list_1_based.update(); } PlaterPresetComboBox* Sidebar::printer_combox() @@ -6195,6 +6153,23 @@ std::vector Plater::priv::load_files(const std::vector& input_ } } + if (load_config && !config_loaded.empty() && + (en_3mf_file_type == En3mfType::From_BBS || en_3mf_file_type == En3mfType::From_Orca) && + file_version < Semver("2.4.0-dev")) { + int converted_count = ConfigMigrations::migrate_legacy_feature_filament_defaults(config_loaded); + for (ModelObject *model_object : model.objects) { + converted_count += ConfigMigrations::migrate_legacy_feature_filament_defaults(model_object->config); + for (ModelVolume *model_volume : model_object->volumes) + converted_count += ConfigMigrations::migrate_legacy_feature_filament_defaults(model_volume->config); + } + + if (converted_count > 0) { + BOOST_LOG_TRIVIAL(info) << __FUNCTION__ << ":" << __LINE__ << " " + << boost::format("old 3mf version %1%, migrated %2% feature filament selections from 1 to 0 (Default)") + % file_version.to_string() % converted_count; + } + } + // plate data if (plate_data.size() > 0) { BOOST_LOG_TRIVIAL(info) << __FUNCTION__ << ":" << __LINE__ << boost::format(", import 3mf UPDATE_GCODE_RESULT \n"); @@ -6850,12 +6825,12 @@ std::vector Plater::priv::load_files(const std::vector& input_ double preset_nozzle_diameter = 0.4; const ConfigOption *opt = printer_preset.config.option("nozzle_diameter"); if (opt) preset_nozzle_diameter = static_cast(opt)->values[0]; - float machine_nozzle_diameter = obj->GetExtderSystem()->GetNozzleDiameter(0); std::string machine_type = obj->printer_type; if (obj->is_support_upgrade_kit && obj->installed_upgrade_kit) machine_type = "C12"; - if (printer_preset.get_current_printer_type(preset_bundle) != machine_type || !is_approx((float) preset_nozzle_diameter, machine_nozzle_diameter)) { + bool nozzle_mismatch = !obj->GetExtderSystem()->NozzleDiameterMatchesOrUnknown(0, (float) preset_nozzle_diameter); + if (printer_preset.get_current_printer_type(preset_bundle) != machine_type || nozzle_mismatch) { Preset *machine_preset = get_printer_preset(obj); if (machine_preset != nullptr) { std::string printer_model = machine_preset->config.option("printer_model")->value; @@ -9566,7 +9541,7 @@ void Plater::priv::on_select_preset(wxCommandEvent &evt) const auto& extruders = obj->GetExtderSystem()->GetExtruders(); for (const DevExtder &extruder : extruders) { - if (!is_approx(extruder.GetNozzleDiameter(), float(preset_nozzle_diameter))) { + if (!obj->GetExtderSystem()->NozzleDiameterMatchesOrUnknown(extruder.GetExtId(), float(preset_nozzle_diameter))) { same_nozzle_diameter = false; } } @@ -16081,6 +16056,18 @@ void Plater::send_gcode_legacy(int plate_idx, Export3mfProgressFn proFn, bool us if (upload_job.empty()) return; + const auto host_type_opt = physical_printer_config->option>("host_type"); + const auto host_type = host_type_opt != nullptr ? host_type_opt->value : htElegooLink; + const auto* ff_serial_opt = physical_printer_config->option("flashforge_serial_number"); + const auto* ff_code_opt = physical_printer_config->option("printhost_apikey"); + const bool flashforge_local_api = + host_type == htFlashforge && + ff_serial_opt != nullptr && !ff_serial_opt->value.empty() && + ff_code_opt != nullptr && !ff_code_opt->value.empty(); + + if (flashforge_local_api) + use_3mf = true; + upload_job.upload_data.use_3mf = use_3mf; // Obtain default output path @@ -16128,8 +16115,6 @@ void Plater::send_gcode_legacy(int plate_idx, Export3mfProgressFn proFn, bool us { auto preset_bundle = wxGetApp().preset_bundle; - const auto opt = physical_printer_config->option>("host_type"); - const auto host_type = opt != nullptr ? opt->value : htElegooLink; auto config = get_app_config(); std::unique_ptr pDlg; @@ -16137,6 +16122,77 @@ void Plater::send_gcode_legacy(int plate_idx, Export3mfProgressFn proFn, bool us pDlg = std::make_unique(default_output_file, upload_job.printhost->get_post_upload_actions(), groups, storage_paths, storage_names, config->get_bool("open_device_tab_post_upload")); + } else if (flashforge_local_api) { + auto* flashforge_host = dynamic_cast(upload_job.printhost.get()); + if (flashforge_host == nullptr) { + show_error(this, _L("Flashforge host is not available."), false); + return; + } + + std::vector slots; + bool supports_material_station = false; + { + wxBusyCursor wait; + wxString msg; + if (!flashforge_host->fetch_material_slots(slots, &supports_material_station, msg)) { + show_error(this, msg.empty() ? _L("Unable to log in to the Flashforge printer.") : msg, false); + return; + } + } + + std::vector project_filaments; + PlateDataPtrs plate_data_list; + DynamicPrintConfig cfg = wxGetApp().preset_bundle->full_config(); + const auto* filament_color = dynamic_cast(cfg.option("filament_colour")); + const auto* filament_id_opt = dynamic_cast(cfg.option("filament_ids")); + const int resolved_plate_idx = plate_idx == PLATE_CURRENT_IDX ? get_partplate_list().get_curr_plate_index() : plate_idx; + auto enrich_project_filaments = [&](std::vector& filaments) { + for (auto& filament : filaments) { + if (filament.id < 0) + continue; + + std::string display_filament_type; + try { + filament.type = cfg.get_filament_type(display_filament_type, filament.id); + } catch (...) { + } + + if (filament.type.empty()) + filament.type = display_filament_type; + if (filament.type.empty()) + filament.type = "Unknown"; + + filament.filament_id = filament_id_opt ? filament_id_opt->get_at(static_cast(filament.id)) : ""; + filament.color = filament_color ? filament_color->get_at(static_cast(filament.id)) : "#FFFFFF"; + if (filament.color.empty()) + filament.color = "#FFFFFF"; + } + }; + + p->partplate_list.store_to_3mf_structure(plate_data_list, true, plate_idx); + PlateData* selected_plate_data = (resolved_plate_idx >= 0 && resolved_plate_idx < static_cast(plate_data_list.size())) ? plate_data_list[resolved_plate_idx] : nullptr; + if (selected_plate_data == nullptr && !plate_data_list.empty()) + selected_plate_data = plate_data_list.front(); + + if (selected_plate_data != nullptr) + project_filaments = selected_plate_data->slice_filaments_info; + + if (project_filaments.empty()) { + if (PartPlate* plate = get_partplate_list().get_plate(resolved_plate_idx); plate != nullptr) + project_filaments = plate->get_slice_filaments_info(); + } + + if (!project_filaments.empty()) + enrich_project_filaments(project_filaments); + release_PlateData_list(plate_data_list); + + pDlg = std::make_unique(default_output_file, upload_job.printhost->get_post_upload_actions(), groups, + storage_paths, storage_names, + config->get_bool("open_device_tab_post_upload"), + flashforge_host, + supports_material_station, + std::move(slots), + project_filaments); } else { pDlg = std::make_unique(default_output_file, upload_job.printhost->get_post_upload_actions(), groups, storage_paths, storage_names, config->get_bool("open_device_tab_post_upload")); @@ -16166,7 +16222,8 @@ void Plater::send_gcode_legacy(int plate_idx, Export3mfProgressFn proFn, bool us if (use_3mf) { // Process gcode - const int result = send_gcode(plate_idx, nullptr); + const int export_plate_idx = plate_idx == PLATE_CURRENT_IDX ? get_partplate_list().get_curr_plate_index() : plate_idx; + const int result = send_gcode(export_plate_idx, nullptr); if (result < 0) { wxString msg = _L("Abnormal print file data. Please slice again"); diff --git a/src/slic3r/GUI/Preferences.cpp b/src/slic3r/GUI/Preferences.cpp index 206549cf176..7a78e337f39 100644 --- a/src/slic3r/GUI/Preferences.cpp +++ b/src/slic3r/GUI/Preferences.cpp @@ -968,6 +968,11 @@ wxBoxSizer *PreferencesDialog::create_item_checkbox(wxString title, wxString too if (m_sync_user_preset_checkbox) m_sync_user_preset_checkbox->Enable(!enabled); if (m_bambu_cloud_checkbox) m_bambu_cloud_checkbox->Enable(!enabled); } + else if (param == "hide_login_side_panel") { + if (wxGetApp().mainframe && wxGetApp().mainframe->m_webview) { + wxGetApp().mainframe->m_webview->SendCloudProvidersInfo(); + } + } #ifdef __WXMSW__ if (param == "associate_3mf") { @@ -1172,7 +1177,6 @@ wxBoxSizer* PreferencesDialog::create_item_link_association( wxString url_prefix auto checkbox = new ::CheckBox(m_parent); checkbox->SetToolTip(tooltip); checkbox->SetValue(reg_to_current_instance); // If registered to the current instance, checkbox should be checked - checkbox->Enable(!reg_to_current_instance); // Since unregistering isn't supported, checkbox is disabled when checked // build text next to checkbox auto checkbox_title = new wxStaticText(m_parent, wxID_ANY, title, wxDefaultPosition, DESIGN_TITLE_SIZE); @@ -1223,8 +1227,10 @@ wxBoxSizer* PreferencesDialog::create_item_link_association( wxString url_prefix v_sizer->Add(registered_instance_title, 0, wxALIGN_CENTER_VERTICAL | wxLEFT, FromDIP(DESIGN_LEFT_MARGIN)); checkbox->Bind(wxEVT_TOGGLEBUTTON, [=](wxCommandEvent& e) { - wxGetApp().associate_url(url_prefix.ToStdWstring()); - checkbox->Disable(); + if (checkbox->GetValue()) + wxGetApp().associate_url(url_prefix.ToStdWstring()); + else + wxGetApp().disassociate_url(url_prefix.ToStdWstring()); update_current_association_str(); e.Skip(); }); @@ -1604,9 +1610,12 @@ void PreferencesDialog::create_items() auto item_region = create_item_region_combobox(_L("Login region"), ""); g_sizer->Add(item_region); - auto item_stealth_mode = create_item_checkbox(_L("Stealth mode"), _L("This disables all cloud services e.g. Orca Cloud and Bambu Cloud. This stops the transmission of data to Bambu's cloud services too. Users who don't use BBL machines or use LAN mode only can safely turn on this function."), "stealth_mode"); + auto item_stealth_mode = create_item_checkbox(_L("Stealth mode"), _L("This disables all cloud features, including Orca Cloud profile syncing. Users who prefer to work entirely offline can enable this option.\nNote: When Stealth Mode is enabled, your user profiles will not be backed up to Orca Cloud."), "stealth_mode"); g_sizer->Add(item_stealth_mode); + auto item_hide_login_side_panel = create_item_checkbox(_L("Hide login side panel"), _L("Hide the login side panel on the home page."), "hide_login_side_panel"); + g_sizer->Add(item_hide_login_side_panel); + auto item_network_test = create_item_button(_L("Network test"), _L("Test") + " " + dots, "", _L("Open Network Test"), []() { NetworkTestDialog dlg(wxGetApp().mainframe); dlg.ShowModal(); diff --git a/src/slic3r/GUI/PrintHostDialogs.cpp b/src/slic3r/GUI/PrintHostDialogs.cpp index f59ff23e9d0..1d9b30fd1b2 100644 --- a/src/slic3r/GUI/PrintHostDialogs.cpp +++ b/src/slic3r/GUI/PrintHostDialogs.cpp @@ -1,7 +1,9 @@ #include "PrintHostDialogs.hpp" #include +#include #include +#include #include #include @@ -11,6 +13,9 @@ #include #include #include +#include +#include +#include #include #include #include @@ -18,6 +23,8 @@ #include #include #include +#include +#include #include "GUI.hpp" #include "GUI_App.hpp" @@ -30,10 +37,383 @@ #include "format.hpp" namespace fs = boost::filesystem; +using json = nlohmann::json; namespace Slic3r { namespace GUI { +namespace { + +wxColour contrasting_text_color(const wxColour& background) +{ + return background.GetLuminance() < 0.60 ? *wxWHITE : wxColour("#303030"); +} + +long long color_distance_sq(const wxColour& lhs, const wxColour& rhs) +{ + const long long dr = static_cast(lhs.Red()) - static_cast(rhs.Red()); + const long long dg = static_cast(lhs.Green()) - static_cast(rhs.Green()); + const long long db = static_cast(lhs.Blue()) - static_cast(rhs.Blue()); + return dr * dr + dg * dg + db * db; +} + +class FlashforgeSlotCard : public wxPanel +{ +public: + FlashforgeSlotCard(wxWindow* parent) + : wxPanel(parent, wxID_ANY) + { + SetDoubleBuffered(true); + SetMinSize(wxSize(FromDIP(68), FromDIP(92))); + SetMaxSize(GetMinSize()); + Bind(wxEVT_PAINT, &FlashforgeSlotCard::on_paint, this); + Bind(wxEVT_ENTER_WINDOW, [this](wxMouseEvent& e) { + m_hover = true; + SetCursor(wxCursor(m_enabled ? wxCURSOR_HAND : wxCURSOR_NO_ENTRY)); + Refresh(); + e.Skip(); + }); + Bind(wxEVT_LEAVE_WINDOW, [this](wxMouseEvent& e) { + m_hover = false; + SetCursor(wxCursor(wxCURSOR_ARROW)); + Refresh(); + e.Skip(); + }); + Bind(wxEVT_LEFT_DOWN, &FlashforgeSlotCard::on_left_down, this); + } + + void set_slot(const Slic3r::FlashforgeMaterialSlot& slot, bool enabled) + { + m_slot_id = slot.slot_id; + m_color = parse_color(slot.material_color); + m_name = slot.material_name.empty() ? _L("Unknown") : from_u8(slot.material_name); + m_empty = !slot.has_filament; + m_enabled = enabled && !m_empty; + Refresh(); + } + +private: + static wxColour parse_color(const std::string& raw) + { + wxColour color(from_u8(raw)); + if (color.IsOk()) + return color; + + std::string value = raw; + boost::trim(value); + if (!value.empty() && value.front() != '#') + value.insert(value.begin(), '#'); + color = wxColour(from_u8(value)); + return color.IsOk() ? color : wxColour("#D0D0D0"); + } + + void on_left_down(wxMouseEvent& e) + { + if (!m_enabled) + return; + + wxCommandEvent evt(wxEVT_BUTTON, GetId()); + evt.SetInt(m_slot_id); + evt.SetString(m_color.GetAsString(wxC2S_HTML_SYNTAX)); + wxPostEvent(this, evt); + e.Skip(); + } + + void on_paint(wxPaintEvent&) + { + wxPaintDC dc(this); + std::unique_ptr gc(wxGraphicsContext::Create(dc)); + if (gc == nullptr) + return; + + const wxSize size = GetSize(); + const int circle_size = FromDIP(24); + const int outline_width = (m_hover && m_enabled) ? FromDIP(2) : FromDIP(1); + const wxRect body_rect(FromDIP(7), FromDIP(26), size.x - FromDIP(14), size.y - FromDIP(32)); + const wxColour badge_color = m_enabled ? wxSystemSettings::GetColour(wxSYS_COLOUR_HIGHLIGHT) + : wxSystemSettings::GetColour(wxSYS_COLOUR_GRAYTEXT); + const wxColour body_border = m_enabled ? wxSystemSettings::GetColour(wxSYS_COLOUR_BTNSHADOW) + : wxSystemSettings::GetColour(wxSYS_COLOUR_GRAYTEXT); + + gc->SetPen(*wxTRANSPARENT_PEN); + gc->SetBrush(wxBrush((m_hover && m_enabled) ? badge_color.ChangeLightness(130) : badge_color)); + gc->DrawEllipse((size.x - circle_size) / 2.0, 0, circle_size, circle_size); + + dc.SetFont(::Label::Body_13); + dc.SetTextForeground(*wxWHITE); + const wxString slot_txt = wxString::Format("%d", m_slot_id); + const wxSize slot_size = dc.GetTextExtent(slot_txt); + dc.DrawText(slot_txt, (size.x - slot_size.x) / 2, (circle_size - slot_size.y) / 2); + + const wxColour bg_color = m_empty ? wxColour("#F6F6F6") : m_color; + gc->SetPen(wxPen(body_border, outline_width)); + gc->SetBrush(wxBrush(bg_color)); + gc->DrawRoundedRectangle(body_rect.x, body_rect.y, body_rect.width, body_rect.height, FromDIP(8)); + + dc.SetFont(::Label::Body_12); + dc.SetTextForeground(contrasting_text_color(bg_color)); + + wxString label = m_empty ? _L("Empty") : m_name; + if (dc.GetTextExtent(label).x > body_rect.width - FromDIP(8)) + dc.SetFont(::Label::Body_10); + if (dc.GetTextExtent(label).x > body_rect.width - FromDIP(8)) { + while (!label.empty() && dc.GetTextExtent(label + "...").x > body_rect.width - FromDIP(8)) + label.RemoveLast(); + label += "..."; + } + const wxSize label_size = dc.GetTextExtent(label); + dc.DrawText(label, body_rect.x + (body_rect.width - label_size.x) / 2, body_rect.y + (body_rect.height - label_size.y) / 2); + } + +private: + int m_slot_id {0}; + wxColour m_color {*wxWHITE}; + wxString m_name; + bool m_empty {true}; + bool m_enabled {false}; + bool m_hover {false}; +}; + +class FlashforgeSlotDialog : public DPIDialog +{ +public: + FlashforgeSlotDialog(wxWindow* parent, const wxString& material_name) + : DPIDialog(parent, wxID_ANY, _L("Choose a slot for the selected color"), wxDefaultPosition, wxDefaultSize, wxCAPTION | wxCLOSE_BOX) + , m_material_name(material_name) + { + SetFont(wxGetApp().normal_font()); + SetBackgroundColour(*wxWHITE); + + auto* root = new wxBoxSizer(wxVERTICAL); + auto* title = new wxStaticText(this, wxID_ANY, _L("Material in the material station")); + title->SetFont(::Label::Head_13); + root->Add(title, 0, wxALL | wxALIGN_CENTER_HORIZONTAL, FromDIP(12)); + + m_grid = new wxGridSizer(1, 4, FromDIP(10), FromDIP(12)); + auto* grid_row = new wxBoxSizer(wxHORIZONTAL); + grid_row->AddStretchSpacer(); + grid_row->Add(m_grid, 0); + grid_row->AddStretchSpacer(); + root->Add(grid_row, 0, wxLEFT | wxRIGHT | wxEXPAND, FromDIP(18)); + + auto* tip = new wxStaticText(this, wxID_ANY, _L("Only materials of the same type can be selected.")); + tip->SetForegroundColour(wxSystemSettings::GetColour(wxSYS_COLOUR_GRAYTEXT)); + root->Add(tip, 0, wxALL | wxALIGN_CENTER_HORIZONTAL, FromDIP(12)); + + SetSizer(root); + SetMinSize(wxSize(FromDIP(460), FromDIP(240))); + + for (int i = 0; i < 4; ++i) { + auto* card = new FlashforgeSlotCard(this); + card->Bind(wxEVT_BUTTON, [this](wxCommandEvent& e) { + m_selected_slot_id = e.GetInt(); + m_selected_color = wxColour(e.GetString()); + EndModal(wxID_OK); + }); + m_cards.push_back(card); + m_grid->Add(card, 0); + } + + wxGetApp().UpdateDlgDarkUI(this); + Layout(); + Fit(); + CenterOnParent(); + Refresh(); + } + + void update_slots(const std::vector& slots, const std::function& matcher) + { + for (size_t i = 0; i < m_cards.size(); ++i) { + Slic3r::FlashforgeMaterialSlot slot; + slot.slot_id = static_cast(i) + 1; + if (const auto it = std::find_if(slots.begin(), slots.end(), [&](const Slic3r::FlashforgeMaterialSlot& item) { return item.slot_id == slot.slot_id; }); it != slots.end()) + slot = *it; + const bool enabled = slot.has_filament && matcher(slot); + m_cards[i]->set_slot(slot, enabled); + } + Layout(); + Fit(); + } + + bool has_selection() const { return m_selected_slot_id > 0; } + int selected_slot_id() const { return m_selected_slot_id; } + wxColour selected_color() const { return m_selected_color; } + +protected: + void on_dpi_changed(const wxRect& suggested_rect) override + { + Fit(); + Refresh(); + if (suggested_rect.IsEmpty()) + return; + SetSize(suggested_rect.GetSize()); + } + +private: + wxString m_material_name; + wxGridSizer* m_grid {nullptr}; + std::vector m_cards; + int m_selected_slot_id {0}; + wxColour m_selected_color; +}; + +class FlashforgeMaterialMapWidget : public wxPanel +{ +public: + using SelectFn = std::function; + + FlashforgeMaterialMapWidget(wxWindow* parent, int tool_id, const wxColour& color, const wxString& material_name, SelectFn on_select) + : wxPanel(parent, wxID_ANY) + , m_tool_id(tool_id) + , m_color(color) + , m_name(material_name.Strip()) + , m_select_fn(std::move(on_select)) + { + SetDoubleBuffered(true); + const wxSize size(FromDIP(72), FromDIP(58)); + SetSize(size); + SetMinSize(size); + SetMaxSize(size); + Bind(wxEVT_PAINT, &FlashforgeMaterialMapWidget::on_paint, this); + Bind(wxEVT_LEFT_DOWN, &FlashforgeMaterialMapWidget::on_left_down, this); + + } + + int tool_id() const { return m_tool_id; } + int selected_slot_id() const { return m_slot_id; } + bool is_slot_selected() const { return m_slot_id > 0; } + wxString material_name() const { return m_name; } + + void set_enable_mapping(bool enable) + { + if (m_mapping_enabled == enable) + return; + m_mapping_enabled = enable; + if (!enable) + reset_slot(); + Enable(enable); + Refresh(); + } + + void set_slot_selection(int slot_id, const wxColour& slot_color) + { + m_slot_id = slot_id; + m_slot_color = slot_color; + Refresh(); + } + + void reset_slot() + { + m_slot_id = 0; + m_slot_color = wxColour("#DDDDDD"); + Refresh(); + } + + void update_popup_slots(const std::vector& slots, const std::function& matcher) + { + m_slots_snapshot = slots; + m_matcher = matcher; + } + + wxSize DoGetBestSize() const override + { + return wxSize(FromDIP(72), FromDIP(58)); + } + +private: + void on_left_down(wxMouseEvent& e) + { + if (!m_mapping_enabled) + return; + + FlashforgeSlotDialog dlg(this, m_name); + dlg.update_slots(m_slots_snapshot, m_matcher); + m_selected = true; + Refresh(); + if (dlg.ShowModal() == wxID_OK && dlg.has_selection()) { + m_slot_id = dlg.selected_slot_id(); + m_slot_color = dlg.selected_color(); + if (m_select_fn) + m_select_fn(this); + } + m_selected = false; + Refresh(); + e.Skip(); + } + + void on_paint(wxPaintEvent&) + { + wxPaintDC dc(this); + std::unique_ptr gc(wxGraphicsContext::Create(dc)); + if (gc == nullptr) + return; + + const wxSize size = GetSize(); + const int half_h = size.y / 2; + gc->SetPen(*wxTRANSPARENT_PEN); + gc->SetBrush(wxBrush(m_color)); + gc->DrawRoundedRectangle(0, 0, size.x, half_h, FromDIP(3)); + gc->DrawRectangle(0, half_h - FromDIP(3), size.x, FromDIP(3)); + + gc->SetBrush(wxBrush(m_mapping_enabled ? m_slot_color : wxColour("#DDDDDD"))); + gc->DrawRoundedRectangle(0, half_h, size.x, half_h, FromDIP(3)); + gc->DrawRectangle(0, half_h, size.x, FromDIP(3)); + + if (m_selected) { + gc->SetPen(wxPen(wxColour("#00AE42"), FromDIP(2))); + gc->SetBrush(*wxTRANSPARENT_BRUSH); + gc->DrawRoundedRectangle(0, 0, size.x - FromDIP(1), size.y - FromDIP(1), FromDIP(3)); + } else if (m_color.GetLuminance() > 0.95 || m_slot_color.GetLuminance() > 0.95) { + gc->SetPen(wxPen(wxColour("#ACACAC"), FromDIP(1))); + gc->SetBrush(*wxTRANSPARENT_BRUSH); + gc->DrawRoundedRectangle(0, 0, size.x - FromDIP(1), size.y - FromDIP(1), FromDIP(3)); + } + + dc.SetFont(::Label::Body_13); + dc.SetTextForeground(contrasting_text_color(m_color)); + wxString top_text = m_name; + if (dc.GetTextExtent(top_text).x > size.x - FromDIP(10)) { + dc.SetFont(::Label::Body_10); + } + wxSize top_size = dc.GetTextExtent(top_text); + dc.DrawText(top_text, (size.x - top_size.x) / 2, (half_h - top_size.y) / 2); + + dc.SetFont(::Label::Body_13); + dc.SetTextForeground(contrasting_text_color(m_slot_color)); + const wxString bottom_text = m_slot_id > 0 ? wxString::Format("%d", m_slot_id) : "-"; + const wxSize bottom_size = dc.GetTextExtent(bottom_text); + dc.DrawText(bottom_text, (size.x - bottom_size.x - FromDIP(10)) / 2, half_h + (half_h - bottom_size.y) / 2); + + wxPoint pts[3] = { + wxPoint(size.x - FromDIP(18), half_h + half_h / 2 - FromDIP(2)), + wxPoint(size.x - FromDIP(10), half_h + half_h / 2 - FromDIP(2)), + wxPoint(size.x - FromDIP(14), half_h + half_h / 2 + FromDIP(3)) + }; + dc.SetBrush(wxBrush(contrasting_text_color(m_slot_color))); + dc.SetPen(*wxTRANSPARENT_PEN); + dc.DrawPolygon(3, pts); + } + +private: + int m_tool_id {-1}; + wxColour m_color; + wxString m_name; + wxColour m_slot_color {wxColour("#DDDDDD")}; + int m_slot_id {0}; + bool m_selected {false}; + bool m_mapping_enabled {true}; + SelectFn m_select_fn; + std::vector m_slots_snapshot; + std::function m_matcher; +}; + +static FlashforgeMaterialMapWidget* as_ff_map_widget(wxWindow* window) +{ + return dynamic_cast(window); +} + +} // namespace + static const char *CONFIG_KEY_PATH = "printhost_path"; static const char *CONFIG_KEY_GROUP = "printhost_group"; static const char* CONFIG_KEY_STORAGE = "printhost_storage"; @@ -257,6 +637,528 @@ void PrintHostSendDialog::EndModal(int ret) MsgDialog::EndModal(ret); } +FlashforgePrintHostSendDialog::FlashforgePrintHostSendDialog(const fs::path& path, + PrintHostPostUploadActions post_actions, + const wxArrayString& groups, + const wxArrayString& storage_paths, + const wxArrayString& storage_names, + bool switch_to_device_tab, + const Slic3r::Flashforge* host, + bool supports_material_station, + std::vector slots, + const std::vector& project_filaments) + : PrintHostSendDialog(path, post_actions, groups, storage_paths, storage_names, switch_to_device_tab) + , m_host(host) + , m_slots(std::move(slots)) + , m_project_filaments(project_filaments) +{ + m_supports_material_station = supports_material_station; + m_slots_loaded = !m_slots.empty(); +} + +void FlashforgePrintHostSendDialog::init() +{ + const AppConfig* app_config = wxGetApp().app_config; + const auto& path = m_path; + + std::string leveling = app_config->get("recent", CONFIG_KEY_LEVELING); + if (!leveling.empty()) + m_leveling_before_print = leveling == "1"; + + std::string timelapse = app_config->get("recent", CONFIG_KEY_TIMELAPSE); + if (!timelapse.empty()) + m_time_lapse_video = timelapse == "1"; + + // Flashforge local printing should default to IFS enabled when supported. + // We don't revive an old stale "0" here. + m_use_material_station = m_supports_material_station; + if (m_supports_material_station && !app_config->has("recent", CONFIG_KEY_IFS)) + const_cast(app_config)->set("recent", CONFIG_KEY_IFS, "1"); + + this->SetMinSize(wxSize(560, 420)); + + auto* label_dir_hint = new wxStaticText(this, wxID_ANY, _L("Use forward slashes ( / ) as a directory separator if needed.")); + label_dir_hint->Wrap(CONTENT_WIDTH * wxGetApp().em_unit()); + content_sizer->Add(txt_filename, 0, wxEXPAND); + content_sizer->Add(label_dir_hint); + content_sizer->AddSpacer(VERT_SPACING); + + wxString recent_path = from_u8(app_config->get("recent", CONFIG_KEY_PATH)); + if (recent_path.Length() > 0 && recent_path[recent_path.Length() - 1] != '/') + recent_path += '/'; + const auto recent_path_len = recent_path.Length(); + recent_path += path.filename().wstring(); + wxString stem(path.stem().wstring()); + const auto stem_len = stem.Length(); + txt_filename->SetValue(recent_path); + + { + auto checkbox_sizer = new wxBoxSizer(wxHORIZONTAL); + auto checkbox = new ::CheckBox(this, wxID_APPLY); + checkbox->SetValue(m_switch_to_device_tab); + checkbox->Bind(wxEVT_TOGGLEBUTTON, [this](wxCommandEvent& e) { + auto* source = dynamic_cast<::CheckBox*>(e.GetEventObject()); + if (source != nullptr) + source->SetValue(e.IsChecked()); + m_switch_to_device_tab = e.IsChecked(); + e.Skip(); + }); + checkbox_sizer->Add(checkbox, 0, wxALL | wxALIGN_CENTER, FromDIP(2)); + + auto checkbox_text = new wxStaticText(this, wxID_ANY, _L("Switch to Device tab after upload.")); + checkbox_text->SetFont(::Label::Body_13); + checkbox_text->SetForegroundColour(StateColor::darkModeColorFor(wxColour("#323A3D"))); + checkbox_sizer->Add(checkbox_text, 0, wxALL | wxALIGN_CENTER, FromDIP(2)); + content_sizer->Add(checkbox_sizer); + content_sizer->AddSpacer(VERT_SPACING); + } + + m_flashforge_options_sizer = new wxBoxSizer(wxVERTICAL); + + auto add_option_checkbox = [this](wxBoxSizer* parent, const wxString& label, bool value, std::function setter, ::CheckBox** out = nullptr) { + auto row = new wxBoxSizer(wxHORIZONTAL); + auto checkbox = new ::CheckBox(this); + checkbox->SetValue(value); + checkbox->Bind(wxEVT_TOGGLEBUTTON, [setter](wxCommandEvent& e) { + auto* source = dynamic_cast<::CheckBox*>(e.GetEventObject()); + if (source != nullptr) + source->SetValue(e.IsChecked()); + setter(e.IsChecked()); + e.Skip(); + }); + row->Add(checkbox, 0, wxALL | wxALIGN_CENTER, FromDIP(2)); + + auto text = new wxStaticText(this, wxID_ANY, label); + text->SetFont(::Label::Body_13); + text->SetForegroundColour(StateColor::darkModeColorFor(wxColour("#323A3D"))); + row->Add(text, 0, wxALL | wxALIGN_CENTER, FromDIP(2)); + parent->Add(row); + parent->AddSpacer(FromDIP(6)); + + if (out != nullptr) + *out = checkbox; + }; + + add_option_checkbox(m_flashforge_options_sizer, _L("Leveling before print"), m_leveling_before_print, + [this](bool checked) { m_leveling_before_print = checked; }, &m_checkbox_leveling); + add_option_checkbox(m_flashforge_options_sizer, _L("Time-lapse"), m_time_lapse_video, + [this](bool checked) { m_time_lapse_video = checked; }, &m_checkbox_timelapse); + add_option_checkbox(m_flashforge_options_sizer, _L("Enable IFS"), m_use_material_station, + [this](bool checked) { + m_use_material_station = checked; + if (checked) { + ensure_slots_loaded(); + rebuild_mapping_rows(); + } + sync_mapping_section_visibility(); + }, &m_checkbox_ifs); + + if (m_checkbox_ifs != nullptr && !m_supports_material_station) + m_checkbox_ifs->Enable(false); + + m_status_text = new wxStaticText(this, wxID_ANY, wxEmptyString); + m_status_text->SetFont(::Label::Body_12); + m_flashforge_options_sizer->Add(m_status_text, 0, wxTOP | wxBOTTOM, FromDIP(4)); + + m_mapping_section_sizer = new wxBoxSizer(wxVERTICAL); + m_mapping_wrap_sizer = new wxWrapSizer(wxHORIZONTAL, wxWRAPSIZER_DEFAULT_FLAGS); + m_mapping_section_sizer->Add(m_mapping_wrap_sizer, 0, wxTOP | wxALIGN_LEFT, FromDIP(10)); + m_flashforge_options_sizer->Add(m_mapping_section_sizer, 0, wxEXPAND); + + content_sizer->Add(m_flashforge_options_sizer, 0, wxEXPAND); + + if (m_supports_material_station) + m_status_text->SetLabel(wxString::Format(_L("Detected %d IFS slots on printer."), static_cast(m_slots.size()))); + else + m_status_text->SetLabel(_L("This printer does not report a material station.")); + + rebuild_mapping_rows(); + sync_mapping_section_visibility(); + + if (size_t extension_start = recent_path.find_last_of('.'); extension_start != std::string::npos) + m_valid_suffix = recent_path.substr(extension_start); + + auto validate_path = [this](const wxString& filename) -> bool { + if (!filename.Lower().EndsWith(m_valid_suffix.Lower())) { + MessageDialog msg_wingow(this, wxString::Format(_L("Upload filename doesn't end with \"%s\". Do you wish to continue?"), m_valid_suffix), + wxString(SLIC3R_APP_NAME), wxYES | wxNO); + if (msg_wingow.ShowModal() == wxID_NO) + return false; + } + return validate_before_close(); + }; + + auto* btn_ok = add_button(wxID_OK, true, _L("Upload")); + btn_ok->Bind(wxEVT_BUTTON, [this, validate_path](wxCommandEvent&) { + if (validate_path(txt_filename->GetValue())) { + post_upload_action = PrintHostPostUploadAction::None; + EndDialog(wxID_OK); + } + }); + + if (m_post_actions.has(PrintHostPostUploadAction::StartPrint)) { + auto* btn_print = add_button(wxID_YES, false, _L("Upload and Print")); + btn_print->Bind(wxEVT_BUTTON, [this, validate_path](wxCommandEvent&) { + if (validate_path(txt_filename->GetValue())) { + post_upload_action = PrintHostPostUploadAction::StartPrint; + EndDialog(wxID_OK); + } + }); + } + + add_button(wxID_CANCEL, false, _L("Cancel")); + finalize(); + txt_filename->SetFocus(); + +#ifdef __linux__ + txt_filename->Bind(wxEVT_KILL_FOCUS, [this](wxEvent& e) { + e.Skip(); + txt_filename->SetInsertionPoint(txt_filename->GetLastPosition()); + }, txt_filename->GetId()); +#endif /* __linux__ */ + + Bind(wxEVT_SHOW, [=](const wxShowEvent&) { + CallAfter([=]() { + txt_filename->SetInsertionPoint(0); + txt_filename->SetSelection(recent_path_len, recent_path_len + stem_len); + }); + }); +} + +void FlashforgePrintHostSendDialog::EndModal(int ret) +{ + if (ret == wxID_OK) { + AppConfig* app_config = wxGetApp().app_config; + app_config->set("recent", CONFIG_KEY_LEVELING, m_leveling_before_print ? "1" : "0"); + app_config->set("recent", CONFIG_KEY_TIMELAPSE, m_time_lapse_video ? "1" : "0"); + app_config->set("recent", CONFIG_KEY_IFS, m_use_material_station ? "1" : "0"); + } + + PrintHostSendDialog::EndModal(ret); +} + +std::map FlashforgePrintHostSendDialog::extendedInfo() const +{ + json mappings = json::array(); + int mapped_count = 0; + + if (m_use_material_station) { + for (const auto& row : m_mapping_rows) { + auto* card = as_ff_map_widget(row.card); + if (card == nullptr || row.tool_id < 0) + continue; + + const int slot_id = card->selected_slot_id(); + if (slot_id <= 0) + continue; + + const auto filament_it = std::find_if(m_project_filaments.begin(), m_project_filaments.end(), [&](const FilamentInfo& item) { return item.id == row.tool_id; }); + const auto slot_it = std::find_if(m_slots.begin(), m_slots.end(), [&](const FlashforgeMaterialSlot& slot) { return slot.slot_id == slot_id; }); + if (filament_it == m_project_filaments.end() || slot_it == m_slots.end()) + continue; + + mappings.push_back({ + {"toolId", filament_it->id}, + {"slotId", slot_it->slot_id}, + {"materialName", slot_it->material_name}, + {"toolMaterialColor", filament_it->color}, + {"slotMaterialColor", slot_it->material_color} + }); + ++mapped_count; + } + } + + return { + {"levelingBeforePrint", m_leveling_before_print ? "1" : "0"}, + {"timeLapseVideo", m_time_lapse_video ? "1" : "0"}, + {"useMatlStation", m_use_material_station ? "1" : "0"}, + {"gcodeToolCnt", std::to_string(mapped_count)}, + {"materialMappings", mappings.dump()} + }; +} + +void FlashforgePrintHostSendDialog::load_slots() +{ + m_slots.clear(); + m_slots_loaded = false; + m_supports_material_station = false; + + if (m_host == nullptr) { + m_status_text->SetLabel(_L("Flashforge host is not available.")); + return; + } + + wxString msg; + bool supports_material_station = false; + if (!m_host->fetch_material_slots(m_slots, &supports_material_station, msg)) { + m_status_text->SetLabel(msg.empty() ? _L("Unable to read IFS slots from printer.") : msg); + return; + } + + m_supports_material_station = supports_material_station; + m_slots_loaded = !m_slots.empty(); + m_use_material_station = m_supports_material_station; + + if (m_supports_material_station) + m_status_text->SetLabel(wxString::Format(_L("Detected %d IFS slots on printer."), static_cast(m_slots.size()))); + else + m_status_text->SetLabel(_L("This printer does not report a material station.")); +} + +bool FlashforgePrintHostSendDialog::ensure_slots_loaded(bool force_reload) +{ + if (!force_reload && (m_slots_loaded || !m_supports_material_station)) + return m_slots_loaded; + + if (m_status_text != nullptr) + m_status_text->SetLabel(_L("Loading IFS slots from printer...")); + + wxBusyCursor wait; + load_slots(); + return m_slots_loaded; +} + +void FlashforgePrintHostSendDialog::rebuild_mapping_rows() +{ + if (m_mapping_wrap_sizer == nullptr) + return; + + m_mapping_wrap_sizer->Clear(true); + m_mapping_rows.clear(); + + if (m_project_filaments.empty()) { + m_mapping_wrap_sizer->Add(new wxStaticText(this, wxID_ANY, _L("Slice the plate first to get project material information.")), 0, wxALL, FromDIP(2)); + return; + } + + for (const auto& filament : m_project_filaments) { + auto* card = new FlashforgeMaterialMapWidget(this, filament.id, to_wx_colour(filament.color), from_u8(filament.get_display_filament_type()), + [this](FlashforgeMaterialMapWidget* changed_card) { + if (changed_card == nullptr) + return; + for (auto& row : m_mapping_rows) { + if (row.card == changed_card) { + refresh_mapping_card(row); + break; + } + } + }); + m_mapping_wrap_sizer->Add(card, 0, wxRIGHT | wxBOTTOM | wxFIXED_MINSIZE, FromDIP(10)); + + MappingRow row; + row.tool_id = filament.id; + row.card = card; + m_mapping_rows.push_back(row); + } + + auto_assign_mappings(); +} + +void FlashforgePrintHostSendDialog::auto_assign_mappings() +{ + for (size_t idx = 0; idx < m_project_filaments.size() && idx < m_mapping_rows.size(); ++idx) { + auto& filament = m_project_filaments[idx]; + auto* card = as_ff_map_widget(m_mapping_rows[idx].card); + if (card == nullptr) + continue; + + const wxColour filament_color = to_wx_colour(filament.color); + const Slic3r::FlashforgeMaterialSlot* best_slot = nullptr; + long long best_distance = std::numeric_limits::max(); + + for (const auto& slot : m_slots) { + if (!slot.has_filament || !slot_matches_filament(slot, filament)) + continue; + + const long long distance = color_distance_sq(filament_color, to_wx_colour(slot.material_color)); + if (best_slot == nullptr || distance < best_distance) { + best_slot = &slot; + best_distance = distance; + } + } + + if (best_slot != nullptr) + card->set_slot_selection(best_slot->slot_id, to_wx_colour(best_slot->material_color)); + else + card->reset_slot(); + + refresh_mapping_card(m_mapping_rows[idx]); + } +} + +void FlashforgePrintHostSendDialog::refresh_mapping_card(MappingRow& row) +{ + auto* card = as_ff_map_widget(row.card); + if (card == nullptr) + return; + + const auto* filament = find_filament_by_tool_id(row.tool_id); + card->set_enable_mapping(m_use_material_station); + card->update_popup_slots(m_slots, [this, filament](const FlashforgeMaterialSlot& slot) { + return filament != nullptr && slot_matches_filament(slot, *filament); + }); + + if (card->selected_slot_id() <= 0) { + card->reset_slot(); + return; + } + + const auto* slot = find_slot_by_id(std::to_string(card->selected_slot_id())); + if (slot == nullptr) { + card->reset_slot(); + return; + } + + card->set_slot_selection(slot->slot_id, to_wx_colour(slot->material_color)); +} + +void FlashforgePrintHostSendDialog::sync_mapping_section_visibility() +{ + if (m_mapping_section_sizer == nullptr) + return; + + m_mapping_section_sizer->ShowItems(m_use_material_station && m_supports_material_station); + if (wxSizer* sizer = GetSizer(); sizer != nullptr) { + sizer->Layout(); + sizer->Fit(this); + SetMinSize(GetBestSize()); + } + Layout(); + Fit(); +} + +const Slic3r::FlashforgeMaterialSlot* FlashforgePrintHostSendDialog::find_slot_by_id(const std::string& slot_id_text) const +{ + const auto slot_it = std::find_if(m_slots.begin(), m_slots.end(), [&](const FlashforgeMaterialSlot& slot) { return std::to_string(slot.slot_id) == slot_id_text; }); + return slot_it == m_slots.end() ? nullptr : &(*slot_it); +} + +const FilamentInfo* FlashforgePrintHostSendDialog::find_filament_by_tool_id(int tool_id) const +{ + const auto filament_it = std::find_if(m_project_filaments.begin(), m_project_filaments.end(), [&](const FilamentInfo& filament) { return filament.id == tool_id; }); + return filament_it == m_project_filaments.end() ? nullptr : &(*filament_it); +} + +bool FlashforgePrintHostSendDialog::slot_matches_filament(const Slic3r::FlashforgeMaterialSlot& slot, const FilamentInfo& filament) const +{ + if (!slot.has_filament) + return false; + + const std::string project_material = normalize_material(!filament.type.empty() ? filament.type : filament.get_display_filament_type()); + const std::string slot_material = normalize_material(slot.material_name); + return !project_material.empty() && !slot_material.empty() && project_material == slot_material; +} + +bool FlashforgePrintHostSendDialog::validate_before_close() +{ + if (!m_use_material_station && m_project_filaments.size() > 1) { + show_error(this, _L("This plate uses multiple materials. Enable IFS and assign each tool to a printer slot.")); + return false; + } + + if (!m_use_material_station) + return true; + + for (const auto& row : m_mapping_rows) { + auto* card = as_ff_map_widget(row.card); + if (card == nullptr || !card->is_slot_selected()) { + show_error(this, _L("Each project material must be assigned to an IFS slot before printing.")); + return false; + } + + const auto* slot = find_slot_by_id(std::to_string(card->selected_slot_id())); + const auto* filament = find_filament_by_tool_id(row.tool_id); + if (slot == nullptr || filament == nullptr || !slot->has_filament) { + show_error(this, _L("Each project material must be assigned to a loaded IFS slot before printing.")); + return false; + } + + if (!slot_matches_filament(*slot, *filament)) { + show_error(this, _L("Each project material must match the material loaded in the selected IFS slot.")); + return false; + } + } + + return true; +} + +std::string FlashforgePrintHostSendDialog::normalize_material(const std::string& material) const +{ + std::string normalized = boost::to_upper_copy(material); + normalized.erase(std::remove_if(normalized.begin(), normalized.end(), [](unsigned char ch) { return !std::isalnum(ch); }), normalized.end()); + + if (normalized.empty()) + return {}; + + if (normalized.find("SILK") != std::string::npos) + return "SILK"; + + if (normalized.find("PLA") != std::string::npos && normalized.find("CF") != std::string::npos) + return "PLACF"; + if (normalized.find("PETG") != std::string::npos && normalized.find("CF") != std::string::npos) + return "PETGCF"; + + if (normalized == "PLA" || normalized == "PLA+" || normalized == "PLAPLUS") + return "PLA"; + if (normalized.find("PLA") != std::string::npos) + return "PLA"; + + if (normalized == "ABS" || normalized.find("ABS") != std::string::npos) + return "ABS"; + if (normalized == "ASA" || normalized.find("ASA") != std::string::npos) + return "ABS"; + + if (normalized.find("PETG") != std::string::npos) + return "PETG"; + + if (normalized.find("TPU") != std::string::npos || normalized.find("TPE") != std::string::npos || normalized.find("FLEX") != std::string::npos) + return "TPU"; + + return normalized; +} + +wxColour FlashforgePrintHostSendDialog::to_wx_colour(const std::string& color) const +{ + wxColour wx_color(from_u8(color)); + if (wx_color.IsOk()) + return wx_color; + + std::string normalized = boost::trim_copy(color); + if (boost::istarts_with(normalized, "0x")) + normalized = normalized.substr(2); + if (!normalized.empty() && normalized.front() == '#') + normalized.erase(normalized.begin()); + + if (normalized.size() == 8) { + auto hex_to_byte = [](char hi, char lo) -> int { + auto hex_val = [](char c) -> int { + if (c >= '0' && c <= '9') return c - '0'; + if (c >= 'a' && c <= 'f') return c - 'a' + 10; + if (c >= 'A' && c <= 'F') return c - 'A' + 10; + return -1; + }; + const int h = hex_val(hi); + const int l = hex_val(lo); + return (h < 0 || l < 0) ? -1 : h * 16 + l; + }; + + const int r = hex_to_byte(normalized[0], normalized[1]); + const int g = hex_to_byte(normalized[2], normalized[3]); + const int b = hex_to_byte(normalized[4], normalized[5]); + const int a = hex_to_byte(normalized[6], normalized[7]); + if (r >= 0 && g >= 0 && b >= 0 && a >= 0) + return wxColour(r, g, b, a); + } + + if (normalized.size() == 6) { + wx_color = wxColour("#" + from_u8(normalized)); + if (wx_color.IsOk()) + return wx_color; + } + + return wxColour("#999999"); +} + wxDEFINE_EVENT(EVT_PRINTHOST_PROGRESS, PrintHostQueueDialog::Event); wxDEFINE_EVENT(EVT_PRINTHOST_ERROR, PrintHostQueueDialog::Event); wxDEFINE_EVENT(EVT_PRINTHOST_CANCEL, PrintHostQueueDialog::Event); diff --git a/src/slic3r/GUI/PrintHostDialogs.hpp b/src/slic3r/GUI/PrintHostDialogs.hpp index e648537ccba..cc4670f5141 100644 --- a/src/slic3r/GUI/PrintHostDialogs.hpp +++ b/src/slic3r/GUI/PrintHostDialogs.hpp @@ -1,8 +1,8 @@ #ifndef slic3r_PrintHostSendDialog_hpp_ #define slic3r_PrintHostSendDialog_hpp_ -#include #include +#include #include #include @@ -12,12 +12,18 @@ #include "GUI_Utils.hpp" #include "MsgDialog.hpp" #include "../Utils/PrintHost.hpp" +#include "../Utils/Flashforge.hpp" #include "libslic3r/PrintConfig.hpp" +#include "libslic3r/ProjectTask.hpp" class wxButton; class wxTextCtrl; -class wxChoice; class wxComboBox; +class ComboBox; class wxDataViewListCtrl; +class wxFlexGridSizer; +class wxStaticText; +class wxWrapSizer; +class CheckBox; namespace Slic3r { @@ -180,6 +186,66 @@ private: BedType m_BedType; }; +class FlashforgePrintHostSendDialog : public PrintHostSendDialog +{ +public: + FlashforgePrintHostSendDialog(const boost::filesystem::path& path, + PrintHostPostUploadActions post_actions, + const wxArrayString& groups, + const wxArrayString& storage_paths, + const wxArrayString& storage_names, + bool switch_to_device_tab, + const Slic3r::Flashforge* host, + bool supports_material_station, + std::vector slots, + const std::vector& project_filaments); + + virtual void init() override; + virtual void EndModal(int ret) override; + virtual std::map extendedInfo() const override; + +private: + struct MappingRow { + int tool_id {-1}; + wxWindow* card {nullptr}; + }; + + void load_slots(); + bool ensure_slots_loaded(bool force_reload = false); + void rebuild_mapping_rows(); + void auto_assign_mappings(); + void refresh_mapping_card(MappingRow& row); + void sync_mapping_section_visibility(); + const Slic3r::FlashforgeMaterialSlot* find_slot_by_id(const std::string& slot_id_text) const; + const FilamentInfo* find_filament_by_tool_id(int tool_id) const; + bool slot_matches_filament(const Slic3r::FlashforgeMaterialSlot& slot, const FilamentInfo& filament) const; + bool validate_before_close(); + std::string normalize_material(const std::string& material) const; + wxColour to_wx_colour(const std::string& color) const; + +private: + const Slic3r::Flashforge* m_host {nullptr}; + std::vector m_project_filaments; + std::vector m_slots; + std::vector m_mapping_rows; + wxBoxSizer* m_flashforge_options_sizer {nullptr}; + wxBoxSizer* m_mapping_section_sizer {nullptr}; + wxWrapSizer* m_mapping_wrap_sizer {nullptr}; + wxStaticText* m_status_text {nullptr}; + ::CheckBox* m_checkbox_leveling {nullptr}; + ::CheckBox* m_checkbox_timelapse {nullptr}; + ::CheckBox* m_checkbox_ifs {nullptr}; + bool m_leveling_before_print {true}; + bool m_time_lapse_video {false}; + bool m_use_material_station {false}; + bool m_supports_material_station {false}; + bool m_slots_loaded {false}; + + const char* CONFIG_KEY_LEVELING = "flashforge_leveling_before_print"; + const char* CONFIG_KEY_TIMELAPSE = "flashforge_timelapse_video"; + const char* CONFIG_KEY_IFS = "flashforge_use_material_station"; +}; + wxDECLARE_EVENT(EVT_PRINTHOST_PROGRESS, PrintHostQueueDialog::Event); wxDECLARE_EVENT(EVT_PRINTHOST_ERROR, PrintHostQueueDialog::Event); wxDECLARE_EVENT(EVT_PRINTHOST_CANCEL, PrintHostQueueDialog::Event); diff --git a/src/slic3r/GUI/PrinterWebView.cpp b/src/slic3r/GUI/PrinterWebView.cpp index 6c20e98ce64..201f1b09e92 100644 --- a/src/slic3r/GUI/PrinterWebView.cpp +++ b/src/slic3r/GUI/PrinterWebView.cpp @@ -242,6 +242,14 @@ void PrinterWebView::SendAPIKey() )", m_apikey); m_browser->RemoveAllUserScripts(); + +#ifdef _WIN32 + // RemoveAllUserScripts causes WebView2 to forget about our script message handler, + // so re-add it here. + m_browser->RemoveScriptMessageHandler("wx"); + m_browser->AddScriptMessageHandler("wx"); +#endif + #ifdef __linux__ // Re-inject the vue-resize/WebKitGTK workaround that RemoveAllUserScripts just cleared. inject_vue_resize_workaround(m_browser); diff --git a/src/slic3r/GUI/PrinterWebViewHandler.cpp b/src/slic3r/GUI/PrinterWebViewHandler.cpp index 16d63795dbc..165d7c16dd2 100644 --- a/src/slic3r/GUI/PrinterWebViewHandler.cpp +++ b/src/slic3r/GUI/PrinterWebViewHandler.cpp @@ -98,8 +98,6 @@ public: stop_upload = true; if (upload_thread.joinable()) upload_thread.join(); - if (sn_thread.joinable()) - sn_thread.join(); } void on_script_message(wxWebViewEvent &evt) override @@ -287,35 +285,21 @@ private: void handle_get_sn_request(const std::string& request_id, const std::string& method) { - if (sn_request_in_progress.exchange(true)) { - send_ipc_message("response", request_id, method, 1, "SN request already in progress"); - return; + // Panel always calls get_sn with a 10s IPC timeout. Answer immediately from + // dev_sn / cache — do not spawn a thread or perform HTTP (panel uses URL sn on miss). + std::string sn; + if (DynamicPrintConfig* config = get_active_printer_config()) { + const std::unique_ptr host(PrintHost::get_print_host(config)); + if (host) + sn = host->get_sn(); } - - if (sn_thread.joinable()) - sn_thread.join(); - - sn_thread = std::thread([this, request_id, method]() { - std::string sn; - - DynamicPrintConfig* config = get_active_printer_config(); - std::unique_ptr print_host(config == nullptr ? nullptr : PrintHost::get_print_host(config)); - if (print_host != nullptr) - sn = print_host->get_sn(); - - sn_request_in_progress = false; - json data = { - {"sn", sn} - }; - send_ipc_message("response", request_id, method, 0, "success", dump_json(data)); - }); + json data = { { "sn", sn } }; + send_ipc_message("response", request_id, method, 0, "success", dump_json(data)); } std::atomic upload_in_progress { false }; - std::atomic sn_request_in_progress { false }; std::atomic stop_upload { false }; std::thread upload_thread; - std::thread sn_thread; }; } // namespace diff --git a/src/slic3r/GUI/SyncAmsInfoDialog.cpp b/src/slic3r/GUI/SyncAmsInfoDialog.cpp index ca373d4e168..582c220c2f8 100644 --- a/src/slic3r/GUI/SyncAmsInfoDialog.cpp +++ b/src/slic3r/GUI/SyncAmsInfoDialog.cpp @@ -1912,58 +1912,6 @@ bool SyncAmsInfoDialog::is_blocking_printing(MachineObject *obj_) return false; } -bool SyncAmsInfoDialog::is_same_nozzle_diameters(NozzleType &tag_nozzle_type, float &nozzle_diameter) -{ - bool is_same_nozzle_diameters = true; - - float preset_nozzle_diameters; - std::string preset_nozzle_type; - - DeviceManager *dev = Slic3r::GUI::wxGetApp().getDeviceManager(); - if (!dev) return true; - - MachineObject *obj_ = dev->get_selected_machine(); - if (obj_ == nullptr) return true; - - try { - PresetBundle *preset_bundle = wxGetApp().preset_bundle; - auto opt_nozzle_diameters = preset_bundle->printers.get_edited_preset().config.option("nozzle_diameter"); - - const ConfigOptionEnumsGenericNullable *nozzle_type = preset_bundle->printers.get_edited_preset().config.option("nozzle_type"); - std::vector preset_nozzle_types(nozzle_type->size()); - for (size_t idx = 0; idx < nozzle_type->size(); ++idx) preset_nozzle_types[idx] = NozzleTypeEumnToStr[NozzleType(nozzle_type->values[idx])]; - - std::vector machine_nozzle_types(obj_->GetExtderSystem()->GetTotalExtderCount()); - for (size_t idx = 0; idx < obj_->GetExtderSystem()->GetTotalExtderCount(); ++idx) machine_nozzle_types[idx] = obj_->GetExtderSystem()->GetNozzleType(idx); - - auto used_filaments = wxGetApp().plater()->get_partplate_list().get_curr_plate()->get_used_filaments(); // 1 based - auto filament_maps = wxGetApp().plater()->get_partplate_list().get_curr_plate()->get_real_filament_maps(preset_bundle->project_config); // 1 based - - std::vector used_extruders; // 0 based - for (auto f : used_filaments) { - int filament_extruder = filament_maps[f - 1] - 1; - if (std::find(used_extruders.begin(), used_extruders.end(), filament_extruder) == used_extruders.end()) used_extruders.emplace_back(filament_extruder); - } - std::sort(used_extruders.begin(), used_extruders.end()); - - // TODO [tao wang] : add idx mapping - tag_nozzle_type = obj_->GetExtderSystem()->GetNozzleType(0); - - if (opt_nozzle_diameters != nullptr) { - for (auto i = 0; i < used_extruders.size(); i++) { - auto extruder = used_extruders[i]; - preset_nozzle_diameters = float(opt_nozzle_diameters->get_at(extruder)); - if (preset_nozzle_diameters != obj_->GetExtderSystem()->GetNozzleDiameter(0)) { is_same_nozzle_diameters = false; } - } - } - - } catch (...) {} - - nozzle_diameter = preset_nozzle_diameters; - - return is_same_nozzle_diameters; -} - bool SyncAmsInfoDialog::is_same_nozzle_type(std::string &filament_type, NozzleType &tag_nozzle_type) { bool is_same_nozzle_type = true; diff --git a/src/slic3r/GUI/SyncAmsInfoDialog.hpp b/src/slic3r/GUI/SyncAmsInfoDialog.hpp index 061e0e777f0..6cacff0af17 100644 --- a/src/slic3r/GUI/SyncAmsInfoDialog.hpp +++ b/src/slic3r/GUI/SyncAmsInfoDialog.hpp @@ -203,7 +203,6 @@ public: void update_timelapse_enable_status(); bool is_same_printer_model(); bool is_blocking_printing(MachineObject *obj_); - bool is_same_nozzle_diameters(NozzleType &tag_nozzle_type, float &nozzle_diameter); bool is_same_nozzle_type(std::string &filament_type, NozzleType &tag_nozzle_type); bool is_timeout(); int update_print_required_data(Slic3r::DynamicPrintConfig config, Slic3r::Model model, Slic3r::PlateDataPtrs plate_data_list, std::string file_name, std::string file_path); diff --git a/src/slic3r/GUI/Tab.cpp b/src/slic3r/GUI/Tab.cpp index e80ba82e53a..0e8a4eb9872 100644 --- a/src/slic3r/GUI/Tab.cpp +++ b/src/slic3r/GUI/Tab.cpp @@ -1935,6 +1935,26 @@ void Tab::on_value_change(const std::string& opt_key, const boost::any& value) } } + if (opt_key == "parallel_printheads_count" || opt_key == "parallel_printheads_bed_exclude_areas") { + if (m_config->opt_bool("support_parallel_printheads")) { + const int count = opt_key == "parallel_printheads_count" ? boost::any_cast(value) : m_config->opt_int("parallel_printheads_count"); + if (auto *field = this->get_field("bed_exclude_area")) { + wxString exclude_area; + if (count > 0) { + if (const auto *areas = m_config->option("parallel_printheads_bed_exclude_areas"); + areas != nullptr) { + const size_t index = static_cast(count - 1); + if (index < areas->values.size()) + exclude_area = wxString::FromUTF8(areas->values[index]); + } + } + + field->set_value(exclude_area, true); + field->propagate_value(); + } + } + } + if (m_postpone_update_ui) { // It means that not all values are rolled to the system/last saved values jet. // And call of the update() can causes a redundant check of the config values, @@ -2448,7 +2468,7 @@ void TabPrint::build() optgroup->append_single_option_line("sparse_infill_density", "strength_settings_infill#sparse-infill-density"); optgroup->append_single_option_line("fill_multiline", "strength_settings_infill#fill-multiline"); optgroup->append_single_option_line("sparse_infill_pattern", "strength_settings_infill#sparse-infill-pattern"); - optgroup->append_single_option_line("gyroid_optimized", "strength_settings_patterns#gyroid_optimized"); + optgroup->append_single_option_line("gyroid_optimized", "strength_settings_patterns#gyroid-optimized"); optgroup->append_single_option_line("infill_direction", "strength_settings_infill#direction"); optgroup->append_single_option_line("sparse_infill_rotate_template", "strength_settings_infill_rotation_template_metalanguage"); optgroup->append_single_option_line("skin_infill_density", "strength_settings_patterns#locked-zag"); @@ -2462,6 +2482,9 @@ void TabPrint::build() optgroup->append_single_option_line("lateral_lattice_angle_1", "strength_settings_patterns#lateral-lattice"); optgroup->append_single_option_line("lateral_lattice_angle_2", "strength_settings_patterns#lateral-lattice"); optgroup->append_single_option_line("infill_overhang_angle", "strength_settings_patterns#lateral-honeycomb"); + optgroup->append_single_option_line("lightning_overhang_angle", "strength_settings_patterns#lightning-infill"); + optgroup->append_single_option_line("lightning_prune_angle", "strength_settings_patterns#lightning-infill"); + optgroup->append_single_option_line("lightning_straightening_angle", "strength_settings_patterns#lightning-infill"); optgroup->append_single_option_line("infill_anchor_max", "strength_settings_infill#anchor"); optgroup->append_single_option_line("infill_anchor", "strength_settings_infill#anchor"); optgroup->append_single_option_line("internal_solid_infill_pattern", "strength_settings_infill#internal-solid-infill"); @@ -4429,6 +4452,7 @@ void TabPrinter::build_fff() create_line_with_widget(optgroup.get(), "printable_area", "custom-svg-and-png-bed-textures_124612", [this](wxWindow* parent) { return create_bed_shape_widget(parent); }); + optgroup->append_single_option_line("parallel_printheads_count"); Option option = optgroup->get_option("bed_exclude_area"); option.opt.full_width = true; optgroup->append_single_option_line(option, "printer_basic_information_printable_space#excluded-bed-area"); @@ -5409,6 +5433,7 @@ void TabPrinter::toggle_options() // toggle_option("change_filament_gcode", have_multiple_extruders); //} if (m_active_page->title() == L("Basic information")) { + const auto &printer_cfg = m_preset_bundle->printers.get_edited_preset().config; // SoftFever: hide BBL specific settings for (auto el : {"scan_first_layer", "bbl_calib_mark_logo", "bbl_use_printhost"}) @@ -5420,6 +5445,9 @@ void TabPrinter::toggle_options() auto gcf = m_config->option>("gcode_flavor")->value; toggle_line("enable_power_loss_recovery", is_BBL_printer || gcf == gcfMarlinFirmware); + + const bool support_parallel_printheads = printer_cfg.opt_bool("support_parallel_printheads"); + toggle_line("parallel_printheads_count", support_parallel_printheads); } @@ -5498,7 +5526,7 @@ void TabPrinter::toggle_options() // some options only apply when not using firmware retraction vec.resize(0); vec = {"retraction_speed", "deretraction_speed", "retract_before_wipe", - "retract_length", "retract_restart_extra", "wipe", + "retract_length", "retract_restart_extra", "wipe_distance"}; for (auto el : vec) //BBS @@ -5506,20 +5534,25 @@ void TabPrinter::toggle_options() bool wipe = retraction && m_config->opt_bool("wipe", variant_index); toggle_option("retract_before_wipe", wipe, i); + float retract_before_wipe = static_cast(m_config->option("retract_before_wipe"))->values[variant_index]; - if (use_firmware_retraction && wipe) { + if (use_firmware_retraction && wipe && retract_before_wipe < 100.0) { //wxMessageDialog dialog(parent(), MessageDialog dialog(parent(), - _(L("The Wipe option is not available when using the Firmware Retraction mode.\n" - "\nShall I disable it in order to enable Firmware Retraction?")), + _(L("The Retract before wipe option could be only 100% when using the Firmware Retraction mode.\n" + "\nShall I set it to 100% in order to enable Firmware Retraction?")), _(L("Firmware Retraction")), wxICON_WARNING | wxYES | wxNO); DynamicPrintConfig new_conf = *m_config; if (dialog.ShowModal() == wxID_YES) { auto wipe = static_cast(m_config->option("wipe")->clone()); - for (size_t w = 0; w < wipe->values.size(); w++) + auto retract_before_wipe = static_cast(m_config->option("retract_before_wipe")->clone()); + for (size_t w = 0; w < wipe->values.size(); w++) { wipe->values[w] = false; + retract_before_wipe->values[w] = 100.0; + } new_conf.set_key_value("wipe", wipe); + new_conf.set_key_value("retract_before_wipe", retract_before_wipe); } else { new_conf.set_key_value("use_firmware_retraction", new ConfigOptionBool(false)); diff --git a/src/slic3r/GUI/WebUserLoginDialog.cpp b/src/slic3r/GUI/WebUserLoginDialog.cpp index 2a9b4cb9849..4b8acc94559 100644 --- a/src/slic3r/GUI/WebUserLoginDialog.cpp +++ b/src/slic3r/GUI/WebUserLoginDialog.cpp @@ -177,11 +177,7 @@ ZUserLogin::ZUserLogin(std::shared_ptr cloud_agent) wxSize pSize = FromDIP(wxSize(650, 840)); SetSize(pSize); - int screenheight = wxSystemSettings::GetMetric(wxSYS_SCREEN_Y, NULL); - int screenwidth = wxSystemSettings::GetMetric(wxSYS_SCREEN_X, NULL); - int MaxY = (screenheight - pSize.y) > 0 ? (screenheight - pSize.y) / 2 : 0; - wxPoint tmpPT((screenwidth - pSize.x) / 2, MaxY); - Move(tmpPT); + CentreOnParent(); } wxGetApp().UpdateDlgDarkUI(this); } diff --git a/src/slic3r/GUI/WebViewDialog.cpp b/src/slic3r/GUI/WebViewDialog.cpp index 2a88277680f..20ed70e799c 100644 --- a/src/slic3r/GUI/WebViewDialog.cpp +++ b/src/slic3r/GUI/WebViewDialog.cpp @@ -526,7 +526,7 @@ void WebViewPanel::SendCloudProvidersInfo() json data; json provider_array = json::array(); - if (!app_config->get_stealth_mode()) { + if (!app_config->get_hide_login_side_panel()) { auto providers = app_config->get_cloud_providers(); for (const auto& p : providers) { provider_array.push_back(p); diff --git a/src/slic3r/Utils/BBLCloudServiceAgent.cpp b/src/slic3r/Utils/BBLCloudServiceAgent.cpp index 2c17d117fcf..846e4ce5094 100644 --- a/src/slic3r/Utils/BBLCloudServiceAgent.cpp +++ b/src/slic3r/Utils/BBLCloudServiceAgent.cpp @@ -433,7 +433,7 @@ std::string BBLCloudServiceAgent::request_setting_id(std::string name, std::map< return ""; } -int BBLCloudServiceAgent::put_setting(std::string setting_id, std::string name, std::map* values_map, unsigned int* http_code) +int BBLCloudServiceAgent::put_setting(std::string setting_id, std::string name, std::map* values_map, unsigned int* http_code, bool force) { auto& plugin = BBLNetworkPlugin::instance(); auto agent = plugin.get_agent(); diff --git a/src/slic3r/Utils/BBLCloudServiceAgent.hpp b/src/slic3r/Utils/BBLCloudServiceAgent.hpp index b48a65b76c7..9f03f0b8399 100644 --- a/src/slic3r/Utils/BBLCloudServiceAgent.hpp +++ b/src/slic3r/Utils/BBLCloudServiceAgent.hpp @@ -70,7 +70,7 @@ public: // Settings Synchronization int get_user_presets(std::map>* user_presets) override; std::string request_setting_id(std::string name, std::map* values_map, unsigned int* http_code) override; - int put_setting(std::string setting_id, std::string name, std::map* values_map, unsigned int* http_code) override; + int put_setting(std::string setting_id, std::string name, std::map* values_map, unsigned int* http_code, bool force = false) override; int get_setting_list(std::string bundle_version, ProgressFn pro_fn = nullptr, WasCancelledFn cancel_fn = nullptr) override; int get_setting_list2(std::string bundle_version, CheckFn chk_fn, ProgressFn pro_fn = nullptr, WasCancelledFn cancel_fn = nullptr) override; int delete_setting(std::string setting_id) override; diff --git a/src/slic3r/Utils/CalibUtils.hpp b/src/slic3r/Utils/CalibUtils.hpp index e59bbf68eca..b9375b72865 100644 --- a/src/slic3r/Utils/CalibUtils.hpp +++ b/src/slic3r/Utils/CalibUtils.hpp @@ -20,7 +20,7 @@ public: int extruder_id = 0; int ams_id = 0; int slot_id = 0; - float nozzle_diameter; + float nozzle_diameter = 0.0f; ExtruderType extruder_type{ExtruderType::etDirectDrive}; NozzleVolumeType nozzle_volume_type; Calib_Params params; diff --git a/src/slic3r/Utils/ElegooLink.cpp b/src/slic3r/Utils/ElegooLink.cpp index 90bbe652265..cf80d29dc86 100644 --- a/src/slic3r/Utils/ElegooLink.cpp +++ b/src/slic3r/Utils/ElegooLink.cpp @@ -1,6 +1,8 @@ #include "ElegooLink.hpp" #include +#include +#include #include #include #include @@ -60,6 +62,52 @@ namespace Slic3r { namespace { constexpr const char* ELEGOO_CC2_DEFAULT_TOKEN = "123456"; + // AppConfig section for CC2 serial numbers, keyed by normalized print_host (host/IP). + constexpr const char* ELEGOO_DEV_SN_SECTION = "dev_sn"; + + static std::mutex s_sn_cache_mutex; + static std::map s_sn_cache; + + std::string sn_cache_key(const std::string& host_ip, const std::string& token) + { + return host_ip + ":" + token; + } + + void cache_sn(const std::string& host_ip, const std::string& token, const std::string& sn) + { + if (host_ip.empty() || token.empty() || sn.empty()) + return; + std::lock_guard lock(s_sn_cache_mutex); + s_sn_cache[sn_cache_key(host_ip, token)] = sn; + } + + std::string lookup_sn(const std::string& host_ip, const std::string& token) + { + std::lock_guard lock(s_sn_cache_mutex); + auto it = s_sn_cache.find(sn_cache_key(host_ip, token)); + return it != s_sn_cache.end() ? it->second : std::string{}; + } + + std::string load_sn_from_config(const std::string& host_ip) + { + if (host_ip.empty()) + return {}; + AppConfig* app_cfg = GUI::get_app_config(); + if (app_cfg == nullptr) + return {}; + return app_cfg->get(ELEGOO_DEV_SN_SECTION, host_ip); + } + + void persist_sn(const std::string& host_ip, const std::string& token, const std::string& sn) + { + if (host_ip.empty() || sn.empty()) + return; + cache_sn(host_ip, token, sn); + AppConfig* app_cfg = GUI::get_app_config(); + if (app_cfg == nullptr) + return; + app_cfg->set_str(ELEGOO_DEV_SN_SECTION, host_ip, sn); + } enum class ElegooPrinterType { Other, @@ -193,6 +241,30 @@ namespace Slic3r { return out; } + std::string lookup_cc2_serial_impl(const std::string& printer_model, + const std::string& print_host, + const std::string& apikey) + { + if (classify_printer_model(printer_model) != ElegooPrinterType::CC2) + return {}; + + const std::string host_ip = get_host_from_url(print_host); + const std::string token = get_cc2_token(apikey); + std::string sn = lookup_sn(host_ip, token); + if (sn.empty()) + sn = load_sn_from_config(host_ip); + return sn; + } + + std::string lookup_cc2_serial(DynamicPrintConfig* config) + { + if (config == nullptr) + return {}; + return lookup_cc2_serial_impl(config->opt_string("printer_model"), + config->opt_string("print_host"), + config->opt_string("printhost_apikey")); + } + #ifdef WIN32 // Workaround for Windows 10/11 mDNS resolve issue, where two mDNS resolves in succession fail. std::string substitute_host(const std::string& orig_addr, std::string sub_addr) @@ -336,8 +408,30 @@ namespace Slic3r { std::string web_path = resources_dir() + "/plugins/elegoolink/web/lan_service_web/index.html"; std::replace(web_path.begin(), web_path.end(), '\\', '/'); web_path = "file://" + web_path; - web_path += "?access_code=" + get_cc2_token(config->opt_string("printhost_apikey")); - web_path += "&ip=" + get_host_from_url(host) + "&id=elegoo_123456"; + + const std::string token = get_cc2_token(config->opt_string("printhost_apikey")); + const std::string host_ip = get_host_from_url(host); + + // Pass sn= so the panel can subscribe to the correct MQTT topics. + std::string sn = lookup_cc2_serial(config); + if (sn.empty()) { + std::string error_msg; + auto http = Http::get("http://" + host_ip + "/system/info?X-Token=" + escape_string(token)); + http.timeout_connect(3).timeout_max(5); + http.header("X-Token", token); + http.header("Accept", "application/json"); + http.on_complete([&](std::string body, unsigned /*status*/) { + parse_cc2_response(body, error_msg, &sn); + }).perform_sync(); + if (!sn.empty()) + persist_sn(host_ip, token, sn); + } + + web_path += "?access_code=" + token; + web_path += "&ip=" + host_ip; + if (!sn.empty()) + web_path += "&sn=" + sn; + web_path += "&id=elegoo_123456"; const std::string lang = GUI::wxGetApp().current_language_code_safe().utf8_string(); if (!lang.empty()) @@ -376,33 +470,9 @@ namespace Slic3r { std::string ElegooLink::get_sn() const { - if (classify_printer_model(m_printerModel) != ElegooPrinterType::CC2) - return ""; - - const char* name = get_name(); - std::string sn; - const auto token = cc2_token(); - auto http = Http::get(make_cc2_info_url()); - http.timeout_connect(10) - .timeout_max(15); - http.header("X-Token", token); - http.header("Accept", "application/json"); - http.on_error([&](std::string body, std::string error, unsigned status) { - BOOST_LOG_TRIVIAL(error) << boost::format("%1%: Error getting CC2 device info for SN: %2%, HTTP %3%, body: `%4%`") % name % error % status % body; - }) - .on_complete([&](std::string body, unsigned status) { - std::string error_message; - if (!parse_cc2_response(body, error_message, &sn)) { - BOOST_LOG_TRIVIAL(warning) << boost::format("%1%: Failed to parse CC2 SN response, HTTP %2%, reason: %3%") % name % status % error_message; - sn.clear(); - } - }) -#ifdef WIN32 - .ssl_revoke_best_effort(m_ssl_revoke_best_effort) -#endif // WIN32 - .perform_sync(); - - return sn; + // Panel IPC calls this on every load with a 10s timeout. Never block on HTTP + // here — URL sn= and dev_sn must be enough; HTTP is only for get_print_host_webui. + return lookup_cc2_serial_impl(m_printerModel, m_host, m_apikey); } bool ElegooLink::elegoo_test(wxString& msg) const{ @@ -481,6 +551,7 @@ namespace Slic3r { msg = format_error(body, error_message.empty() ? "CC2 device not detected" : error_message, status); return; } + persist_sn(get_host_from_url(m_host), token, serial_number); res = true; }) #ifdef WIN32 diff --git a/src/slic3r/Utils/Flashforge.cpp b/src/slic3r/Utils/Flashforge.cpp index 6fe3a830834..88b3eb3f694 100644 --- a/src/slic3r/Utils/Flashforge.cpp +++ b/src/slic3r/Utils/Flashforge.cpp @@ -1,8 +1,13 @@ #include "Flashforge.hpp" #include +#include #include #include #include +#include +#include +#include +#include #include #include #include @@ -19,6 +24,10 @@ #include #include +#include +#include +#include + #include "libslic3r/PrintConfig.hpp" #include "slic3r/GUI/GUI.hpp" #include "slic3r/GUI/I18N.hpp" @@ -30,20 +39,298 @@ namespace fs = boost::filesystem; namespace pt = boost::property_tree; +using json = nlohmann::json; namespace Slic3r { +namespace { + +constexpr unsigned short FLASHFORGE_DISCOVERY_PORT = 48899; +constexpr unsigned short FLASHFORGE_DISCOVERY_LISTEN_PORT = 18007; + +const std::array FLASHFORGE_DISCOVERY_MESSAGE = { + 0x77, 0x77, 0x77, 0x2e, 0x75, 0x73, 0x72, 0x22, + 0x65, 0x36, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00 +}; + +std::string trim_null_terminated_ascii(const char* data, size_t len) +{ + std::string out(data, data + len); + const auto pos = out.find('\0'); + if (pos != std::string::npos) + out.resize(pos); + boost::trim(out); + return out; +} + +bool parse_discovery_response(const std::vector& response, const std::string& ip_address, FlashforgeDiscoveredPrinter& printer) +{ + if (response.size() < 0xC4) + return false; + + printer.name = trim_null_terminated_ascii(reinterpret_cast(response.data()), 32); + printer.serial_number = trim_null_terminated_ascii(reinterpret_cast(response.data() + 0x92), 32); + printer.ip_address = ip_address; + return !(printer.name.empty() && printer.serial_number.empty()); +} + +std::vector get_discovery_broadcast_addresses() +{ + std::set addresses = {"255.255.255.255", "192.168.0.255", "192.168.1.255"}; + + try { + boost::asio::io_context io_context; + boost::asio::ip::tcp::resolver resolver(io_context); + boost::system::error_code ec; + const auto host_name = boost::asio::ip::host_name(ec); + if (!ec) { + const auto results = resolver.resolve(boost::asio::ip::tcp::v4(), host_name, "", ec); + if (!ec) { + for (const auto& entry : results) { + const auto addr = entry.endpoint().address(); + if (!addr.is_v4()) + continue; + + const auto bytes = addr.to_v4().to_bytes(); + if (bytes[0] == 127) + continue; + + addresses.insert((boost::format("%1%.%2%.%3%.255") % static_cast(bytes[0]) % static_cast(bytes[1]) % static_cast(bytes[2])).str()); + } + } + } + } catch (...) { + } + + return {addresses.begin(), addresses.end()}; +} + +std::string safe_config_string(DynamicPrintConfig* config, const char* key) +{ + if (config == nullptr) + return {}; + + if (const auto* opt = config->option(key); opt != nullptr) + return opt->value; + + return {}; +} + +bool try_parse_json_int(const json& value, int& out) +{ + try { + if (value.is_number_integer() || value.is_number_unsigned()) { + out = value.get(); + return true; + } + + if (value.is_boolean()) { + out = value.get() ? 1 : 0; + return true; + } + + if (value.is_string()) { + std::string text = value.get(); + boost::trim(text); + if (text.empty()) + return false; + + size_t pos = 0; + const long parsed = std::stol(text, &pos, 10); + if (pos == text.size()) { + out = static_cast(parsed); + return true; + } + } + } catch (...) { + } + + return false; +} + +bool validate_local_api_response(const std::string& response_body, wxString& error_msg) +{ + const auto parsed = json::parse(response_body, nullptr, false, true); + if (parsed.is_discarded() || !parsed.is_object()) { + error_msg = _(L("Flashforge returned an invalid JSON response.")); + return false; + } + + int result_code = 0; + bool has_code = false; + + if (parsed.contains("code")) + has_code = try_parse_json_int(parsed["code"], result_code); + if (!has_code && parsed.contains("err")) + has_code = try_parse_json_int(parsed["err"], result_code); + + if (has_code && result_code != 0) { + std::string message; + if (parsed.contains("message") && parsed["message"].is_string()) + message = parsed["message"].get(); + else if (parsed.contains("msg") && parsed["msg"].is_string()) + message = parsed["msg"].get(); + + if (message.empty()) + message = "Request failed"; + + error_msg = GUI::from_u8((boost::format("Flashforge local API error %1%: %2%") % result_code % message).str()); + return false; + } + + return true; +} + +std::string sanitize_flashforge_filename(const std::string& filename, const std::string& fallback_extension = {}) +{ + std::string basename = fs::path(filename).filename().string(); + if (basename.empty()) { + basename = "print"; + if (!fallback_extension.empty()) + basename += fallback_extension; + } + + for (char& ch : basename) { + const bool is_ascii_alnum = (ch >= '0' && ch <= '9') || (ch >= 'A' && ch <= 'Z') || (ch >= 'a' && ch <= 'z'); + if (!is_ascii_alnum && ch != '.' && ch != '_' && ch != '-') { + ch = '_'; + } + } + + return basename; +} + +} // namespace + Flashforge::Flashforge(DynamicPrintConfig* config) - : m_host(config->opt_string("print_host")) + : m_host() + , m_serial_number() + , m_check_code() , m_console_port("8899") - , m_gcFlavor(config->option>("gcode_flavor")->value) + , m_gcFlavor(gcfMarlinLegacy) , m_bufferSize(4096) // 4K buffer size -{} +{ + m_host = safe_config_string(config, "print_host"); + m_serial_number = safe_config_string(config, "flashforge_serial_number"); + m_check_code = safe_config_string(config, "printhost_apikey"); + + if (config != nullptr) { + if (const auto* gcode_flavor = config->option>("gcode_flavor"); gcode_flavor != nullptr) + m_gcFlavor = gcode_flavor->value; + } +} const char* Flashforge::get_name() const { return "Flashforge"; } +bool Flashforge::discover_printers(std::vector& printers, wxString& msg, int timeout_ms, int idle_timeout_ms, int max_retries) +{ + printers.clear(); + + try { + const auto broadcast_addresses = get_discovery_broadcast_addresses(); + std::map by_ip; + + for (int attempt = 0; attempt < std::max(1, max_retries); ++attempt) { + boost::asio::io_context io_context; + boost::asio::ip::udp::socket socket(io_context); + boost::system::error_code ec; + + socket.open(boost::asio::ip::udp::v4(), ec); + if (ec) { + msg = wxString::FromUTF8(ec.message().c_str()); + return false; + } + + socket.set_option(boost::asio::socket_base::broadcast(true), ec); + if (ec) { + msg = wxString::FromUTF8(ec.message().c_str()); + return false; + } + + socket.set_option(boost::asio::socket_base::reuse_address(true), ec); + if (ec) { + msg = wxString::FromUTF8(ec.message().c_str()); + return false; + } + + socket.bind({boost::asio::ip::udp::v4(), FLASHFORGE_DISCOVERY_LISTEN_PORT}, ec); + if (ec) { + msg = wxString::FromUTF8(ec.message().c_str()); + return false; + } + + for (const auto& addr : broadcast_addresses) { + socket.send_to(boost::asio::buffer(FLASHFORGE_DISCOVERY_MESSAGE), + {boost::asio::ip::make_address_v4(addr, ec), FLASHFORGE_DISCOVERY_PORT}, 0, ec); + ec.clear(); + } + + socket.non_blocking(true, ec); + if (ec) { + msg = wxString::FromUTF8(ec.message().c_str()); + return false; + } + + const auto start = std::chrono::steady_clock::now(); + auto last_reply = start; + + while (true) { + const auto now = std::chrono::steady_clock::now(); + if (std::chrono::duration_cast(now - start).count() >= timeout_ms) + break; + if (!by_ip.empty() && std::chrono::duration_cast(now - last_reply).count() >= idle_timeout_ms) + break; + + std::vector buffer(512); + boost::asio::ip::udp::endpoint remote_endpoint; + const auto received = socket.receive_from(boost::asio::buffer(buffer), remote_endpoint, 0, ec); + if (!ec) { + buffer.resize(received); + FlashforgeDiscoveredPrinter printer; + if (parse_discovery_response(buffer, remote_endpoint.address().to_string(), printer)) { + by_ip[printer.ip_address] = std::move(printer); + last_reply = std::chrono::steady_clock::now(); + } + } else if (ec == boost::asio::error::would_block || ec == boost::asio::error::try_again) { + ec.clear(); + std::this_thread::sleep_for(std::chrono::milliseconds(50)); + } else { + msg = wxString::FromUTF8(ec.message().c_str()); + return false; + } + } + + if (!by_ip.empty()) + break; + } + + for (auto& [_, printer] : by_ip) + printers.emplace_back(std::move(printer)); + + std::sort(printers.begin(), printers.end(), [](const FlashforgeDiscoveredPrinter& lhs, const FlashforgeDiscoveredPrinter& rhs) { + if (lhs.name != rhs.name) + return lhs.name < rhs.name; + return lhs.ip_address < rhs.ip_address; + }); + + if (printers.empty()) { + msg = _(L("No Flashforge printers were discovered on the local network.")); + return false; + } + + return true; + } catch (const std::exception& ex) { + msg = wxString::FromUTF8(ex.what()); + return false; + } +} + bool Flashforge::test(wxString& msg) const { + if (!m_serial_number.empty() && !m_check_code.empty()) + return test_local_api(msg); + BOOST_LOG_TRIVIAL(debug) << boost::format("[Flashforge Serial] testing connection"); // Utils::TCPConsole console(m_host, m_console_port); Utils::TCPConsole client(m_host, m_console_port); @@ -58,11 +345,19 @@ bool Flashforge::test(wxString& msg) const return res; } -wxString Flashforge::get_test_ok_msg() const { return _(L("Serial connection to Flashforge is working correctly.")); } +wxString Flashforge::get_test_ok_msg() const +{ + if (!m_serial_number.empty() && !m_check_code.empty()) + return _(L("Connected to Flashforge local API successfully.")); + return _(L("Serial connection to Flashforge is working correctly.")); +} wxString Flashforge::get_test_failed_msg(wxString& msg) const { - return GUI::from_u8((boost::format("%s: %s") % _utf8(L("Could not connect to Flashforge via serial")) % std::string(msg.ToUTF8())).str()); + const std::string prefix = (!m_serial_number.empty() && !m_check_code.empty()) ? + _utf8(L("Could not connect to Flashforge local API")) : + _utf8(L("Could not connect to Flashforge via serial")); + return GUI::from_u8((boost::format("%s: %s") % prefix % std::string(msg.ToUTF8())).str()); } @@ -98,21 +393,25 @@ bool Flashforge::connect(wxString& msg) const bool Flashforge::start_print(wxString& msg, const std::string& filename) const { Utils::TCPConsole client(m_host, m_console_port); - Slic3r::Utils::SerialMessage startPrintCommand = {(boost::format("~M23 0:/user/%1%") % filename).str(), Slic3r::Utils::Command}; + const std::string safe_filename = sanitize_flashforge_filename(filename); + Slic3r::Utils::SerialMessage startPrintCommand = {(boost::format("~M23 0:/user/%1%") % safe_filename).str(), Slic3r::Utils::Command}; client.enqueue_cmd(startPrintCommand); bool res = client.run_queue(); if (!res) { msg = wxString::FromUTF8(client.error_message().c_str()); - BOOST_LOG_TRIVIAL(info) << boost::format("[Flashforge Serial] Failed to start print %1%") % filename; + BOOST_LOG_TRIVIAL(info) << boost::format("[Flashforge Serial] Failed to start print %1%") % safe_filename; } else - BOOST_LOG_TRIVIAL(info) << boost::format("[Flashforge Serial] Started print %1%") % filename; + BOOST_LOG_TRIVIAL(info) << boost::format("[Flashforge Serial] Started print %1%") % safe_filename; return res; } bool Flashforge::upload(PrintHostUpload upload_data, ProgressFn progress_fn, ErrorFn error_fn, InfoFn info_fn) const { + if (!m_serial_number.empty() && !m_check_code.empty()) + return upload_local_api(std::move(upload_data), std::move(progress_fn), std::move(error_fn)); + bool res = true; wxString errormsg; @@ -121,6 +420,8 @@ bool Flashforge::upload(PrintHostUpload upload_data, ProgressFn progress_fn, Err try { res = connect(errormsg); + const std::string fallback_extension = upload_data.source_path.extension().string().empty() ? ".gcode" : upload_data.source_path.extension().string(); + const std::string upload_filename = sanitize_flashforge_filename(upload_data.upload_path.string(), fallback_extension); std::ifstream newfile; newfile.open(upload_data.source_path.c_str(), std::ios::binary); // open a file to perform read operation using file object @@ -142,7 +443,7 @@ bool Flashforge::upload(PrintHostUpload upload_data, ProgressFn progress_fn, Err newfile.close(); // close the file object. } Slic3r::Utils::SerialMessage fileuploadCommand = - {(boost::format("~M28 %1% 0:/user/%2%") % gcodeFile.size() % upload_data.upload_path.generic_string()).str(), + {(boost::format("~M28 %1% 0:/user/%2%") % gcodeFile.size() % upload_filename).str(), Slic3r::Utils::Command}; client.enqueue_cmd(fileuploadCommand); @@ -178,7 +479,7 @@ bool Flashforge::upload(PrintHostUpload upload_data, ProgressFn progress_fn, Err res = client.run_queue(); if (upload_data.post_action == PrintHostPostUploadAction::StartPrint) - res = start_print(errormsg, upload_data.upload_path.string()); + res = start_print(errormsg, upload_filename); } } catch (const std::exception& e) { @@ -190,6 +491,185 @@ bool Flashforge::upload(PrintHostUpload upload_data, ProgressFn progress_fn, Err return res; } +bool Flashforge::test_local_api(wxString& msg) const +{ + std::string body; + return request_local_api_json("detail", json{{"serialNumber", m_serial_number}, {"checkCode", m_check_code}}.dump(), body, msg); +} + +bool Flashforge::fetch_material_slots(std::vector& slots, bool* supports_material_station, wxString& msg) const +{ + slots.clear(); + + if (m_serial_number.empty() || m_check_code.empty()) { + msg = _(L("Flashforge local API requires both serial number and access code.")); + return false; + } + + std::string body; + if (!request_local_api_json("detail", json{{"serialNumber", m_serial_number}, {"checkCode", m_check_code}}.dump(), body, msg)) + return false; + + const auto parsed = json::parse(body, nullptr, false, true); + if (parsed.is_discarded()) { + msg = _(L("Flashforge returned an invalid JSON response.")); + return false; + } + + const auto& detail = parsed.contains("detail") ? parsed["detail"] : parsed; + const auto& station = detail.contains("matlStationInfo") ? detail["matlStationInfo"] : + detail.contains("MatlStationInfo") ? detail["MatlStationInfo"] : json(); + const auto& slot_infos = station.contains("slotInfos") ? station["slotInfos"] : + station.contains("SlotInfos") ? station["SlotInfos"] : json::array(); + + bool reports_material_station = false; + + int has_material_station_flag = 0; + if (detail.contains("hasMatlStation") && try_parse_json_int(detail["hasMatlStation"], has_material_station_flag)) + reports_material_station = has_material_station_flag != 0; + else if (detail.contains("HasMatlStation") && try_parse_json_int(detail["HasMatlStation"], has_material_station_flag)) + reports_material_station = has_material_station_flag != 0; + + int slot_count = 0; + if (station.contains("slotCnt") && try_parse_json_int(station["slotCnt"], slot_count)) + reports_material_station = reports_material_station || slot_count > 0; + else if (station.contains("SlotCnt") && try_parse_json_int(station["SlotCnt"], slot_count)) + reports_material_station = reports_material_station || slot_count > 0; + + if (slot_infos.is_array() && !slot_infos.empty()) + reports_material_station = true; + + if (supports_material_station != nullptr) + *supports_material_station = reports_material_station; + + for (const auto& slot : slot_infos) { + FlashforgeMaterialSlot info; + info.slot_id = slot.value("slotId", static_cast(slots.size()) + 1); + info.has_filament = slot.value("hasFilament", false); + info.material_name = slot.value("materialName", std::string()); + info.material_color = slot.value("materialColor", std::string()); + slots.emplace_back(std::move(info)); + } + + return true; +} + +bool Flashforge::upload_local_api(PrintHostUpload upload_data, ProgressFn progress_fn, ErrorFn error_fn) const +{ + bool res = true; + std::string material_map_b64; + std::string material_map_json = "[]"; + auto leveling_before_print = upload_data.extended_info["levelingBeforePrint"] == "1"; + auto time_lapse_video = upload_data.extended_info["timeLapseVideo"] == "1"; + auto use_material_station = upload_data.extended_info["useMatlStation"] == "1"; + + if (auto it = upload_data.extended_info.find("materialMappings"); it != upload_data.extended_info.end()) + material_map_json = it->second; + + material_map_b64.resize(boost::beast::detail::base64::encoded_size(material_map_json.size())); + material_map_b64.resize(boost::beast::detail::base64::encode(material_map_b64.data(), material_map_json.data(), material_map_json.size())); + + auto url = make_http_url("uploadGcode"); + const std::string fallback_extension = upload_data.source_path.extension().string().empty() ? (upload_data.use_3mf ? ".3mf" : ".gcode") : upload_data.source_path.extension().string(); + auto filename = sanitize_flashforge_filename(upload_data.upload_path.string(), fallback_extension); + std::string file_size; + try { + file_size = std::to_string(fs::file_size(upload_data.source_path)); + } catch (...) { + file_size = "0"; + } + + auto http = Http::post(url); + http.header("serialNumber", m_serial_number) + .header("checkCode", m_check_code) + .header("fileSize", file_size) + .header("printNow", upload_data.post_action == PrintHostPostUploadAction::StartPrint ? "true" : "false") + .header("levelingBeforePrint", leveling_before_print ? "true" : "false") + .header("flowCalibration", "false") + .header("firstLayerInspection", "false") + .header("timeLapseVideo", time_lapse_video ? "true" : "false") + .header("useMatlStation", use_material_station ? "true" : "false") + .header("gcodeToolCnt", upload_data.extended_info["gcodeToolCnt"]) + .header("materialMappings", material_map_b64) + .form_add_file("gcodeFile", upload_data.source_path.string(), filename) + .on_complete([&](std::string body, unsigned status) { + wxString msg; + if (!validate_local_api_response(body, msg)) { + BOOST_LOG_TRIVIAL(error) << boost::format("[Flashforge HTTP] upload rejected by printer: HTTP %1% body: `%2%`") % status % body; + error_fn(msg); + res = false; + } else { + BOOST_LOG_TRIVIAL(info) << boost::format("[Flashforge HTTP] upload complete: HTTP %1% body: %2%") % status % body; + } + }) + .on_error([&](std::string body, std::string error, unsigned status) { + BOOST_LOG_TRIVIAL(error) << boost::format("[Flashforge HTTP] upload failed: %1%, HTTP %2%, body: `%3%`") % error % status % body; + error_fn(format_error(body, error, status)); + res = false; + }) + .on_progress([&](Http::Progress progress, bool& cancel) { + progress_fn(std::move(progress), cancel); + if (cancel) + res = false; + }) + .perform_sync(); + + return res; +} + +bool Flashforge::request_local_api_json(const std::string& path, const std::string& body, std::string& response_body, wxString& error_msg) const +{ + bool ok = true; + auto http = Http::post(make_http_url(path)); + http.header("Content-Type", "application/json") + .set_post_body(body) + .on_complete([&](std::string body_text, unsigned) { + response_body = std::move(body_text); + if (!validate_local_api_response(response_body, error_msg)) + ok = false; + }) + .on_error([&](std::string body_text, std::string error, unsigned status) { + response_body = std::move(body_text); + error_msg = format_error(response_body, error, status); + ok = false; + }) + .perform_sync(); + return ok; +} + +std::string Flashforge::make_http_url(const std::string& path) const +{ + return (boost::format("http://%1%:8898/%2%") % extract_host_name() % path).str(); +} + +std::string Flashforge::extract_host_name() const +{ + std::string host = m_host; + if (host.find("://") == std::string::npos) { + const auto slash_pos = host.find('/'); + if (slash_pos != std::string::npos) + host = host.substr(0, slash_pos); + return host; + } + + std::string out = host; + CURLU* hurl = curl_url(); + if (!hurl) + return host; + + const auto rc = curl_url_set(hurl, CURLUPART_URL, host.c_str(), 0); + if (rc == CURLUE_OK) { + char* raw_host = nullptr; + if (curl_url_get(hurl, CURLUPART_HOST, &raw_host, 0) == CURLUE_OK && raw_host != nullptr) { + out = raw_host; + curl_free(raw_host); + } + } + + curl_url_cleanup(hurl); + return out; +} + int Flashforge::get_err_code_from_body(const std::string& body) const { pt::ptree root; diff --git a/src/slic3r/Utils/Flashforge.hpp b/src/slic3r/Utils/Flashforge.hpp index 82f9092753e..ea7acdcb114 100644 --- a/src/slic3r/Utils/Flashforge.hpp +++ b/src/slic3r/Utils/Flashforge.hpp @@ -1,6 +1,7 @@ #ifndef slic3r_FlashForge_hpp_ #define slic3r_FlashForge_hpp_ +#include #include #include #include "PrintHost.hpp" @@ -12,6 +13,21 @@ namespace Slic3r { class DynamicPrintConfig; class Http; +struct FlashforgeMaterialSlot +{ + int slot_id {0}; // API is 1-based. + bool has_filament {false}; + std::string material_name; + std::string material_color; +}; + +struct FlashforgeDiscoveredPrinter +{ + std::string name; + std::string serial_number; + std::string ip_address; +}; + class Flashforge : public PrintHost { public: @@ -24,13 +40,17 @@ public: wxString get_test_ok_msg() const override; wxString get_test_failed_msg(wxString &msg) const override; bool upload(PrintHostUpload upload_data, ProgressFn prorgess_fn, ErrorFn error_fn, InfoFn info_fn) const override; - bool has_auto_discovery() const override { return false; } + bool has_auto_discovery() const override { return true; } bool can_test() const override { return true; } PrintHostPostUploadActions get_post_upload_actions() const override { return PrintHostPostUploadAction::StartPrint; } std::string get_host() const override { return m_host; } + bool fetch_material_slots(std::vector& slots, bool* supports_material_station, wxString& msg) const; + static bool discover_printers(std::vector& printers, wxString& msg, int timeout_ms = 10000, int idle_timeout_ms = 1500, int max_retries = 3); private: std::string m_host; + std::string m_serial_number; + std::string m_check_code; std::string m_console_port; const int m_bufferSize; GCodeFlavor m_gcFlavor; @@ -43,6 +63,11 @@ private: Slic3r::Utils::SerialMessage tempStatusCommand = {"~M105\r\n", Slic3r::Utils::Command}; Slic3r::Utils::SerialMessage printStatusCommand = {"~M27\r\n", Slic3r::Utils::Command}; Slic3r::Utils::SerialMessage saveFileCommand = {"~M29\r\n",Slic3r::Utils::Command}; + bool upload_local_api(PrintHostUpload upload_data, ProgressFn progress_fn, ErrorFn error_fn) const; + bool test_local_api(wxString& msg) const; + bool request_local_api_json(const std::string& path, const std::string& body, std::string& response_body, wxString& error_msg) const; + std::string make_http_url(const std::string& path) const; + std::string extract_host_name() const; int get_err_code_from_body(const std::string &body) const; bool connect(wxString& msg) const; bool start_print(wxString& msg, const std::string& filename) const; diff --git a/src/slic3r/Utils/ICloudServiceAgent.hpp b/src/slic3r/Utils/ICloudServiceAgent.hpp index 6d131341f77..556c2536410 100644 --- a/src/slic3r/Utils/ICloudServiceAgent.hpp +++ b/src/slic3r/Utils/ICloudServiceAgent.hpp @@ -247,7 +247,7 @@ public: /** * Update or create a preset with a known setting_id. */ - virtual int put_setting(std::string setting_id, std::string name, std::map* values_map, unsigned int* http_code) = 0; + virtual int put_setting(std::string setting_id, std::string name, std::map* values_map, unsigned int* http_code, bool force = false) = 0; /** * Trigger bulk download of user presets. diff --git a/src/slic3r/Utils/NetworkAgent.cpp b/src/slic3r/Utils/NetworkAgent.cpp index 03e677b6363..8a3d2953b03 100644 --- a/src/slic3r/Utils/NetworkAgent.cpp +++ b/src/slic3r/Utils/NetworkAgent.cpp @@ -383,11 +383,12 @@ int NetworkAgent::put_setting(std::string setting_id, std::string name, std::map* values_map, unsigned int* http_code, - const std::string& provider) + const std::string& provider, + bool force) { const auto cloud_agent = get_cloud_agent(provider); if (cloud_agent) - return cloud_agent->put_setting(std::move(setting_id), std::move(name), values_map, http_code); + return cloud_agent->put_setting(std::move(setting_id), std::move(name), values_map, http_code, force); return -1; } @@ -582,21 +583,22 @@ int NetworkAgent::get_my_token(std::string ticket, unsigned int* http_code, std: return -1; } -int NetworkAgent::track_enable(bool enable, const std::string& provider) +int NetworkAgent::track_enable(bool enable) { - this->enable_track = enable; - const auto cloud_agent = get_cloud_agent(provider); + // Orca cloud has no telemetry; the only cloud agent that tracks events is BBL. + this->enable_track = enable; + const auto cloud_agent = get_cloud_agent(BBL_CLOUD_PROVIDER); if (cloud_agent) return cloud_agent->track_enable(enable); - return -1; + return 0; } -int NetworkAgent::track_remove_files(const std::string& provider) +int NetworkAgent::track_remove_files() { - const auto cloud_agent = get_cloud_agent(provider); + const auto cloud_agent = get_cloud_agent(BBL_CLOUD_PROVIDER); if (cloud_agent) return cloud_agent->track_remove_files(); - return -1; + return 0; } int NetworkAgent::track_event(std::string evt_key, std::string content, const std::string& provider) diff --git a/src/slic3r/Utils/NetworkAgent.hpp b/src/slic3r/Utils/NetworkAgent.hpp index e069066b583..57a23737a2f 100644 --- a/src/slic3r/Utils/NetworkAgent.hpp +++ b/src/slic3r/Utils/NetworkAgent.hpp @@ -93,7 +93,7 @@ public: // NOTE: this should always call only OrcaCloud int get_user_presets(std::map>* user_presets, const std::string& provider = ORCA_CLOUD_PROVIDER); std::string request_setting_id(std::string name, std::map* values_map, unsigned int* http_code, const std::string& provider = ORCA_CLOUD_PROVIDER); - int put_setting(std::string setting_id, std::string name, std::map* values_map, unsigned int* http_code, const std::string& provider = ORCA_CLOUD_PROVIDER); + int put_setting(std::string setting_id, std::string name, std::map* values_map, unsigned int* http_code, const std::string& provider = ORCA_CLOUD_PROVIDER, bool force = false); int get_setting_list(std::string bundle_version, ProgressFn pro_fn = nullptr, WasCancelledFn cancel_fn = nullptr, const std::string& provider = ORCA_CLOUD_PROVIDER); int get_setting_list2(std::string bundle_version, CheckFn chk_fn, ProgressFn pro_fn = nullptr, WasCancelledFn cancel_fn = nullptr, const std::string& provider = ORCA_CLOUD_PROVIDER); int delete_setting(std::string setting_id, const std::string& provider = ORCA_CLOUD_PROVIDER); @@ -118,8 +118,9 @@ public: int get_model_mall_detail_url(std::string* url, std::string id, const std::string& provider = ORCA_CLOUD_PROVIDER); int get_my_profile(std::string token, unsigned int* http_code, std::string* http_body, const std::string& provider = ORCA_CLOUD_PROVIDER); int get_my_token(std::string ticket, unsigned int* http_code, std::string* http_body, const std::string& provider = ORCA_CLOUD_PROVIDER); - int track_enable(bool enable, const std::string& provider = ORCA_CLOUD_PROVIDER); - int track_remove_files(const std::string& provider = ORCA_CLOUD_PROVIDER); + // Orca: telemetry only exists on the BBL cloud agent (Orca cloud has no track events). + int track_enable(bool enable); + int track_remove_files(); int track_event(std::string evt_key, std::string content, const std::string& provider = ORCA_CLOUD_PROVIDER); int track_header(std::string header, const std::string& provider = ORCA_CLOUD_PROVIDER); int track_update_property(std::string name, std::string value, std::string type = "string", const std::string& provider = ORCA_CLOUD_PROVIDER); diff --git a/src/slic3r/Utils/OrcaCloudServiceAgent.cpp b/src/slic3r/Utils/OrcaCloudServiceAgent.cpp index 0e1027cd462..1b7f7799142 100644 --- a/src/slic3r/Utils/OrcaCloudServiceAgent.cpp +++ b/src/slic3r/Utils/OrcaCloudServiceAgent.cpp @@ -56,6 +56,7 @@ constexpr const char* ORCA_DEFAULT_PUB_KEY = "sb_publishable_lvVe_whOi80SU9BPSxM constexpr const char* ORCA_HEALTH_PATH = "/api/v1/health"; constexpr const char* ORCA_SYNC_PULL_PATH = "/api/v1/sync/pull"; constexpr const char* ORCA_SYNC_PUSH_PATH = "/api/v1/sync/push"; +constexpr const char* ORCA_SYNC_FORCE_PUSH_PATH = "/api/v1/sync/force-push"; constexpr const char* ORCA_SYNC_DELETE_PATH = "/api/v1/sync/delete"; constexpr const char* ORCA_PROFILES_PATH = "/api/v1/sync/profiles"; constexpr const char* ORCA_SUBSCRIPTIONS_PATH = "/api/v1/subscriptions"; @@ -965,7 +966,7 @@ std::string OrcaCloudServiceAgent::request_setting_id(std::string name, std::map return ""; } -int OrcaCloudServiceAgent::put_setting(std::string setting_id, std::string name, std::map* values_map, unsigned int* http_code) +int OrcaCloudServiceAgent::put_setting(std::string setting_id, std::string name, std::map* values_map, unsigned int* http_code, bool force) { // Extract original_updated_time for Optimistic Concurrency Control // If present, server will verify version before update. If absent, treated as insert. @@ -989,7 +990,7 @@ int OrcaCloudServiceAgent::put_setting(std::string setting_id, std::string name, } } - auto result = sync_push(setting_id, name, content, original_updated_time); + auto result = sync_push(setting_id, name, content, original_updated_time, force); if (http_code) *http_code = result.http_code; if (result.success) { @@ -1208,11 +1209,11 @@ int OrcaCloudServiceAgent::sync_pull( } } -SyncPushResult OrcaCloudServiceAgent::sync_push( - const std::string& profile_id, - const std::string& name, - const nlohmann::json& content, - const std::string& original_updated_time) +SyncPushResult OrcaCloudServiceAgent::sync_push(const std::string& profile_id, + const std::string& name, + const nlohmann::json& content, + const std::string& original_updated_time, + bool force) { SyncPushResult result; result.success = false; @@ -1243,7 +1244,7 @@ SyncPushResult OrcaCloudServiceAgent::sync_push( std::string response; unsigned int http_code = 0; - int http_result = http_post(ORCA_SYNC_PUSH_PATH, body_str, &response, &http_code); + int http_result = http_post(force ? ORCA_SYNC_FORCE_PUSH_PATH : ORCA_SYNC_PUSH_PATH, body_str, &response, &http_code); result.http_code = http_code; @@ -1888,7 +1889,7 @@ int OrcaCloudServiceAgent::http_post(const std::string& path, const std::string& .on_error([&](std::string resp_body, std::string error, unsigned resp_status) { result.success = false; result.status = resp_status == 0 ? 404 : resp_status; - result.body = body; + result.body = resp_body; BOOST_LOG_TRIVIAL(error) << "OrcaCloudServiceAgent: HTTP error - " << error; }) .timeout_max(30) diff --git a/src/slic3r/Utils/OrcaCloudServiceAgent.hpp b/src/slic3r/Utils/OrcaCloudServiceAgent.hpp index 4552b487d43..5c58987a0b7 100644 --- a/src/slic3r/Utils/OrcaCloudServiceAgent.hpp +++ b/src/slic3r/Utils/OrcaCloudServiceAgent.hpp @@ -176,7 +176,12 @@ public: // ======================================================================== int get_user_presets(std::map>* user_presets) override; std::string request_setting_id(std::string name, std::map* values_map, unsigned int* http_code) override; - int put_setting(std::string setting_id, std::string name, std::map* values_map, unsigned int* http_code) override; + int put_setting(std::string setting_id, std::string name, std::map* values_map, unsigned int* http_code, bool force = false) override; + SyncPushResult sync_push(const std::string& profile_id, + const std::string& name, + const nlohmann::json& content, + const std::string& original_updated_time = "", + bool force = false); int get_setting_list(std::string bundle_version, ProgressFn pro_fn = nullptr, WasCancelledFn cancel_fn = nullptr) override; int get_setting_list2(std::string bundle_version, CheckFn chk_fn, ProgressFn pro_fn = nullptr, WasCancelledFn cancel_fn = nullptr) override; int delete_setting(std::string setting_id) override; @@ -294,13 +299,6 @@ private: std::function on_error ); - SyncPushResult sync_push( - const std::string& profile_id, - const std::string& name, - const nlohmann::json& content, - const std::string& original_updated_time = "" - ); - // HTTP request helpers int http_get(const std::string& path, std::string* response_body, unsigned int* http_code); int http_post(const std::string& path, const std::string& body, std::string* response_body, unsigned int* http_code);