diff --git a/.github/workflows/build_orca.yml b/.github/workflows/build_orca.yml index 745bc52897e..52c9d117bbe 100644 --- a/.github/workflows/build_orca.yml +++ b/.github/workflows/build_orca.yml @@ -244,7 +244,16 @@ jobs: ./BuildLinux.sh -isr mv -n ./build/OrcaSlicer_Linux_V${{ env.ver_pure }}.AppImage ./build/OrcaSlicer_Linux_${{ env.ver }}.AppImage chmod +x ./build/OrcaSlicer_Linux_${{ env.ver }}.AppImage - + + - name: Build orca_custom_preset_tests + if: github.ref == 'refs/heads/main' && inputs.os == 'ubuntu-20.04' + working-directory: ${{ github.workspace }}/build/src + shell: bash + run: | + ./OrcaSlicer_profile_validator -p ${{ github.workspace }}/resources/profiles -g 1 + cd ${{ github.workspace }}/resources/profiles + zip -r orca_custom_preset_tests.zip user/ + - name: Upload artifacts Ubuntu if: inputs.os == 'ubuntu-20.04' uses: actions/upload-artifact@v3 @@ -262,3 +271,14 @@ jobs: asset_name: OrcaSlicer_Linux_${{ env.ver }}.AppImage asset_content_type: application/octet-stream max_releases: 1 # optional, if there are more releases than this matching the asset_name, the oldest ones are going to be deleted + + - name: Deploy orca_custom_preset_tests + if: github.ref == 'refs/heads/main' && inputs.os == 'ubuntu-20.04' + uses: WebFreak001/deploy-nightly@v3.0.0 + with: + upload_url: https://uploads.github.com/repos/SoftFever/OrcaSlicer/releases/137995723/assets{?name,label} + release_id: 137995723 + asset_path: ${{ github.workspace }}/resources/profiles/orca_custom_preset_tests.zip + asset_name: orca_custom_preset_tests + asset_content_type: application/octet-stream + max_releases: 1 diff --git a/.github/workflows/check_profiles.yml b/.github/workflows/check_profiles.yml index e1d18fd5484..2f49a06ae5b 100644 --- a/.github/workflows/check_profiles.yml +++ b/.github/workflows/check_profiles.yml @@ -1,4 +1,4 @@ -name: Check locale +name: Check profiles on: pull_request: branches: @@ -19,12 +19,21 @@ jobs: - name: Download working-directory: ${{ github.workspace }} run: | - curl -LJO https://github.com/SoftFever/Orca_tools/releases/download/1/OrcaSlicer_profile_validator_ubuntu - chmod +x ./OrcaSlicer_profile_validator_ubuntu + curl -LJO https://github.com/SoftFever/Orca_tools/releases/download/1/OrcaSlicer_profile_validator + chmod +x ./OrcaSlicer_profile_validator # validate profiles - - name: validate profiles + - name: validate system profiles run: | - ./OrcaSlicer_profile_validator_ubuntu -p ${{ github.workspace }}/resources/profiles -l 2 + ./OrcaSlicer_profile_validator -p ${{ github.workspace }}/resources/profiles -l 2 + + - name: validate custom presets + working-directory: ${{ github.workspace }} + run: | + curl -LJO https://github.com/SoftFever/OrcaSlicer/releases/download/nightly-builds/orca_custom_preset_tests.zip + unzip ./orca_custom_preset_tests.zip -d ${{ github.workspace }}/resources/profiles + ./OrcaSlicer_profile_validator -p ${{ github.workspace }}/resources/profiles -l 2 + + diff --git a/.gitignore b/.gitignore index 6b560a66c2f..4ec8a2075e4 100644 --- a/.gitignore +++ b/.gitignore @@ -32,3 +32,4 @@ src/OrcaSlicer-doc/ **/filament_full/ /deps/DL_CACHE/ /deps/DL_CACHE +resources/profiles/user/default \ No newline at end of file diff --git a/BuildLinux.sh b/BuildLinux.sh index 94b250ba5a4..772617aaf35 100755 --- a/BuildLinux.sh +++ b/BuildLinux.sh @@ -227,13 +227,16 @@ then # cmake pushd build - echo -e "cmake .. -DCMAKE_PREFIX_PATH=\"$PWD/../deps/build/destdir/usr/local\" -DSLIC3R_STATIC=1 ${BUILD_ARGS}" - cmake .. -DCMAKE_PREFIX_PATH="$PWD/../deps/build/destdir/usr/local" -DSLIC3R_STATIC=1 ${BUILD_ARGS} + echo -e "cmake .. -DCMAKE_PREFIX_PATH=\"$PWD/../deps/build/destdir/usr/local\" -DSLIC3R_STATIC=1 -DORCA_TOOLS=ON ${BUILD_ARGS}" + cmake .. -DCMAKE_PREFIX_PATH="$PWD/../deps/build/destdir/usr/local" -DSLIC3R_STATIC=1 ${BUILD_ARGS} -DORCA_TOOLS=ON echo "done" # make Slic3r echo "[8/9] Building Slic3r..." make -j$NCORES OrcaSlicer # Slic3r + + # make OrcaSlicer_profile_validator + make -j$NCORES OrcaSlicer_profile_validator popd ./run_gettext.sh echo "done" diff --git a/resources/profiles/Anker.json b/resources/profiles/Anker.json index 9a0670196e1..9f09dbe5277 100644 --- a/resources/profiles/Anker.json +++ b/resources/profiles/Anker.json @@ -22,6 +22,14 @@ "name": "fdm_process_common", "sub_path": "process/fdm_process_common.json" }, + { + "name": "fdm_process_anker_common_0_2", + "sub_path": "process/fdm_process_anker_common_0_2.json" + }, + { + "name": "fdm_process_anker_common_0_25", + "sub_path": "process/fdm_process_anker_common_0_25.json" + }, { "name": "fdm_process_anker_common", "sub_path": "process/fdm_process_anker_common.json" @@ -30,14 +38,38 @@ "name": "fdm_process_anker_fast_common", "sub_path": "process/fdm_process_anker_fast_common.json" }, + { + "name": "0.05mm Optimal 0.2 nozzle @Anker", + "sub_path": "process/0.05mm Optimal 0.2 nozzle @Anker.json" + }, + { + "name": "0.05mm Optimal 0.25 nozzle @Anker", + "sub_path": "process/0.05mm Optimal 0.25 nozzle @Anker.json" + }, { "name": "0.05mm Ultradetail @Anker", "sub_path": "process/0.05mm Ultradetail @Anker.json" }, + { + "name": "0.10mm Standard 0.2 nozzle @Anker", + "sub_path": "process/0.10mm Standard 0.2 nozzle @Anker.json" + }, + { + "name": "0.10mm Standard 0.25 nozzle @Anker", + "sub_path": "process/0.10mm Standard 0.25 nozzle @Anker.json" + }, { "name": "0.10mm Detail @Anker", "sub_path": "process/0.10mm Detail @Anker.json" }, + { + "name": "0.15mm Draft 0.2 nozzle @Anker", + "sub_path": "process/0.15mm Draft 0.2 nozzle @Anker.json" + }, + { + "name": "0.15mm Draft 0.25 nozzle @Anker", + "sub_path": "process/0.15mm Draft 0.25 nozzle @Anker.json" + }, { "name": "0.15mm Optimal @Anker", "sub_path": "process/0.15mm Optimal @Anker.json" @@ -72,141 +104,205 @@ "name": "fdm_filament_common", "sub_path": "filament/fdm_filament_common.json" }, + { + "name": "fdm_filament_abs", + "sub_path": "filament/fdm_filament_abs.json" + }, + { + "name": "fdm_filament_asa", + "sub_path": "filament/fdm_filament_asa.json" + }, + { + "name": "fdm_filament_pa", + "sub_path": "filament/fdm_filament_pa.json" + }, + { + "name": "fdm_filament_pc", + "sub_path": "filament/fdm_filament_pc.json" + }, + { + "name": "fdm_filament_pet", + "sub_path": "filament/fdm_filament_pet.json" + }, { "name": "fdm_filament_pla", "sub_path": "filament/fdm_filament_pla.json" }, + { + "name": "fdm_filament_pva", + "sub_path": "filament/fdm_filament_pva.json" + }, { "name": "fdm_filament_tpu", "sub_path": "filament/fdm_filament_tpu.json" }, { - "name": "fdm_filament_pet", - "sub_path": "filament/fdm_filament_pet.json" + "name": "Anker Generic ABS @base", + "sub_path": "filament/Anker Generic ABS @base.json" }, { - "name": "fdm_filament_abs", - "sub_path": "filament/fdm_filament_abs.json" + "name": "Anker Generic ABS 0.2 nozzle", + "sub_path": "filament/Anker Generic ABS 0.2 nozzle.json" }, { - "name": "fdm_filament_pc", - "sub_path": "filament/fdm_filament_pc.json" + "name": "Anker Generic ABS 0.25 nozzle", + "sub_path": "filament/Anker Generic ABS 0.25 nozzle.json" }, { - "name": "fdm_filament_asa", - "sub_path": "filament/fdm_filament_asa.json" + "name": "Anker Generic ABS", + "sub_path": "filament/Anker Generic ABS.json" }, { - "name": "fdm_filament_pva", - "sub_path": "filament/fdm_filament_pva.json" + "name": "Anker Generic ASA @base", + "sub_path": "filament/Anker Generic ASA @base.json" }, { - "name": "fdm_filament_pa ", - "sub_path": "filament/fdm_filament_pa.json" + "name": "Anker Generic ASA 0.2 nozzle", + "sub_path": "filament/Anker Generic ASA 0.2 nozzle.json" }, { - "name": "Anker Generic PLA @base", - "sub_path": "filament/Anker Generic PLA @base.json" + "name": "Anker Generic ASA 0.25 nozzle", + "sub_path": "filament/Anker Generic ASA 0.25 nozzle.json" }, { - "name": "Anker Generic PLA+ @base", - "sub_path": "filament/Anker Generic PLA+ @base.json" + "name": "Anker Generic ASA", + "sub_path": "filament/Anker Generic ASA.json" }, { - "name": "Anker Generic PLA Silk @base", - "sub_path": "filament/Anker Generic PLA Silk @base.json" + "name": "Anker Generic PA @base", + "sub_path": "filament/Anker Generic PA @base.json" }, { - "name": "Anker Generic PLA-CF @base", - "sub_path": "filament/Anker Generic PLA-CF @base.json" + "name": "Anker Generic PA 0.2 nozzle", + "sub_path": "filament/Anker Generic PA 0.2 nozzle.json" }, { - "name": "Anker Generic TPU @base", - "sub_path": "filament/Anker Generic TPU @base.json" + "name": "Anker Generic PA 0.25 nozzle", + "sub_path": "filament/Anker Generic PA 0.25 nozzle.json" + }, + { + "name": "Anker Generic PA", + "sub_path": "filament/Anker Generic PA.json" + }, + { + "name": "Anker Generic PA-CF @base", + "sub_path": "filament/Anker Generic PA-CF @base.json" + }, + { + "name": "Anker Generic PA-CF", + "sub_path": "filament/Anker Generic PA-CF.json" + }, + { + "name": "Anker Generic PC @base", + "sub_path": "filament/Anker Generic PC @base.json" + }, + { + "name": "Anker Generic PC 0.2 nozzle", + "sub_path": "filament/Anker Generic PC 0.2 nozzle.json" + }, + { + "name": "Anker Generic PC 0.25 nozzle", + "sub_path": "filament/Anker Generic PC 0.25 nozzle.json" + }, + { + "name": "Anker Generic PC", + "sub_path": "filament/Anker Generic PC.json" }, { "name": "Anker Generic PETG @base", "sub_path": "filament/Anker Generic PETG @base.json" }, { - "name": "Anker Generic PETG-CF @base", - "sub_path": "filament/Anker Generic PETG-CF @base.json" + "name": "Anker Generic PETG 0.2 nozzle", + "sub_path": "filament/Anker Generic PETG 0.2 nozzle.json" }, { - "name": "Anker Generic ABS @base", - "sub_path": "filament/Anker Generic ABS @base.json" + "name": "Anker Generic PETG 0.25 nozzle", + "sub_path": "filament/Anker Generic PETG 0.25 nozzle.json" }, { - "name": "Anker Generic ASA @base", - "sub_path": "filament/Anker Generic ASA @base.json" + "name": "Anker Generic PETG", + "sub_path": "filament/Anker Generic PETG.json" }, { - "name": "Anker Generic PC @base", - "sub_path": "filament/Anker Generic PC @base.json" + "name": "Anker Generic PETG-CF @base", + "sub_path": "filament/Anker Generic PETG-CF @base.json" }, { - "name": "Anker Generic PVA @base", - "sub_path": "filament/Anker Generic PVA @base.json" + "name": "Anker Generic PETG-CF", + "sub_path": "filament/Anker Generic PETG-CF.json" }, { - "name": "Anker Generic PA @base", - "sub_path": "filament/Anker Generic PA @base.json" + "name": "Anker Generic PLA @base", + "sub_path": "filament/Anker Generic PLA @base.json" }, { - "name": "Anker Generic PA-CF @base", - "sub_path": "filament/Anker Generic PA-CF @base.json" + "name": "Anker Generic PLA 0.2 nozzle", + "sub_path": "filament/Anker Generic PLA 0.2 nozzle.json" + }, + { + "name": "Anker Generic PLA 0.25 nozzle", + "sub_path": "filament/Anker Generic PLA 0.25 nozzle.json" }, { "name": "Anker Generic PLA", "sub_path": "filament/Anker Generic PLA.json" }, { - "name": "Anker Generic PLA+", - "sub_path": "filament/Anker Generic PLA+.json" + "name": "Anker Generic PLA Silk @base", + "sub_path": "filament/Anker Generic PLA Silk @base.json" + }, + { + "name": "Anker Generic PLA Silk 0.2 nozzle", + "sub_path": "filament/Anker Generic PLA Silk 0.2 nozzle.json" + }, + { + "name": "Anker Generic PLA Silk 0.25 nozzle", + "sub_path": "filament/Anker Generic PLA Silk 0.25 nozzle.json" }, { "name": "Anker Generic PLA Silk", "sub_path": "filament/Anker Generic PLA Silk.json" }, { - "name": "Anker Generic PLA-CF", - "sub_path": "filament/Anker Generic PLA-CF.json" + "name": "Anker Generic PLA+ @base", + "sub_path": "filament/Anker Generic PLA+ @base.json" }, { - "name": "Anker Generic TPU", - "sub_path": "filament/Anker Generic TPU.json" + "name": "Anker Generic PLA+ 0.2 nozzle", + "sub_path": "filament/Anker Generic PLA+ 0.2 nozzle.json" }, { - "name": "Anker Generic PETG", - "sub_path": "filament/Anker Generic PETG.json" + "name": "Anker Generic PLA+ 0.25 nozzle", + "sub_path": "filament/Anker Generic PLA+ 0.25 nozzle.json" }, { - "name": "Anker Generic PETG-CF", - "sub_path": "filament/Anker Generic PETG-CF.json" + "name": "Anker Generic PLA+", + "sub_path": "filament/Anker Generic PLA+.json" }, { - "name": "Anker Generic ABS", - "sub_path": "filament/Anker Generic ABS.json" + "name": "Anker Generic PLA-CF @base", + "sub_path": "filament/Anker Generic PLA-CF @base.json" }, { - "name": "Anker Generic ASA", - "sub_path": "filament/Anker Generic ASA.json" + "name": "Anker Generic PLA-CF", + "sub_path": "filament/Anker Generic PLA-CF.json" }, { - "name": "Anker Generic PC", - "sub_path": "filament/Anker Generic PC.json" + "name": "Anker Generic PVA @base", + "sub_path": "filament/Anker Generic PVA @base.json" }, { "name": "Anker Generic PVA", "sub_path": "filament/Anker Generic PVA.json" }, { - "name": "Anker Generic PA", - "sub_path": "filament/Anker Generic PA.json" + "name": "Anker Generic TPU @base", + "sub_path": "filament/Anker Generic TPU @base.json" }, { - "name": "Anker Generic PA-CF", - "sub_path": "filament/Anker Generic PA-CF.json" + "name": "Anker Generic TPU", + "sub_path": "filament/Anker Generic TPU.json" } ], "machine_list": [ @@ -218,14 +314,38 @@ "name": "fdm_marlin_common", "sub_path": "machine/fdm_marlin_common.json" }, + { + "name": "Anker M5 0.2 nozzle", + "sub_path": "machine/Anker M5 0.2 nozzle.json" + }, + { + "name": "Anker M5 0.25 nozzle", + "sub_path": "machine/Anker M5 0.25 nozzle.json" + }, { "name": "Anker M5 0.4 nozzle", "sub_path": "machine/Anker M5 0.4 nozzle.json" }, + { + "name": "Anker M5 All-Metal 0.2 nozzle", + "sub_path": "machine/Anker M5 All-Metal 0.2 nozzle.json" + }, + { + "name": "Anker M5 All-Metal 0.25 nozzle", + "sub_path": "machine/Anker M5 All-Metal 0.25 nozzle.json" + }, { "name": "Anker M5 All-Metal 0.4 nozzle", "sub_path": "machine/Anker M5 All-Metal 0.4 nozzle.json" }, + { + "name": "Anker M5C 0.2 nozzle", + "sub_path": "machine/Anker M5C 0.2 nozzle.json" + }, + { + "name": "Anker M5C 0.25 nozzle", + "sub_path": "machine/Anker M5C 0.25 nozzle.json" + }, { "name": "Anker M5C 0.4 nozzle", "sub_path": "machine/Anker M5C 0.4 nozzle.json" diff --git a/resources/profiles/Anker/filament/Anker Generic ABS 0.2 nozzle.json b/resources/profiles/Anker/filament/Anker Generic ABS 0.2 nozzle.json new file mode 100644 index 00000000000..bc43f97c488 --- /dev/null +++ b/resources/profiles/Anker/filament/Anker Generic ABS 0.2 nozzle.json @@ -0,0 +1,16 @@ +{ + "type": "filament", + "name": "Anker Generic ABS 0.2 nozzle", + "inherits": "Anker Generic ABS @base", + "from": "system", + "setting_id": "GFSB99_20", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "2" + ], + "compatible_printers": [ + "Anker M5 0.2 nozzle", + "Anker M5 All-Metal 0.2 nozzle", + "Anker M5C 0.2 nozzle" + ] +} diff --git a/resources/profiles/Anker/filament/Anker Generic ABS 0.25 nozzle.json b/resources/profiles/Anker/filament/Anker Generic ABS 0.25 nozzle.json new file mode 100644 index 00000000000..4af4e559386 --- /dev/null +++ b/resources/profiles/Anker/filament/Anker Generic ABS 0.25 nozzle.json @@ -0,0 +1,16 @@ +{ + "type": "filament", + "name": "Anker Generic ABS 0.25 nozzle", + "inherits": "Anker Generic ABS @base", + "from": "system", + "setting_id": "GFSB99_25", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "3" + ], + "compatible_printers": [ + "Anker M5 0.25 nozzle", + "Anker M5 All-Metal 0.25 nozzle", + "Anker M5C 0.25 nozzle" + ] +} diff --git a/resources/profiles/Anker/filament/Anker Generic ASA 0.2 nozzle.json b/resources/profiles/Anker/filament/Anker Generic ASA 0.2 nozzle.json new file mode 100644 index 00000000000..064ffd85a9c --- /dev/null +++ b/resources/profiles/Anker/filament/Anker Generic ASA 0.2 nozzle.json @@ -0,0 +1,16 @@ +{ + "type": "filament", + "name": "Anker Generic ASA 0.2 nozzle", + "inherits": "Anker Generic ASA @base", + "from": "system", + "setting_id": "GFSB98_20", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "2" + ], + "compatible_printers": [ + "Anker M5 0.2 nozzle", + "Anker M5 All-Metal 0.2 nozzle", + "Anker M5C 0.2 nozzle" + ] +} diff --git a/resources/profiles/Anker/filament/Anker Generic ASA 0.25 nozzle.json b/resources/profiles/Anker/filament/Anker Generic ASA 0.25 nozzle.json new file mode 100644 index 00000000000..a99b9f430a2 --- /dev/null +++ b/resources/profiles/Anker/filament/Anker Generic ASA 0.25 nozzle.json @@ -0,0 +1,16 @@ +{ + "type": "filament", + "name": "Anker Generic ASA 0.25 nozzle", + "inherits": "Anker Generic ASA @base", + "from": "system", + "setting_id": "GFSB98_25", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "3" + ], + "compatible_printers": [ + "Anker M5 0.25 nozzle", + "Anker M5 All-Metal 0.25 nozzle", + "Anker M5C 0.25 nozzle" + ] +} diff --git a/resources/profiles/Anker/filament/Anker Generic ASA @base.json b/resources/profiles/Anker/filament/Anker Generic ASA @base.json index 04ad2a2a273..ed4dea3c665 100644 --- a/resources/profiles/Anker/filament/Anker Generic ASA @base.json +++ b/resources/profiles/Anker/filament/Anker Generic ASA @base.json @@ -1,4 +1,3 @@ - { "type": "filament", "name": "Anker Generic ASA @base", diff --git a/resources/profiles/Anker/filament/Anker Generic PA 0.2 nozzle.json b/resources/profiles/Anker/filament/Anker Generic PA 0.2 nozzle.json new file mode 100644 index 00000000000..26a2f33bea3 --- /dev/null +++ b/resources/profiles/Anker/filament/Anker Generic PA 0.2 nozzle.json @@ -0,0 +1,15 @@ +{ + "type": "filament", + "name": "Anker Generic PA 0.2 nozzle", + "inherits": "Anker Generic PA @base", + "from": "system", + "setting_id": "GFSN99_20", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "2" + ], + "compatible_printers": [ + "Anker M5 All-Metal 0.2 nozzle", + "Anker M5C 0.2 nozzle" + ] +} diff --git a/resources/profiles/Anker/filament/Anker Generic PA 0.25 nozzle.json b/resources/profiles/Anker/filament/Anker Generic PA 0.25 nozzle.json new file mode 100644 index 00000000000..3239bae530c --- /dev/null +++ b/resources/profiles/Anker/filament/Anker Generic PA 0.25 nozzle.json @@ -0,0 +1,15 @@ +{ + "type": "filament", + "name": "Anker Generic PA 0.25 nozzle", + "inherits": "Anker Generic PA @base", + "from": "system", + "setting_id": "GFSN99_25", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "3" + ], + "compatible_printers": [ + "Anker M5 All-Metal 0.25 nozzle", + "Anker M5C 0.25 nozzle" + ] +} diff --git a/resources/profiles/Anker/filament/Anker Generic PA-CF @base.json b/resources/profiles/Anker/filament/Anker Generic PA-CF @base.json index 0cdfbf7a880..e7fe9996023 100644 --- a/resources/profiles/Anker/filament/Anker Generic PA-CF @base.json +++ b/resources/profiles/Anker/filament/Anker Generic PA-CF @base.json @@ -5,6 +5,9 @@ "from": "system", "filament_id": "GFN98", "instantiation": "false", + "filament_type": [ + "PA-CF" + ], "required_nozzle_HRC": [ "40" ], diff --git a/resources/profiles/Anker/filament/Anker Generic PC 0.2 nozzle.json b/resources/profiles/Anker/filament/Anker Generic PC 0.2 nozzle.json new file mode 100644 index 00000000000..964f9d31981 --- /dev/null +++ b/resources/profiles/Anker/filament/Anker Generic PC 0.2 nozzle.json @@ -0,0 +1,15 @@ +{ + "type": "filament", + "name": "Anker Generic PC 0.2 nozzle", + "inherits": "Anker Generic PC @base", + "from": "system", + "setting_id": "GFSC99_20", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "2" + ], + "compatible_printers": [ + "Anker M5 All-Metal 0.2 nozzle", + "Anker M5C 0.2 nozzle" + ] +} diff --git a/resources/profiles/Anker/filament/Anker Generic PC 0.25 nozzle.json b/resources/profiles/Anker/filament/Anker Generic PC 0.25 nozzle.json new file mode 100644 index 00000000000..4033e6f2963 --- /dev/null +++ b/resources/profiles/Anker/filament/Anker Generic PC 0.25 nozzle.json @@ -0,0 +1,15 @@ +{ + "type": "filament", + "name": "Anker Generic PC 0.25 nozzle", + "inherits": "Anker Generic PC @base", + "from": "system", + "setting_id": "GFSC99_25", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "3" + ], + "compatible_printers": [ + "Anker M5 All-Metal 0.25 nozzle", + "Anker M5C 0.25 nozzle" + ] +} diff --git a/resources/profiles/Anker/filament/Anker Generic PETG 0.2 nozzle.json b/resources/profiles/Anker/filament/Anker Generic PETG 0.2 nozzle.json new file mode 100644 index 00000000000..9bd35a3f2ae --- /dev/null +++ b/resources/profiles/Anker/filament/Anker Generic PETG 0.2 nozzle.json @@ -0,0 +1,16 @@ +{ + "type": "filament", + "name": "Anker Generic PETG 0.2 nozzle", + "inherits": "Anker Generic PETG @base", + "from": "system", + "setting_id": "GFSG99_20", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "2" + ], + "compatible_printers": [ + "Anker M5 0.2 nozzle", + "Anker M5 All-Metal 0.2 nozzle", + "Anker M5C 0.2 nozzle" + ] +} diff --git a/resources/profiles/Anker/filament/Anker Generic PETG 0.25 nozzle.json b/resources/profiles/Anker/filament/Anker Generic PETG 0.25 nozzle.json new file mode 100644 index 00000000000..1b63460942c --- /dev/null +++ b/resources/profiles/Anker/filament/Anker Generic PETG 0.25 nozzle.json @@ -0,0 +1,16 @@ +{ + "type": "filament", + "name": "Anker Generic PETG 0.25 nozzle", + "inherits": "Anker Generic PETG @base", + "from": "system", + "setting_id": "GFSG99_25", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "3" + ], + "compatible_printers": [ + "Anker M5 0.25 nozzle", + "Anker M5 All-Metal 0.25 nozzle", + "Anker M5C 0.25 nozzle" + ] +} diff --git a/resources/profiles/Anker/filament/Anker Generic PETG @base.json b/resources/profiles/Anker/filament/Anker Generic PETG @base.json index 423a37eeb23..a939763c3c5 100644 --- a/resources/profiles/Anker/filament/Anker Generic PETG @base.json +++ b/resources/profiles/Anker/filament/Anker Generic PETG @base.json @@ -3,6 +3,9 @@ "name": "Anker Generic PETG @base", "inherits": "fdm_filament_pet", "from": "system", + "filament_type": [ + "PETG" + ], "filament_id": "GFG99", "instantiation": "false", "filament_retraction_speed": "20", diff --git a/resources/profiles/Anker/filament/Anker Generic PETG-CF @base.json b/resources/profiles/Anker/filament/Anker Generic PETG-CF @base.json index 4371bb775dc..be0c3366653 100644 --- a/resources/profiles/Anker/filament/Anker Generic PETG-CF @base.json +++ b/resources/profiles/Anker/filament/Anker Generic PETG-CF @base.json @@ -5,6 +5,9 @@ "from": "system", "filament_id": "GFG98", "instantiation": "false", + "filament_type": [ + "PETG-CF" + ], "required_nozzle_HRC": [ "40" ], diff --git a/resources/profiles/Anker/filament/Anker Generic PLA 0.2 nozzle.json b/resources/profiles/Anker/filament/Anker Generic PLA 0.2 nozzle.json new file mode 100644 index 00000000000..104e6ba0382 --- /dev/null +++ b/resources/profiles/Anker/filament/Anker Generic PLA 0.2 nozzle.json @@ -0,0 +1,16 @@ +{ + "type": "filament", + "name": "Anker Generic PLA 0.2 nozzle", + "inherits": "Anker Generic PLA @base", + "from": "system", + "setting_id": "GFSL99_20", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "2" + ], + "compatible_printers": [ + "Anker M5 0.2 nozzle", + "Anker M5 All-Metal 0.2 nozzle", + "Anker M5C 0.2 nozzle" + ] +} diff --git a/resources/profiles/Anker/filament/Anker Generic PLA 0.25 nozzle.json b/resources/profiles/Anker/filament/Anker Generic PLA 0.25 nozzle.json new file mode 100644 index 00000000000..cf98fccdc4d --- /dev/null +++ b/resources/profiles/Anker/filament/Anker Generic PLA 0.25 nozzle.json @@ -0,0 +1,16 @@ +{ + "type": "filament", + "name": "Anker Generic PLA 0.25 nozzle", + "inherits": "Anker Generic PLA @base", + "from": "system", + "setting_id": "GFSL99_25", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "3" + ], + "compatible_printers": [ + "Anker M5 0.25 nozzle", + "Anker M5 All-Metal 0.25 nozzle", + "Anker M5C 0.25 nozzle" + ] +} diff --git a/resources/profiles/Anker/filament/Anker Generic PLA Silk 0.2 nozzle.json b/resources/profiles/Anker/filament/Anker Generic PLA Silk 0.2 nozzle.json new file mode 100644 index 00000000000..57c740ff8ac --- /dev/null +++ b/resources/profiles/Anker/filament/Anker Generic PLA Silk 0.2 nozzle.json @@ -0,0 +1,16 @@ +{ + "type": "filament", + "name": "Anker Generic PLA Silk 0.2 nozzle", + "inherits": "Anker Generic PLA Silk @base", + "from": "system", + "setting_id": "GFSL96_20", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "2" + ], + "compatible_printers": [ + "Anker M5 0.2 nozzle", + "Anker M5 All-Metal 0.2 nozzle", + "Anker M5C 0.2 nozzle" + ] +} diff --git a/resources/profiles/Anker/filament/Anker Generic PLA Silk 0.25 nozzle.json b/resources/profiles/Anker/filament/Anker Generic PLA Silk 0.25 nozzle.json new file mode 100644 index 00000000000..8b4601ebabe --- /dev/null +++ b/resources/profiles/Anker/filament/Anker Generic PLA Silk 0.25 nozzle.json @@ -0,0 +1,16 @@ +{ + "type": "filament", + "name": "Anker Generic PLA Silk 0.25 nozzle", + "inherits": "Anker Generic PLA Silk @base", + "from": "system", + "setting_id": "GFSL96_25", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "3" + ], + "compatible_printers": [ + "Anker M5 0.25 nozzle", + "Anker M5 All-Metal 0.25 nozzle", + "Anker M5C 0.25 nozzle" + ] +} diff --git a/resources/profiles/Anker/filament/Anker Generic PLA+ 0.2 nozzle.json b/resources/profiles/Anker/filament/Anker Generic PLA+ 0.2 nozzle.json new file mode 100644 index 00000000000..62667fc745a --- /dev/null +++ b/resources/profiles/Anker/filament/Anker Generic PLA+ 0.2 nozzle.json @@ -0,0 +1,16 @@ +{ + "type": "filament", + "name": "Anker Generic PLA+ 0.2 nozzle", + "inherits": "Anker Generic PLA+ @base", + "from": "system", + "setting_id": "GFSL95_20", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "2" + ], + "compatible_printers": [ + "Anker M5 0.2 nozzle", + "Anker M5 All-Metal 0.2 nozzle", + "Anker M5C 0.2 nozzle" + ] +} diff --git a/resources/profiles/Anker/filament/Anker Generic PLA+ 0.25 nozzle.json b/resources/profiles/Anker/filament/Anker Generic PLA+ 0.25 nozzle.json new file mode 100644 index 00000000000..6107a53cbb3 --- /dev/null +++ b/resources/profiles/Anker/filament/Anker Generic PLA+ 0.25 nozzle.json @@ -0,0 +1,16 @@ +{ + "type": "filament", + "name": "Anker Generic PLA+ 0.25 nozzle", + "inherits": "Anker Generic PLA+ @base", + "from": "system", + "setting_id": "GFSL95_25", + "instantiation": "true", + "filament_max_volumetric_speed": [ + "3" + ], + "compatible_printers": [ + "Anker M5 0.25 nozzle", + "Anker M5 All-Metal 0.25 nozzle", + "Anker M5C 0.25 nozzle" + ] +} diff --git a/resources/profiles/Anker/filament/Anker Generic PLA-CF @base.json b/resources/profiles/Anker/filament/Anker Generic PLA-CF @base.json index acaf05617fb..ad942bf160c 100644 --- a/resources/profiles/Anker/filament/Anker Generic PLA-CF @base.json +++ b/resources/profiles/Anker/filament/Anker Generic PLA-CF @base.json @@ -5,6 +5,9 @@ "from": "system", "filament_id": "GFL98", "instantiation": "false", + "filament_type": [ + "PLA-CF" + ], "required_nozzle_HRC": [ "40" ], diff --git a/resources/profiles/Anker/machine/Anker M5 0.2 nozzle.json b/resources/profiles/Anker/machine/Anker M5 0.2 nozzle.json new file mode 100644 index 00000000000..1c21b4d2b31 --- /dev/null +++ b/resources/profiles/Anker/machine/Anker M5 0.2 nozzle.json @@ -0,0 +1,40 @@ +{ + "type": "machine", + "name": "Anker M5 0.2 nozzle", + "inherits": "fdm_marlin_common", + "from": "system", + "setting_id": "GM004", + "instantiation": "true", + "nozzle_diameter": [ + "0.2" + ], + "max_layer_height": [ + "0.16" + ], + "printer_model": "Anker M5", + "printer_variant": "0.2", + "auxiliary_fan": "0", + "bed_exclude_area": [], + "printer_structure": "i3", + "default_filament_profile": [ + "Anker Generic PLA+" + ], + "default_print_profile": "0.10mm Standard 0.2mm nozzle @Anker", + "extruder_clearance_height_to_lid": "250", + "extruder_clearance_height_to_rod": "30", + "extruder_clearance_max_radius": "45", + "extruder_clearance_radius": "45", + "printer_structure": "i3", + "nozzle_type": "brass", + "printable_height": "250", + "printable_area": [ + "0x0", + "235x0", + "235x235", + "0x235" + ], + "retraction_length": [ + "0.75" + ], + "upward_compatible_machine": [] +} diff --git a/resources/profiles/Anker/machine/Anker M5 0.25 nozzle.json b/resources/profiles/Anker/machine/Anker M5 0.25 nozzle.json new file mode 100644 index 00000000000..f63ef573d46 --- /dev/null +++ b/resources/profiles/Anker/machine/Anker M5 0.25 nozzle.json @@ -0,0 +1,40 @@ +{ + "type": "machine", + "name": "Anker M5 0.25 nozzle", + "inherits": "fdm_marlin_common", + "from": "system", + "setting_id": "GM007", + "instantiation": "true", + "nozzle_diameter": [ + "0.25" + ], + "max_layer_height": [ + "0.16" + ], + "printer_model": "Anker M5", + "printer_variant": "0.25", + "auxiliary_fan": "0", + "bed_exclude_area": [], + "printer_structure": "i3", + "default_filament_profile": [ + "Anker Generic PLA+" + ], + "default_print_profile": "0.10mm Standard 0.25mm nozzle @Anker", + "extruder_clearance_height_to_lid": "250", + "extruder_clearance_height_to_rod": "30", + "extruder_clearance_max_radius": "45", + "extruder_clearance_radius": "45", + "printer_structure": "i3", + "nozzle_type": "brass", + "printable_height": "250", + "printable_area": [ + "0x0", + "235x0", + "235x235", + "0x235" + ], + "retraction_length": [ + "0.75" + ], + "upward_compatible_machine": [] +} diff --git a/resources/profiles/Anker/machine/Anker M5 All-Metal 0.2 nozzle.json b/resources/profiles/Anker/machine/Anker M5 All-Metal 0.2 nozzle.json new file mode 100644 index 00000000000..1874ea77db1 --- /dev/null +++ b/resources/profiles/Anker/machine/Anker M5 All-Metal 0.2 nozzle.json @@ -0,0 +1,40 @@ +{ + "type": "machine", + "name": "Anker M5 All-Metal 0.2 nozzle", + "inherits": "fdm_marlin_common", + "from": "system", + "setting_id": "GM005", + "instantiation": "true", + "nozzle_diameter": [ + "0.2" + ], + "max_layer_height": [ + "0.16" + ], + "printer_model": "Anker M5 All-Metal Hot End", + "printer_variant": "0.2", + "auxiliary_fan": "0", + "bed_exclude_area": [], + "printer_structure": "i3", + "default_filament_profile": [ + "Anker Generic PLA+" + ], + "default_print_profile": "0.10mm Standard 0.2mm nozzle @Anker", + "extruder_clearance_height_to_lid": "250", + "extruder_clearance_height_to_rod": "30", + "extruder_clearance_max_radius": "45", + "extruder_clearance_radius": "45", + "printer_structure": "i3", + "nozzle_type": "brass", + "printable_height": "250", + "printable_area": [ + "0x0", + "235x0", + "235x235", + "0x235" + ], + "retraction_length": [ + "0.3" + ], + "upward_compatible_machine": [] +} diff --git a/resources/profiles/Anker/machine/Anker M5 All-Metal 0.25 nozzle.json b/resources/profiles/Anker/machine/Anker M5 All-Metal 0.25 nozzle.json new file mode 100644 index 00000000000..55534d9eb1f --- /dev/null +++ b/resources/profiles/Anker/machine/Anker M5 All-Metal 0.25 nozzle.json @@ -0,0 +1,40 @@ +{ + "type": "machine", + "name": "Anker M5 All-Metal 0.25 nozzle", + "inherits": "fdm_marlin_common", + "from": "system", + "setting_id": "GM008", + "instantiation": "true", + "nozzle_diameter": [ + "0.25" + ], + "max_layer_height": [ + "0.16" + ], + "printer_model": "Anker M5 All-Metal Hot End", + "printer_variant": "0.25", + "auxiliary_fan": "0", + "bed_exclude_area": [], + "printer_structure": "i3", + "default_filament_profile": [ + "Anker Generic PLA+" + ], + "default_print_profile": "0.10mm Standard 0.25mm nozzle @Anker", + "extruder_clearance_height_to_lid": "250", + "extruder_clearance_height_to_rod": "30", + "extruder_clearance_max_radius": "45", + "extruder_clearance_radius": "45", + "printer_structure": "i3", + "nozzle_type": "brass", + "printable_height": "250", + "printable_area": [ + "0x0", + "235x0", + "235x235", + "0x235" + ], + "retraction_length": [ + "0.3" + ], + "upward_compatible_machine": [] +} diff --git a/resources/profiles/Anker/machine/Anker M5 All-Metal Hot End.json b/resources/profiles/Anker/machine/Anker M5 All-Metal Hot End.json index 4e3b6a9a0bc..763ab3ebe50 100644 --- a/resources/profiles/Anker/machine/Anker M5 All-Metal Hot End.json +++ b/resources/profiles/Anker/machine/Anker M5 All-Metal Hot End.json @@ -1,7 +1,7 @@ { "type": "machine_model", "name": "Anker M5 All-Metal Hot End", - "nozzle_diameter": "0.4", + "nozzle_diameter": "0.2;0.25;0.4", "bed_model": "M5-CE-bed.stl", "bed_texture": "M5-CE-texture.svg", "family": "Anker", diff --git a/resources/profiles/Anker/machine/Anker M5.json b/resources/profiles/Anker/machine/Anker M5.json index 1754708dde7..9e47bfc0a18 100644 --- a/resources/profiles/Anker/machine/Anker M5.json +++ b/resources/profiles/Anker/machine/Anker M5.json @@ -1,7 +1,7 @@ { "type": "machine_model", "name": "Anker M5", - "nozzle_diameter": "0.4", + "nozzle_diameter": "0.2;0.25;0.4", "bed_model": "M5-CE-bed.stl", "bed_texture": "M5-CE-texture.svg", "family": "Anker", diff --git a/resources/profiles/Anker/machine/Anker M5C 0.2 nozzle.json b/resources/profiles/Anker/machine/Anker M5C 0.2 nozzle.json new file mode 100644 index 00000000000..f6c067f96cf --- /dev/null +++ b/resources/profiles/Anker/machine/Anker M5C 0.2 nozzle.json @@ -0,0 +1,40 @@ +{ + "type": "machine", + "name": "Anker M5C 0.2 nozzle", + "inherits": "fdm_marlin_common", + "from": "system", + "setting_id": "GM006", + "instantiation": "true", + "nozzle_diameter": [ + "0.2" + ], + "max_layer_height": [ + "0.16" + ], + "printer_model": "Anker M5C", + "printer_variant": "0.2", + "auxiliary_fan": "0", + "bed_exclude_area": [], + "printer_structure": "i3", + "default_filament_profile": [ + "Anker Generic PLA+" + ], + "default_print_profile": "0.10mm Standard 0.2mm nozzle @Anker", + "extruder_clearance_height_to_lid": "250", + "extruder_clearance_height_to_rod": "30", + "extruder_clearance_max_radius": "45", + "extruder_clearance_radius": "45", + "printer_structure": "i3", + "nozzle_type": "brass", + "printable_height": "250", + "printable_area": [ + "0x0", + "220x0", + "220x220", + "0x220" + ], + "retraction_length": [ + "0.4" + ], + "upward_compatible_machine": [] +} diff --git a/resources/profiles/Anker/machine/Anker M5C 0.25 nozzle.json b/resources/profiles/Anker/machine/Anker M5C 0.25 nozzle.json new file mode 100644 index 00000000000..c0002ad5eed --- /dev/null +++ b/resources/profiles/Anker/machine/Anker M5C 0.25 nozzle.json @@ -0,0 +1,40 @@ +{ + "type": "machine", + "name": "Anker M5C 0.25 nozzle", + "inherits": "fdm_marlin_common", + "from": "system", + "setting_id": "GM009", + "instantiation": "true", + "nozzle_diameter": [ + "0.25" + ], + "max_layer_height": [ + "0.16" + ], + "printer_model": "Anker M5C", + "printer_variant": "0.25", + "auxiliary_fan": "0", + "bed_exclude_area": [], + "printer_structure": "i3", + "default_filament_profile": [ + "Anker Generic PLA+" + ], + "default_print_profile": "0.10mm Standard 0.25mm nozzle @Anker", + "extruder_clearance_height_to_lid": "250", + "extruder_clearance_height_to_rod": "30", + "extruder_clearance_max_radius": "45", + "extruder_clearance_radius": "45", + "printer_structure": "i3", + "nozzle_type": "brass", + "printable_height": "250", + "printable_area": [ + "0x0", + "220x0", + "220x220", + "0x220" + ], + "retraction_length": [ + "0.4" + ], + "upward_compatible_machine": [] +} diff --git a/resources/profiles/Anker/machine/Anker M5C.json b/resources/profiles/Anker/machine/Anker M5C.json index 76c373187fa..645acd47633 100644 --- a/resources/profiles/Anker/machine/Anker M5C.json +++ b/resources/profiles/Anker/machine/Anker M5C.json @@ -1,7 +1,7 @@ { "type": "machine_model", "name": "Anker M5C", - "nozzle_diameter": "0.4", + "nozzle_diameter": "0.2;0.25;0.4", "bed_model": "M5C-CE-bed.stl", "bed_texture": "M5-CE-texture.svg", "family": "Anker", diff --git a/resources/profiles/Anker/machine/fdm_machine_common.json b/resources/profiles/Anker/machine/fdm_machine_common.json index cd9cc56d3a6..5f4fcd9a75c 100644 --- a/resources/profiles/Anker/machine/fdm_machine_common.json +++ b/resources/profiles/Anker/machine/fdm_machine_common.json @@ -101,6 +101,7 @@ "60" ], "single_extruder_multi_material": "1", + "manual_filament_change": "1", "support_air_filtration": "0", "wipe": [ "1" diff --git a/resources/profiles/Anker/process/0.05mm Optimal 0.2 nozzle @Anker.json b/resources/profiles/Anker/process/0.05mm Optimal 0.2 nozzle @Anker.json new file mode 100644 index 00000000000..8090cfaaa12 --- /dev/null +++ b/resources/profiles/Anker/process/0.05mm Optimal 0.2 nozzle @Anker.json @@ -0,0 +1,14 @@ +{ + "type": "process", + "setting_id": "GP010", + "name": "0.05mm Optimal 0.2 nozzle @Anker", + "from": "system", + "inherits": "fdm_process_anker_common_0_2", + "instantiation": "true", + "layer_height": "0.05", + "initial_layer_print_height": "0.15", + "bottom_shell_layers": "10", + "top_shell_layers": "14", + "bridge_flow": "0.75", + "skirt_height": "3" +} diff --git a/resources/profiles/Anker/process/0.05mm Optimal 0.25 nozzle @Anker.json b/resources/profiles/Anker/process/0.05mm Optimal 0.25 nozzle @Anker.json new file mode 100644 index 00000000000..a41b02a31e6 --- /dev/null +++ b/resources/profiles/Anker/process/0.05mm Optimal 0.25 nozzle @Anker.json @@ -0,0 +1,14 @@ +{ + "type": "process", + "setting_id": "GP013", + "name": "0.05mm Optimal 0.25 nozzle @Anker", + "from": "system", + "inherits": "fdm_process_anker_common_0_25", + "instantiation": "true", + "layer_height": "0.05", + "initial_layer_print_height": "0.15", + "bottom_shell_layers": "10", + "top_shell_layers": "14", + "bridge_flow": "0.75", + "skirt_height": "3" +} diff --git a/resources/profiles/Anker/process/0.10mm Standard 0.2 nozzle @Anker.json b/resources/profiles/Anker/process/0.10mm Standard 0.2 nozzle @Anker.json new file mode 100644 index 00000000000..de1cfc61118 --- /dev/null +++ b/resources/profiles/Anker/process/0.10mm Standard 0.2 nozzle @Anker.json @@ -0,0 +1,14 @@ +{ + "type": "process", + "setting_id": "GP011", + "name": "0.10mm Standard 0.2 nozzle @Anker", + "from": "system", + "inherits": "fdm_process_anker_common_0_2", + "instantiation": "true", + "layer_height": "0.10", + "initial_layer_print_height": "0.15", + "bottom_shell_layers": "7", + "top_shell_layers": "9", + "bridge_flow": "0.75", + "skirt_height": "3" +} diff --git a/resources/profiles/Anker/process/0.10mm Standard 0.25 nozzle @Anker.json b/resources/profiles/Anker/process/0.10mm Standard 0.25 nozzle @Anker.json new file mode 100644 index 00000000000..11daf8e7466 --- /dev/null +++ b/resources/profiles/Anker/process/0.10mm Standard 0.25 nozzle @Anker.json @@ -0,0 +1,14 @@ +{ + "type": "process", + "setting_id": "GP014", + "name": "0.10mm Standard 0.25 nozzle @Anker", + "from": "system", + "inherits": "fdm_process_anker_common_0_25", + "instantiation": "true", + "layer_height": "0.10", + "initial_layer_print_height": "0.15", + "bottom_shell_layers": "7", + "top_shell_layers": "9", + "bridge_flow": "0.75", + "skirt_height": "3" +} diff --git a/resources/profiles/Anker/process/0.15mm Draft 0.2 nozzle @Anker.json b/resources/profiles/Anker/process/0.15mm Draft 0.2 nozzle @Anker.json new file mode 100644 index 00000000000..0c94bf52972 --- /dev/null +++ b/resources/profiles/Anker/process/0.15mm Draft 0.2 nozzle @Anker.json @@ -0,0 +1,13 @@ +{ + "type": "process", + "setting_id": "GP012", + "name": "0.15mm Draft 0.2 nozzle @Anker", + "from": "system", + "inherits": "fdm_process_anker_common_0_2", + "instantiation": "true", + "layer_height": "0.15", + "initial_layer_print_height": "0.15", + "bottom_shell_layers": "5", + "top_shell_layers": "6", + "bridge_flow": "0.85" +} diff --git a/resources/profiles/Anker/process/0.15mm Draft 0.25 nozzle @Anker.json b/resources/profiles/Anker/process/0.15mm Draft 0.25 nozzle @Anker.json new file mode 100644 index 00000000000..28dcbb46728 --- /dev/null +++ b/resources/profiles/Anker/process/0.15mm Draft 0.25 nozzle @Anker.json @@ -0,0 +1,13 @@ +{ + "type": "process", + "setting_id": "GP015", + "name": "0.15mm Draft 0.25 nozzle @Anker", + "from": "system", + "inherits": "fdm_process_anker_common_0_25", + "instantiation": "true", + "layer_height": "0.15", + "initial_layer_print_height": "0.15", + "bottom_shell_layers": "5", + "top_shell_layers": "6", + "bridge_flow": "0.85" +} diff --git a/resources/profiles/Anker/process/fdm_process_anker_common_0_2.json b/resources/profiles/Anker/process/fdm_process_anker_common_0_2.json new file mode 100644 index 00000000000..e6d05545653 --- /dev/null +++ b/resources/profiles/Anker/process/fdm_process_anker_common_0_2.json @@ -0,0 +1,24 @@ +{ + "type": "process", + "name": "fdm_process_anker_common_0_2", + "from": "system", + "instantiation": "false", + "inherits": "fdm_process_common", + "line_width": "0.22", + "initial_layer_line_width": "0.25", + "outer_wall_line_width": "0.22", + "inner_wall_line_width": "0.22", + "top_surface_line_width": "0.22", + "sparse_infill_line_width": "0.22", + "internal_solid_infill_line_width": "0.22", + "support_line_width": "0.22", + "bridge_flow": "0.98", + "support_threshold_angle": "30", + "support_top_z_distance": "0.15", + "support_bottom_z_distance": "0.15", + "compatible_printers": [ + "Anker M5 0.2 nozzle", + "Anker M5 All-Metal 0.2 nozzle", + "Anker M5C 0.2 nozzle" + ] +} diff --git a/resources/profiles/Anker/process/fdm_process_anker_common_0_25.json b/resources/profiles/Anker/process/fdm_process_anker_common_0_25.json new file mode 100644 index 00000000000..4952572b39f --- /dev/null +++ b/resources/profiles/Anker/process/fdm_process_anker_common_0_25.json @@ -0,0 +1,24 @@ +{ + "type": "process", + "name": "fdm_process_anker_common_0_25", + "from": "system", + "instantiation": "false", + "inherits": "fdm_process_common", + "line_width": "0.27", + "initial_layer_line_width": "0.28", + "outer_wall_line_width": "0.27", + "inner_wall_line_width": "0.27", + "top_surface_line_width": "0.27", + "sparse_infill_line_width": "0.27", + "internal_solid_infill_line_width": "0.27", + "support_line_width": "0.27", + "bridge_flow": "0.98", + "support_threshold_angle": "30", + "support_top_z_distance": "0.15", + "support_bottom_z_distance": "0.15", + "compatible_printers": [ + "Anker M5 0.25 nozzle", + "Anker M5 All-Metal 0.25 nozzle", + "Anker M5C 0.25 nozzle" + ] +} diff --git a/resources/profiles/Creality/Creality CR-10 Max_cover.png b/resources/profiles/Creality/Creality CR-10 Max_cover.png index 0a2ca615857..10dae6bad00 100644 Binary files a/resources/profiles/Creality/Creality CR-10 Max_cover.png and b/resources/profiles/Creality/Creality CR-10 Max_cover.png differ diff --git a/resources/profiles/Creality/Creality CR-10 V2_cover.png b/resources/profiles/Creality/Creality CR-10 V2_cover.png index e24ae8de163..cb1cb5b50a9 100644 Binary files a/resources/profiles/Creality/Creality CR-10 V2_cover.png and b/resources/profiles/Creality/Creality CR-10 V2_cover.png differ diff --git a/resources/profiles/Creality/Creality CR-6 Max_cover.png b/resources/profiles/Creality/Creality CR-6 Max_cover.png index a0aa2d2725f..d4a2821d13b 100644 Binary files a/resources/profiles/Creality/Creality CR-6 Max_cover.png and b/resources/profiles/Creality/Creality CR-6 Max_cover.png differ diff --git a/resources/profiles/Creality/Creality CR-6 SE_cover.png b/resources/profiles/Creality/Creality CR-6 SE_cover.png index 35c6e318cf5..e5935b71255 100644 Binary files a/resources/profiles/Creality/Creality CR-6 SE_cover.png and b/resources/profiles/Creality/Creality CR-6 SE_cover.png differ diff --git a/resources/profiles/Creality/Creality Ender-3 S1 Pro_cover.png b/resources/profiles/Creality/Creality Ender-3 S1 Pro_cover.png index 50365f3711a..464c23659f9 100644 Binary files a/resources/profiles/Creality/Creality Ender-3 S1 Pro_cover.png and b/resources/profiles/Creality/Creality Ender-3 S1 Pro_cover.png differ diff --git a/resources/profiles/Creality/Creality Ender-3 S1_cover.png b/resources/profiles/Creality/Creality Ender-3 S1_cover.png index b93f155408d..e6e46c39bbe 100644 Binary files a/resources/profiles/Creality/Creality Ender-3 S1_cover.png and b/resources/profiles/Creality/Creality Ender-3 S1_cover.png differ diff --git a/resources/profiles/Creality/Creality Ender-3 V2 Neo_cover.png b/resources/profiles/Creality/Creality Ender-3 V2 Neo_cover.png index 390bfe590c5..d02234a4495 100644 Binary files a/resources/profiles/Creality/Creality Ender-3 V2 Neo_cover.png and b/resources/profiles/Creality/Creality Ender-3 V2 Neo_cover.png differ diff --git a/resources/profiles/Creality/Creality Ender-3 V2_cover.png b/resources/profiles/Creality/Creality Ender-3 V2_cover.png index 173ea9eb983..3cdf3804f22 100644 Binary files a/resources/profiles/Creality/Creality Ender-3 V2_cover.png and b/resources/profiles/Creality/Creality Ender-3 V2_cover.png differ diff --git a/resources/profiles/Creality/Creality Ender-3 V3 KE_cover.png b/resources/profiles/Creality/Creality Ender-3 V3 KE_cover.png index 7f468114509..57faa3e4b1e 100644 Binary files a/resources/profiles/Creality/Creality Ender-3 V3 KE_cover.png and b/resources/profiles/Creality/Creality Ender-3 V3 KE_cover.png differ diff --git a/resources/profiles/Creality/Creality Ender-3_cover.png b/resources/profiles/Creality/Creality Ender-3_cover.png index 21741c6882f..58dee01b1eb 100644 Binary files a/resources/profiles/Creality/Creality Ender-3_cover.png and b/resources/profiles/Creality/Creality Ender-3_cover.png differ diff --git a/resources/profiles/Creality/Creality Ender-5 Plus_cover.png b/resources/profiles/Creality/Creality Ender-5 Plus_cover.png index 0e0531886fe..8c915406488 100644 Binary files a/resources/profiles/Creality/Creality Ender-5 Plus_cover.png and b/resources/profiles/Creality/Creality Ender-5 Plus_cover.png differ diff --git a/resources/profiles/Creality/Creality Ender-5 Pro (2019)_cover.png b/resources/profiles/Creality/Creality Ender-5 Pro (2019)_cover.png index a4d7ff7f7e2..7d0e5841326 100644 Binary files a/resources/profiles/Creality/Creality Ender-5 Pro (2019)_cover.png and b/resources/profiles/Creality/Creality Ender-5 Pro (2019)_cover.png differ diff --git a/resources/profiles/Creality/Creality Ender-5 S1_cover.png b/resources/profiles/Creality/Creality Ender-5 S1_cover.png index 4113ce44bb8..fc5328958d9 100644 Binary files a/resources/profiles/Creality/Creality Ender-5 S1_cover.png and b/resources/profiles/Creality/Creality Ender-5 S1_cover.png differ diff --git a/resources/profiles/Creality/Creality Ender-5S_cover.png b/resources/profiles/Creality/Creality Ender-5S_cover.png index 2e6cb6e8029..2157ce59e74 100644 Binary files a/resources/profiles/Creality/Creality Ender-5S_cover.png and b/resources/profiles/Creality/Creality Ender-5S_cover.png differ diff --git a/resources/profiles/Creality/Creality Ender-5_cover.png b/resources/profiles/Creality/Creality Ender-5_cover.png index 53bd1b50db3..274a590f204 100644 Binary files a/resources/profiles/Creality/Creality Ender-5_cover.png and b/resources/profiles/Creality/Creality Ender-5_cover.png differ diff --git a/resources/profiles/Creality/Creality Ender-6_cover.png b/resources/profiles/Creality/Creality Ender-6_cover.png index 40804f7c792..158c1b0fbf4 100644 Binary files a/resources/profiles/Creality/Creality Ender-6_cover.png and b/resources/profiles/Creality/Creality Ender-6_cover.png differ diff --git a/resources/profiles/Creality/Creality K1 Max_cover.png b/resources/profiles/Creality/Creality K1 Max_cover.png index 51bc19b000a..e4a47a270a8 100644 Binary files a/resources/profiles/Creality/Creality K1 Max_cover.png and b/resources/profiles/Creality/Creality K1 Max_cover.png differ diff --git a/resources/profiles/Creality/creality_cr10max_buildplate_texture.png b/resources/profiles/Creality/creality_cr10max_buildplate_texture.png index f30a89bab46..c87a116ff59 100644 Binary files a/resources/profiles/Creality/creality_cr10max_buildplate_texture.png and b/resources/profiles/Creality/creality_cr10max_buildplate_texture.png differ diff --git a/resources/profiles/Creality/creality_cr10v2_buildplate_texture.png b/resources/profiles/Creality/creality_cr10v2_buildplate_texture.png index 2db4025246a..cc0187671cb 100644 Binary files a/resources/profiles/Creality/creality_cr10v2_buildplate_texture.png and b/resources/profiles/Creality/creality_cr10v2_buildplate_texture.png differ diff --git a/resources/profiles/Creality/creality_cr6se_buildplate_texture.png b/resources/profiles/Creality/creality_cr6se_buildplate_texture.png index 31775044c04..1d9ed77a174 100644 Binary files a/resources/profiles/Creality/creality_cr6se_buildplate_texture.png and b/resources/profiles/Creality/creality_cr6se_buildplate_texture.png differ diff --git a/resources/profiles/Creality/creality_ender3s1_buildplate_texture.png b/resources/profiles/Creality/creality_ender3s1_buildplate_texture.png index 60f628fe6d8..1d9ed77a174 100644 Binary files a/resources/profiles/Creality/creality_ender3s1_buildplate_texture.png and b/resources/profiles/Creality/creality_ender3s1_buildplate_texture.png differ diff --git a/resources/profiles/Creality/creality_ender3s1pro_buildplate_texture.png b/resources/profiles/Creality/creality_ender3s1pro_buildplate_texture.png index 60f628fe6d8..1d9ed77a174 100644 Binary files a/resources/profiles/Creality/creality_ender3s1pro_buildplate_texture.png and b/resources/profiles/Creality/creality_ender3s1pro_buildplate_texture.png differ diff --git a/resources/profiles/Creality/creality_ender3v2_buildplate_texture.png b/resources/profiles/Creality/creality_ender3v2_buildplate_texture.png index 31775044c04..1d9ed77a174 100644 Binary files a/resources/profiles/Creality/creality_ender3v2_buildplate_texture.png and b/resources/profiles/Creality/creality_ender3v2_buildplate_texture.png differ diff --git a/resources/profiles/Creality/creality_ender3v2neo_buildplate_texture.png b/resources/profiles/Creality/creality_ender3v2neo_buildplate_texture.png index 31775044c04..1d9ed77a174 100644 Binary files a/resources/profiles/Creality/creality_ender3v2neo_buildplate_texture.png and b/resources/profiles/Creality/creality_ender3v2neo_buildplate_texture.png differ diff --git a/resources/profiles/Creality/creality_ender3v3ke_buildplate_texture.png b/resources/profiles/Creality/creality_ender3v3ke_buildplate_texture.png index f9d61c63ca1..2e8d441e67b 100644 Binary files a/resources/profiles/Creality/creality_ender3v3ke_buildplate_texture.png and b/resources/profiles/Creality/creality_ender3v3ke_buildplate_texture.png differ diff --git a/resources/profiles/Creality/creality_ender3v3se_buildplate_texture.png b/resources/profiles/Creality/creality_ender3v3se_buildplate_texture.png index f9d61c63ca1..2e8d441e67b 100644 Binary files a/resources/profiles/Creality/creality_ender3v3se_buildplate_texture.png and b/resources/profiles/Creality/creality_ender3v3se_buildplate_texture.png differ diff --git a/resources/profiles/Creality/creality_ender5_buildplate_texture.png b/resources/profiles/Creality/creality_ender5_buildplate_texture.png index 1b25df4af54..1d9ed77a174 100644 Binary files a/resources/profiles/Creality/creality_ender5_buildplate_texture.png and b/resources/profiles/Creality/creality_ender5_buildplate_texture.png differ diff --git a/resources/profiles/Creality/creality_ender5plus_buildplate_texture.png b/resources/profiles/Creality/creality_ender5plus_buildplate_texture.png index 23cae1ad988..2d91111eb50 100644 Binary files a/resources/profiles/Creality/creality_ender5plus_buildplate_texture.png and b/resources/profiles/Creality/creality_ender5plus_buildplate_texture.png differ diff --git a/resources/profiles/Creality/creality_ender5pro_buildplate_texture.png b/resources/profiles/Creality/creality_ender5pro_buildplate_texture.png index 04c348b6e9d..1d9ed77a174 100644 Binary files a/resources/profiles/Creality/creality_ender5pro_buildplate_texture.png and b/resources/profiles/Creality/creality_ender5pro_buildplate_texture.png differ diff --git a/resources/profiles/Creality/creality_ender5s1_buildplate_texture.png b/resources/profiles/Creality/creality_ender5s1_buildplate_texture.png index f9d61c63ca1..2e8d441e67b 100644 Binary files a/resources/profiles/Creality/creality_ender5s1_buildplate_texture.png and b/resources/profiles/Creality/creality_ender5s1_buildplate_texture.png differ diff --git a/resources/profiles/Creality/creality_ender5s_buildplate_texture.png b/resources/profiles/Creality/creality_ender5s_buildplate_texture.png index e5b10ed3f22..1d9ed77a174 100644 Binary files a/resources/profiles/Creality/creality_ender5s_buildplate_texture.png and b/resources/profiles/Creality/creality_ender5s_buildplate_texture.png differ diff --git a/resources/profiles/Creality/creality_ender6_buildplate_texture.png b/resources/profiles/Creality/creality_ender6_buildplate_texture.png index d41c5f4855e..ba7abacd57b 100644 Binary files a/resources/profiles/Creality/creality_ender6_buildplate_texture.png and b/resources/profiles/Creality/creality_ender6_buildplate_texture.png differ diff --git a/resources/profiles/Creality/creality_k1_buildplate_texture.png b/resources/profiles/Creality/creality_k1_buildplate_texture.png index f9d61c63ca1..2e8d441e67b 100644 Binary files a/resources/profiles/Creality/creality_k1_buildplate_texture.png and b/resources/profiles/Creality/creality_k1_buildplate_texture.png differ diff --git a/resources/profiles/Creality/creality_k1c_buildplate_texture.png b/resources/profiles/Creality/creality_k1c_buildplate_texture.png index f9d61c63ca1..2e8d441e67b 100644 Binary files a/resources/profiles/Creality/creality_k1c_buildplate_texture.png and b/resources/profiles/Creality/creality_k1c_buildplate_texture.png differ diff --git a/resources/profiles/Creality/creality_k1max_buildplate_texture.png b/resources/profiles/Creality/creality_k1max_buildplate_texture.png index 4564b197501..259eaa63b92 100644 Binary files a/resources/profiles/Creality/creality_k1max_buildplate_texture.png and b/resources/profiles/Creality/creality_k1max_buildplate_texture.png differ diff --git a/resources/profiles/Elegoo/machine/fdm_neptune_4_common.json b/resources/profiles/Elegoo/machine/fdm_neptune_4_common.json index 48e18c656a4..659cc3c5d1f 100644 --- a/resources/profiles/Elegoo/machine/fdm_neptune_4_common.json +++ b/resources/profiles/Elegoo/machine/fdm_neptune_4_common.json @@ -116,8 +116,6 @@ "deretraction_speed": [ "40" ], - "bridge_speed": "25", - "internal_bridge_speed" : "70", "silent_mode": "0", "single_extruder_multi_material": "1", "change_filament_gcode": "", diff --git a/resources/profiles/InfiMech.json b/resources/profiles/InfiMech.json index cbcf12e5223..180d97cf4ec 100644 --- a/resources/profiles/InfiMech.json +++ b/resources/profiles/InfiMech.json @@ -29,6 +29,10 @@ { "name": "0.24mm Draft @InfiMech TX", "sub_path": "process/0.24mm Draft @InfiMech TX.json" + }, + { + "name": "0.16mm Optimal @InfiMech TX", + "sub_path": "process/0.16mm Optimal @InfiMech TX.json" } ], "filament_list": [ @@ -83,7 +87,72 @@ { "name": "InfiMech Generic PA-CF", "sub_path": "filament/InfiMech Generic PA-CF.json" + }, + + { + "name": "fdm_filament_pla_other", + "sub_path": "filament/fdm_filament_pla_other.json" + }, + { + "name": "Other PLA", + "sub_path": "filament/Other PLA.json" + }, + + { + "name": "fdm_filament_tpu_other", + "sub_path": "filament/fdm_filament_tpu_other.json" + }, + { + "name": "Other TPU", + "sub_path": "filament/Other TPU.json" + }, + + { + "name": "fdm_filament_pa_other", + "sub_path": "filament/fdm_filament_pa_other.json" + }, + { + "name": "Other PA-CF", + "sub_path": "filament/Other PA-CF.json" + }, + + { + "name": "fdm_filament_pet_other", + "sub_path": "filament/fdm_filament_pet_other.json" + }, + { + "name": "Other PETG", + "sub_path": "filament/Other PETG.json" + }, + + { + "name": "fdm_filament_pc_other", + "sub_path": "filament/fdm_filament_pc_other.json" + }, + { + "name": "Other PC", + "sub_path": "filament/Other PC.json" + }, + + { + "name": "fdm_filament_abs_other", + "sub_path": "filament/fdm_filament_abs_other.json" + }, + { + "name": "Other ABS", + "sub_path": "filament/Other ABS.json" + }, + + { + "name": "fdm_filament_pla_Hyper_other", + "sub_path": "filament/fdm_filament_pla_Hyper_other.json" + }, + { + "name": "Other PLA Hyper", + "sub_path": "filament/Other PLA Hyper.json" } + + ], "machine_list": [ { diff --git a/resources/profiles/InfiMech/InfiMech TX_cover.png b/resources/profiles/InfiMech/InfiMech TX_cover.png index 4eded6b5413..3f9c70c03fa 100644 Binary files a/resources/profiles/InfiMech/InfiMech TX_cover.png and b/resources/profiles/InfiMech/InfiMech TX_cover.png differ diff --git a/resources/profiles/InfiMech/filament/InfiMech Generic PA-CF.json b/resources/profiles/InfiMech/filament/InfiMech Generic PA-CF.json index 7501dc341dc..9b87d8fe672 100644 --- a/resources/profiles/InfiMech/filament/InfiMech Generic PA-CF.json +++ b/resources/profiles/InfiMech/filament/InfiMech Generic PA-CF.json @@ -9,15 +9,24 @@ "filament_type": [ "PA-CF" ], - "nozzle_temperature_initial_layer": [ - "280" - ], - "nozzle_temperature": [ - "300" - ], "filament_max_volumetric_speed": [ "8" ], + "filament_flow_ratio": [ + "0.96" + ], + "filament_wipe": [ + "1" + ], + "filament_wipe_distance": [ + "4" + ], + "filament_retract_before_wipe": [ + "0%" + ], + "filament_retraction_length": [ + "0.8" + ], "compatible_printers": [ "InfiMech TX 0.4 nozzle" diff --git a/resources/profiles/InfiMech/filament/InfiMech Generic PC.json b/resources/profiles/InfiMech/filament/InfiMech Generic PC.json index 40de16a00fd..86a99a3691e 100644 --- a/resources/profiles/InfiMech/filament/InfiMech Generic PC.json +++ b/resources/profiles/InfiMech/filament/InfiMech Generic PC.json @@ -10,7 +10,13 @@ "12" ], "filament_flow_ratio": [ - "0.931" + "0.94" + ], + "enable_pressure_advance": [ + "1" + ], + "pressure_advance": [ + "0.058" ], "compatible_printers": [ "InfiMech TX 0.4 nozzle" diff --git a/resources/profiles/InfiMech/filament/InfiMech Generic PETG.json b/resources/profiles/InfiMech/filament/InfiMech Generic PETG.json index aa93cdce1d4..2657c295501 100644 --- a/resources/profiles/InfiMech/filament/InfiMech Generic PETG.json +++ b/resources/profiles/InfiMech/filament/InfiMech Generic PETG.json @@ -19,7 +19,7 @@ "90" ], "overhang_fan_threshold": [ - "25%" + "10%" ], "fan_max_speed": [ "90" @@ -34,7 +34,7 @@ "8" ], "filament_flow_ratio": [ - "0.931" + "0.94" ], "filament_max_volumetric_speed": [ "12" @@ -42,6 +42,12 @@ "filament_start_gcode": [ "; filament start gcode\n" ], + "enable_pressure_advance": [ + "1" + ], + "pressure_advance": [ + "0.084" + ], "compatible_printers": [ "InfiMech TX 0.4 nozzle" ] diff --git a/resources/profiles/InfiMech/filament/InfiMech Generic PLA.json b/resources/profiles/InfiMech/filament/InfiMech Generic PLA.json index 3a0b5646594..1dabc7caff9 100644 --- a/resources/profiles/InfiMech/filament/InfiMech Generic PLA.json +++ b/resources/profiles/InfiMech/filament/InfiMech Generic PLA.json @@ -7,14 +7,17 @@ "instantiation": "true", "inherits": "fdm_filament_pla", "filament_flow_ratio": [ - "0.931" + "0.94" ], "filament_max_volumetric_speed": [ - "26" + "12" ], "slow_down_layer_time": [ "8" ], + "pressure_advance": [ + "0.084" + ], "compatible_printers": [ "InfiMech TX 0.4 nozzle" ] diff --git a/resources/profiles/InfiMech/filament/InfiMech Generic TPU.json b/resources/profiles/InfiMech/filament/InfiMech Generic TPU.json index 604735d9ef2..4eaacad9dfc 100644 --- a/resources/profiles/InfiMech/filament/InfiMech Generic TPU.json +++ b/resources/profiles/InfiMech/filament/InfiMech Generic TPU.json @@ -6,10 +6,19 @@ "from": "system", "instantiation": "true", "inherits": "fdm_filament_tpu", - "filament_max_volumetric_speed": [ - "3.2" - ], - "compatible_printers": [ - "InfiMech TX 0.4 nozzle" - ] + "filament_max_volumetric_speed": [ + "3" + ], + "filament_flow_ratio": [ + "0.94" + ], + "enable_pressure_advance": [ + "1" + ], + "pressure_advance": [ + "0.13" + ], + "compatible_printers": [ + "InfiMech TX 0.4 nozzle" + ] } diff --git a/resources/profiles/InfiMech/filament/InfiMech PLA Hyper.json b/resources/profiles/InfiMech/filament/InfiMech PLA Hyper.json new file mode 100644 index 00000000000..9b9fa9644cc --- /dev/null +++ b/resources/profiles/InfiMech/filament/InfiMech PLA Hyper.json @@ -0,0 +1,27 @@ +{ + "type": "filament", + "filament_id": "GFL99", + "setting_id": "GFSA04", + "name": "InfiMech PLA Hyper", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_pla_Hyper", + "filament_flow_ratio": [ + "0.94" + ], + "filament_max_volumetric_speed": [ + "25" + ], + "slow_down_layer_time": [ + "8" + ], + "enable_pressure_advance": [ + "1" + ], + "pressure_advance": [ + "0.02" + ], + "compatible_printers": [ + "InfiMech TX 0.4 nozzle" + ] +} diff --git a/resources/profiles/InfiMech/filament/Other ABS.json b/resources/profiles/InfiMech/filament/Other ABS.json new file mode 100644 index 00000000000..810dab0a18b --- /dev/null +++ b/resources/profiles/InfiMech/filament/Other ABS.json @@ -0,0 +1,27 @@ +{ + "type": "filament", + "filament_id": "GFB99", + "setting_id": "GFSA04", + "name": "Other ABS", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_abs_other", + "filament_flow_ratio": [ + "0.94" + ], + "filament_max_volumetric_speed": [ + "15" + ], + "enable_pressure_advance": [ + "1" + ], + "pressure_advance": [ + "0.058" + ], + "filament_retraction_length": [ + "0.8" + ], + "compatible_printers": [ + "InfiMech TX 0.4 nozzle" + ] +} diff --git a/resources/profiles/InfiMech/filament/Other PA-CF.json b/resources/profiles/InfiMech/filament/Other PA-CF.json new file mode 100644 index 00000000000..c79d5ce5f6b --- /dev/null +++ b/resources/profiles/InfiMech/filament/Other PA-CF.json @@ -0,0 +1,34 @@ +{ + "type": "filament", + "filament_id": "GFN98", + "setting_id": "GFSA04", + "name": "Other PA-CF", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_pa_other", + "filament_type": [ + "PA-CF" + ], + "filament_max_volumetric_speed": [ + "8" + ], + "filament_flow_ratio": [ + "0.96" + ], + "filament_wipe": [ + "1" + ], + "filament_wipe_distance": [ + "4" + ], + "filament_retract_before_wipe": [ + "0%" + ], + "filament_retraction_length": [ + "0.8" + ], + "compatible_printers": [ + "InfiMech TX 0.4 nozzle" + + ] + } diff --git a/resources/profiles/InfiMech/filament/Other PC.json b/resources/profiles/InfiMech/filament/Other PC.json new file mode 100644 index 00000000000..0eeb2dfb77c --- /dev/null +++ b/resources/profiles/InfiMech/filament/Other PC.json @@ -0,0 +1,24 @@ +{ + "type": "filament", + "filament_id": "GFC99", + "setting_id": "GFSA04", + "name": "Other PC", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_pc_other", + "filament_max_volumetric_speed": [ + "12" + ], + "filament_flow_ratio": [ + "0.94" + ], + "enable_pressure_advance": [ + "1" + ], + "pressure_advance": [ + "0.058" + ], + "compatible_printers": [ + "InfiMech TX 0.4 nozzle" + ] + } diff --git a/resources/profiles/InfiMech/filament/Other PETG.json b/resources/profiles/InfiMech/filament/Other PETG.json new file mode 100644 index 00000000000..7a089f22e37 --- /dev/null +++ b/resources/profiles/InfiMech/filament/Other PETG.json @@ -0,0 +1,54 @@ +{ + "type": "filament", + "filament_id": "GFG99", + "setting_id": "GFSA04", + "name": "Other PETG", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_pet_other", + "reduce_fan_stop_start_freq": [ + "1" + ], + "slow_down_for_layer_cooling": [ + "1" + ], + "fan_cooling_layer_time": [ + "30" + ], + "overhang_fan_speed": [ + "90" + ], + "overhang_fan_threshold": [ + "10%" + ], + "fan_max_speed": [ + "90" + ], + "fan_min_speed": [ + "40" + ], + "slow_down_min_speed": [ + "20" + ], + "slow_down_layer_time": [ + "8" + ], + "filament_flow_ratio": [ + "0.94" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "filament_start_gcode": [ + "; filament start gcode\n" + ], + "enable_pressure_advance": [ + "1" + ], + "pressure_advance": [ + "0.084" + ], + "compatible_printers": [ + "InfiMech TX 0.4 nozzle" + ] +} diff --git a/resources/profiles/InfiMech/filament/Other PLA Hyper.json b/resources/profiles/InfiMech/filament/Other PLA Hyper.json new file mode 100644 index 00000000000..0c479a12add --- /dev/null +++ b/resources/profiles/InfiMech/filament/Other PLA Hyper.json @@ -0,0 +1,27 @@ +{ + "type": "filament", + "filament_id": "GFL99", + "setting_id": "GFSA04", + "name": "Other PLA Hyper", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_pla_Hyper_other", + "filament_flow_ratio": [ + "0.94" + ], + "filament_max_volumetric_speed": [ + "25" + ], + "slow_down_layer_time": [ + "8" + ], + "enable_pressure_advance": [ + "1" + ], + "pressure_advance": [ + "0.02" + ], + "compatible_printers": [ + "InfiMech TX 0.4 nozzle" + ] +} diff --git a/resources/profiles/InfiMech/filament/Other PLA.json b/resources/profiles/InfiMech/filament/Other PLA.json new file mode 100644 index 00000000000..d27fcad1649 --- /dev/null +++ b/resources/profiles/InfiMech/filament/Other PLA.json @@ -0,0 +1,24 @@ +{ + "type": "filament", + "filament_id": "GFL99", + "setting_id": "GFSA04", + "name": "Other PLA", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_pla_other", + "filament_flow_ratio": [ + "0.94" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "slow_down_layer_time": [ + "8" + ], + "pressure_advance": [ + "0.084" + ], + "compatible_printers": [ + "InfiMech TX 0.4 nozzle" + ] +} diff --git a/resources/profiles/InfiMech/filament/Other TPU.json b/resources/profiles/InfiMech/filament/Other TPU.json new file mode 100644 index 00000000000..cf81f2cd6b4 --- /dev/null +++ b/resources/profiles/InfiMech/filament/Other TPU.json @@ -0,0 +1,24 @@ +{ + "type": "filament", + "filament_id": "GFU99", + "setting_id": "GFSA04", + "name": "Other TPU", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_tpu_other", + "filament_max_volumetric_speed": [ + "3" + ], + "filament_flow_ratio": [ + "0.94" + ], + "enable_pressure_advance": [ + "1" + ], + "pressure_advance": [ + "0.13" + ], + "compatible_printers": [ + "InfiMech TX 0.4 nozzle" + ] +} diff --git a/resources/profiles/InfiMech/filament/fdm_filament_abs_other.json b/resources/profiles/InfiMech/filament/fdm_filament_abs_other.json new file mode 100644 index 00000000000..16da216b23f --- /dev/null +++ b/resources/profiles/InfiMech/filament/fdm_filament_abs_other.json @@ -0,0 +1,97 @@ +{ + "type": "filament", + "name": "fdm_filament_abs_other", + "from": "system", + "instantiation": "false", + "inherits": "fdm_filament_common", + "filament_vendor": [ + "Other" + ], + "cool_plate_temp" : [ + "105" + ], + "eng_plate_temp" : [ + "105" + ], + "hot_plate_temp" : [ + "105" + ], + "textured_plate_temp" : [ + "105" + ], + "cool_plate_temp_initial_layer" : [ + "105" + ], + "eng_plate_temp_initial_layer" : [ + "105" + ], + "hot_plate_temp_initial_layer" : [ + "105" + ], + "textured_plate_temp_initial_layer" : [ + "105" + ], + "slow_down_for_layer_cooling": [ + "1" + ], + "close_fan_the_first_x_layers": [ + "3" + ], + "fan_cooling_layer_time": [ + "30" + ], + "filament_type": [ + "ABS" + ], + "filament_density": [ + "1.04" + ], + "filament_cost": [ + "20" + ], + "nozzle_temperature_initial_layer": [ + "250" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "fan_max_speed": [ + "20" + ], + "fan_min_speed": [ + "10" + ], + "overhang_fan_threshold": [ + "25%" + ], + "overhang_fan_speed": [ + "80" + ], + "nozzle_temperature": [ + "250" + ], + "temperature_vitrification": [ + "110" + ], + "nozzle_temperature_range_low": [ + "220" + ], + "nozzle_temperature_range_high": [ + "270" + ], + "slow_down_min_speed": [ + "20" + ], + "activate_air_filtration": [ + "1" + ], + "complete_print_exhaust_fan_speed": [ + "80" + ], + "during_print_exhaust_fan_speed": [ + "100" + ], + "slow_down_layer_time": [ + "5" + ] +} diff --git a/resources/profiles/InfiMech/filament/fdm_filament_common.json b/resources/profiles/InfiMech/filament/fdm_filament_common.json index 9f77975119e..71423c97231 100644 --- a/resources/profiles/InfiMech/filament/fdm_filament_common.json +++ b/resources/profiles/InfiMech/filament/fdm_filament_common.json @@ -28,7 +28,7 @@ "60" ], "overhang_fan_threshold": [ - "95%" + "0%" ], "overhang_fan_speed": [ "100" diff --git a/resources/profiles/InfiMech/filament/fdm_filament_pa.json b/resources/profiles/InfiMech/filament/fdm_filament_pa.json index 426560f905e..1d88d092c62 100644 --- a/resources/profiles/InfiMech/filament/fdm_filament_pa.json +++ b/resources/profiles/InfiMech/filament/fdm_filament_pa.json @@ -4,29 +4,32 @@ "from": "system", "instantiation": "false", "inherits": "fdm_filament_common", + "filament_vendor": [ + "InfiMech" + ], "cool_plate_temp" : [ "0" ], "eng_plate_temp" : [ - "100" + "110" ], "hot_plate_temp" : [ - "100" + "110" ], "textured_plate_temp" : [ - "100" + "110" ], "cool_plate_temp_initial_layer" : [ "0" ], "eng_plate_temp_initial_layer" : [ - "100" + "110" ], "hot_plate_temp_initial_layer" : [ - "100" + "110" ], "textured_plate_temp_initial_layer" : [ - "100" + "110" ], "slow_down_for_layer_cooling": [ "1" @@ -50,7 +53,7 @@ "20" ], "nozzle_temperature_initial_layer": [ - "290" + "240" ], "reduce_fan_stop_start_freq": [ "0" @@ -65,20 +68,29 @@ "40" ], "nozzle_temperature": [ - "280" + "240" ], "temperature_vitrification": [ "108" ], "nozzle_temperature_range_low": [ - "270" + "240" ], "nozzle_temperature_range_high": [ - "300" + "280" ], "slow_down_min_speed": [ "20" ], + "activate_air_filtration": [ + "1" + ], + "complete_print_exhaust_fan_speed": [ + "80" + ], + "during_print_exhaust_fan_speed": [ + "100" + ], "slow_down_layer_time": [ "2" ] diff --git a/resources/profiles/InfiMech/filament/fdm_filament_pa_other.json b/resources/profiles/InfiMech/filament/fdm_filament_pa_other.json new file mode 100644 index 00000000000..c1f5ab9d4e8 --- /dev/null +++ b/resources/profiles/InfiMech/filament/fdm_filament_pa_other.json @@ -0,0 +1,97 @@ +{ + "type": "filament", + "name": "fdm_filament_pa_other", + "from": "system", + "instantiation": "false", + "inherits": "fdm_filament_common", + "filament_vendor": [ + "Other" + ], + "cool_plate_temp" : [ + "0" + ], + "eng_plate_temp" : [ + "110" + ], + "hot_plate_temp" : [ + "110" + ], + "textured_plate_temp" : [ + "110" + ], + "cool_plate_temp_initial_layer" : [ + "0" + ], + "eng_plate_temp_initial_layer" : [ + "110" + ], + "hot_plate_temp_initial_layer" : [ + "110" + ], + "textured_plate_temp_initial_layer" : [ + "110" + ], + "slow_down_for_layer_cooling": [ + "1" + ], + "close_fan_the_first_x_layers": [ + "3" + ], + "fan_cooling_layer_time": [ + "5" + ], + "filament_max_volumetric_speed": [ + "8" + ], + "filament_type": [ + "PA" + ], + "filament_density": [ + "1.04" + ], + "filament_cost": [ + "20" + ], + "nozzle_temperature_initial_layer": [ + "260" + ], + "reduce_fan_stop_start_freq": [ + "0" + ], + "fan_max_speed": [ + "30" + ], + "fan_min_speed": [ + "10" + ], + "overhang_fan_speed": [ + "40" + ], + "nozzle_temperature": [ + "260" + ], + "temperature_vitrification": [ + "108" + ], + "nozzle_temperature_range_low": [ + "240" + ], + "nozzle_temperature_range_high": [ + "280" + ], + "slow_down_min_speed": [ + "20" + ], + "activate_air_filtration": [ + "1" + ], + "complete_print_exhaust_fan_speed": [ + "80" + ], + "during_print_exhaust_fan_speed": [ + "100" + ], + "slow_down_layer_time": [ + "2" + ] +} diff --git a/resources/profiles/InfiMech/filament/fdm_filament_pc.json b/resources/profiles/InfiMech/filament/fdm_filament_pc.json index ff73621c5da..42d59f44dac 100644 --- a/resources/profiles/InfiMech/filament/fdm_filament_pc.json +++ b/resources/profiles/InfiMech/filament/fdm_filament_pc.json @@ -4,6 +4,9 @@ "from": "system", "instantiation": "false", "inherits": "fdm_filament_common", + "filament_vendor": [ + "InfiMech" + ], "cool_plate_temp" : [ "0" ], @@ -82,6 +85,15 @@ "slow_down_min_speed": [ "20" ], + "activate_air_filtration": [ + "1" + ], + "complete_print_exhaust_fan_speed": [ + "80" + ], + "during_print_exhaust_fan_speed": [ + "100" + ], "slow_down_layer_time": [ "2" ] diff --git a/resources/profiles/InfiMech/filament/fdm_filament_pc_other.json b/resources/profiles/InfiMech/filament/fdm_filament_pc_other.json new file mode 100644 index 00000000000..88e8e8cb1a1 --- /dev/null +++ b/resources/profiles/InfiMech/filament/fdm_filament_pc_other.json @@ -0,0 +1,100 @@ +{ + "type": "filament", + "name": "fdm_filament_pc_other", + "from": "system", + "instantiation": "false", + "inherits": "fdm_filament_common", + "filament_vendor": [ + "Other" + ], + "cool_plate_temp" : [ + "0" + ], + "eng_plate_temp" : [ + "110" + ], + "hot_plate_temp" : [ + "110" + ], + "textured_plate_temp" : [ + "110" + ], + "cool_plate_temp_initial_layer" : [ + "0" + ], + "eng_plate_temp_initial_layer" : [ + "110" + ], + "hot_plate_temp_initial_layer" : [ + "110" + ], + "textured_plate_temp_initial_layer" : [ + "110" + ], + "slow_down_for_layer_cooling": [ + "1" + ], + "close_fan_the_first_x_layers": [ + "3" + ], + "fan_cooling_layer_time": [ + "30" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "filament_type": [ + "PC" + ], + "filament_density": [ + "1.04" + ], + "filament_cost": [ + "20" + ], + "nozzle_temperature_initial_layer": [ + "260" + ], + "reduce_fan_stop_start_freq": [ + "0" + ], + "fan_max_speed": [ + "20" + ], + "fan_min_speed": [ + "10" + ], + "overhang_fan_threshold": [ + "25%" + ], + "overhang_fan_speed": [ + "60" + ], + "nozzle_temperature": [ + "260" + ], + "temperature_vitrification": [ + "140" + ], + "nozzle_temperature_range_low": [ + "240" + ], + "nozzle_temperature_range_high": [ + "280" + ], + "slow_down_min_speed": [ + "20" + ], + "activate_air_filtration": [ + "1" + ], + "complete_print_exhaust_fan_speed": [ + "80" + ], + "during_print_exhaust_fan_speed": [ + "100" + ], + "slow_down_layer_time": [ + "2" + ] +} diff --git a/resources/profiles/InfiMech/filament/fdm_filament_pet.json b/resources/profiles/InfiMech/filament/fdm_filament_pet.json index 6ab611a1fce..14d4c5c806e 100644 --- a/resources/profiles/InfiMech/filament/fdm_filament_pet.json +++ b/resources/profiles/InfiMech/filament/fdm_filament_pet.json @@ -4,6 +4,9 @@ "from": "system", "instantiation": "false", "inherits": "fdm_filament_common", + "filament_vendor": [ + "InfiMech" + ], "cool_plate_temp" : [ "60" ], @@ -11,7 +14,7 @@ "0" ], "hot_plate_temp" : [ - "70" + "75" ], "textured_plate_temp" : [ "80" @@ -23,7 +26,7 @@ "0" ], "hot_plate_temp_initial_layer" : [ - "70" + "75" ], "textured_plate_temp_initial_layer" : [ "80" @@ -65,16 +68,19 @@ "90" ], "nozzle_temperature": [ - "255" + "220" ], "temperature_vitrification": [ "80" ], "nozzle_temperature_range_low": [ - "220" + "200" ], "nozzle_temperature_range_high": [ - "260" + "280" + ], + "additional_cooling_fan_speed": [ + "100" ], "filament_start_gcode": [ "; filament start gcode\n" diff --git a/resources/profiles/InfiMech/filament/fdm_filament_pet_other.json b/resources/profiles/InfiMech/filament/fdm_filament_pet_other.json new file mode 100644 index 00000000000..2ddd8047428 --- /dev/null +++ b/resources/profiles/InfiMech/filament/fdm_filament_pet_other.json @@ -0,0 +1,88 @@ +{ + "type": "filament", + "name": "fdm_filament_pet_other", + "from": "system", + "instantiation": "false", + "inherits": "fdm_filament_common", + "filament_vendor": [ + "Other" + ], + "cool_plate_temp" : [ + "60" + ], + "eng_plate_temp" : [ + "0" + ], + "hot_plate_temp" : [ + "75" + ], + "textured_plate_temp" : [ + "80" + ], + "cool_plate_temp_initial_layer" : [ + "60" + ], + "eng_plate_temp_initial_layer" : [ + "0" + ], + "hot_plate_temp_initial_layer" : [ + "75" + ], + "textured_plate_temp_initial_layer" : [ + "80" + ], + "slow_down_for_layer_cooling": [ + "1" + ], + "close_fan_the_first_x_layers": [ + "3" + ], + "fan_cooling_layer_time": [ + "30" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "filament_type": [ + "PETG" + ], + "filament_density": [ + "1.27" + ], + "filament_cost": [ + "30" + ], + "nozzle_temperature_initial_layer": [ + "230" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "fan_max_speed": [ + "90" + ], + "fan_min_speed": [ + "40" + ], + "overhang_fan_speed": [ + "90" + ], + "nozzle_temperature": [ + "230" + ], + "temperature_vitrification": [ + "80" + ], + "nozzle_temperature_range_low": [ + "200" + ], + "nozzle_temperature_range_high": [ + "280" + ], + "additional_cooling_fan_speed": [ + "100" + ], + "filament_start_gcode": [ + "; filament start gcode\n" + ] +} diff --git a/resources/profiles/InfiMech/filament/fdm_filament_pla.json b/resources/profiles/InfiMech/filament/fdm_filament_pla.json index 7742c173bd0..d93d3b72e69 100644 --- a/resources/profiles/InfiMech/filament/fdm_filament_pla.json +++ b/resources/profiles/InfiMech/filament/fdm_filament_pla.json @@ -4,11 +4,14 @@ "from": "system", "instantiation": "false", "inherits": "fdm_filament_common", + "filament_vendor": [ + "InfiMech" + ], "fan_cooling_layer_time": [ - "80" + "100" ], "filament_max_volumetric_speed": [ - "26" + "12" ], "filament_type": [ "PLA" @@ -38,13 +41,13 @@ "60" ], "hot_plate_temp_initial_layer" : [ - "60" + "65" ], "textured_plate_temp_initial_layer" : [ "60" ], "nozzle_temperature_initial_layer": [ - "195" + "200" ], "reduce_fan_stop_start_freq": [ "1" @@ -56,7 +59,7 @@ "100" ], "fan_min_speed": [ - "50" + "100" ], "overhang_fan_speed": [ "100" @@ -86,7 +89,7 @@ "8" ], "additional_cooling_fan_speed": [ - "70" + "100" ], "filament_start_gcode": [ "; filament start gcode\n" diff --git a/resources/profiles/InfiMech/filament/fdm_filament_pla_Hyper.json b/resources/profiles/InfiMech/filament/fdm_filament_pla_Hyper.json new file mode 100644 index 00000000000..97c8a80fde5 --- /dev/null +++ b/resources/profiles/InfiMech/filament/fdm_filament_pla_Hyper.json @@ -0,0 +1,97 @@ +{ + "type": "filament", + "name": "fdm_filament_pla_Hyper", + "from": "system", + "instantiation": "false", + "inherits": "fdm_filament_common", + "filament_vendor": [ + "InfiMech" + ], + "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" : [ + "65" + ], + "textured_plate_temp_initial_layer" : [ + "60" + ], + "nozzle_temperature_initial_layer": [ + "200" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "slow_down_for_layer_cooling": [ + "1" + ], + "fan_max_speed": [ + "100" + ], + "fan_min_speed": [ + "100" + ], + "overhang_fan_speed": [ + "100" + ], + "overhang_fan_threshold": [ + "50%" + ], + "close_fan_the_first_x_layers": [ + "1" + ], + "nozzle_temperature": [ + "195" + ], + "temperature_vitrification": [ + "60" + ], + "nozzle_temperature_range_low": [ + "190" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "slow_down_min_speed": [ + "20" + ], + "slow_down_layer_time": [ + "8" + ], + "additional_cooling_fan_speed": [ + "100" + ], + "filament_start_gcode": [ + "; filament start gcode\n" + ] +} diff --git a/resources/profiles/InfiMech/filament/fdm_filament_pla_Hyper_other.json b/resources/profiles/InfiMech/filament/fdm_filament_pla_Hyper_other.json new file mode 100644 index 00000000000..c29c200aae4 --- /dev/null +++ b/resources/profiles/InfiMech/filament/fdm_filament_pla_Hyper_other.json @@ -0,0 +1,97 @@ +{ + "type": "filament", + "name": "fdm_filament_pla_Hyper_other", + "from": "system", + "instantiation": "false", + "inherits": "fdm_filament_common", + "filament_vendor": [ + "Other" + ], + "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" : [ + "65" + ], + "textured_plate_temp_initial_layer" : [ + "60" + ], + "nozzle_temperature_initial_layer": [ + "205" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "slow_down_for_layer_cooling": [ + "1" + ], + "fan_max_speed": [ + "100" + ], + "fan_min_speed": [ + "100" + ], + "overhang_fan_speed": [ + "100" + ], + "overhang_fan_threshold": [ + "50%" + ], + "close_fan_the_first_x_layers": [ + "1" + ], + "nozzle_temperature": [ + "205" + ], + "temperature_vitrification": [ + "60" + ], + "nozzle_temperature_range_low": [ + "190" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "slow_down_min_speed": [ + "20" + ], + "slow_down_layer_time": [ + "8" + ], + "additional_cooling_fan_speed": [ + "100" + ], + "filament_start_gcode": [ + "; filament start gcode\n" + ] +} diff --git a/resources/profiles/InfiMech/filament/fdm_filament_pla_other.json b/resources/profiles/InfiMech/filament/fdm_filament_pla_other.json new file mode 100644 index 00000000000..075d9df6874 --- /dev/null +++ b/resources/profiles/InfiMech/filament/fdm_filament_pla_other.json @@ -0,0 +1,97 @@ +{ + "type": "filament", + "name": "fdm_filament_pla_other", + "from": "system", + "instantiation": "false", + "inherits": "fdm_filament_common", + "filament_vendor": [ + "Other" + ], + "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" : [ + "65" + ], + "textured_plate_temp_initial_layer" : [ + "60" + ], + "nozzle_temperature_initial_layer": [ + "205" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "slow_down_for_layer_cooling": [ + "1" + ], + "fan_max_speed": [ + "100" + ], + "fan_min_speed": [ + "100" + ], + "overhang_fan_speed": [ + "100" + ], + "overhang_fan_threshold": [ + "50%" + ], + "close_fan_the_first_x_layers": [ + "1" + ], + "nozzle_temperature": [ + "205" + ], + "temperature_vitrification": [ + "60" + ], + "nozzle_temperature_range_low": [ + "190" + ], + "nozzle_temperature_range_high": [ + "230" + ], + "slow_down_min_speed": [ + "20" + ], + "slow_down_layer_time": [ + "8" + ], + "additional_cooling_fan_speed": [ + "100" + ], + "filament_start_gcode": [ + "; filament start gcode\n" + ] +} diff --git a/resources/profiles/InfiMech/filament/fdm_filament_tpu.json b/resources/profiles/InfiMech/filament/fdm_filament_tpu.json index aab8f8b6ed7..d69aa60fd65 100644 --- a/resources/profiles/InfiMech/filament/fdm_filament_tpu.json +++ b/resources/profiles/InfiMech/filament/fdm_filament_tpu.json @@ -4,6 +4,9 @@ "from": "system", "instantiation": "false", "inherits": "fdm_filament_common", + "filament_vendor": [ + "InfiMech" + ], "cool_plate_temp" : [ "30" ], @@ -43,9 +46,7 @@ "filament_cost": [ "20" ], - "filament_retraction_length": [ - "0.4" - ], + "nozzle_temperature_initial_layer": [ "210" ], @@ -65,7 +66,7 @@ "100" ], "additional_cooling_fan_speed": [ - "70" + "100" ], "close_fan_the_first_x_layers": [ "1" @@ -82,6 +83,15 @@ "nozzle_temperature_range_high": [ "250" ], + "filament_z_hop": [ + "0" + ], + "slow_down_layer_time": [ + "10" + ], + "overhang_fan_threshold": [ + "95%" + ], "filament_start_gcode": [ "; filament start gcode\n" ] diff --git a/resources/profiles/InfiMech/filament/fdm_filament_tpu_other.json b/resources/profiles/InfiMech/filament/fdm_filament_tpu_other.json new file mode 100644 index 00000000000..bdce70471da --- /dev/null +++ b/resources/profiles/InfiMech/filament/fdm_filament_tpu_other.json @@ -0,0 +1,98 @@ +{ + "type": "filament", + "name": "fdm_filament_tpu_other", + "from": "system", + "instantiation": "false", + "inherits": "fdm_filament_common", + "filament_vendor": [ + "Other" + ], + "cool_plate_temp" : [ + "30" + ], + "eng_plate_temp" : [ + "30" + ], + "hot_plate_temp" : [ + "40" + ], + "textured_plate_temp" : [ + "35" + ], + "cool_plate_temp_initial_layer" : [ + "30" + ], + "eng_plate_temp_initial_layer" : [ + "30" + ], + "hot_plate_temp_initial_layer" : [ + "40" + ], + "textured_plate_temp_initial_layer" : [ + "35" + ], + "fan_cooling_layer_time": [ + "100" + ], + "filament_max_volumetric_speed": [ + "3.2" + ], + "filament_type": [ + "TPU" + ], + "filament_density": [ + "1.24" + ], + "filament_cost": [ + "20" + ], + + "nozzle_temperature_initial_layer": [ + "220" + ], + "reduce_fan_stop_start_freq": [ + "1" + ], + "slow_down_for_layer_cooling": [ + "1" + ], + "fan_max_speed": [ + "100" + ], + "fan_min_speed": [ + "100" + ], + "overhang_fan_speed": [ + "100" + ], + "additional_cooling_fan_speed": [ + "100" + ], + "close_fan_the_first_x_layers": [ + "1" + ], + "nozzle_temperature": [ + "220" + ], + "temperature_vitrification": [ + "60" + ], + "nozzle_temperature_range_low": [ + "200" + ], + "nozzle_temperature_range_high": [ + "250" + ], + "filament_z_hop": [ + "0" + ], + "slow_down_layer_time": [ + "10" + ], + "overhang_fan_threshold": [ + "95%" + ], + "filament_start_gcode": [ + "; filament start gcode\n" + ] +} diff --git a/resources/profiles/InfiMech/machine/fdm_klipper_common.json b/resources/profiles/InfiMech/machine/fdm_klipper_common.json index eed4cb2f813..81c209a099d 100644 --- a/resources/profiles/InfiMech/machine/fdm_klipper_common.json +++ b/resources/profiles/InfiMech/machine/fdm_klipper_common.json @@ -16,11 +16,11 @@ "cooling_tube_length": "5", "cooling_tube_retraction": "91.5", "default_filament_profile": [ - "InfiMech Generic PLA" + "InfiMech PLA" ], "default_print_profile": "0.20mm Standard @InfiMech TX", "deretraction_speed": [ - "40" + "30" ], "enable_filament_ramming": "1", "extra_loading_move": "-2", @@ -56,8 +56,8 @@ "5000" ], "machine_max_acceleration_travel": [ - "9000", - "9000" + "20000", + "20000" ], "machine_max_acceleration_x": [ "20000", @@ -68,7 +68,7 @@ "20000" ], "machine_max_acceleration_z": [ - "30", + "500", "200" ], "machine_max_jerk_e": [ @@ -84,11 +84,11 @@ "9" ], "machine_max_jerk_z": [ - "2", + "3", "0.4" ], "machine_max_speed_e": [ - "15", + "30", "25" ], "machine_max_speed_x": [ @@ -100,7 +100,7 @@ "200" ], "machine_max_speed_z": [ - "5", + "20", "12" ], "machine_min_extruding_rate": [ @@ -112,10 +112,10 @@ "0" ], "machine_pause_gcode": "PAUSE", - "machine_start_gcode": "M140 S[bed_temperature_initial_layer_single]\nG28 X Y\nM104 S240\nSET_KINEMATIC_POSITION Z=255 \nPROBE SAMPLES=1 SAMPLE_RETRACT_DIST=3 \nSET_KINEMATIC_POSITION Z=0 \nG90\nG1 Z2\nG1 X10 Y-2.5 F3000\nG90\nG1 Z3 \nG1 X110 Y-2.5 F4000\nG1 Z10\nM109 S240\nG92 E0\nG1 E15 F300\nG1 E-4.0 F3600\nM104 S130\nM106 S255 \nG4 P4000\nG1 X150 Y-0.5 F4000\nG92 E0\n;G1 E-4.0 F3600\nPROBE SAMPLES=2 SAMPLE_RETRACT_DIST=2 \nSET_KINEMATIC_POSITION Z=0\nG1 Z0\nG1 X140 Y-0.5 F400 \nPROBE SAMPLES=2 SAMPLE_RETRACT_DIST=2 \nSET_KINEMATIC_POSITION Z=0\nG1 Z0\nG1 X130 Y-0.5 F400 \nPROBE SAMPLES=2 SAMPLE_RETRACT_DIST=2 \nSET_KINEMATIC_POSITION Z=0\nG1 Z0 \nG1 X110 Y-0.5 F200\nM104 S130\nM106 S255\nPROBE SAMPLES=2 SAMPLE_RETRACT_DIST=2 \nSET_KINEMATIC_POSITION Z=0\nG1 Z0\nG1 X100 Y-0.5 F100 \nPROBE SAMPLES=2 SAMPLE_RETRACT_DIST=2 \nSET_KINEMATIC_POSITION Z=0\nG1 Z0\nG1 X90 Y-0.5 F100\nPROBE SAMPLES=2 SAMPLE_RETRACT_DIST=2 \nSET_KINEMATIC_POSITION Z=0\nG1 Z0\nG1 X60 Y-0.5 F100\nM106 S0\nG90\nG1 Z2\nM140 S60\nM109 S130\nG1 X110 Y110 F3000\nG4 P200\nprobe\nSET_KINEMATIC_POSITION Z=0\nZ_TILT_ADJUST\nG90\nG1 Z2\nG4 P200\nG1 X110 Y110 F3000\nG4 P200\nprobe\nSET_KINEMATIC_POSITION Z=0\nG1 X-3 Y2 Z3 F5000.0\nM109 S[nozzle_temperature_initial_layer]\nPRINT_START", + "machine_start_gcode": ";v2.8-20240219-3;\n;wiping nozzle start\nM106 P3 S0\nclean_nozzle_position\n;wiping nozzle end\n;*************preheat nozzle and hotbed for Z_TILT_ADJUST*************\nM140 S[bed_temperature_initial_layer_single]\nM104 S130\nG1 X110 Y110 F6000 \nG4 P200\nprobe\nSET_KINEMATIC_POSITION Z=0 ;Z homing\nZ_TILT_ADJUST \n;*************Z_TILT_ADJUST end*************\nM140 S[bed_temperature_initial_layer_single] ;heat hotbed temp set by user\nG1 X5 Y5 F6000 \nG28 \nG1 X{first_layer_print_min[0]-1.5} Y{min(first_layer_print_min[0] + 60,print_bed_max[0])} F6000 \nG1 Z0.2 F600\nM104 S[nozzle_temperature_initial_layer] ;heat nozzle temp set by user\nM106 S100 ;close head_nozzle fan\nG4 P3000\nM106 S255 ;close head_nozzle fan\nG4 P3000\nM106 S100 ;close head_nozzle fan\n;*************PRINT START*************\nM109 S[nozzle_temperature_initial_layer] ;heat nozzle temp set by user\nM106 S0 ;close head_nozzle fan\nBED_MESH_CLEAR \nBED_MESH_PROFILE LOAD=default # bedmesh load\nG92 E0 ;Reset Extruder\nG1 Z4.0 F200 ;Move Z Axis up\nG90 ;absolute position\n ; ; ; ; ; ; ; ; ; draw line along model\nG92 E0 ;reset extruder\nG1 E4 F300 ;extrude filament\nG1 X{first_layer_print_min[0]-1.5} Y{min(first_layer_print_min[0] + 60,print_bed_max[0])} F6000 \nG1 Z0.22 F600\nG1 X{first_layer_print_min[0]-1.5} Y{max(0, first_layer_print_min[1]-1.5)} F2000 E10\nG1 Z0.22 F600\nG1 X{min(first_layer_print_min[0] + 60,print_bed_max[0])} F1200 E12\n ; ; ; ; ; ; ; ; ;draw line along model end \nG4 P200\nG1 Z2\nG92 E0 ;Reset Extruder\nCLEAR_PAUSE\n;***********model start************\n", "machine_unload_filament_time": "0", "max_layer_height": [ - "0.32" + "0.28" ], "min_layer_height": [ "0.08" @@ -151,7 +151,7 @@ "printhost_user": "", "purge_in_prime_tower": "1", "retract_before_wipe": [ - "70%" + "0%" ], "retract_length_toolchange": [ "0" @@ -160,7 +160,7 @@ "0" ], "retract_lift_below": [ - "0" + "249" ], "retract_lift_enforce": [ "All Surfaces" @@ -172,7 +172,7 @@ "0" ], "retract_when_changing_layer": [ - "0" + "1" ], "retraction_length": [ "0.5" @@ -181,7 +181,7 @@ "1" ], "retraction_speed": [ - "40" + "30" ], "scan_first_layer": "0", "silent_mode": "0", @@ -195,16 +195,16 @@ "use_relative_e_distances": "1", "version": "1.6.0.0", "wipe": [ - "0" + "1" ], "wipe_distance": [ - "1" + "2" ], "z_hop": [ - "0" + "0.4" ], "z_hop_types": [ - "Normal Lift" + "Auto Lift" ] diff --git a/resources/profiles/InfiMech/machine/fdm_machine_common.json b/resources/profiles/InfiMech/machine/fdm_machine_common.json index b661199281e..fdf527fb5c8 100644 --- a/resources/profiles/InfiMech/machine/fdm_machine_common.json +++ b/resources/profiles/InfiMech/machine/fdm_machine_common.json @@ -7,7 +7,6 @@ "gcode_flavor": "klipper", "auxiliary_fan": "1", - "bed_exclude_area": [ "0x0" ], @@ -20,7 +19,7 @@ ], "default_print_profile": "0.20mm Standard @InfiMech TX", "deretraction_speed": [ - "40" + "30" ], "enable_filament_ramming": "1", "extra_loading_move": "-2", @@ -69,7 +68,7 @@ "20000" ], "machine_max_acceleration_z": [ - "30", + "500", "200" ], "machine_max_jerk_e": [ @@ -85,11 +84,11 @@ "9" ], "machine_max_jerk_z": [ - "2", + "3", "0.4" ], "machine_max_speed_e": [ - "15", + "30", "25" ], "machine_max_speed_x": [ @@ -101,7 +100,7 @@ "200" ], "machine_max_speed_z": [ - "5", + "20", "12" ], "machine_min_extruding_rate": [ @@ -113,7 +112,7 @@ "0" ], "machine_pause_gcode": "PAUSE", - "machine_start_gcode": "M140 S[bed_temperature_initial_layer_single]\nG28 X Y\nM104 S240\nSET_KINEMATIC_POSITION Z=255 \nPROBE SAMPLES=1 SAMPLE_RETRACT_DIST=3 \nSET_KINEMATIC_POSITION Z=0 \nG90\nG1 Z2\nG1 X10 Y-2.5 F3000\nG90\nG1 Z3 \nG1 X110 Y-2.5 F4000\nG1 Z10\nM109 S240\nG92 E0\nG1 E15 F300\nG1 E-4.0 F3600\nM104 S130\nM106 S255 \nG4 P4000\nG1 X150 Y-0.5 F4000\nG92 E0\n;G1 E-4.0 F3600\nPROBE SAMPLES=2 SAMPLE_RETRACT_DIST=2 \nSET_KINEMATIC_POSITION Z=0\nG1 Z0\nG1 X140 Y-0.5 F400 \nPROBE SAMPLES=2 SAMPLE_RETRACT_DIST=2 \nSET_KINEMATIC_POSITION Z=0\nG1 Z0\nG1 X130 Y-0.5 F400 \nPROBE SAMPLES=2 SAMPLE_RETRACT_DIST=2 \nSET_KINEMATIC_POSITION Z=0\nG1 Z0 \nG1 X110 Y-0.5 F200\nM104 S130\nM106 S255\nPROBE SAMPLES=2 SAMPLE_RETRACT_DIST=2 \nSET_KINEMATIC_POSITION Z=0\nG1 Z0\nG1 X100 Y-0.5 F100 \nPROBE SAMPLES=2 SAMPLE_RETRACT_DIST=2 \nSET_KINEMATIC_POSITION Z=0\nG1 Z0\nG1 X90 Y-0.5 F100\nPROBE SAMPLES=2 SAMPLE_RETRACT_DIST=2 \nSET_KINEMATIC_POSITION Z=0\nG1 Z0\nG1 X60 Y-0.5 F100\nM106 S0\nG90\nG1 Z2\nM140 S60\nM109 S130\nG1 X110 Y110 F3000\nG4 P200\nprobe\nSET_KINEMATIC_POSITION Z=0\nZ_TILT_ADJUST\nG90\nG1 Z2\nG4 P200\nG1 X110 Y110 F3000\nG4 P200\nprobe\nSET_KINEMATIC_POSITION Z=0\nG1 X-3 Y2 Z3 F5000.0\nM109 S[nozzle_temperature_initial_layer]\nPRINT_START", + "machine_start_gcode": ";v2.8-20240219-3;\n;wiping nozzle start\nM106 P3 S0\nclean_nozzle_position\n;wiping nozzle end\n;*************preheat nozzle and hotbed for Z_TILT_ADJUST*************\nM140 S[bed_temperature_initial_layer_single]\nM104 S130\nG1 X110 Y110 F6000 \nG4 P200\nprobe\nSET_KINEMATIC_POSITION Z=0 ;Z homing\nZ_TILT_ADJUST \n;*************Z_TILT_ADJUST end*************\nM140 S[bed_temperature_initial_layer_single] ;heat hotbed temp set by user\nG1 X5 Y5 F6000 \nG28 \nG1 X{first_layer_print_min[0]-1.5} Y{min(first_layer_print_min[0] + 60,print_bed_max[0])} F6000 \nG1 Z0.2 F600\nM104 S[nozzle_temperature_initial_layer] ;heat nozzle temp set by user\nM106 S100 ;close head_nozzle fan\nG4 P3000\nM106 S255 ;close head_nozzle fan\nG4 P3000\nM106 S100 ;close head_nozzle fan\n;*************PRINT START*************\nM109 S[nozzle_temperature_initial_layer] ;heat nozzle temp set by user\nM106 S0 ;close head_nozzle fan\nBED_MESH_CLEAR \nBED_MESH_PROFILE LOAD=default # bedmesh load\nG92 E0 ;Reset Extruder\nG1 Z4.0 F200 ;Move Z Axis up\nG90 ;absolute position\n ; ; ; ; ; ; ; ; ; draw line along model\nG92 E0 ;reset extruder\nG1 E4 F300 ;extrude filament\nG1 X{first_layer_print_min[0]-1.5} Y{min(first_layer_print_min[0] + 60,print_bed_max[0])} F6000 \nG1 Z0.22 F600\nG1 X{first_layer_print_min[0]-1.5} Y{max(0, first_layer_print_min[1]-1.5)} F2000 E10\nG1 Z0.22 F600\nG1 X{min(first_layer_print_min[0] + 60,print_bed_max[0])} F1200 E12\n ; ; ; ; ; ; ; ; ;draw line along model end \nG4 P200\nG1 Z2\nG92 E0 ;Reset Extruder\nCLEAR_PAUSE\n;***********model start************\n", "machine_unload_filament_time": "0", "max_layer_height": [ "0.28" @@ -149,7 +148,7 @@ "printhost_user": "", "purge_in_prime_tower": "1", "retract_before_wipe": [ - "70%" + "0%" ], "retract_length_toolchange": [ "0" @@ -158,7 +157,7 @@ "0" ], "retract_lift_below": [ - "0" + "249" ], "retract_lift_enforce": [ "All Surfaces" @@ -170,7 +169,7 @@ "0" ], "retract_when_changing_layer": [ - "0" + "1" ], "retraction_length": [ "0.5" @@ -179,7 +178,7 @@ "1" ], "retraction_speed": [ - "40" + "30" ], "scan_first_layer": "0", "silent_mode": "0", @@ -193,15 +192,15 @@ "use_relative_e_distances": "1", "version": "1.6.0.0", "wipe": [ - "0" + "1" ], "wipe_distance": [ - "1" + "2" ], "z_hop": [ - "0" + "0.4" ], "z_hop_types": [ - "Normal Lift" + "Auto Lift" ] } diff --git a/resources/profiles/InfiMech/process/0.08mm Extra Fine @InfiMech TX.json b/resources/profiles/InfiMech/process/0.08mm Extra Fine @InfiMech TX.json index fedd335044c..80426afa2de 100644 --- a/resources/profiles/InfiMech/process/0.08mm Extra Fine @InfiMech TX.json +++ b/resources/profiles/InfiMech/process/0.08mm Extra Fine @InfiMech TX.json @@ -1,14 +1,14 @@ { - "type": "process", + "type": "process", "setting_id": "GP004", "name": "0.08mm Extra Fine @InfiMech TX", - "from": "system", - "instantiation": "true", - "inherits": "fdm_process_common", + "from": "system", + "instantiation": "true", + "inherits": "fdm_process_common", "bottom_shell_layers": "7", - "overhang_1_4_speed": "60", + "overhang_1_4_speed": "50", "overhang_2_4_speed": "30", "overhang_3_4_speed": "10", "top_shell_layers": "9", @@ -21,7 +21,9 @@ "layer_height": "0.08", "print_settings_id": "0.08mm Extra Fine @InfiMech TX", "sparse_infill_speed": "450", - "compatible_printers": [ + "exclude_object": "0", + "internal_bridge_speed": "50", + "compatible_printers": [ "InfiMech TX 0.4 nozzle" ] diff --git a/resources/profiles/InfiMech/process/0.12mm Fine @InfiMech TX.json b/resources/profiles/InfiMech/process/0.12mm Fine @InfiMech TX.json index 160fdd0ddbc..d7de41a3fbe 100644 --- a/resources/profiles/InfiMech/process/0.12mm Fine @InfiMech TX.json +++ b/resources/profiles/InfiMech/process/0.12mm Fine @InfiMech TX.json @@ -2,12 +2,12 @@ "type": "process", "setting_id": "GP004", "name": "0.12mm Fine @InfiMech TX", - "from": "system", - "instantiation": "true", - "inherits": "fdm_process_common", + "from": "system", + "instantiation": "true", + "inherits": "fdm_process_common", "bottom_shell_layers": "5", - "overhang_1_4_speed": "60", + "overhang_1_4_speed": "50", "overhang_2_4_speed": "30", "overhang_3_4_speed": "10", "top_shell_layers": "5", @@ -20,10 +20,13 @@ "layer_height": "0.12", "print_settings_id": "0.12mm Fine @InfiMech TX", "sparse_infill_speed": "400", - "compatible_printers": [ + "exclude_object": "0", + "internal_bridge_speed": "50", + "compatible_printers": [ "InfiMech TX 0.4 nozzle" ] + } diff --git a/resources/profiles/InfiMech/process/0.16mm Optimal @InfiMech TX.json b/resources/profiles/InfiMech/process/0.16mm Optimal @InfiMech TX.json new file mode 100644 index 00000000000..8e8230e397a --- /dev/null +++ b/resources/profiles/InfiMech/process/0.16mm Optimal @InfiMech TX.json @@ -0,0 +1,38 @@ +{ + "type": "process", + "setting_id": "GP005", + "name": "0.16mm Optimal @InfiMech TX", + "from": "system", + "instantiation": "true", + "inherits": "fdm_process_common", + + "overhang_1_4_speed": "50", + "accel_to_decel_enable": "0", + "bottom_shell_layers": "4", + "bridge_speed": "25", + "brim_object_gap": "0.1", + "exclude_object": "0", + "gap_infill_speed": "300", + "inner_wall_speed": "300", + "internal_bridge_speed": "50", + "internal_solid_infill_line_width": "0.42", + "internal_solid_infill_speed": "300", + "is_custom_defined": "0", + "layer_height": "0.16", + "line_width": "0.42", + "outer_wall_line_width": "0.42", + "overhang_speed_classic": "0", + "precise_outer_wall": "0", + "print_flow_ratio": "0.95", + "seam_gap": "10%", + "skirt_speed": "50", + "sparse_infill_speed": "330", + "support_line_width": "0.42", + "top_shell_thickness": "0.8", + "top_surface_line_width": "0.42", + "compatible_printers": [ + "InfiMech TX 0.4 nozzle" + ] + + +} diff --git a/resources/profiles/InfiMech/process/0.20mm Standard @InfiMech TX.json b/resources/profiles/InfiMech/process/0.20mm Standard @InfiMech TX.json index 6c27420cba2..e37fe60cad0 100644 --- a/resources/profiles/InfiMech/process/0.20mm Standard @InfiMech TX.json +++ b/resources/profiles/InfiMech/process/0.20mm Standard @InfiMech TX.json @@ -2,16 +2,16 @@ "type": "process", "setting_id": "GP004", "name": "0.20mm Standard @InfiMech TX", - "from": "system", - "instantiation": "true", - "inherits": "fdm_process_common", + "from": "system", + "instantiation": "true", + "inherits": "fdm_process_common", "bottom_shell_layers": "3", - "overhang_1_4_speed": "0", + "overhang_1_4_speed": "50", "overhang_2_4_speed": "50", "overhang_3_4_speed": "30", - "top_shell_layers": "3", - "top_shell_thickness": "0.6", + "top_shell_layers": "5", + "top_shell_thickness": "1", "tree_support_wall_count": "1", "brim_width": "5", "gap_infill_speed": "250", @@ -20,12 +20,12 @@ "layer_height": "0.2", "print_settings_id": "0.20mm Standard @InfiMech TX", "sparse_infill_speed": "270", - "compatible_printers": [ + "exclude_object": "0", + "internal_bridge_speed": "50", + "top_solid_infill_flow_ratio": "0.97", + "compatible_printers": [ "InfiMech TX 0.4 nozzle" ] - - - } diff --git a/resources/profiles/InfiMech/process/0.24mm Draft @InfiMech TX.json b/resources/profiles/InfiMech/process/0.24mm Draft @InfiMech TX.json index f5dac45fc61..59a4f0de66a 100644 --- a/resources/profiles/InfiMech/process/0.24mm Draft @InfiMech TX.json +++ b/resources/profiles/InfiMech/process/0.24mm Draft @InfiMech TX.json @@ -2,16 +2,16 @@ "type": "process", "setting_id": "GP004", "name": "0.24mm Draft @InfiMech TX", - "from": "system", - "instantiation": "true", - "inherits": "fdm_process_common", + "from": "system", + "instantiation": "true", + "inherits": "fdm_process_common", "bottom_shell_layers": "3", - "overhang_1_4_speed": "0", + "overhang_1_4_speed": "50", "overhang_2_4_speed": "50", "overhang_3_4_speed": "30", - "top_shell_layers": "3", - "top_shell_thickness": "0.6", + "top_shell_layers": "4", + "top_shell_thickness": "1", "tree_support_wall_count": "1", "brim_width": "3", "gap_infill_speed": "230", @@ -20,7 +20,9 @@ "layer_height": "0.24", "print_settings_id": "0.24mm Draft @InfiMech TX", "sparse_infill_speed": "230", - "compatible_printers": [ + "exclude_object": "0", + "internal_bridge_speed": "50", + "compatible_printers": [ "InfiMech TX 0.4 nozzle" ] diff --git a/resources/profiles/InfiMech/process/fdm_process_common.json b/resources/profiles/InfiMech/process/fdm_process_common.json index f8787017196..b8e90dd46a1 100644 --- a/resources/profiles/InfiMech/process/fdm_process_common.json +++ b/resources/profiles/InfiMech/process/fdm_process_common.json @@ -3,8 +3,7 @@ "name": "fdm_process_common", "from": "system", "instantiation": "false", - - "accel_to_decel_enable": "1", + "accel_to_decel_enable": "0", "accel_to_decel_factor": "50%", "bottom_shell_thickness": "0", "bottom_solid_infill_flow_ratio": "1", @@ -14,10 +13,10 @@ "bridge_density": "100%", "bridge_flow": "1", "bridge_no_support": "0", - "bridge_speed": "50", + "bridge_speed": "25", "brim_ears_detection_length": "1", "brim_ears_max_angle": "125", - "brim_object_gap": "0.2", + "brim_object_gap": "0.1", "brim_type": "auto_brim", "compatible_printers_condition": "", "default_acceleration": "10000", @@ -33,14 +32,12 @@ "enable_support": "0", "enforce_support_layers": "0", "ensure_vertical_shell_thickness": "1", - "exclude_object": "0", "extra_perimeters_on_overhangs": "0", "filename_format": "{input_filename_base}_{filament_type[initial_tool]}_{print_time}.gcode", "filter_out_gap_fill": "0", "flush_into_infill": "0", "flush_into_objects": "0", "flush_into_support": "1", - "from": "", "fuzzy_skin": "none", "fuzzy_skin_point_distance": "0.8", "fuzzy_skin_thickness": "0.3", @@ -54,7 +51,7 @@ "infill_combination": "0", "infill_direction": "45", "infill_jerk": "9", - "infill_wall_overlap": "25%", + "infill_wall_overlap": "15%", "initial_layer_acceleration": "500", "initial_layer_infill_speed": "50", "initial_layer_jerk": "9", @@ -67,18 +64,18 @@ "inner_wall_jerk": "9", "inner_wall_line_width": "0.45", "interface_shells": "0", - "internal_bridge_speed": "150%", + "internal_bridge_speed": "50%", "internal_bridge_support_thickness": "0.8", "internal_solid_infill_acceleration": "100%", - "internal_solid_infill_line_width": "0.4", - "internal_solid_infill_pattern": "zig-zag", + "internal_solid_infill_line_width": "0.42", + "internal_solid_infill_pattern": "monotonic", "ironing_flow": "10%", "ironing_pattern": "zig-zag", "ironing_spacing": "0.15", "ironing_speed": "30", "ironing_type": "no ironing", - "line_width": "0.4", + "line_width": "0.42", "make_overhang_printable": "0", "make_overhang_printable_angle": "55", "make_overhang_printable_hole_size": "0", @@ -94,13 +91,13 @@ "ooze_prevention": "0", "outer_wall_acceleration": "5000", "outer_wall_jerk": "9", - "outer_wall_line_width": "0.4", + "outer_wall_line_width": "0.42", "outer_wall_speed": "200", "overhang_4_4_speed": "10", - "overhang_speed_classic": "1", + "overhang_speed_classic": "0", "post_process": [], - "precise_outer_wall": "1", + "precise_outer_wall": "0", "prime_tower_brim_width": "3", "prime_tower_width": "35", "prime_volume": "45", @@ -115,13 +112,13 @@ "reduce_infill_retraction": "1", "resolution": "0.012", "role_based_wipe_speed": "1", - "seam_gap": "15%", + "seam_gap": "10%", "seam_position": "aligned", "single_extruder_multi_material_priming": "1", "skirt_distance": "2", "skirt_height": "1", "skirt_loops": "0", - "skirt_speed": "0", + "skirt_speed": "50", "slice_closing_radius": "0.049", "slicing_mode": "regular", "slow_down_layers": "0", @@ -152,7 +149,7 @@ "support_interface_spacing": "0.5", "support_interface_speed": "80", "support_interface_top_layers": "2", - "support_line_width": "0.4", + "support_line_width": "0.42", "support_object_xy_distance": "0.35", "support_on_build_plate_only": "0", "support_remove_small_overhang": "1", @@ -167,7 +164,7 @@ "top_solid_infill_flow_ratio": "1", "top_surface_acceleration": "2000", "top_surface_jerk": "9", - "top_surface_line_width": "0.4", + "top_surface_line_width": "0.42", "top_surface_pattern": "monotonicline", "top_surface_speed": "200", "travel_acceleration": "10000", @@ -221,4 +218,5 @@ "xy_contour_compensation": "0", "xy_hole_compensation": "0", "exclude_object": "1" -} \ No newline at end of file + +} diff --git a/resources/profiles/Kingroon/machine/Kingroon KP3S PRO S1 0.4 nozzle.json b/resources/profiles/Kingroon/machine/Kingroon KP3S PRO S1 0.4 nozzle.json index 7c99007fd58..8ac287c837e 100644 --- a/resources/profiles/Kingroon/machine/Kingroon KP3S PRO S1 0.4 nozzle.json +++ b/resources/profiles/Kingroon/machine/Kingroon KP3S PRO S1 0.4 nozzle.json @@ -1,5 +1,4 @@ { - "bbl_calib_mark_logo": "1", "setting_id": "GM003", "name": "Kingroon KP3S PRO S1 0.4 nozzle", "instantiation": "true", diff --git a/resources/profiles/Kingroon/machine/fdm_machine_common.json b/resources/profiles/Kingroon/machine/fdm_machine_common.json index b29d6a2250b..a4ea4dd5b7a 100644 --- a/resources/profiles/Kingroon/machine/fdm_machine_common.json +++ b/resources/profiles/Kingroon/machine/fdm_machine_common.json @@ -1,6 +1,5 @@ { "type": "machine", - "bbl_calib_mark_logo": "1", "name": "fdm_machine_common", "auxiliary_fan": "0", "fan_kickstart": "0", diff --git a/resources/profiles/Snapmaker/machine/fdm_common.json b/resources/profiles/Snapmaker/machine/fdm_common.json index f12ca8f1315..6066188b5c1 100644 --- a/resources/profiles/Snapmaker/machine/fdm_common.json +++ b/resources/profiles/Snapmaker/machine/fdm_common.json @@ -11,7 +11,6 @@ "auxiliary_fan": "0", "remaining_times": "1", "single_extruder_multi_material": "0", - "single_extruder_multi_material_priming": "0", "purge_in_prime_tower": "0", "enable_filament_ramming": "0", "nozzle_volume": "0", diff --git a/src/OrcaSlicer_profile_validator.cpp b/src/OrcaSlicer_profile_validator.cpp index f94b7bec8a0..374592199d3 100644 --- a/src/OrcaSlicer_profile_validator.cpp +++ b/src/OrcaSlicer_profile_validator.cpp @@ -1,22 +1,93 @@ +#include "libslic3r/Preset.hpp" +#include "libslic3r/Config.hpp" #include "libslic3r/PresetBundle.hpp" +#include "libslic3r/Print.hpp" #include "libslic3r/Utils.hpp" #include #include #include #include +#include using namespace Slic3r; namespace po = boost::program_options; +void generate_custom_presets(PresetBundle* preset_bundle, AppConfig& app_config) +{ + struct cus_preset + { + std::string name; + std::string parent_name; + }; + // create user presets + auto createCustomPrinters = [&](Preset::Type type) { + std::vector custom_preset; + PresetCollection* collection = nullptr; + if (type == Preset::TYPE_PRINT) + collection = &preset_bundle->prints; + else if (type == Preset::TYPE_FILAMENT) + collection = &preset_bundle->filaments; + else if (type == Preset::TYPE_PRINTER) + collection = &preset_bundle->printers; + else + return; + custom_preset.reserve(collection->size()); + for (auto& parent : collection->get_presets()) { + if (!parent.is_system) + continue; + auto new_name = parent.name + "_orca_test"; + if (parent.vendor) + new_name = parent.vendor->name + "_" + new_name; + custom_preset.push_back({new_name, parent.name}); + } + for (auto p : custom_preset) { + // Creating a new preset. + auto parent = collection->find_preset(p.parent_name); + if (type == Preset::TYPE_FILAMENT) + parent->config.set_key_value("filament_start_gcode", + new ConfigOptionStrings({"this_is_orca_test_filament_start_gcode_mock"})); + else if (type == Preset::TYPE_PRINT) + parent->config.set_key_value("filename_format", new ConfigOptionString("this_is_orca_test_filename_format_mock")); + else if (type == Preset::TYPE_PRINTER) + parent->config.set_key_value("machine_start_gcode", + new ConfigOptionString("this_is_orca_test_machine_start_gcode_mock")); + + collection->save_current_preset(p.name, false, false, parent); + + } + }; + createCustomPrinters(Preset::TYPE_PRINTER); + createCustomPrinters(Preset::TYPE_FILAMENT); + createCustomPrinters(Preset::TYPE_PRINT); + + std::string user_sub_folder = DEFAULT_USER_FOLDER_NAME; + const std::string dir_user_presets = data_dir() + "/" + PRESET_USER_DIR + "/" + user_sub_folder; + + fs::path user_folder(data_dir() + "/" + PRESET_USER_DIR); + if (!fs::exists(user_folder)) + fs::create_directory(user_folder); + + fs::path folder(dir_user_presets); + if (!fs::exists(folder)) + fs::create_directory(folder); + std::vector need_to_delete_list; // store setting ids of preset + + preset_bundle->prints.save_user_presets(dir_user_presets, PRESET_PRINT_NAME, need_to_delete_list); + preset_bundle->filaments.save_user_presets(dir_user_presets, PRESET_FILAMENT_NAME, need_to_delete_list); + preset_bundle->printers.save_user_presets(dir_user_presets, PRESET_PRINTER_NAME, need_to_delete_list); + + std::cout << "Custom presets generated successfully" << std::endl; +} int main(int argc, char* argv[]) { - po::options_description desc("Allowed options"); + po::options_description desc("Orca Profile Validator\nUsage"); + // clang-format off desc.add_options()("help,h", "help") - ("path,p", po::value()->default_value("../../../resources/profiles"), "profile folder") - ("vendor,v", po::value()->default_value(""), - "Vendor name. Optional, all profiles present in the folder will be validated if not specified") - ("log_level,l", po::value()->default_value(2), - "Log level. Optional, default is 2 (warning). Higher values produce more detailed logs."); + ("path,p", po::value()->default_value("../../../resources/profiles"), "profile folder") + ("vendor,v", po::value()->default_value(""), "Vendor name. Optional, all profiles present in the folder will be validated if not specified") + ("generate_presets,g", po::value()->default_value(false), "Generate user presets for mock test") + ("log_level,l", po::value()->default_value(2), "Log level. Optional, default is 2 (warning). Higher values produce more detailed logs."); + // clang-format on po::variables_map vm; try { @@ -34,9 +105,10 @@ int main(int argc, char* argv[]) return 1; } - std::string path = vm["path"].as(); - std::string vendor = vm["vendor"].as(); - int log_level = vm["log_level"].as(); + std::string path = vm["path"].as(); + std::string vendor = vm["vendor"].as(); + int log_level = vm["log_level"].as(); + bool generate_user_preset = vm["generate_presets"].as(); // check if path is valid, and return error if not if (!fs::exists(path) || !fs::is_directory(path)) { @@ -44,20 +116,29 @@ int main(int argc, char* argv[]) return 1; } - // std::cout<<"path: "<setup_directories(); + // preset_bundle->setup_directories(); preset_bundle->set_is_validation_mode(true); preset_bundle->set_vendor_to_validate(vendor); preset_bundle->set_default_suppressed(true); AppConfig app_config; + app_config.set("preset_folder", "default"); + + if(generate_user_preset) + preset_bundle->remove_user_presets_directory("default"); try { auto preset_substitutions = preset_bundle->load_presets(app_config, ForwardCompatibilitySubstitutionRule::EnableSystemSilent); @@ -66,6 +147,17 @@ int main(int argc, char* argv[]) std::cout << "Validation failed" << std::endl; return 1; } + + if (generate_user_preset) { + generate_custom_presets(preset_bundle, app_config); + return 0; + } + + if (preset_bundle->has_errors()) { + std::cout << "Validation failed" << std::endl; + return 1; + } + std::cout << "Validation completed successfully" << std::endl; return 0; } diff --git a/src/libslic3r/Preset.cpp b/src/libslic3r/Preset.cpp index 6bb4e7aff2f..48c52d96864 100644 --- a/src/libslic3r/Preset.cpp +++ b/src/libslic3r/Preset.cpp @@ -1122,6 +1122,7 @@ void PresetCollection::load_presets( if (fs::exists(file_path)) fs::remove(file_path); BOOST_LOG_TRIVIAL(error) << boost::format("parse config %1% failed")%preset.file; + ++m_errors; continue; } @@ -1159,6 +1160,7 @@ void PresetCollection::load_presets( auto inherits_config2 = dynamic_cast(inherits_config); if ((inherits_config2 && !inherits_config2->value.empty()) && !preset.is_custom_defined()) { BOOST_LOG_TRIVIAL(error) << boost::format("can not find parent for config %1%!")%preset.file; + ++m_errors; continue; } // Find a default preset for the config. The PrintPresetCollection provides different default preset based on the "printer_technology" field. @@ -1169,9 +1171,12 @@ void PresetCollection::load_presets( Preset::normalize(preset.config); // Report configuration fields, which are misplaced into a wrong group. std::string incorrect_keys = Preset::remove_invalid_keys(preset.config, default_preset.config); - if (!incorrect_keys.empty()) - BOOST_LOG_TRIVIAL(error) << "Error in a preset file: The preset \"" << - preset.file << "\" contains the following incorrect keys: " << incorrect_keys << ", which were removed"; + if (!incorrect_keys.empty()) { + ++m_errors; + BOOST_LOG_TRIVIAL(error) + << "Error in a preset file: The preset \"" << preset.file + << "\" contains the following incorrect keys: " << incorrect_keys << ", which were removed"; + } preset.loaded = true; //BBS: add some workaround for previous incorrect settings if ((!preset.setting_id.empty())&&(preset.setting_id == preset.base_id)) @@ -1179,6 +1184,7 @@ void PresetCollection::load_presets( //BBS: add config related logs BOOST_LOG_TRIVIAL(debug) << __FUNCTION__ << boost::format(", preset type %1%, name %2%, path %3%, is_system %4%, is_default %5% is_visible %6%")%Preset::get_type_string(m_type) %preset.name %preset.file %preset.is_system %preset.is_default %preset.is_visible; } catch (const std::ifstream::failure &err) { + ++m_errors; BOOST_LOG_TRIVIAL(error) << boost::format("The user-config cannot be loaded: %1%. Reason: %2%")%preset.file %err.what(); fs::path file_path(preset.file); if (fs::exists(file_path)) @@ -1188,6 +1194,7 @@ void PresetCollection::load_presets( fs::remove(file_path); //throw Slic3r::RuntimeError(std::string("The selected preset cannot be loaded: ") + preset.file + "\n\tReason: " + err.what()); } catch (const std::runtime_error &err) { + ++m_errors; BOOST_LOG_TRIVIAL(error) << boost::format("Failed loading the user-config file: %1%. Reason: %2%")%preset.file %err.what(); //throw Slic3r::RuntimeError(std::string("Failed loading the preset file: ") + preset.file + "\n\tReason: " + err.what()); fs::path file_path(preset.file); @@ -1252,6 +1259,7 @@ int PresetCollection::get_differed_values_to_update(Preset& preset, std::map& proje Preset::normalize(preset->config); // Report configuration fields, which are misplaced into a wrong group. std::string incorrect_keys = Preset::remove_invalid_keys(preset->config, default_preset.config); - if (! incorrect_keys.empty()) - BOOST_LOG_TRIVIAL(error) << "Error in a preset file: The preset \"" << - preset->name << "\" contains the following incorrect keys: " << incorrect_keys << ", which were removed"; + if (!incorrect_keys.empty()) { + ++m_errors; + BOOST_LOG_TRIVIAL(error) << "Error in a preset file: The preset \"" << preset->name + << "\" contains the following incorrect keys: " << incorrect_keys << ", which were removed"; + } preset->loaded = true; presets_loaded.emplace_back(*preset); BOOST_LOG_TRIVIAL(debug) << __FUNCTION__ << boost::format(", %1% got preset, name %2%, path %3%, is_system %4%, is_default %5% is_visible %6%")%Preset::get_type_string(m_type) %preset->name %preset->file %preset->is_system %preset->is_default %preset->is_visible; @@ -1533,6 +1543,7 @@ void PresetCollection::save_user_presets(const std::string& dir_path, const std: } Preset* parent_preset = this->find_preset(inherits, false, true); if (!parent_preset) { + ++m_errors; BOOST_LOG_TRIVIAL(error) << __FUNCTION__ << boost::format(" can not find parent preset for %1% , inherits %2%")%preset->name %inherits; continue; } @@ -1680,9 +1691,11 @@ bool PresetCollection::load_user_preset(std::string name, std::mapname == m_edited_preset.name && iter->is_dirty) { // Keep modifies when update from remote @@ -2800,9 +2813,13 @@ void PresetCollection::update_map_system_profile_renamed() for (Preset &preset : m_presets) for (const std::string &renamed_from : preset.renamed_from) { const auto [it, success] = m_map_system_profile_renamed.insert(std::pair(renamed_from, preset.name)); - if (! success) - BOOST_LOG_TRIVIAL(error) << boost::format("Preset name \"%1%\" was marked as renamed from \"%2%\", though preset name \"%3%\" was marked as renamed from \"%2%\" as well.") % preset.name % renamed_from % it->second; - } + if (!success) { + ++m_errors; + BOOST_LOG_TRIVIAL(error) << boost::format("Preset name \"%1%\" was marked as renamed from \"%2%\", though preset name " + "\"%3%\" was marked as renamed from \"%2%\" as well.") % + preset.name % renamed_from % it->second; + } + } } std::string PresetCollection::name() const diff --git a/src/libslic3r/Preset.hpp b/src/libslic3r/Preset.hpp index ba9af12c3c0..b03ce605e33 100644 --- a/src/libslic3r/Preset.hpp +++ b/src/libslic3r/Preset.hpp @@ -770,6 +770,9 @@ class PresetCollection //BBS: mutex std::mutex m_mutex; + + // Orca: used for validation only + int m_errors = 0; }; // Printer supports the FFF and SLA technologies, with different set of configuration values, diff --git a/src/libslic3r/PresetBundle.cpp b/src/libslic3r/PresetBundle.cpp index 8e33202aee7..f19afe11df6 100644 --- a/src/libslic3r/PresetBundle.cpp +++ b/src/libslic3r/PresetBundle.cpp @@ -831,17 +831,21 @@ bool PresetBundle::import_json_presets(PresetsConfigSubstitutions & s // Report configuration fields, which are misplaced into a wrong group. const Preset &default_preset = collection->default_preset_for(new_config); std::string incorrect_keys = Preset::remove_invalid_keys(preset.config, default_preset.config); - if (!incorrect_keys.empty()) - BOOST_LOG_TRIVIAL(error) << "Error in a preset file: The preset \"" << preset.file << "\" contains the following incorrect keys: " << incorrect_keys - << ", which were removed"; + if (!incorrect_keys.empty()) { + ++m_errors; + BOOST_LOG_TRIVIAL(error) << "Error in a preset file: The preset \"" << preset.file + << "\" contains the following incorrect keys: " << incorrect_keys << ", which were removed"; + } if (!config_substitutions.empty()) substitutions.push_back({name, collection->type(), PresetConfigSubstitutions::Source::UserFile, file, std::move(config_substitutions)}); preset.save(inherit_preset ? &inherit_preset->config : nullptr); result.push_back(file); } catch (const std::ifstream::failure &err) { + ++m_errors; BOOST_LOG_TRIVIAL(error) << boost::format("The config cannot be loaded: %1%. Reason: %2%") % file % err.what(); } catch (const std::runtime_error &err) { + ++m_errors; BOOST_LOG_TRIVIAL(error) << boost::format("Failed importing config file: %1%. Reason: %2%") % file % err.what(); } return true; @@ -945,6 +949,7 @@ void PresetBundle::update_system_preset_setting_ids(std::mapfind_preset(name, false, true); if (preset) { if (!preset->setting_id.empty() && (preset->setting_id.compare(setting_id) != 0)) { + ++m_errors; BOOST_LOG_TRIVIAL(error) << boost::format("name %1%, local setting_id %2% is different with remote id %3%") %preset->name %preset->setting_id %setting_id; } @@ -3156,7 +3161,7 @@ std::pair PresetBundle::load_vendor_configs_ std::vector> process_subfiles; std::vector> filament_subfiles; std::vector> machine_subfiles; - auto get_name_and_subpath = [](json::iterator& it, std::vector>& subfile_map) { + auto get_name_and_subpath = [this](json::iterator& it, std::vector>& subfile_map) { if (it.value().is_array()) { for (auto iter1 = it.value().begin(); iter1 != it.value().end(); iter1++) { if (iter1.value().is_object()) { @@ -3170,18 +3175,21 @@ std::pair PresetBundle::load_vendor_configs_ } } else { + ++m_errors; BOOST_LOG_TRIVIAL(error) << __FUNCTION__<< ": invalid value type for " << iter2.key(); } } if (!name.empty() && !subpath.empty()) subfile_map.push_back(std::make_pair(name, subpath)); + } else { + ++m_errors; + BOOST_LOG_TRIVIAL(error) << __FUNCTION__ << ": invalid type for " << iter1.key(); } - else - BOOST_LOG_TRIVIAL(error) << __FUNCTION__<< ": invalid type for " << iter1.key(); } + } else { + ++m_errors; + BOOST_LOG_TRIVIAL(error) << __FUNCTION__ << ": invalid type for " << it.key(); } - else - BOOST_LOG_TRIVIAL(error) << __FUNCTION__<< ": invalid type for " << it.key(); }; try { boost::nowide::ifstream ifs(root_file); @@ -3279,6 +3287,7 @@ std::pair PresetBundle::load_vendor_configs_ model.variants.emplace_back(VendorProfile::PrinterVariant(variant_name)); } } else { + ++m_errors; BOOST_LOG_TRIVIAL(error)<< __FUNCTION__ << boost::format(": invalid nozzle_diameters %1% for Vendor %1%") % nozzle_diameters % vendor_name; } } @@ -3313,6 +3322,7 @@ std::pair PresetBundle::load_vendor_configs_ // An empty material was inserted into the list of default materials. Remove it. model.default_materials.erase(model.default_materials.begin()); } else { + ++m_errors; BOOST_LOG_TRIVIAL(error) << __FUNCTION__ << boost::format(": invalid default_materials %1% for Vendor %1%") % default_materials_field % vendor_name; } } @@ -3340,9 +3350,8 @@ std::pair PresetBundle::load_vendor_configs_ // 3) paste the process/filament/print configs PresetCollection *presets = nullptr; size_t presets_loaded = 0; - bool _validation_mode = validation_mode; - auto parse_subfile = [path, vendor_name, presets_loaded, current_vendor_profile, _validation_mode]( + auto parse_subfile = [this, path, vendor_name, presets_loaded, current_vendor_profile]( ConfigSubstitutionContext& substitution_context, PresetsConfigSubstitutions& substitutions, LoadConfigBundleAttributes& flags, @@ -3368,6 +3377,7 @@ std::pair PresetBundle::load_vendor_configs_ DynamicPrintConfig config_src; config_src.load_from_json(subfile, substitution_context, false, key_values, reason); if (!reason.empty()) { + ++m_errors; BOOST_LOG_TRIVIAL(error) << __FUNCTION__<< ": load config file "< PresetBundle::load_vendor_configs_ } } else { + ++m_errors; BOOST_LOG_TRIVIAL(error) << __FUNCTION__<< ": can not find inherits "< PresetBundle::load_vendor_configs_ Preset::normalize(config); } catch(nlohmann::detail::parse_error &err) { + ++m_errors; BOOST_LOG_TRIVIAL(error) << __FUNCTION__<< ": parse "<< subfile <<" got a nlohmann::detail::parse_error, reason = " << err.what(); reason = std::string("json parse error") + err.what(); return reason; @@ -3430,15 +3442,18 @@ std::pair PresetBundle::load_vendor_configs_ // Report configuration fields, which are misplaced into a wrong group. std::string incorrect_keys = Preset::remove_invalid_keys(config, *default_config); - if (! incorrect_keys.empty()) - BOOST_LOG_TRIVIAL(error)<< __FUNCTION__ << ": The config " << - subfile << " contains incorrect keys: " << incorrect_keys << ", which were removed"; + if (!incorrect_keys.empty()) { + ++m_errors; + BOOST_LOG_TRIVIAL(error) << __FUNCTION__ << ": The config " << subfile << " contains incorrect keys: " << incorrect_keys + << ", which were removed"; + } if (presets_collection->type() == Preset::TYPE_PRINTER) { // Filter out printer presets, which are not mentioned in the vendor profile. // These presets are considered not installed. auto printer_model = config.opt_string("printer_model"); if (printer_model.empty()) { + ++m_errors; BOOST_LOG_TRIVIAL(error) << "Error in a Vendor Config Bundle \"" << path << "\": The printer preset \"" << preset_name << "\" defines no printer model, it will be ignored."; reason = std::string("can not find printer_model"); @@ -3446,6 +3461,7 @@ std::pair PresetBundle::load_vendor_configs_ } auto printer_variant = config.opt_string("printer_variant"); if (printer_variant.empty()) { + ++m_errors; BOOST_LOG_TRIVIAL(error) << "Error in a Vendor Config Bundle \"" << path << "\": The printer preset \"" << preset_name << "\" defines no printer variant, it will be ignored."; reason = std::string("can not find printer_variant"); @@ -3455,6 +3471,7 @@ std::pair PresetBundle::load_vendor_configs_ [&](const VendorProfile::PrinterModel &m) { return m.id == printer_model; } ); if (it_model == current_vendor_profile->models.end()) { + ++m_errors; BOOST_LOG_TRIVIAL(error) << "Error in a Vendor Config Bundle \"" << path << "\": The printer preset \"" << preset_name << "\" defines invalid printer model \"" << printer_model << "\", it will be ignored."; reason = std::string("can not find printer model in vendor profile"); @@ -3462,6 +3479,7 @@ std::pair PresetBundle::load_vendor_configs_ } auto it_variant = it_model->variant(printer_variant); if (it_variant == nullptr) { + ++m_errors; BOOST_LOG_TRIVIAL(error) << "Error in a Vendor Config Bundle \"" << path << "\": The printer preset \"" << preset_name << "\" defines invalid printer variant \"" << printer_variant << "\", it will be ignored."; reason = std::string("can not find printer_variant in vendor profile"); @@ -3470,6 +3488,7 @@ std::pair PresetBundle::load_vendor_configs_ } const Preset *preset_existing = presets_collection->find_preset(preset_name, false); if (preset_existing != nullptr) { + ++m_errors; BOOST_LOG_TRIVIAL(error) << "Error in a Vendor Config Bundle \"" << path << "\": The printer preset \"" << preset_name << "\" has already been loaded from another Config Bundle."; reason = std::string("duplicated defines"); @@ -3477,7 +3496,7 @@ std::pair PresetBundle::load_vendor_configs_ } auto file_path = (boost::filesystem::path(data_dir()) /PRESET_SYSTEM_DIR/ vendor_name / subfile_iter.second).make_preferred(); - if(_validation_mode) + if(validation_mode) file_path = (boost::filesystem::path(data_dir()) / vendor_name / subfile_iter.second).make_preferred(); // Load the preset into the list of presets, save it to disk. @@ -3491,6 +3510,7 @@ std::pair PresetBundle::load_vendor_configs_ BOOST_LOG_TRIVIAL(info) << __FUNCTION__ << " " << __LINE__ << loaded.name << " load filament_id: " << filament_id; if (presets_collection->type() == Preset::TYPE_FILAMENT) { if (filament_id.empty() && "Template" != vendor_name) { + ++m_errors; BOOST_LOG_TRIVIAL(error) << __FUNCTION__<< ": can not find filament_id for " << preset_name; //throw ConfigurationError(format("can not find inherits %1% for %2%", inherits, preset_name)); reason = "Can not find filament_id for " + preset_name; @@ -3539,6 +3559,7 @@ std::pair PresetBundle::load_vendor_configs_ { std::string reason = parse_subfile(substitution_context, substitutions, flags, subfile, configs, filament_id_maps, presets, presets_loaded); if (!reason.empty()) { + ++m_errors; //parse error std::string subfile_path = path + "/" + vendor_name + "/" + subfile.second; BOOST_LOG_TRIVIAL(error) << __FUNCTION__ << boost::format(", got error when parse process setting from %1%") % subfile_path; @@ -3554,6 +3575,7 @@ std::pair PresetBundle::load_vendor_configs_ { std::string reason = parse_subfile(substitution_context, substitutions, flags, subfile, configs, filament_id_maps, presets, presets_loaded); if (!reason.empty()) { + ++m_errors; //parse error std::string subfile_path = path + "/" + vendor_name + "/" + subfile.second; BOOST_LOG_TRIVIAL(error) << __FUNCTION__ << boost::format(", got error when parse filament setting from %1%") % subfile_path; @@ -3569,6 +3591,7 @@ std::pair PresetBundle::load_vendor_configs_ { std::string reason = parse_subfile(substitution_context, substitutions, flags, subfile, configs, filament_id_maps, presets, presets_loaded); if (!reason.empty()) { + ++m_errors; //parse error std::string subfile_path = path + "/" + vendor_name + "/" + subfile.second; BOOST_LOG_TRIVIAL(error) << __FUNCTION__ << boost::format(", got error when parse printer setting from %1%") % subfile_path; diff --git a/src/libslic3r/PresetBundle.hpp b/src/libslic3r/PresetBundle.hpp index 05e386af040..07b49de4ed3 100644 --- a/src/libslic3r/PresetBundle.hpp +++ b/src/libslic3r/PresetBundle.hpp @@ -264,6 +264,14 @@ class PresetBundle return { Preset::TYPE_PRINTER, Preset::TYPE_SLA_PRINT, Preset::TYPE_SLA_MATERIAL }; } + // Orca: for validation only + bool has_errors() const + { + if (m_errors != 0 || printers.m_errors != 0 || filaments.m_errors != 0 || prints.m_errors != 0) + return true; + return false; + } + private: //std::pair load_system_presets(ForwardCompatibilitySubstitutionRule compatibility_rule); //BBS: add json related logic @@ -288,8 +296,11 @@ class PresetBundle DynamicPrintConfig full_fff_config() const; DynamicPrintConfig full_sla_config() const; + // Orca: used for validation only bool validation_mode = false; std::string vendor_to_validate = ""; + int m_errors = 0; + }; ENABLE_ENUM_BITMASK_OPERATORS(PresetBundle::LoadConfigBundleAttribute)