Merge branch 'main' into PP-423-Small-top-bottom-width-and-wipe-distance

This commit is contained in:
Erwan MATHIEU 2024-01-31 13:45:22 +01:00 committed by GitHub
commit 1a965e57fe
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
169 changed files with 2475 additions and 98 deletions

View file

@ -5,6 +5,13 @@ body:
- type: markdown
attributes:
value: |
### 💥 Slicing Crash Analysis Tool 💥
We are taking steps to analyze an increase in reported crashes more systematically. We'll need some help with that. 😇
Before filling out the report below, we want you to try a special Cura 5.7 Alpha.
This version of Cura has an updated slicing engine that will automatically send a report to the Cura Team for analysis.
#### [You can find the downloads here](https://github.com/Ultimaker/Cura/discussions/18080) ####
If you still encounter a crash you are still welcome to report the issue so we can use your model as a test case, you can find instructions on how to do that below.
### Project File
**⚠️ Before you continue, we need your project file to troubleshoot a slicing crash.**
It contains the printer and settings we need for troubleshooting.
@ -68,4 +75,3 @@ body:
description: You can add the zip file and additional information that is relevant to the issue in the comments below.
validations:
required: true

View file

@ -1,10 +1,10 @@
version: "5.7.0-alpha.0"
version: "5.7.0-alpha.1"
requirements:
- "uranium/(latest)@ultimaker/testing"
- "curaengine/(latest)@ultimaker/testing"
- "cura_binary_data/(latest)@ultimaker/testing"
- "fdm_materials/(latest)@ultimaker/testing"
- "curaengine_plugin_gradual_flow/(latest)@ultimaker/stable"
- "curaengine_plugin_gradual_flow/0.1.0-beta.2"
- "dulcificum/latest@ultimaker/testing"
- "pysavitar/5.3.0"
- "pynest2d/5.3.0"

View file

@ -420,7 +420,6 @@ class CuraConan(ConanFile):
)
if self.options.get_safe("enable_i18n", False) and self._i18n_options["extract"]:
# Update the po and pot files
vb = VirtualBuildEnv(self)
vb.generate()

View file

@ -316,7 +316,13 @@ class ExtruderManager(QObject):
# Starts with the adhesion extruder.
adhesion_type = global_stack.getProperty("adhesion_type", "value")
if adhesion_type in {"skirt", "brim"}:
return max(0, int(global_stack.getProperty("skirt_brim_extruder_nr", "value"))) # optional skirt/brim extruder defaults to zero
skirt_brim_extruder_nr = global_stack.getProperty("skirt_brim_extruder_nr", "value")
# if the skirt_brim_extruder_nr is -1, then we use the first used extruder
if skirt_brim_extruder_nr == -1:
used_extruders = self.getUsedExtruderStacks()
return used_extruders[0].position
else:
return skirt_brim_extruder_nr
if adhesion_type == "raft":
return global_stack.getProperty("raft_base_extruder_nr", "value")

View file

@ -10,11 +10,8 @@ from UM.Math.Vector import Vector
from UM.Logger import Logger
from UM.Math.Matrix import Matrix
from UM.Application import Application
from UM.Message import Message
from UM.Resources import Resources
from UM.Scene.SceneNode import SceneNode
from UM.Settings.ContainerRegistry import ContainerRegistry
from UM.Settings.EmptyInstanceContainer import EmptyInstanceContainer
from cura.CuraApplication import CuraApplication
from cura.CuraPackageManager import CuraPackageManager

View file

@ -1,7 +1,6 @@
# Copyright (c) 2021 Ultimaker B.V.
# Cura is released under the terms of the LGPLv3 or higher.
from UM.MimeTypeDatabase import MimeType, MimeTypeDatabase
from .src import DigitalFactoryFileProvider, DigitalFactoryOutputDevicePlugin, DigitalFactoryController

View file

@ -3,7 +3,6 @@
import json
from json import JSONDecodeError
import re
from time import time
from typing import List, Any, Optional, Union, Type, Tuple, Dict, cast, TypeVar, Callable

View file

@ -4,7 +4,6 @@ from typing import List, Optional
from PyQt6.QtCore import Qt, pyqtSignal
from UM.Logger import Logger
from UM.Qt.ListModel import ListModel
from .DigitalFactoryProjectResponse import DigitalFactoryProjectResponse

View file

@ -2,7 +2,6 @@
# Cura is released under the terms of the LGPLv3 or higher.
from UM.i18n import i18nCatalog
from UM.Platform import Platform
from . import GCodeGzWriter

View file

@ -11,7 +11,6 @@ from UM.Settings.InstanceContainer import InstanceContainer
from cura.Machines.ContainerTree import ContainerTree
from UM.i18n import i18nCatalog
from cura.Settings.CuraStackBuilder import CuraStackBuilder
catalog = i18nCatalog("cura")

View file

@ -3,12 +3,10 @@
from typing import Optional, TYPE_CHECKING, Dict, List
from .Constants import PACKAGES_URL
from .PackageModel import PackageModel
from .RemotePackageList import RemotePackageList
from PyQt6.QtCore import pyqtSignal, QObject, pyqtProperty, QCoreApplication
from UM.TaskManagement.HttpRequestManager import HttpRequestManager # To request the package list from the API.
from UM.i18n import i18nCatalog
if TYPE_CHECKING:

View file

@ -2,7 +2,6 @@
# Cura is released under the terms of the LGPLv3 or higher.
import re
from enum import Enum
from typing import Any, cast, Dict, List, Optional
from PyQt6.QtCore import pyqtProperty, QObject, pyqtSignal, pyqtSlot
@ -12,7 +11,6 @@ from cura.CuraApplication import CuraApplication
from cura.CuraPackageManager import CuraPackageManager
from cura.Settings.CuraContainerRegistry import CuraContainerRegistry # To get names of materials we're compatible with.
from UM.i18n import i18nCatalog # To translate placeholder names if data is not present.
from UM.Logger import Logger
from UM.PluginRegistry import PluginRegistry
catalog = i18nCatalog("cura")

View file

@ -11,7 +11,7 @@ from UM.Settings.SettingInstance import SettingInstance
from UM.Logger import Logger
import UM.Settings.Models.SettingVisibilityHandler
from cura.Settings.ExtruderManager import ExtruderManager #To get global-inherits-stack setting values from different extruders.
from cura.Settings.ExtruderManager import ExtruderManager # To get global-inherits-stack setting values from different extruders.
from cura.Settings.SettingOverrideDecorator import SettingOverrideDecorator

View file

@ -21,7 +21,7 @@
# M163 - Set Mix Factor
# M164 - Save Mix - saves to T2 as a unique mix
import re #To perform the search and replace.
import re # To perform the search and replace.
from ..Script import Script
class ColorMix(Script):

View file

@ -6,7 +6,6 @@
# Description: This plugin is now an option in 'Display Info on LCD'
from ..Script import Script
from UM.Application import Application
from UM.Message import Message
class DisplayFilenameAndLayerOnLCD(Script):

View file

@ -30,9 +30,6 @@
from ..Script import Script
from UM.Application import Application
from UM.Qt.Duration import DurationFormat
import UM.Util
import configparser
from UM.Preferences import Preferences
import time
import datetime
import math

View file

@ -7,8 +7,6 @@
from ..Script import Script
import re
import datetime
from UM.Message import Message
class DisplayProgressOnLCD(Script):

View file

@ -7,7 +7,7 @@
from typing import List
from ..Script import Script
from UM.Application import Application #To get the current printer's settings.
from UM.Application import Application # To get the current printer's settings.
class FilamentChange(Script):

View file

@ -7,7 +7,7 @@
from ..Script import Script
import re
from UM.Application import Application #To get the current printer's settings.
from UM.Application import Application # To get the current printer's settings.
from UM.Logger import Logger
from typing import List, Tuple

View file

@ -1,7 +1,7 @@
# Copyright (c) 2017 Ghostkeeper
# The PostProcessingPlugin is released under the terms of the LGPLv3 or higher.
import re #To perform the search and replace.
import re # To perform the search and replace.
from ..Script import Script

View file

@ -8,7 +8,7 @@ from UM.Application import Application
from UM.Logger import Logger
from UM.Message import Message
from UM.FileHandler.WriteFileJob import WriteFileJob
from UM.FileHandler.FileWriter import FileWriter #To check against the write modes (text vs. binary).
from UM.FileHandler.FileWriter import FileWriter # To check against the write modes (text vs. binary).
from UM.Scene.Iterator.BreadthFirstIterator import BreadthFirstIterator
from UM.OutputDevice.OutputDevice import OutputDevice
from UM.OutputDevice import OutputDeviceError

View file

@ -372,7 +372,10 @@ class SimulationView(CuraView):
self._minimum_path_num = min(self._minimum_path_num, self._current_path_num)
# update _current time when the path is changed by user
if self._current_path_num < self._max_paths and round(self._current_path_num)== self._current_path_num:
self._current_time = self.cumulativeLineDuration()[int(self._current_path_num)]
actual_path_num = int(self._current_path_num)
cumulative_line_duration = self.cumulativeLineDuration()
if actual_path_num < len(cumulative_line_duration):
self._current_time = cumulative_line_duration[actual_path_num]
self._startUpdateTopLayers()
self.currentPathNumChanged.emit()

View file

@ -5,7 +5,7 @@ import json
import os
import platform
import time
from typing import cast, Optional, Set, TYPE_CHECKING
from typing import Optional, Set, TYPE_CHECKING
from PyQt6.QtCore import pyqtSlot, QObject
from PyQt6.QtNetwork import QNetworkRequest

View file

@ -16,8 +16,6 @@ from UM.Application import Application
from UM.Logger import Logger
from UM.Message import Message
from UM.Math.Color import Color
from UM.PluginRegistry import PluginRegistry
from UM.Platform import Platform
from UM.Event import Event
from UM.View.RenderBatch import RenderBatch

View file

@ -22,7 +22,6 @@ from UM.Scene.Iterator.DepthFirstIterator import DepthFirstIterator
from UM.Scene.SceneNode import SceneNode
from UM.Settings.InstanceContainer import InstanceContainer
from cura.CuraApplication import CuraApplication
from cura.Settings.CuraStackBuilder import CuraStackBuilder
from cura.Settings.GlobalStack import GlobalStack
from cura.Utils.Threading import call_on_qt_thread

View file

@ -9,8 +9,8 @@ try:
except ImportError:
Logger.log("w", "Could not import UFPWriter; libCharon may be missing")
from UM.i18n import i18nCatalog #To translate the file format description.
from UM.Mesh.MeshWriter import MeshWriter #For the binary mode flag.
from UM.i18n import i18nCatalog # To translate the file format description.
from UM.Mesh.MeshWriter import MeshWriter # For the binary mode flag.
i18n_catalog = i18nCatalog("cura")

View file

@ -4,9 +4,6 @@
from UM.Job import Job
from UM.Logger import Logger
from .avr_isp import ispBase
from .avr_isp.stk500v2 import Stk500v2
from time import time, sleep
from serial import Serial, SerialException

View file

@ -5,9 +5,9 @@ import os
from UM.i18n import i18nCatalog
from UM.Logger import Logger
from UM.Mesh.MeshWriter import MeshWriter #To get the g-code output.
from UM.Message import Message #Show an error when already printing.
from UM.PluginRegistry import PluginRegistry #To get the g-code output.
from UM.Mesh.MeshWriter import MeshWriter # To get the g-code output.
from UM.Message import Message # Show an error when already printing.
from UM.PluginRegistry import PluginRegistry # To get the g-code output.
from UM.Qt.Duration import DurationFormat
from cura.CuraApplication import CuraApplication
@ -19,7 +19,7 @@ from cura.PrinterOutput.GenericOutputController import GenericOutputController
from .AutoDetectBaudJob import AutoDetectBaudJob
from .AvrFirmwareUpdater import AvrFirmwareUpdater
from io import StringIO #To write the g-code output.
from io import StringIO # To write the g-code output.
from queue import Queue
from serial import Serial, SerialException, SerialTimeoutException
from threading import Thread, Event

View file

@ -1,16 +1,16 @@
# Copyright (c) 2018 Ultimaker B.V.
# Cura is released under the terms of the LGPLv3 or higher.
import configparser #To read config files.
import io #To write config files to strings as if they were files.
import os.path #To get the path to write new user profiles to.
import configparser # To read config files.
import io # To write config files to strings as if they were files.
import os.path # To get the path to write new user profiles to.
from typing import Dict, List, Optional, Set, Tuple
import urllib #To serialise the user container file name properly.
import urllib # To serialise the user container file name properly.
import urllib.parse
import UM.VersionUpgrade #To indicate that a file is of incorrect format.
import UM.VersionUpgradeManager #To schedule more files to be upgraded.
from UM.Resources import Resources #To get the config storage path.
import UM.VersionUpgrade # To indicate that a file is of incorrect format.
import UM.VersionUpgradeManager # To schedule more files to be upgraded.
from UM.Resources import Resources # To get the config storage path.
## Creates a new machine instance instance by parsing a serialised machine
# instance in version 1 of the file format.

View file

@ -1,11 +1,11 @@
# Copyright (c) 2018 Ultimaker B.V.
# Cura is released under the terms of the LGPLv3 or higher.
import configparser #To read config files.
import io #To output config files to string.
import configparser # To read config files.
import io # To output config files to string.
from typing import List, Optional, Tuple
import UM.VersionUpgrade #To indicate that a file is of the wrong format.
import UM.VersionUpgrade # To indicate that a file is of the wrong format.
## Creates a new preferences instance by parsing a serialised preferences file
# in version 1 of the file format.

View file

@ -1,8 +1,8 @@
# Copyright (c) 2018 Ultimaker B.V.
# Cura is released under the terms of the LGPLv3 or higher.
import configparser #To read config files.
import io #To write config files to strings as if they were files.
import configparser # To read config files.
import io # To write config files to strings as if they were files.
from typing import Dict, List, Optional, Tuple
import UM.VersionUpgrade

View file

@ -7,7 +7,6 @@ from PyQt6.QtGui import QOpenGLContext, QImage
from UM.Application import Application
from UM.Logger import Logger
from UM.Math.Color import Color
from UM.PluginRegistry import PluginRegistry
from UM.Resources import Resources
from UM.Platform import Platform
from UM.Event import Event

View file

@ -3,9 +3,9 @@
import copy
import io
import json #To parse the product-to-id mapping file.
import os.path #To find the product-to-id mapping.
from typing import Any, Dict, List, Optional, Tuple, cast, Set, Union
import json # To parse the product-to-id mapping file.
import os.path # To find the product-to-id mapping.
from typing import Any, Dict, List, Optional, Tuple, cast, Set
import xml.etree.ElementTree as ET
from UM.PluginRegistry import PluginRegistry

View file

@ -9,16 +9,20 @@
},
"overrides":
{
"acceleration_layer_0": { "value": 3000 },
"acceleration_print": { "value": 3000 },
"acceleration_travel": { "value": 5000 },
"acceleration_print":
{
"maximum_value_warning": "20000",
"value": 10000
},
"acceleration_wall": { "value": "acceleration_print/2" },
"cool_fan_full_layer": { "value": 2 },
"infill_line_width": { "value": "line_width + 0.05" },
"infill_overlap": { "value": "0 if infill_sparse_density < 40.01 and infill_pattern != 'concentric' else -5" },
"infill_pattern": { "value": "'lines' if infill_sparse_density > 35 else 'grid'" },
"initial_layer_line_width_factor": { "value": "100.0 if resolveOrValue('adhesion_type') == 'raft' else 125 if line_width < 0.5 else 110" },
"machine_acceleration": { "value": 3000 },
"machine_acceleration": { "value": 5000 },
"machine_depth": { "default_value": 230 },
"machine_end_gcode": { "default_value": "G91 ;Relative positionning\nG1 E-2 F2700 ;Retract a bit\nG1 E-2 Z0.2 F2400 ;Retract and raise Z\nG1 X5 Y5 F3000 ;Wipe out\nG1 Z2 ;Raise Z more\nG90 ;Absolute positionning\nG1 X0 Y{machine_depth} ;Present print\nM106 S0 ;Turn-off fan\nM104 S0 ;Turn-off hotend\nM140 S0 ;Turn-off bed\nM84 X Y E ;Disable all steppers but Z" },
"machine_end_gcode": { "default_value": "G91 ;Relative positionning\nG1 E-2 F2700 ;Retract a bit\nG1 E-2 Z0.2 F2400 ;Retract and raise Z\nG1 X5 Y5 F3000 ;Wipe out\nG1 Z2 ;Raise Z more\nG90 ;Absolute positionning\nG1 X0 Y{machine_depth - 5} ;Present print\nM106 S0 ;Turn-off fan\nM104 S0 ;Turn-off hotend\nM140 S0 ;Turn-off bed\nM84 X Y E ;Disable all steppers but Z" },
"machine_gcode_flavor": { "default_value": "RepRap (Marlin/Sprinter)" },
"machine_head_with_fans_polygon":
{
@ -32,12 +36,12 @@
"machine_heated_bed": { "default_value": true },
"machine_height": { "default_value": 270 },
"machine_max_acceleration_e": { "value": 5000 },
"machine_max_acceleration_x": { "value": 5000 },
"machine_max_acceleration_y": { "value": 5000 },
"machine_max_acceleration_x": { "value": 20000 },
"machine_max_acceleration_y": { "value": 20000 },
"machine_name": { "default_value": "ELEGOO NEPTUNE 4" },
"machine_nozzle_cool_down_speed": { "value": 0.75 },
"machine_nozzle_heat_up_speed": { "value": 1.6 },
"machine_start_gcode": { "default_value": "G28 ;home\nG92 E0 ;Reset Extruder\nG1 Z4.0 F3000 ;Move Z Axis up\nG92 E0 ;Reset Extruder\nG1 X1.1 Y20 Z0.28 F5000.0 ;Move to start position\nG1 X1.1 Y80.0 Z0.28 F1500.0 E10 ;Draw the first line\nG1 X1.4 Y80.0 Z0.28 F5000.0 ;Move to side a little\nG1 X1.4 Y20 Z0.28 F1500.0 E20 ;Draw the second line\nG92 E0 ;Reset Extruder\nG1 Z2.0 F3000 ;Move Z Axis up" },
"machine_start_gcode": { "default_value": ";ELEGOO NEPTUNE 4 / 4 PRO\nM220 S100 ;Set the feed speed to 100%\nM221 S100 ;Set the flow rate to 100%\nM104 S140 ;Start heating extruder\nM190 S{material_bed_temperature_layer_0} ;Wait for the bed to reach print temp\nG90\nG28 ;home\nG1 Z10 F300\nG1 X67.5 Y0 F6000\nG1 Z0 F300\nM109 S{material_print_temperature_layer_0} ;Wait for extruder to reach print temp\nG92 E0 ;Reset Extruder\nG1 X67.5 Y0 Z0.4 F300 ;Move to start position\nG1 X167.5 E30 F400 ;Draw the first line\nG1 Z0.6 F120.0 ;Move to side a little\nG1 X162.5 F3000\nG92 E0 ;Reset Extruder" },
"machine_width": { "default_value": 235 },
"retraction_amount": { "default_value": 0.5 },
"retraction_count_max": { "value": 80 },

View file

@ -0,0 +1,62 @@
{
"version": 2,
"name": "ELEGOO NEPTUNE 4 Max",
"inherits": "elegoo_neptune_4",
"metadata":
{
"visible": true,
"author": "mastercaution",
"platform": "elegoo_platform_max.3mf",
"platform_offset": [
-2.1,
-0.2,
0
],
"quality_definition": "elegoo_neptune_4"
},
"overrides":
{
"acceleration_print":
{
"maximum_value_warning": "15000",
"value": 2500
},
"machine_depth": { "default_value": 430 },
"machine_height": { "default_value": 482 },
"machine_max_acceleration_e": { "value": 5000 },
"machine_max_acceleration_x": { "value": 15000 },
"machine_max_acceleration_y": { "value": 15000 },
"machine_name": { "default_value": "ELEGOO NEPTUNE 4 Max" },
"machine_start_gcode": { "default_value": ";ELEGOO NEPTUNE 4 MAX\nM220 S100 ;Set the feed speed to 100%\nM221 S100 ;Set the flow rate to 100%\nM104 S140 ;Start heating extruder\nM190 S{material_bed_temperature_layer_0} ;Wait for the bed to reach print temp\nG90\nG28 ;home\nG1 Z10 F300\nG1 X165 Y0 F6000\nG1 Z0 F300\nM109 S{material_print_temperature_layer_0} ;Wait for extruder to reach print temp\nG92 E0 ;Reset Extruder\nG1 X165 Y0 Z0.4 F300 ;Move to start position\nG1 X265 E30 F400 ;Draw the first line\nG1 Z0.6 F120.0 ;Move to side a little\nG1 X260 F3000\nG92 E0 ;Reset Extruder" },
"machine_width": { "default_value": 430 },
"nozzle_disallowed_areas":
{
"default_value": [
[
[-215, -215],
[-215, 215],
[-211, 215],
[-211, -215]
],
[
[215, 215],
[215, -215],
[211, -215],
[211, 215]
],
[
[-215, -215],
[215, -215],
[-215, -211],
[215, -211]
],
[
[-215, 215],
[215, 215],
[-215, 211],
[215, 211]
]
]
}
}
}

View file

@ -0,0 +1,59 @@
{
"version": 2,
"name": "ELEGOO NEPTUNE 4 Plus",
"inherits": "elegoo_neptune_4",
"metadata":
{
"visible": true,
"author": "mastercaution",
"platform": "elegoo_platform_max.3mf",
"platform_offset": [
-2.1,
-0.2,
0
],
"quality_definition": "elegoo_neptune_4"
},
"overrides":
{
"acceleration_print": { "value": 4000 },
"machine_acceleration": { "value": 4000 },
"machine_depth": { "default_value": 330 },
"machine_height": { "default_value": 387 },
"machine_max_acceleration_e": { "value": 5000 },
"machine_max_acceleration_x": { "value": 20000 },
"machine_max_acceleration_y": { "value": 20000 },
"machine_name": { "default_value": "ELEGOO NEPTUNE 4 Plus" },
"machine_start_gcode": { "default_value": ";ELEGOO NEPTUNE 4 PLUS\nM220 S100 ;Set the feed speed to 100%\nM221 S100 ;Set the flow rate to 100%\nM104 S140 ;Start heating extruder\nM190 S{material_bed_temperature_layer_0} ;Wait for the bed to reach print temp\nG90\nG28 ;home\nG1 Z10 F300\nG1 X115 Y0 F6000\nG1 Z0 F300\nM109 S{material_print_temperature_layer_0} ;Wait for extruder to reach print temp\nG92 E0 ;Reset Extruder\nG1 X115 Y0 Z0.4 F300 ;Move to start position\nG1 X215 E30 F400 ;Draw the first line\nG1 Z0.6 F120.0 ;Move to side a little\nG1 X210 F3000\nG92 E0 ;Reset Extruder" },
"machine_width": { "default_value": 330 },
"nozzle_disallowed_areas":
{
"default_value": [
[
[-165, -165],
[-165, 165],
[-161, 165],
[-161, -165]
],
[
[165, 165],
[165, -165],
[161, -165],
[161, 165]
],
[
[-165, -165],
[165, -165],
[-165, -161],
[165, -161]
],
[
[-165, 165],
[165, 165],
[-165, 161],
[165, 161]
]
]
}
}
}

View file

@ -6453,6 +6453,18 @@
"settable_per_extruder": true,
"limit_to_extruder": "raft_surface_extruder_nr"
},
"raft_surface_monotonic":
{
"label": "Monotonic Raft Top Surface Order",
"description": "Print raft top surface lines in an ordering that causes them to always overlap with adjacent lines in a single direction. This takes slightly more time to print, but makes the surface look more consistent, which is also visible on the model bottom surface.",
"type": "bool",
"default_value": false,
"value": "skin_monotonic",
"enabled": "resolveOrValue('adhesion_type') == 'raft' and raft_surface_layers > 0",
"settable_per_mesh": false,
"settable_per_extruder": true,
"limit_to_extruder": "raft_surface_extruder_nr"
},
"raft_wall_count":
{
"label": "Raft Wall Count",

View file

@ -0,0 +1,15 @@
{
"version": 2,
"name": "Adventurer 3",
"inherits": "flashforge_adventurer3c",
"metadata":
{
"visible": true,
"author": "Jeremie-C",
"supports_network_connection": true
},
"overrides":
{
"machine_name": { "default_value": "Adventurer 3" }
}
}

View file

@ -0,0 +1,33 @@
{
"version": 2,
"name": "Adventurer 3C",
"inherits": "flashforge_adventurer_base",
"metadata":
{
"visible": true,
"author": "Jeremie-C",
"quality_definition": "flashforge_adventurer3"
},
"overrides":
{
"default_material_bed_temperature": { "maximum_value_warning": "100" },
"gantry_height": { "value": "150" },
"machine_center_is_zero": { "default_value": true },
"machine_depth": { "default_value": 150 },
"machine_end_gcode": { "default_value": ";end gcode\nM104 S0 T0\nM140 S0 T0\nG162 Z F1800\nG28 X Y\nM132 X Y A B\nM652\nG91\nM18" },
"machine_head_with_fans_polygon":
{
"default_value": [
[-20, 10],
[-20, -10],
[10, 10],
[10, -10]
]
},
"machine_height": { "default_value": 150 },
"machine_name": { "default_value": "Adventurer 3C" },
"machine_start_gcode": { "default_value": ";Start Gcode\nG28\nM132 X Y Z A B\nG1 Z50.000 F420\nG161 X Y F3300\nM7 T0\nM6 T0\nM651 S255\n;End Start" },
"machine_width": { "default_value": 150 },
"speed_print": { "maximum_value_warning": 100 }
}
}

View file

@ -0,0 +1,33 @@
{
"version": 2,
"name": "Adventurer 4",
"inherits": "flashforge_adventurer_base",
"metadata":
{
"visible": true,
"author": "Jeremie-C",
"quality_definition": "flashforge_adventurer4",
"supports_network_connection": true
},
"overrides":
{
"default_material_bed_temperature": { "maximum_value_warning": "110" },
"gantry_height": { "value": "250" },
"machine_depth": { "default_value": 200 },
"machine_end_gcode": { "default_value": ";End Gcode\nM104 S0 T0\nM140 S0 T0\nG162 Z F1800\nG28 X Y\nM132 X Y A B\nM652\nG91\nM18" },
"machine_head_with_fans_polygon":
{
"default_value": [
[-20, 10],
[-20, -10],
[10, 10],
[10, -10]
]
},
"machine_height": { "default_value": 250 },
"machine_name": { "default_value": "Adventurer 4" },
"machine_start_gcode": { "default_value": ";Start Gcode\nG28\nM132 X Y Z A B\nG1 Z50.000 F420\nG161 X Y F3300\nM7 T0\nM6 T0\nM651 S255\n;End Start" },
"machine_use_extruder_offset_to_offset_coords": { "default_value": false },
"machine_width": { "default_value": 220 }
}
}

View file

@ -0,0 +1,14 @@
{
"version": 2,
"name": "Adventurer 4 Lite",
"inherits": "flashforge_adventurer4",
"metadata":
{
"visible": true,
"author": "Jeremie-C"
},
"overrides":
{
"machine_name": { "default_value": "Adventurer 4 Lite" }
}
}

View file

@ -0,0 +1,34 @@
{
"version": 2,
"name": "Flashforge Adventurer Base",
"inherits": "fdmprinter",
"metadata":
{
"visible": false,
"author": "Jeremie-C",
"manufacturer": "Flashforge",
"file_formats": "application/gx;text/x-gcode",
"first_start_actions": [ "MachineSettingsAction" ],
"has_machine_quality": true,
"has_materials": true,
"has_variants": true,
"machine_extruder_trains": { "0": "flashforge_adventurer_extruder_0" },
"preferred_material": "generic_pla",
"preferred_quality_type": "normal",
"preferred_variant_name": "0.4mm Nozzle",
"variants_name": "Nozzle Size"
},
"overrides":
{
"adhesion_type": { "default_value": "skirt" },
"default_material_print_temperature": { "maximum_value_warning": "265" },
"layer_height":
{
"maximum_value_warning": "0.4",
"minimum_value_warning": "0.1"
},
"machine_center_is_zero": { "default_value": true },
"machine_gcode_flavor": { "default_value": "RepRap (Marlin/Sprinter)" },
"machine_heated_bed": { "default_value": true }
}
}

View file

@ -55,7 +55,7 @@
"machine_endstop_positive_direction_y": { "default_value": true },
"machine_endstop_positive_direction_z": { "default_value": false },
"machine_feeder_wheel_diameter": { "default_value": 7.5 },
"machine_gcode_flavor": { "default_value": "RepRap (RepRap)" },
"machine_gcode_flavor": { "default_value": "RepRap (Marlin/Sprinter)" },
"machine_head_with_fans_polygon":
{
"default_value": [
@ -76,7 +76,7 @@
"machine_max_jerk_xy": { "default_value": 20 },
"machine_max_jerk_z": { "default_value": 1 },
"machine_name": { "default_value": "VORON2" },
"machine_start_gcode": { "default_value": "print_start" },
"machine_start_gcode": { "default_value": ";Nozzle diameter = {machine_nozzle_size}\n;Filament type = {material_type}\n;Filament name = {material_name}\n;Filament weight = {filament_weight}\n; M190 S{material_bed_temperature_layer_0}\n; M109 S{material_print_temperature_layer_0}\nprint_start EXTRUDER={material_print_temperature_layer_0} BED={material_bed_temperature_layer_0} CHAMBER={build_volume_temperature}" },
"machine_steps_per_mm_x": { "default_value": 80 },
"machine_steps_per_mm_y": { "default_value": 80 },
"machine_steps_per_mm_z": { "default_value": 400 },

View file

@ -0,0 +1,16 @@
{
"version": 2,
"name": "Extruder",
"inherits": "fdmextruder",
"metadata":
{
"machine": "flashforge_adventurer_base",
"position": "0"
},
"overrides":
{
"extruder_nr": { "default_value": 0 },
"machine_nozzle_size": { "default_value": 0.4 },
"material_diameter": { "default_value": 1.75 }
}
}

View file

@ -0,0 +1,25 @@
[general]
definition = elegoo_neptune_4
name = Accurate
version = 4
[metadata]
intent_category = engineering
is_experimental = True
material = generic_pla
quality_type = Elegoo_layer_020
setting_version = 22
type = intent
variant = 0.40mm_Elegoo_Nozzle
[values]
speed_infill = =speed_print
speed_print = 150
speed_topbottom = =speed_print * 2 / 3
speed_travel = =min(speed_print * 4 / 3, 250) if speed_print <= 250 else speed_print
speed_wall = =speed_print * 2 / 3
speed_wall_0 = =speed_wall
speed_wall_x = =speed_wall
top_bottom_thickness = =wall_thickness
wall_thickness = =line_width * 3

View file

@ -109,7 +109,6 @@ Item
Action
{
id: exitFullScreenAction
shortcut: StandardKey.Cancel
text: catalog.i18nc("@action:inmenu", "Exit Full Screen")
icon.name: "view-fullscreen"
}

View file

@ -160,7 +160,6 @@ Item
ProfileWarningReset
{
id: profileWarningReset
width: parent.width
anchors.right: parent.right
anchors.verticalCenter: parent.verticalCenter
fullWarning: false

View file

@ -0,0 +1,17 @@
[general]
definition = flashforge_adventurer3
name = Fine
version = 4
[metadata]
material = generic_abs
quality_type = fine
setting_version = 22
type = quality
variant = 0.3mm Nozzle
weight = 1
[values]
speed_print = 50
speed_travel = 100

View file

@ -0,0 +1,17 @@
[general]
definition = flashforge_adventurer3
name = Very Fine
version = 4
[metadata]
material = generic_abs
quality_type = veryfine
setting_version = 22
type = quality
variant = 0.3mm Nozzle
weight = 2
[values]
speed_print = 45
speed_travel = 100

View file

@ -0,0 +1,17 @@
[general]
definition = flashforge_adventurer3
name = Draft
version = 4
[metadata]
material = generic_abs
quality_type = draft
setting_version = 22
type = quality
variant = 0.4mm Nozzle
weight = -3
[values]
speed_print = 70
speed_travel = 90

View file

@ -0,0 +1,17 @@
[general]
definition = flashforge_adventurer3
name = Fast
version = 4
[metadata]
material = generic_abs
quality_type = fast
setting_version = 22
type = quality
variant = 0.4mm Nozzle
weight = -1
[values]
speed_print = 60
speed_travel = 80

View file

@ -0,0 +1,17 @@
[general]
definition = flashforge_adventurer3
name = Fine
version = 4
[metadata]
material = generic_abs
quality_type = fine
setting_version = 22
type = quality
variant = 0.4mm Nozzle
weight = 1
[values]
speed_print = 40
speed_travel = 70

View file

@ -0,0 +1,17 @@
[general]
definition = flashforge_adventurer3
name = Standard
version = 4
[metadata]
material = generic_abs
quality_type = normal
setting_version = 22
type = quality
variant = 0.4mm Nozzle
weight = 0
[values]
speed_print = 60
speed_travel = 80

View file

@ -0,0 +1,17 @@
[general]
definition = flashforge_adventurer3
name = Very Fast
version = 4
[metadata]
material = generic_abs
quality_type = veryfast
setting_version = 22
type = quality
variant = 0.4mm Nozzle
weight = -2
[values]
speed_print = 60
speed_travel = 90

View file

@ -0,0 +1,17 @@
[general]
definition = flashforge_adventurer3
name = Very Fine
version = 4
[metadata]
material = generic_abs
quality_type = veryfine
setting_version = 22
type = quality
variant = 0.4mm Nozzle
weight = 2
[values]
speed_print = 35
speed_travel = 70

View file

@ -0,0 +1,17 @@
[general]
definition = flashforge_adventurer3
name = Draft
version = 4
[metadata]
material = generic_abs
quality_type = draft
setting_version = 22
type = quality
variant = 0.6mm Nozzle
weight = -3
[values]
speed_print = 55
speed_travel = 100

View file

@ -0,0 +1,17 @@
[general]
definition = flashforge_adventurer3
name = Fast
version = 4
[metadata]
material = generic_abs
quality_type = fast
setting_version = 22
type = quality
variant = 0.6mm Nozzle
weight = -1
[values]
speed_print = 50
speed_travel = 100

View file

@ -0,0 +1,17 @@
[general]
definition = flashforge_adventurer3
name = Very Fast
version = 4
[metadata]
material = generic_abs
quality_type = veryfast
setting_version = 22
type = quality
variant = 0.6mm Nozzle
weight = -2
[values]
speed_print = 50
speed_travel = 100

View file

@ -0,0 +1,19 @@
[general]
definition = flashforge_adventurer4
name = Fine
version = 4
[metadata]
material = generic_abs
quality_type = fine
setting_version = 22
type = quality
variant = 0.3mm Nozzle
weight = 1
[values]
retraction_amount = 5
retraction_speed = 30
speed_print = 50
speed_travel = 100

View file

@ -0,0 +1,19 @@
[general]
definition = flashforge_adventurer4
name = Very Fine
version = 4
[metadata]
material = generic_abs
quality_type = veryfine
setting_version = 22
type = quality
variant = 0.3mm Nozzle
weight = 2
[values]
retraction_amount = 5
retraction_speed = 30
speed_print = 45
speed_travel = 100

View file

@ -0,0 +1,19 @@
[general]
definition = flashforge_adventurer4
name = Draft
version = 4
[metadata]
material = generic_abs
quality_type = draft
setting_version = 22
type = quality
variant = 0.4mm Nozzle
weight = -3
[values]
retraction_amount = 5
retraction_speed = 30
speed_print = 70
speed_travel = 90

View file

@ -0,0 +1,19 @@
[general]
definition = flashforge_adventurer4
name = Fast
version = 4
[metadata]
material = generic_abs
quality_type = fast
setting_version = 22
type = quality
variant = 0.4mm Nozzle
weight = -1
[values]
retraction_amount = 5
retraction_speed = 30
speed_print = 60
speed_travel = 80

View file

@ -0,0 +1,19 @@
[general]
definition = flashforge_adventurer3
name = Fine
version = 4
[metadata]
material = generic_abs
quality_type = fine
setting_version = 22
type = quality
variant = 0.4mm Nozzle
weight = 1
[values]
retraction_amount = 5
retraction_speed = 30
speed_print = 40
speed_travel = 70

View file

@ -0,0 +1,19 @@
[general]
definition = flashforge_adventurer4
name = Standard
version = 4
[metadata]
material = generic_abs
quality_type = normal
setting_version = 22
type = quality
variant = 0.4mm Nozzle
weight = 0
[values]
retraction_amount = 5
retraction_speed = 30
speed_print = 60
speed_travel = 80

View file

@ -0,0 +1,19 @@
[general]
definition = flashforge_adventurer4
name = Very Fast
version = 4
[metadata]
material = generic_abs
quality_type = veryfast
setting_version = 22
type = quality
variant = 0.4mm Nozzle
weight = -2
[values]
retraction_amount = 5
retraction_speed = 30
speed_print = 60
speed_travel = 90

View file

@ -0,0 +1,19 @@
[general]
definition = flashforge_adventurer4
name = Very Fine
version = 4
[metadata]
material = generic_abs
quality_type = veryfine
setting_version = 22
type = quality
variant = 0.4mm Nozzle
weight = 2
[values]
retraction_amount = 5
retraction_speed = 30
speed_print = 35
speed_travel = 70

View file

@ -0,0 +1,19 @@
[general]
definition = flashforge_adventurer4
name = Draft
version = 4
[metadata]
material = generic_abs
quality_type = draft
setting_version = 22
type = quality
variant = 0.6mm Nozzle
weight = -3
[values]
retraction_amount = 6
retraction_speed = 30
speed_print = 55
speed_travel = 100

View file

@ -0,0 +1,19 @@
[general]
definition = flashforge_adventurer4
name = Fast
version = 4
[metadata]
material = generic_abs
quality_type = fast
setting_version = 22
type = quality
variant = 0.6mm Nozzle
weight = -1
[values]
retraction_amount = 6
retraction_speed = 30
speed_print = 50
speed_travel = 100

View file

@ -0,0 +1,19 @@
[general]
definition = flashforge_adventurer3
name = Very Fast
version = 4
[metadata]
material = generic_abs
quality_type = veryfast
setting_version = 22
type = quality
variant = 0.6mm Nozzle
weight = -2
[values]
retraction_amount = 6
retraction_speed = 30
speed_print = 50
speed_travel = 100

View file

@ -0,0 +1,19 @@
[general]
definition = flashforge_adventurer4
name = Fast
version = 4
[metadata]
material = generic_asa
quality_type = fast
setting_version = 22
type = quality
variant = 0.4mm Nozzle
weight = -1
[values]
retraction_amount = 4.5
retraction_speed = 30
speed_print = 45
speed_travel = 100

View file

@ -0,0 +1,19 @@
[general]
definition = flashforge_adventurer4
name = Fine
version = 4
[metadata]
material = generic_asa
quality_type = fine
setting_version = 22
type = quality
variant = 0.4mm Nozzle
weight = -1
[values]
retraction_amount = 4.5
retraction_speed = 30
speed_print = 35
speed_travel = 100

View file

@ -0,0 +1,19 @@
[general]
definition = flashforge_adventurer4
name = Standard
version = 4
[metadata]
material = generic_asa
quality_type = normal
setting_version = 22
type = quality
variant = 0.4mm Nozzle
weight = 0
[values]
retraction_amount = 4.5
retraction_speed = 30
speed_print = 40
speed_travel = 100

View file

@ -0,0 +1,21 @@
[general]
definition = flashforge_adventurer3
name = Draft
version = 4
[metadata]
global_quality = True
quality_type = draft
setting_version = 22
type = quality
weight = -3
[values]
layer_height = 0.4
layer_height_0 = 0.4
retraction_amount = 5
retraction_speed = 25
speed_infill = =speed_print
speed_layer_0 = 10
speed_support = =math.ceil(speed_print * 0.6)

View file

@ -0,0 +1,21 @@
[general]
definition = flashforge_adventurer3
name = Fast
version = 4
[metadata]
global_quality = True
quality_type = fast
setting_version = 22
type = quality
weight = -1
[values]
layer_height = 0.25
layer_height_0 = 0.3
retraction_amount = 5
retraction_speed = 25
speed_infill = =speed_print
speed_layer_0 = 10
speed_support = =math.ceil(speed_print * 0.6)

View file

@ -0,0 +1,21 @@
[general]
definition = flashforge_adventurer3
name = Fine
version = 4
[metadata]
global_quality = True
quality_type = fine
setting_version = 22
type = quality
weight = 1
[values]
layer_height = 0.15
layer_height_0 = 0.23
retraction_amount = 5
retraction_speed = 25
speed_infill = =speed_print
speed_layer_0 = 10
speed_support = =math.ceil(speed_print * 0.6)

View file

@ -0,0 +1,21 @@
[general]
definition = flashforge_adventurer3
name = Standard
version = 4
[metadata]
global_quality = True
quality_type = normal
setting_version = 22
type = quality
weight = 0
[values]
layer_height = 0.2
layer_height_0 = 0.3
retraction_amount = 5
retraction_speed = 25
speed_infill = =speed_print
speed_layer_0 = 10
speed_support = =math.ceil(speed_print * 0.6)

View file

@ -0,0 +1,21 @@
[general]
definition = flashforge_adventurer3
name = Very Fast
version = 4
[metadata]
global_quality = True
quality_type = veryfast
setting_version = 22
type = quality
weight = -2
[values]
layer_height = 0.3
layer_height_0 = 0.3
retraction_amount = 5
retraction_speed = 25
speed_infill = =speed_print
speed_layer_0 = 10
speed_support = =math.ceil(speed_print * 0.6)

View file

@ -0,0 +1,21 @@
[general]
definition = flashforge_adventurer3
name = Very Fine
version = 4
[metadata]
global_quality = True
quality_type = veryfine
setting_version = 22
type = quality
weight = 2
[values]
layer_height = 0.1
layer_height_0 = 0.18
retraction_amount = 5
retraction_speed = 25
speed_infill = =speed_print
speed_layer_0 = 10
speed_support = =math.ceil(speed_print * 0.6)

View file

@ -0,0 +1,19 @@
[general]
definition = flashforge_adventurer4
name = Draft
version = 4
[metadata]
global_quality = True
quality_type = draft
setting_version = 22
type = quality
weight = -3
[values]
layer_height = 0.4
layer_height_0 = 0.4
speed_infill = =speed_print
speed_layer_0 = 10
speed_support = =math.ceil(speed_print * 0.6)

View file

@ -0,0 +1,19 @@
[general]
definition = flashforge_adventurer4
name = Fast
version = 4
[metadata]
global_quality = True
quality_type = fast
setting_version = 22
type = quality
weight = -1
[values]
layer_height = 0.25
layer_height_0 = 0.3
speed_infill = =speed_print
speed_layer_0 = 10
speed_support = =math.ceil(speed_print * 0.6)

View file

@ -0,0 +1,19 @@
[general]
definition = flashforge_adventurer4
name = Fine
version = 4
[metadata]
global_quality = True
quality_type = fine
setting_version = 22
type = quality
weight = 1
[values]
layer_height = 0.15
layer_height_0 = 0.23
speed_infill = =speed_print
speed_layer_0 = 10
speed_support = =math.ceil(speed_print * 0.6)

View file

@ -0,0 +1,19 @@
[general]
definition = flashforge_adventurer4
name = Standard
version = 4
[metadata]
global_quality = True
quality_type = normal
setting_version = 22
type = quality
weight = 0
[values]
layer_height = 0.2
layer_height_0 = 0.3
speed_infill = =speed_print
speed_layer_0 = 10
speed_support = =math.ceil(speed_print * 0.6)

View file

@ -0,0 +1,19 @@
[general]
definition = flashforge_adventurer4
name = Very Fast
version = 4
[metadata]
global_quality = True
quality_type = veryfast
setting_version = 22
type = quality
weight = -2
[values]
layer_height = 0.3
layer_height_0 = 0.3
speed_infill = =speed_print
speed_layer_0 = 10
speed_support = =math.ceil(speed_print * 0.6)

View file

@ -0,0 +1,19 @@
[general]
definition = flashforge_adventurer4
name = Very Fine
version = 4
[metadata]
global_quality = True
quality_type = veryfine
setting_version = 22
type = quality
weight = 2
[values]
layer_height = 0.1
layer_height_0 = 0.18
speed_infill = =speed_print
speed_layer_0 = 10
speed_support = =math.ceil(speed_print * 0.6)

View file

@ -0,0 +1,17 @@
[general]
definition = flashforge_adventurer3
name = Draft
version = 4
[metadata]
material = generic_pc
quality_type = draft
setting_version = 22
type = quality
variant = 0.4mm Nozzle
weight = -3
[values]
speed_print = 50
speed_travel = 90

View file

@ -0,0 +1,17 @@
[general]
definition = flashforge_adventurer3
name = Fast
version = 4
[metadata]
material = generic_pc
quality_type = fast
setting_version = 22
type = quality
variant = 0.4mm Nozzle
weight = -1
[values]
speed_print = 40
speed_travel = 80

View file

@ -0,0 +1,17 @@
[general]
definition = flashforge_adventurer3
name = Standard
version = 4
[metadata]
material = generic_pc
quality_type = normal
setting_version = 22
type = quality
variant = 0.4mm Nozzle
weight = 0
[values]
speed_print = 40
speed_travel = 80

View file

@ -0,0 +1,17 @@
[general]
definition = flashforge_adventurer3
name = Very Fast
version = 4
[metadata]
material = generic_pc
quality_type = veryfast
setting_version = 22
type = quality
variant = 0.4mm Nozzle
weight = -2
[values]
speed_print = 50
speed_travel = 90

View file

@ -0,0 +1,17 @@
[general]
definition = flashforge_adventurer3
name = Draft
version = 4
[metadata]
material = generic_pc
quality_type = draft
setting_version = 22
type = quality
variant = 0.6mm Nozzle
weight = -3
[values]
speed_print = 60
speed_travel = 100

View file

@ -0,0 +1,17 @@
[general]
definition = flashforge_adventurer3
name = Fast
version = 4
[metadata]
material = generic_pc
quality_type = fast
setting_version = 22
type = quality
variant = 0.6mm Nozzle
weight = -2
[values]
speed_print = 50
speed_travel = 100

View file

@ -0,0 +1,17 @@
[general]
definition = flashforge_adventurer3
name = Very Fast
version = 4
[metadata]
material = generic_pc
quality_type = veryfast
setting_version = 22
type = quality
variant = 0.6mm Nozzle
weight = -2
[values]
speed_print = 50
speed_travel = 100

View file

@ -0,0 +1,19 @@
[general]
definition = flashforge_adventurer4
name = Draft
version = 4
[metadata]
material = generic_pc
quality_type = draft
setting_version = 22
type = quality
variant = 0.4mm Nozzle
weight = -3
[values]
retraction_amount = 6
retraction_speed = 30
speed_print = 50
speed_travel = 90

View file

@ -0,0 +1,19 @@
[general]
definition = flashforge_adventurer4
name = Fast
version = 4
[metadata]
material = generic_pc
quality_type = fast
setting_version = 22
type = quality
variant = 0.4mm Nozzle
weight = -1
[values]
retraction_amount = 6
retraction_speed = 30
speed_print = 40
speed_travel = 80

View file

@ -0,0 +1,19 @@
[general]
definition = flashforge_adventurer4
name = Standard
version = 4
[metadata]
material = generic_pc
quality_type = normal
setting_version = 22
type = quality
variant = 0.4mm Nozzle
weight = 0
[values]
retraction_amount = 6
retraction_speed = 30
speed_print = 40
speed_travel = 80

View file

@ -0,0 +1,19 @@
[general]
definition = flashforge_adventurer4
name = Very Fast
version = 4
[metadata]
material = generic_pc
quality_type = veryfast
setting_version = 22
type = quality
variant = 0.4mm Nozzle
weight = -2
[values]
retraction_amount = 6
retraction_speed = 30
speed_print = 50
speed_travel = 90

View file

@ -0,0 +1,19 @@
[general]
definition = flashforge_adventurer4
name = Draft
version = 4
[metadata]
material = generic_pc
quality_type = draft
setting_version = 22
type = quality
variant = 0.6mm Nozzle
weight = -3
[values]
retraction_amount = 6
retraction_speed = 30
speed_print = 60
speed_travel = 100

View file

@ -0,0 +1,19 @@
[general]
definition = flashforge_adventurer4
name = Fast
version = 4
[metadata]
material = generic_pc
quality_type = fast
setting_version = 22
type = quality
variant = 0.6mm Nozzle
weight = -2
[values]
retraction_amount = 6
retraction_speed = 30
speed_print = 50
speed_travel = 100

View file

@ -0,0 +1,19 @@
[general]
definition = flashforge_adventurer4
name = Very Fast
version = 4
[metadata]
material = generic_pc
quality_type = veryfast
setting_version = 22
type = quality
variant = 0.6mm Nozzle
weight = -2
[values]
retraction_amount = 6
retraction_speed = 30
speed_print = 50
speed_travel = 100

View file

@ -0,0 +1,17 @@
[general]
definition = flashforge_adventurer3
name = Fine
version = 4
[metadata]
material = generic_petg
quality_type = fine
setting_version = 22
type = quality
variant = 0.3mm Nozzle
weight = 1
[values]
speed_print = 50
speed_travel = 80

View file

@ -0,0 +1,17 @@
[general]
definition = flashforge_adventurer3
name = Very Fine
version = 4
[metadata]
material = generic_petg
quality_type = veryfine
setting_version = 22
type = quality
variant = 0.3mm Nozzle
weight = 2
[values]
speed_print = 50
speed_travel = 80

Some files were not shown because too many files have changed in this diff Show more