Merge branch 'main' into blockstech

This commit is contained in:
jspijker 2022-12-30 21:25:20 +01:00
commit e8a57518bc
442 changed files with 7447 additions and 33307 deletions

View File

@ -12,10 +12,10 @@
# Subject to change in the future! # Subject to change in the future!
"5.3.0-alpha": "5.3.0-alpha":
requirements: requirements:
- "pyarcus/(latest)@ultimaker/testing" - "pyarcus/5.2.2"
- "curaengine/(latest)@ultimaker/testing" - "curaengine/(latest)@ultimaker/testing"
- "pysavitar/(latest)@ultimaker/testing" - "pysavitar/5.2.2"
- "pynest2d/(latest)@ultimaker/testing" - "pynest2d/5.2.2"
- "uranium/(latest)@ultimaker/testing" - "uranium/(latest)@ultimaker/testing"
- "fdm_materials/(latest)@ultimaker/testing" - "fdm_materials/(latest)@ultimaker/testing"
- "cura_binary_data/(latest)@ultimaker/testing" - "cura_binary_data/(latest)@ultimaker/testing"
@ -225,216 +225,6 @@
Windows: "./icons/Cura.ico" Windows: "./icons/Cura.ico"
Macos: "./icons/cura.icns" Macos: "./icons/cura.icns"
Linux: "./icons/cura-128.png" Linux: "./icons/cura-128.png"
"5.2.0-beta.2":
requirements:
- "pyarcus/(latest)@ultimaker/stable"
- "curaengine/(latest)@ultimaker/stable"
- "pysavitar/(latest)@ultimaker/stable"
- "pynest2d/(latest)@ultimaker/stable"
- "uranium/(latest)@ultimaker/stable"
- "fdm_materials/(latest)@ultimaker/stable"
- "cura_binary_data/(latest)@ultimaker/stable"
- "cpython/3.10.4"
internal_requirements:
- "fdm_materials_private/(latest)@ultimaker/testing"
- "cura_private_data/(latest)@ultimaker/testing"
runinfo:
entrypoint: "cura_app.py"
pyinstaller:
datas:
cura_plugins:
package: "cura"
src: "plugins"
dst: "share/cura/plugins"
cura_resources:
package: "cura"
src: "resources"
dst: "share/cura/resources"
cura_private_data:
package: "cura_private_data"
src: "resources"
dst: "share/cura/resources"
internal: true
uranium_plugins:
package: "uranium"
src: "plugins"
dst: "share/uranium/plugins"
uranium_resources:
package: "uranium"
src: "resources"
dst: "share/uranium/resources"
uranium_um_qt_qml_um:
package: "uranium"
src: "site-packages/UM/Qt/qml/UM"
dst: "PyQt6/Qt6/qml/UM"
cura_binary_data:
package: "cura_binary_data"
src: "resources/cura/resources"
dst: "share/cura/resources"
uranium_binary_data:
package: "cura_binary_data"
src: "resources/uranium/resources"
dst: "share/uranium/resources"
windows_binary_data:
package: "cura_binary_data"
src: "windows"
dst: "share/windows"
fdm_materials:
package: "fdm_materials"
src: "materials"
dst: "share/cura/resources/materials"
fdm_materials_private:
package: "fdm_materials_private"
src: "resources/materials"
dst: "share/cura/resources/materials"
internal: true
tcl:
package: "tcl"
src: "lib/tcl8.6"
dst: "tcl"
tk:
package: "tk"
src: "lib/tk8.6"
dst: "tk"
binaries:
curaengine:
package: "curaengine"
src: "bin"
dst: "."
binary: "CuraEngine"
hiddenimports:
- "pySavitar"
- "pyArcus"
- "pynest2d"
- "PyQt6"
- "PyQt6.QtNetwork"
- "PyQt6.sip"
- "logging.handlers"
- "zeroconf"
- "fcntl"
- "stl"
- "serial"
collect_all:
- "cura"
- "UM"
- "serial"
- "Charon"
- "sqlite3"
- "trimesh"
- "win32ctypes"
- "PyQt6"
- "PyQt6.QtNetwork"
- "PyQt6.sip"
- "stl"
icon:
Windows: "./icons/Cura.ico"
Macos: "./icons/cura.icns"
Linux: "./icons/cura-128.png"
"5.2.0-beta.1":
requirements:
- "pyarcus/5.2.0-beta.1"
- "curaengine/5.2.0-beta.1"
- "pysavitar/5.2.0-beta.1"
- "pynest2d/5.2.0-beta.1"
- "uranium/5.2.0-beta.1"
- "fdm_materials/5.2.0-beta.1"
- "cura_binary_data/5.2.0-beta.1"
- "cpython/3.10.4"
internal_requirements:
- "fdm_materials_private/(latest)@ultimaker/testing"
- "cura_private_data/(latest)@ultimaker/testing"
runinfo:
entrypoint: "cura_app.py"
pyinstaller:
datas:
cura_plugins:
package: "cura"
src: "plugins"
dst: "share/cura/plugins"
cura_resources:
package: "cura"
src: "resources"
dst: "share/cura/resources"
cura_private_data:
package: "cura_private_data"
src: "resources"
dst: "share/cura/resources"
internal: true
uranium_plugins:
package: "uranium"
src: "plugins"
dst: "share/uranium/plugins"
uranium_resources:
package: "uranium"
src: "resources"
dst: "share/uranium/resources"
uranium_um_qt_qml_um:
package: "uranium"
src: "site-packages/UM/Qt/qml/UM"
dst: "PyQt6/Qt6/qml/UM"
cura_binary_data:
package: "cura_binary_data"
src: "resources/cura/resources"
dst: "share/cura/resources"
uranium_binary_data:
package: "cura_binary_data"
src: "resources/uranium/resources"
dst: "share/uranium/resources"
windows_binary_data:
package: "cura_binary_data"
src: "windows"
dst: "share/windows"
fdm_materials:
package: "fdm_materials"
src: "materials"
dst: "share/cura/resources/materials"
fdm_materials_private:
package: "fdm_materials_private"
src: "resources/materials"
dst: "share/cura/resources/materials"
internal: true
tcl:
package: "tcl"
src: "lib/tcl8.6"
dst: "tcl"
tk:
package: "tk"
src: "lib/tk8.6"
dst: "tk"
binaries:
curaengine:
package: "curaengine"
src: "bin"
dst: "."
binary: "CuraEngine"
hiddenimports:
- "pySavitar"
- "pyArcus"
- "pynest2d"
- "PyQt6"
- "PyQt6.QtNetwork"
- "PyQt6.sip"
- "logging.handlers"
- "zeroconf"
- "fcntl"
- "stl"
- "serial"
collect_all:
- "cura"
- "UM"
- "serial"
- "Charon"
- "sqlite3"
- "trimesh"
- "win32ctypes"
- "PyQt6"
- "PyQt6.QtNetwork"
- "PyQt6.sip"
- "stl"
icon:
Windows: "./icons/Cura.ico"
Macos: "./icons/cura.icns"
Linux: "./icons/cura-128.png"
"5.2.0": "5.2.0":
requirements: requirements:
- "pyarcus/5.2.0" - "pyarcus/5.2.0"
@ -540,111 +330,6 @@
Windows: "./icons/Cura.ico" Windows: "./icons/Cura.ico"
Macos: "./icons/cura.icns" Macos: "./icons/cura.icns"
Linux: "./icons/cura-128.png" Linux: "./icons/cura-128.png"
"5.2.0-alpha":
requirements:
- "pyarcus/5.2@ultimaker/testing"
- "curaengine/(latest)@ultimaker/testing"
- "pysavitar/(latest)@ultimaker/testing"
- "pynest2d/(latest)@ultimaker/testing"
- "uranium/(latest)@ultimaker/testing"
- "fdm_materials/(latest)@ultimaker/testing"
- "cura_binary_data/(latest)@ultimaker/testing"
- "cpython/3.10.4"
internal_requirements:
- "fdm_materials_private/(latest)@ultimaker/testing"
- "cura_private_data/(latest)@ultimaker/testing"
runinfo:
entrypoint: "cura_app.py"
pyinstaller:
datas:
cura_plugins:
package: "cura"
src: "plugins"
dst: "share/cura/plugins"
cura_resources:
package: "cura"
src: "resources"
dst: "share/cura/resources"
cura_private_data:
package: "cura_private_data"
src: "resources"
dst: "share/cura/resources"
internal: true
uranium_plugins:
package: "uranium"
src: "plugins"
dst: "share/uranium/plugins"
uranium_resources:
package: "uranium"
src: "resources"
dst: "share/uranium/resources"
uranium_um_qt_qml_um:
package: "uranium"
src: "site-packages/UM/Qt/qml/UM"
dst: "PyQt6/Qt6/qml/UM"
cura_binary_data:
package: "cura_binary_data"
src: "resources/cura/resources"
dst: "share/cura/resources"
uranium_binary_data:
package: "cura_binary_data"
src: "resources/uranium/resources"
dst: "share/uranium/resources"
windows_binary_data:
package: "cura_binary_data"
src: "windows"
dst: "share/windows"
fdm_materials:
package: "fdm_materials"
src: "materials"
dst: "share/cura/resources/materials"
fdm_materials_private:
package: "fdm_materials_private"
src: "resources/materials"
dst: "share/cura/resources/materials"
internal: true
tcl:
package: "tcl"
src: "lib/tcl8.6"
dst: "tcl"
tk:
package: "tk"
src: "lib/tk8.6"
dst: "tk"
binaries:
curaengine:
package: "curaengine"
src: "bin"
dst: "."
binary: "CuraEngine"
hiddenimports:
- "pySavitar"
- "pyArcus"
- "pynest2d"
- "PyQt6"
- "PyQt6.QtNetwork"
- "PyQt6.sip"
- "logging.handlers"
- "zeroconf"
- "fcntl"
- "stl"
- "serial"
collect_all:
- "cura"
- "UM"
- "serial"
- "Charon"
- "sqlite3"
- "trimesh"
- "win32ctypes"
- "PyQt6"
- "PyQt6.QtNetwork"
- "PyQt6.sip"
- "stl"
icon:
Windows: "./icons/Cura.ico"
Macos: "./icons/cura.icns"
Linux: "./icons/cura-128.png"
"5.1.0": "5.1.0":
requirements: requirements:
- "arcus/5.1.0" - "arcus/5.1.0"

View File

@ -24,20 +24,29 @@ class FilamentChange(Script):
"version": 2, "version": 2,
"settings": "settings":
{ {
"enabled":
{
"label": "Enable",
"description": "Uncheck to temporarily disable this feature.",
"type": "bool",
"default_value": true
},
"layer_number": "layer_number":
{ {
"label": "Layer", "label": "Layer",
"description": "At what layer should color change occur. This will be before the layer starts printing. Specify multiple color changes with a comma.", "description": "At what layer should color change occur. This will be before the layer starts printing. Specify multiple color changes with a comma.",
"unit": "", "unit": "",
"type": "str", "type": "str",
"default_value": "1" "default_value": "1",
"enabled": "enabled"
}, },
"firmware_config": "firmware_config":
{ {
"label": "Use Firmware Configuration", "label": "Use Firmware Configuration",
"description": "Use the settings in your firmware, or customise the parameters of the filament change here.", "description": "Use the settings in your firmware, or customise the parameters of the filament change here.",
"type": "bool", "type": "bool",
"default_value": false "default_value": false,
"enabled": "enabled"
}, },
"initial_retract": "initial_retract":
{ {
@ -46,7 +55,7 @@ class FilamentChange(Script):
"unit": "mm", "unit": "mm",
"type": "float", "type": "float",
"default_value": 30.0, "default_value": 30.0,
"enabled": "not firmware_config" "enabled": "enabled and not firmware_config"
}, },
"later_retract": "later_retract":
{ {
@ -55,7 +64,7 @@ class FilamentChange(Script):
"unit": "mm", "unit": "mm",
"type": "float", "type": "float",
"default_value": 300.0, "default_value": 300.0,
"enabled": "not firmware_config" "enabled": "enabled and not firmware_config"
}, },
"x_position": "x_position":
{ {
@ -64,7 +73,7 @@ class FilamentChange(Script):
"unit": "mm", "unit": "mm",
"type": "float", "type": "float",
"default_value": 0, "default_value": 0,
"enabled": "not firmware_config" "enabled": "enabled and not firmware_config"
}, },
"y_position": "y_position":
{ {
@ -73,7 +82,7 @@ class FilamentChange(Script):
"unit": "mm", "unit": "mm",
"type": "float", "type": "float",
"default_value": 0, "default_value": 0,
"enabled": "not firmware_config" "enabled": "enabled and not firmware_config"
}, },
"z_position": "z_position":
{ {
@ -82,7 +91,8 @@ class FilamentChange(Script):
"unit": "mm", "unit": "mm",
"type": "float", "type": "float",
"default_value": 0, "default_value": 0,
"minimum_value": 0 "minimum_value": 0,
"enabled": "enabled"
}, },
"retract_method": "retract_method":
{ {
@ -92,7 +102,7 @@ class FilamentChange(Script):
"options": {"U": "Marlin (M600 U)", "L": "Reprap (M600 L)"}, "options": {"U": "Marlin (M600 U)", "L": "Reprap (M600 L)"},
"default_value": "U", "default_value": "U",
"value": "\\\"L\\\" if machine_gcode_flavor==\\\"RepRap (RepRap)\\\" else \\\"U\\\"", "value": "\\\"L\\\" if machine_gcode_flavor==\\\"RepRap (RepRap)\\\" else \\\"U\\\"",
"enabled": "not firmware_config" "enabled": "enabled and not firmware_config"
}, },
"machine_gcode_flavor": "machine_gcode_flavor":
{ {
@ -113,6 +123,40 @@ class FilamentChange(Script):
}, },
"default_value": "RepRap (Marlin/Sprinter)", "default_value": "RepRap (Marlin/Sprinter)",
"enabled": "false" "enabled": "false"
},
"enable_before_macro":
{
"label": "Enable G-code Before",
"description": "Use this to insert a custom G-code macro before the filament change happens",
"type": "bool",
"default_value": false,
"enabled": "enabled"
},
"before_macro":
{
"label": "G-code Before",
"description": "Any custom G-code to run before the filament change happens, for example, M300 S1000 P10000 for a long beep.",
"unit": "",
"type": "str",
"default_value": "M300 S1000 P10000",
"enabled": "enabled and enable_before_macro"
},
"enable_after_macro":
{
"label": "Enable G-code After",
"description": "Use this to insert a custom G-code macro after the filament change",
"type": "bool",
"default_value": false,
"enabled": "enabled"
},
"after_macro":
{
"label": "G-code After",
"description": "Any custom G-code to run after the filament has been changed right before continuing the print, for example, you can add a sequence to purge filament and wipe the nozzle.",
"unit": "",
"type": "str",
"default_value": "M300 S440 P500",
"enabled": "enabled and enable_after_macro"
} }
} }
}""" }"""
@ -134,6 +178,7 @@ class FilamentChange(Script):
:param data: A list of layers of g-code. :param data: A list of layers of g-code.
:return: A similar list, with filament change commands inserted. :return: A similar list, with filament change commands inserted.
""" """
enabled = self.getSettingValueByKey("enabled")
layer_nums = self.getSettingValueByKey("layer_number") layer_nums = self.getSettingValueByKey("layer_number")
initial_retract = self.getSettingValueByKey("initial_retract") initial_retract = self.getSettingValueByKey("initial_retract")
later_retract = self.getSettingValueByKey("later_retract") later_retract = self.getSettingValueByKey("later_retract")
@ -141,8 +186,20 @@ class FilamentChange(Script):
y_pos = self.getSettingValueByKey("y_position") y_pos = self.getSettingValueByKey("y_position")
z_pos = self.getSettingValueByKey("z_position") z_pos = self.getSettingValueByKey("z_position")
firmware_config = self.getSettingValueByKey("firmware_config") firmware_config = self.getSettingValueByKey("firmware_config")
enable_before_macro = self.getSettingValueByKey("enable_before_macro")
before_macro = self.getSettingValueByKey("before_macro")
enable_after_macro = self.getSettingValueByKey("enable_after_macro")
after_macro = self.getSettingValueByKey("after_macro")
color_change = "M600" if not enabled:
return data
color_change = ";BEGIN FilamentChange plugin\n"
if enable_before_macro:
color_change = color_change + before_macro + "\n"
color_change = color_change + "M600\n"
if not firmware_config: if not firmware_config:
if initial_retract is not None and initial_retract > 0.: if initial_retract is not None and initial_retract > 0.:
@ -163,7 +220,10 @@ class FilamentChange(Script):
if z_pos is not None and z_pos > 0.: if z_pos is not None and z_pos > 0.:
color_change = color_change + (" Z%.2f" % z_pos) color_change = color_change + (" Z%.2f" % z_pos)
color_change = color_change + " ; Generated by FilamentChange plugin\n" if enable_after_macro:
color_change = color_change + after_macro + "\n"
color_change = color_change + ";END FilamentChange plugin\n"
layer_targets = layer_nums.split(",") layer_targets = layer_nums.split(",")
if len(layer_targets) > 0: if len(layer_targets) > 0:

View File

@ -229,22 +229,24 @@ class UFPWriter(MeshWriter):
"quality": asdict(machine_manager.activeQualityDisplayNameMap()), "quality": asdict(machine_manager.activeQualityDisplayNameMap()),
} }
def _retrieveValue(container: InstanceContainer, setting_: str):
value_ = container.getProperty(setting_, "value")
for _ in range(0, 1024): # Prevent possibly endless loop by not using a limit.
if not isinstance(value_, SettingFunction):
return value_ # Success!
value_ = value_(container)
return 0 # Fallback value after breaking possibly endless loop.
global_stack = cast(GlobalStack, Application.getInstance().getGlobalContainerStack()) global_stack = cast(GlobalStack, Application.getInstance().getGlobalContainerStack())
# Add global user or quality changes # Add global user or quality changes
global_flattened_changes = InstanceContainer.createMergedInstanceContainer(global_stack.userChanges, global_stack.qualityChanges) global_flattened_changes = InstanceContainer.createMergedInstanceContainer(global_stack.userChanges, global_stack.qualityChanges)
for setting in global_flattened_changes.getAllKeys(): for setting in global_flattened_changes.getAllKeys():
value = global_flattened_changes.getProperty(setting, "value") settings["global"]["changes"][setting] = _retrieveValue(global_flattened_changes, setting)
if isinstance(value, SettingFunction):
value = value(global_flattened_changes)
settings["global"]["changes"][setting] = value
# Get global all settings values without user or quality changes # Get global all settings values without user or quality changes
for setting in global_stack.getAllKeys(): for setting in global_stack.getAllKeys():
value = global_stack.getProperty(setting, "value") settings["global"]["all_settings"][setting] = _retrieveValue(global_stack, setting)
if isinstance(value, SettingFunction):
value = value(global_stack)
settings["global"]["all_settings"][setting] = value
for i, extruder in enumerate(global_stack.extruderList): for i, extruder in enumerate(global_stack.extruderList):
# Add extruder fields to settings dictionary # Add extruder fields to settings dictionary
@ -256,16 +258,10 @@ class UFPWriter(MeshWriter):
# Add extruder user or quality changes # Add extruder user or quality changes
extruder_flattened_changes = InstanceContainer.createMergedInstanceContainer(extruder.userChanges, extruder.qualityChanges) extruder_flattened_changes = InstanceContainer.createMergedInstanceContainer(extruder.userChanges, extruder.qualityChanges)
for setting in extruder_flattened_changes.getAllKeys(): for setting in extruder_flattened_changes.getAllKeys():
value = extruder_flattened_changes.getProperty(setting, "value") settings[f"extruder_{i}"]["changes"][setting] = _retrieveValue(extruder_flattened_changes, setting)
if isinstance(value, SettingFunction):
value = value(extruder_flattened_changes)
settings[f"extruder_{i}"]["changes"][setting] = value
# Get extruder all settings values without user or quality changes # Get extruder all settings values without user or quality changes
for setting in extruder.getAllKeys(): for setting in extruder.getAllKeys():
value = extruder.getProperty(setting, "value") settings[f"extruder_{i}"]["all_settings"][setting] = _retrieveValue(extruder, setting)
if isinstance(value, SettingFunction):
value = value(extruder)
settings[f"extruder_{i}"]["all_settings"][setting] = value
return settings return settings

View File

@ -4,12 +4,14 @@ from typing import Iterator
from ..diagnostic import Diagnostic from ..diagnostic import Diagnostic
from .linter import Linter from .linter import Linter
MAX_MESH_FILE_SIZE = 1 * 1024 * 1024 # 1MB
class Meshes(Linter): class Meshes(Linter):
def __init__(self, file: Path, settings: dict) -> None: def __init__(self, file: Path, settings: dict) -> None:
""" Finds issues in model files, such as incorrect file format or too large size """ """ Finds issues in model files, such as incorrect file format or too large size """
super().__init__(file, settings) super().__init__(file, settings)
self._max_file_size = self._settings.get("diagnostic-mesh-file-size", 1e6) self._max_file_size = self._settings.get("diagnostic-mesh-file-size", MAX_MESH_FILE_SIZE)
def check(self) -> Iterator[Diagnostic]: def check(self) -> Iterator[Diagnostic]:
if self._settings["checks"].get("diagnostic-mesh-file-extension", False): if self._settings["checks"].get("diagnostic-mesh-file-extension", False):

View File

@ -1,6 +1,6 @@
{ {
"version": 2, "version": 2,
"name": "Sovol-SV01", "name": "Sovol-SV01 (Legacy)",
"inherits": "fdmprinter", "inherits": "fdmprinter",
"metadata": "metadata":
{ {
@ -15,7 +15,6 @@
}, },
"overrides": "overrides":
{ {
"acceleration_enabled": { "value": false },
"acceleration_print": { "value": 500 }, "acceleration_print": { "value": 500 },
"acceleration_roofing": { "enabled": "acceleration_enabled and roofing_layer_count > 0 and top_layers > 0" }, "acceleration_roofing": { "enabled": "acceleration_enabled and roofing_layer_count > 0 and top_layers > 0" },
"acceleration_travel": { "value": 500 }, "acceleration_travel": { "value": 500 },
@ -38,7 +37,6 @@
"machine_max_acceleration_e": { "value": 5000 }, "machine_max_acceleration_e": { "value": 5000 },
"machine_max_acceleration_x": { "value": 500 }, "machine_max_acceleration_x": { "value": 500 },
"machine_max_acceleration_y": { "value": 500 }, "machine_max_acceleration_y": { "value": 500 },
"machine_max_acceleration_z": { "value": 100 },
"machine_max_feedrate_e": { "value": 50 }, "machine_max_feedrate_e": { "value": 50 },
"machine_max_feedrate_x": { "value": 500 }, "machine_max_feedrate_x": { "value": 500 },
"machine_max_feedrate_y": { "value": 500 }, "machine_max_feedrate_y": { "value": 500 },
@ -56,7 +54,6 @@
"retraction_amount": { "default_value": 3 }, "retraction_amount": { "default_value": 3 },
"retraction_speed": { "default_value": 50 }, "retraction_speed": { "default_value": 50 },
"skin_overlap": { "value": 10.0 }, "skin_overlap": { "value": 10.0 },
"skirt_brim_speed": { "value": "speed_layer_0" },
"speed_print": { "value": 50.0 }, "speed_print": { "value": 50.0 },
"wall_0_wipe_dist": { "value": 0.0 }, "wall_0_wipe_dist": { "value": 0.0 },
"z_seam_corner": { "value": "'z_seam_corner_weighted'" }, "z_seam_corner": { "value": "'z_seam_corner_weighted'" },

View File

@ -1,6 +1,6 @@
{ {
"version": 2, "version": 2,
"name": "Sovol-SV02", "name": "Sovol-SV02 (Legacy)",
"inherits": "fdmprinter", "inherits": "fdmprinter",
"metadata": "metadata":
{ {
@ -19,7 +19,6 @@
}, },
"overrides": "overrides":
{ {
"acceleration_enabled": { "value": false },
"acceleration_print": { "value": 500 }, "acceleration_print": { "value": 500 },
"acceleration_travel": { "value": 500 }, "acceleration_travel": { "value": 500 },
"acceleration_travel_layer_0": { "value": "acceleration_travel" }, "acceleration_travel_layer_0": { "value": "acceleration_travel" },
@ -40,11 +39,9 @@
"jerk_travel": { "value": "jerk_print" }, "jerk_travel": { "value": "jerk_print" },
"jerk_travel_layer_0": { "value": "jerk_travel" }, "jerk_travel_layer_0": { "value": "jerk_travel" },
"machine_acceleration": { "value": 500 }, "machine_acceleration": { "value": 500 },
"machine_center_is_zero": { "default_value": false },
"machine_depth": { "default_value": 240 }, "machine_depth": { "default_value": 240 },
"machine_end_gcode": { "default_value": "M104 S0 ;hotend off\nM140 S0 ;bed off\nG92 E0\nG1 F2000 E-100 ;retract filament 100mm\nG92 E0\nG1 F3000 X0 Y240 ;move bed for easy part removal\nM84 ;disable steppers" }, "machine_end_gcode": { "default_value": "M104 S0 ;hotend off\nM140 S0 ;bed off\nG92 E0\nG1 F2000 E-100 ;retract filament 100mm\nG92 E0\nG1 F3000 X0 Y240 ;move bed for easy part removal\nM84 ;disable steppers" },
"machine_extruder_count": { "default_value": 2 }, "machine_extruder_count": { "default_value": 2 },
"machine_gcode_flavor": { "default_value": "RepRap (Marlin/Sprinter)" },
"machine_heated_bed": { "default_value": true }, "machine_heated_bed": { "default_value": true },
"machine_height": { "default_value": 300 }, "machine_height": { "default_value": 300 },
"machine_max_acceleration_e": { "value": 500 }, "machine_max_acceleration_e": { "value": 500 },
@ -55,16 +52,14 @@
"machine_max_feedrate_x": { "value": 500 }, "machine_max_feedrate_x": { "value": 500 },
"machine_max_feedrate_y": { "value": 500 }, "machine_max_feedrate_y": { "value": 500 },
"machine_max_feedrate_z": { "value": 10 }, "machine_max_feedrate_z": { "value": 10 },
"machine_max_jerk_e": { "default_value": 5.0 },
"machine_max_jerk_xy": { "default_value": 5.0 }, "machine_max_jerk_xy": { "default_value": 5.0 },
"machine_max_jerk_z": { "default_value": 0.4 }, "machine_max_jerk_z": { "default_value": 0.4 },
"machine_name": { "default_value": "SV02" }, "machine_name": { "default_value": "SV02" },
"machine_start_gcode": { "default_value": "G21 ;metric values\nG28 ;home all\nG90 ;absolute positioning\nM107 ;start with the fan off\nG1 F2400 Z15.0 ;raise the nozzle 15mm\nM109 S{material_print_temperature} ;Set Extruder Temperature and Wait\nM190 S{material_bed_temperature}; Wait for bed temperature to reach target temp\nT0 ;Switch to Extruder 1\nG1 F3000 X5 Y10 Z0.2 ;move to prime start position\nG92 E0 ;reset extrusion distance\nG1 F600 X160 E5 ;prime nozzle in a line\nG1 F5000 X180 ;quick wipe\nG92 E0 ;reset extrusion distance" }, "machine_start_gcode": { "default_value": "G21 ;metric values\nG28 ;home all\nG90 ;absolute positioning\nM107 ;start with the fan off\nG1 F2400 Z15.0 ;raise the nozzle 15mm\nM109 S{material_print_temperature} ;Set Extruder Temperature and Wait\nM190 S{material_bed_temperature}; Wait for bed temperature to reach target temp\nT0 ;Switch to Extruder 1\nG1 F3000 X5 Y10 Z0.2 ;move to prime start position\nG92 E0 ;reset extrusion distance\nG1 F600 X160 E5 ;prime nozzle in a line\nG1 F5000 X180 ;quick wipe\nG92 E0 ;reset extrusion distance" },
"machine_width": { "default_value": 280 }, "machine_width": { "default_value": 280 },
"material_diameter": { "default_value": 1.75 }, "material_diameter": { "default_value": 1.75 },
"material_final_print_temperature": { "value": 195 },
"material_initial_print_temperature": { "value": "material_print_temperature" }, "material_initial_print_temperature": { "value": "material_print_temperature" },
"prime_tower_min_volume": { "value": "((resolveOrValue('prime_tower_size') * 0.5) ** 2 * 3.14159 * resolveOrValue('layer_height'))/2" }, "prime_tower_min_volume": { "value": "((reveOrValue('layer_height'))/2" },
"prime_tower_position_x": { "value": "240" }, "prime_tower_position_x": { "value": "240" },
"prime_tower_position_y": { "value": "190" }, "prime_tower_position_y": { "value": "190" },
"prime_tower_size": { "value": "30" }, "prime_tower_size": { "value": "30" },
@ -76,7 +71,6 @@
"skirt_line_count": { "value": 3 }, "skirt_line_count": { "value": 3 },
"speed_print": { "default_value": 50 }, "speed_print": { "default_value": 50 },
"top_bottom_thickness": { "default_value": 1 }, "top_bottom_thickness": { "default_value": 1 },
"travel_retract_before_outer_wall": { "default_value": true },
"wall_0_wipe_dist": { "value": 0.0 } "wall_0_wipe_dist": { "value": 0.0 }
} }
} }

View File

@ -1,66 +1,64 @@
{ {
"version": 2, "version": 2,
"name": "Sovol-SV03", "name": "Sovol-SV03 (Legacy)",
"inherits": "fdmprinter", "inherits": "fdmprinter",
"metadata": { "metadata":
"visible": true, {
"author": "Sovol", "visible": true,
"manufacturer": "Sovol 3D", "author": "Sovol",
"file_formats": "text/x-gcode", "manufacturer": "Sovol 3D",
"has_variants": false, "file_formats": "text/x-gcode",
"has_machine_quality": false, "has_machine_quality": false,
"preferred_quality_type": "draft", "has_variants": false,
"machine_extruder_trains": { "machine_extruder_trains": { "0": "SV03_extruder_0" },
"0": "SV03_extruder_0" "preferred_quality_type": "draft"
} },
}, "overrides":
{
"overrides": { "acceleration_enabled": { "value": false },
"machine_name": { "default_value": "SV03" }, "acceleration_print": { "value": 500 },
"machine_extruder_count": { "default_value": 1 }, "acceleration_roofing": { "enabled": "acceleration_enabled and roofing_layer_count > 0 and top_layers > 0" },
"machine_width": { "default_value": 350 }, "acceleration_travel": { "value": 500 },
"machine_depth": { "default_value": 350 }, "acceleration_travel_layer_0": { "value": "acceleration_travel" },
"machine_height": { "default_value": 400 }, "adhesion_type": { "value": "'skirt'" },
"machine_max_feedrate_x": { "value": 500 }, "infill_before_walls": { "value": false },
"machine_max_feedrate_y": { "value": 500 }, "infill_overlap": { "value": 30.0 },
"machine_max_feedrate_z": { "value": 10 }, "infill_pattern": { "value": "'lines'" },
"machine_max_feedrate_e": { "value": 50 }, "infill_wipe_dist": { "value": 0.0 },
"machine_max_acceleration_x": { "value": 500 }, "jerk_enabled": { "value": false },
"machine_max_acceleration_y": { "value": 500 }, "jerk_print": { "value": 8 },
"machine_max_acceleration_z": { "value": 100 }, "jerk_travel": { "value": "jerk_print" },
"machine_max_acceleration_e": { "value": 5000 }, "jerk_travel_layer_0": { "value": "jerk_travel" },
"machine_acceleration": { "value": 500 }, "machine_acceleration": { "value": 500 },
"machine_max_jerk_xy": { "value": 10 }, "machine_depth": { "default_value": 350 },
"machine_max_jerk_z": { "value": 0.4 }, "machine_end_gcode": { "default_value": "G91 ;Relative positioning\nG1 E-2 F2700 ;Retract a bit\nG1 E-2 Z0.2 F2400 ;Retract and raise Z\nG1 X0 Y240 F3000 ;Wipe out\nG1 Z10 ;Raise Z more\nG90 ;Absolute positioning\n\nG1 X0 Y{machine_depth} ;Present print\nM106 S0 ;Turn-off fan\nM104 S0 ;Turn-off hotend\nM140 S0 ;Turn-off bed\n\nM84 X Y E ;Disable all steppers but Z\n" },
"machine_max_jerk_e": { "value": 5 }, "machine_heated_bed": { "default_value": true },
"machine_heated_bed": { "default_value": true }, "machine_height": { "default_value": 400 },
"material_diameter": { "default_value": 1.75 }, "machine_max_acceleration_e": { "value": 5000 },
"acceleration_print": { "value": 500 }, "machine_max_acceleration_x": { "value": 500 },
"acceleration_travel": { "value": 500 }, "machine_max_acceleration_y": { "value": 500 },
"acceleration_travel_layer_0": { "value": "acceleration_travel" }, "machine_max_acceleration_z": { "value": 100 },
"acceleration_roofing": { "enabled": "acceleration_enabled and roofing_layer_count > 0 and top_layers > 0" }, "machine_max_feedrate_e": { "value": 50 },
"jerk_print": { "value": 8 }, "machine_max_feedrate_x": { "value": 500 },
"jerk_travel": { "value": "jerk_print" }, "machine_max_feedrate_y": { "value": 500 },
"jerk_travel_layer_0": { "value": "jerk_travel" }, "machine_max_feedrate_z": { "value": 10 },
"acceleration_enabled": { "value": false }, "machine_max_jerk_e": { "value": 5 },
"jerk_enabled": { "value": false }, "machine_max_jerk_xy": { "value": 10 },
"speed_print": { "value": 50.0 } , "machine_max_jerk_z": { "value": 0.4 },
"skirt_brim_speed": { "value": "speed_layer_0" }, "machine_name": { "default_value": "SV03" },
"optimize_wall_printing_order": { "value": "True" }, "machine_start_gcode": { "default_value": "M201 X500.00 Y500.00 Z100.00 E5000.00 ;Setup machine max acceleration\nM203 X500.00 Y500.00 Z10.00 E50.00 ;Setup machine max feedrate\nM204 P500.00 R1000.00 T500.00 ;Setup Print/Retract/Travel acceleration\nM205 X8.00 Y8.00 Z0.40 E5.00 ;Setup Jerk\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\n\nG28 ;Home\nG29 ;Automatic Leveling\n\nG92 E0 ;Reset Extruder\nG1 Z2.0 F3000 ;Move Z Axis up\nG1 X10.1 Y20 Z0.28 F5000.0 ;Move to start position\nG1 X10.1 Y200.0 Z0.28 F1500.0 E15 ;Draw the first line\nG1 X10.4 Y200.0 Z0.28 F5000.0 ;Move to side a little\nG1 X10.4 Y20 Z0.28 F1500.0 E30 ;Draw the second line\nG92 E0 ;Reset Extruder\nG1 Z2.0 F3000 ;Move Z Axis up\n" },
"material_initial_print_temperature": { "value": "material_print_temperature" }, "machine_width": { "default_value": 350 },
"material_final_print_temperature": { "value": "material_print_temperature" }, "material_diameter": { "default_value": 1.75 },
"z_seam_type": { "value": "'back'" }, "material_final_print_temperature": { "value": "material_print_temperature" },
"z_seam_corner": { "value": "'z_seam_corner_weighted'" }, "material_initial_print_temperature": { "value": "material_print_temperature" },
"infill_pattern": { "value": "'lines'" }, "optimize_wall_printing_order": { "value": "True" },
"infill_before_walls": { "value": false }, "retraction_amount": { "default_value": 3 },
"infill_overlap": { "value": 30.0 }, "retraction_speed": { "default_value": 50 },
"skin_overlap": { "value": 10.0 }, "skin_overlap": { "value": 10.0 },
"infill_wipe_dist": { "value": 0.0 }, "skirt_brim_speed": { "value": "speed_layer_0" },
"wall_0_wipe_dist": { "value": 0.0 }, "speed_print": { "value": 50.0 },
"retraction_amount": { "default_value": 3}, "wall_0_wipe_dist": { "value": 0.0 },
"retraction_speed": { "default_value": 50}, "z_seam_corner": { "value": "'z_seam_corner_weighted'" },
"adhesion_type": { "value": "'skirt'" }, "z_seam_type": { "value": "'back'" }
"machine_start_gcode": { "default_value": "M201 X500.00 Y500.00 Z100.00 E5000.00 ;Setup machine max acceleration\nM203 X500.00 Y500.00 Z10.00 E50.00 ;Setup machine max feedrate\nM204 P500.00 R1000.00 T500.00 ;Setup Print/Retract/Travel acceleration\nM205 X8.00 Y8.00 Z0.40 E5.00 ;Setup Jerk\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\n\nG28 ;Home\nG29 ;Automatic Leveling\n\nG92 E0 ;Reset Extruder\nG1 Z2.0 F3000 ;Move Z Axis up\nG1 X10.1 Y20 Z0.28 F5000.0 ;Move to start position\nG1 X10.1 Y200.0 Z0.28 F1500.0 E15 ;Draw the first line\nG1 X10.4 Y200.0 Z0.28 F5000.0 ;Move to side a little\nG1 X10.4 Y20 Z0.28 F1500.0 E30 ;Draw the second line\nG92 E0 ;Reset Extruder\nG1 Z2.0 F3000 ;Move Z Axis up\n" }, }
"machine_end_gcode": { "default_value": "G91 ;Relative positioning\nG1 E-2 F2700 ;Retract a bit\nG1 E-2 Z0.2 F2400 ;Retract and raise Z\nG1 X0 Y240 F3000 ;Wipe out\nG1 Z10 ;Raise Z more\nG90 ;Absolute positioning\n\nG1 X0 Y{machine_depth} ;Present print\nM106 S0 ;Turn-off fan\nM104 S0 ;Turn-off hotend\nM140 S0 ;Turn-off bed\n\nM84 X Y E ;Disable all steppers but Z\n" } }
}
}

View File

@ -17,7 +17,37 @@
}, },
"overrides": "overrides":
{ {
"acceleration_print": { "value": "2500" }, "acceleration_enabled": { "value": "true" },
"acceleration_infill": { "maximum_value_warning": "2500" },
"acceleration_layer_0": { "maximum_value_warning": "2500" },
"acceleration_prime_tower": { "maximum_value_warning": "2500" },
"acceleration_print":
{
"maximum_value_warning": "2500",
"value": "2500"
},
"acceleration_print_layer_0": { "maximum_value_warning": "2500" },
"acceleration_roofing": { "maximum_value_warning": "2500" },
"acceleration_skirt_brim": { "maximum_value_warning": "2500" },
"acceleration_support": { "maximum_value_warning": "2500" },
"acceleration_support_bottom": { "maximum_value_warning": "2500" },
"acceleration_support_infill": { "maximum_value_warning": "2500" },
"acceleration_support_interface": { "maximum_value_warning": "2500" },
"acceleration_support_roof": { "maximum_value_warning": "2500" },
"acceleration_topbottom": { "maximum_value_warning": "2500" },
"acceleration_travel":
{
"maximum_value_warning": "2500",
"value": "acceleration_print"
},
"acceleration_travel_layer_0":
{
"maximum_value_warning": "2500",
"value": "acceleration_travel"
},
"acceleration_wall": { "maximum_value_warning": "2500" },
"acceleration_wall_0": { "maximum_value_warning": "2500" },
"acceleration_wall_x": { "maximum_value_warning": "2500" },
"adhesion_type": { "default_value": "skirt" }, "adhesion_type": { "default_value": "skirt" },
"cool_min_layer_time": { "value": 6 }, "cool_min_layer_time": { "value": 6 },
"cool_min_speed": { "value": 30 }, "cool_min_speed": { "value": 30 },
@ -91,7 +121,6 @@
"top_bottom_thickness": { "value": "layer_height * 4" }, "top_bottom_thickness": { "value": "layer_height * 4" },
"wall_overhang_angle": { "value": 55 }, "wall_overhang_angle": { "value": 55 },
"wall_overhang_speed_factor": { "value": 55 }, "wall_overhang_speed_factor": { "value": 55 },
"xy_offset_layer_0": { "value": -0.2 },
"zig_zaggify_infill": { "value": "infill_pattern == 'cross' or infill_pattern == 'cross_3d' or infill_pattern == 'lines'" } "zig_zaggify_infill": { "value": "infill_pattern == 'cross' or infill_pattern == 'cross_3d' or infill_pattern == 'lines'" }
} }
} }

View File

@ -1,24 +1,30 @@
{ {
"name": "Creality CR-10S Pro",
"version": 2, "version": 2,
"name": "Creality CR-10S Pro",
"inherits": "creality_cr10", "inherits": "creality_cr10",
"overrides": { "metadata":
"machine_name": { "default_value": "Creality CR-10S Pro" }, {
"machine_start_gcode": { "default_value": "M201 X500.00 Y500.00 Z100.00 E5000.00 ;Setup machine max acceleration\nM203 X500.00 Y500.00 Z10.00 E50.00 ;Setup machine max feedrate\nM204 P500.00 R1000.00 T500.00 ;Setup Print/Retract/Travel acceleration\nM205 X8.00 Y8.00 Z0.40 E5.00 ;Setup Jerk\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\n\nG28 ;Home\nG29 ;Auto bed Level\n\nG92 E0 ;Reset Extruder\nG1 Z2.0 F3000 ;Move Z Axis up\nG1 X10.1 Y20 Z0.28 F5000.0 ;Move to start position\nG1 X10.1 Y200.0 Z0.28 F1500.0 E15 ;Draw the first line\nG1 X10.4 Y200.0 Z0.28 F5000.0 ;Move to side a little\nG1 X10.4 Y20 Z0.28 F1500.0 E30 ;Draw the second line\nG92 E0 ;Reset Extruder\nG1 Z2.0 F3000 ;Move Z Axis up\n"}, "platform": "creality_cr10spro.3mf",
"machine_head_with_fans_polygon": { "default_value": [ "platform_offset": [
-150,
0,
150
],
"quality_definition": "creality_base"
},
"overrides":
{
"gantry_height": { "value": 30 },
"machine_head_with_fans_polygon":
{
"default_value": [
[-44, 34], [-44, 34],
[-44, -34], [-44, -34],
[38, -34], [38, -34],
[38, 34] [38, 34]
] ]
}, },
"machine_name": { "default_value": "Creality CR-10S Pro" },
"gantry_height": { "value": 30 } "machine_start_gcode": { "default_value": "M201 X500.00 Y500.00 Z100.00 E5000.00 ;Setup machine max acceleration\nM203 X500.00 Y500.00 Z10.00 E50.00 ;Setup machine max feedrate\nM204 P500.00 R1000.00 T500.00 ;Setup Print/Retract/Travel acceleration\nM205 X8.00 Y8.00 Z0.40 E5.00 ;Setup Jerk\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\n\nG28 ;Home\nG29 ;Auto bed Level\nM420 S1 ;Save and use mesh\n\nG92 E0 ;Reset Extruder\nG1 Z2.0 F3000 ;Move Z Axis up\nG1 X10.1 Y20 Z0.28 F5000.0 ;Move to start position\nG1 X10.1 Y200.0 Z0.28 F1500.0 E15 ;Draw the first line\nG1 X10.4 Y200.0 Z0.28 F5000.0 ;Move to side a little\nG1 X10.4 Y20 Z0.28 F1500.0 E30 ;Draw the second line\nG92 E0 ;Reset Extruder\nG1 Z2.0 F3000 ;Move Z Axis up\n" }
},
"metadata": {
"quality_definition": "creality_base",
"platform": "creality_cr10spro.3mf",
"platform_offset": [ -150, 0, 150]
} }
} }

View File

@ -0,0 +1,32 @@
{
"version": 2,
"name": "Creality Ender-3 S1 Plus",
"inherits": "creality_base",
"metadata":
{
"visible": true,
"quality_definition": "creality_base"
},
"overrides":
{
"gantry_height": { "value": 25 },
"machine_depth": { "default_value": 300 },
"machine_head_with_fans_polygon":
{
"default_value": [
[-26, 34],
[-26, -32],
[32, -32],
[32, 34]
]
},
"machine_height": { "default_value": 300 },
"machine_name": { "default_value": "Creality Ender-3 S1 Plus" },
"machine_start_gcode": { "default_value": "; Ender 3 S1 Plus Start G-code\nG28 ;Home\nG92 E0 ;Reset Extruder\nG1 Z2.0 F3000 ;Move Z Axis up\nG1 X10.1 Y20 Z0.28 F5000.0 ;Move to start position\nG1 X10.1 Y200.0 Z0.28 F1500.0 E15 ;Draw the first line\nG1 X10.4 Y200.0 Z0.28 F5000.0 ;Move to side a little\nG1 X10.4 Y20 Z0.28 F1500.0 E30 ;Draw the second line\nG92 E0 ;Reset Extruder\nG1 Z2.0 F3000 ;Move Z Axis up\n" },
"machine_width": { "default_value": 300 },
"retraction_amount": { "value": 0.8 },
"retraction_speed": { "default_value": 40 },
"speed_layer_0": { "value": 25 },
"speed_travel": { "value": "120.0 if speed_print < 60 else 250.0 if speed_print > 100 else speed_print * 2.5" }
}
}

View File

@ -0,0 +1,31 @@
{
"version": 2,
"name": "Creality Ender-3 S1 Pro",
"inherits": "creality_base",
"metadata":
{
"visible": true,
"quality_definition": "creality_base"
},
"overrides":
{
"gantry_height": { "value": 25 },
"machine_depth": { "default_value": 220 },
"machine_head_with_fans_polygon":
{
"default_value": [
[-26, 34],
[-26, -32],
[32, -32],
[32, 34]
]
},
"machine_height": { "default_value": 270 },
"machine_name": { "default_value": "Creality Ender-3 S1 Pro" },
"machine_start_gcode": { "default_value": "; Ender 3 S1 Pro Start G-code\nG28 ;Home\nG92 E0 ;Reset Extruder\nG1 Z2.0 F3000 ;Move Z Axis up\nG1 X10.1 Y20 Z0.28 F5000.0 ;Move to start position\nG1 X10.1 Y200.0 Z0.28 F1500.0 E15 ;Draw the first line\nG1 X10.4 Y200.0 Z0.28 F5000.0 ;Move to side a little\nG1 X10.4 Y20 Z0.28 F1500.0 E30 ;Draw the second line\nG92 E0 ;Reset Extruder\nG1 Z2.0 F3000 ;Move Z Axis up\n" },
"machine_width": { "default_value": 220 },
"retraction_amount": { "value": 0.8 },
"retraction_speed": { "default_value": 40 },
"speed_travel": { "value": "120.0 if speed_print < 60 else 250.0 if speed_print > 100 else speed_print * 2.5" }
}
}

View File

@ -8,7 +8,7 @@
"author": "Dagoma", "author": "Dagoma",
"manufacturer": "Dagoma", "manufacturer": "Dagoma",
"file_formats": "text/x-gcode", "file_formats": "text/x-gcode",
"platform": "dagoma_sigma.obj", "platform": "dagoma_sigma.stl",
"has_machine_quality": true, "has_machine_quality": true,
"has_materials": true, "has_materials": true,
"has_variants": true, "has_variants": true,

View File

@ -0,0 +1,29 @@
{
"version": 2,
"name": "KLEMA 180",
"inherits": "fdmprinter",
"metadata":
{
"visible": true,
"author": "KLEMA LTD",
"manufacturer": "KLEMA",
"file_formats": "text/x-gcode",
"has_machine_quality": false,
"has_materials": true,
"has_variants": false,
"machine_extruder_trains": { "0": "klema_180_m1_t1_extruder_1" },
"preferred_variant_name": "Standard 0.4mm",
"quality_definition": "klema",
"variants_name": "KLEMA 180 Size"
},
"overrides":
{
"machine_depth": { "default_value": 180 },
"machine_end_gcode": { "default_value": "M104 S0 ;\nM140 S0 ;\nM107 ;\nG91 ;\nG1 E-1 F300 ;\nG1 Z+65 E-2 X-20 Y-20 F2000 ;\nG28 X0 Y0 ;\nG90" },
"machine_heated_bed": { "default_value": true },
"machine_height": { "default_value": 220 },
"machine_name": { "default_value": "KLEMA 180" },
"machine_start_gcode": { "default_value": "M140 S{material_bed_temperature_layer_0} ;\nM190 S{material_bed_temperature_layer_0} ;\nM501 ;\nM104 S150 ;\nG28 ;\nG90 ;\nG0 X0 Y0 F6000 ;\nM109 S{material_print_temperature_layer_0} ;\nG0 Z0.3 F300 ;\nG92 E0 ;\nG1 X70 E10 F500 ;\nG92 E0 ;\nG1 E-1 F500 ;\nG92 E0 ;\nG1 Z1 ;\nG1 X100 F6000 ;\nG1 E-1 F500 ;\nG92 E0" },
"machine_width": { "default_value": 180 }
}
}

View File

@ -0,0 +1,34 @@
{
"version": 2,
"name": "KLEMA 250",
"inherits": "fdmprinter",
"metadata":
{
"visible": true,
"author": "KLEMA LTD",
"manufacturer": "KLEMA",
"file_formats": "text/x-gcode",
"has_machine_quality": false,
"has_materials": true,
"has_variants": false,
"machine_extruder_trains": { "0": "klema_250_m1_t1_extruder_1" },
"platform_offset": [
0,
0,
0
],
"preferred_variant_name": "Standard 0.4mm",
"quality_definition": "klema",
"variants_name": "KLEMA 250 Size"
},
"overrides":
{
"machine_depth": { "default_value": 250 },
"machine_end_gcode": { "default_value": "M104 S0 ;\nM140 S0 ;\nM107 ;\nG91 ;\nG1 E-1 F300 ;\nG1 Z+65 E-2 X-20 Y-20 F2000 ;\nG28 X0 Y0 ;\nG90" },
"machine_heated_bed": { "default_value": true },
"machine_height": { "default_value": 350 },
"machine_name": { "default_value": "KLEMA 250" },
"machine_start_gcode": { "default_value": "M140 S{material_bed_temperature_layer_0} ;\nM190 S{material_bed_temperature_layer_0} ;\nM501 ;\nM104 S150 ;\nG28 ;\nG90 ;\nG0 X0 Y0 F6000 ;\nM109 S{material_print_temperature_layer_0} ;\nG0 Z0.3 F300 ;\nG92 E0 ;\nG1 X70 E10 F500 ;\nG92 E0 ;\nG1 E-1 F500 ;\nG92 E0 ;\nG1 Z1 ;\nG1 X100 F6000 ;\nG1 E-1 F500 ;\nG92 E0" },
"machine_width": { "default_value": 250 }
}
}

View File

@ -0,0 +1,29 @@
{
"version": 2,
"name": "KLEMA 250 Pro",
"inherits": "fdmprinter",
"metadata":
{
"visible": true,
"author": "KLEMA LTD",
"manufacturer": "KLEMA",
"file_formats": "text/x-gcode",
"has_machine_quality": false,
"has_materials": true,
"has_variants": false,
"machine_extruder_trains": { "0": "klema_250_pro_m1_t2_extruder_1" },
"preferred_variant_name": "Standard 0.4mm",
"quality_definition": "klema",
"variants_name": "KLEMA 250 Pro Size"
},
"overrides":
{
"machine_depth": { "default_value": 250 },
"machine_end_gcode": { "default_value": "M104 S0 ;\nM140 S0 ;\nM107 ;\nG91 ;\nG1 E-1 F300 ;\nG1 Z+65 E-2 X-20 Y-20 F2000 ;\nG28 X0 Y0 ;\nG90" },
"machine_heated_bed": { "default_value": true },
"machine_height": { "default_value": 350 },
"machine_name": { "default_value": "KLEMA 250 Pro" },
"machine_start_gcode": { "default_value": "M140 S{material_bed_temperature_layer_0} ;\nM190 S{material_bed_temperature_layer_0} ;\nM501 ;\nM104 S150 ;\nG28 ;\nG90 ;\nG0 X0 Y0 F6000 ;\nM109 S{material_print_temperature_layer_0} ;\nG0 Z0.3 F300 ;\nG92 E0 ;\nG1 X70 E10 F500 ;\nG92 E0 ;\nG1 E-1 F500 ;\nG92 E0 ;\nG1 Z1 ;\nG1 X100 F6000 ;\nG1 E-1 F500 ;\nG92 E0" },
"machine_width": { "default_value": 250 }
}
}

View File

@ -0,0 +1,34 @@
{
"version": 2,
"name": "KLEMA 250 Twin",
"inherits": "fdmprinter",
"metadata":
{
"visible": true,
"author": "KLEMA LTD",
"manufacturer": "KLEMA",
"file_formats": "text/x-gcode",
"has_machine_quality": false,
"has_materials": true,
"has_variants": false,
"machine_extruder_trains":
{
"0": "klema_250_twin_m1_t1_extruder_1",
"1": "klema_250_twin_m1_t1_extruder_2"
},
"preferred_variant_name": "Standard 0.4mm",
"quality_definition": "klema",
"variants_name": "KLEMA 250 Twin Size"
},
"overrides":
{
"machine_depth": { "default_value": 250 },
"machine_end_gcode": { "default_value": "M104 S0 ;\nM140 S0 ;\nM107 ;\nG91 ;\nG1 E-1 F300 ;\nG1 Z+65 E-2 X-20 Y-20 F2000 ;\nG28 X0 Y0 ;\nG90" },
"machine_extruder_count": { "value": 2 },
"machine_heated_bed": { "default_value": true },
"machine_height": { "default_value": 350 },
"machine_name": { "default_value": "KLEMA 250 Twin" },
"machine_start_gcode": { "default_value": "M140 S{material_bed_temperature_layer_0} ;\nM190 S{material_bed_temper109 S{material_print_temperature_layer_0} ;\nG0 Z0.3 F300 ;\nG92 E0 ;\nG1 X70 E10 F500 ;\nG92 E0 ;\nG1 E-1 F500 ;\nG92 E0 ;\nG1 Z1 ;\nG1 X100 F6000 ;\nG1 E-1 F500 ;\nG92 E0" },
"machine_width": { "default_value": 250 }
}
}

View File

@ -0,0 +1,29 @@
{
"version": 2,
"name": "KLEMA 500",
"inherits": "fdmprinter",
"metadata":
{
"visible": true,
"author": "KLEMA LTD",
"manufacturer": "KLEMA",
"file_formats": "text/x-gcode",
"has_machine_quality": false,
"has_materials": true,
"has_variants": false,
"machine_extruder_trains": { "0": "klema_500_m1_t1_extruder_1" },
"preferred_variant_name": "Standard 0.4mm",
"quality_definition": "klema",
"variants_name": "KLEMA 500 Size"
},
"overrides":
{
"machine_depth": { "default_value": 250 },
"machine_end_gcode": { "default_value": "M104 S0 ;\nM140 S0 ;\nM107 ;\nG91 ;\nG1 E-1 F300 ;\nG1 Z+65 E-2 X-20 Y-20 F2000 ;\nG28 X0 Y0 ;\nG90" },
"machine_heated_bed": { "default_value": true },
"machine_height": { "default_value": 555 },
"machine_name": { "default_value": "KLEMA 500" },
"machine_start_gcode": { "default_value": "M140 S{material_bed_temperature_layer_0} ;\nM190 S{material_bed_temperature_layer_0} ;\nM501 ;\nM104 S150 ;\nG28 ;\nG90 ;\nG0 X0 Y0 F6000 ;\nM109 S{material_print_temperature_layer_0} ;\nG0 Z0.3 F300 ;\nG92 E0 ;\nG1 X70 E10 F500 ;\nG92 E0 ;\nG1 E-1 F500 ;\nG92 E0 ;\nG1 Z1 ;\nG1 X100 F6000 ;\nG1 E-1 F500 ;\nG92 E0" },
"machine_width": { "default_value": 250 }
}
}

View File

@ -0,0 +1,88 @@
{
"version": 2,
"name": "Modix Base Printer",
"inherits": "fdmprinter",
"metadata":
{
"author": "Modix",
"manufacturer": "Modix",
"file_formats": "text/x-gcode",
"has_variants": true,
"machine_extruder_trains":
{
"0": "modix_v3_extruder_0",
"1": "modix_v3_extruder_1"
},
"preferred_variant_name": "0.4 mm Nozzle",
"variants_name": "Nozzle Size"
},
"overrides":
{
"adhesion_type": { "default_value": "skirt" },
"cool_fan_full_at_height": { "value": "layer_height_0 + 2 * layer_height" },
"fill_outline_gaps": { "value": false },
"gantry_height": { "value": "90.0" },
"infill_before_walls": { "value": false },
"infill_overlap": { "value": 30.0 },
"infill_pattern": { "value": "'cubic'" },
"infill_sparse_density": { "value": "15" },
"layer_height_0": { "value": "round(machine_nozzle_size / 2, 1)" },
"line_width": { "value": "machine_nozzle_size * 1.05" },
"machine_end_gcode": { "default_value": "M83 ; extruder relative moves \nG1 E-5 F2700 ;retract a bit \nG10 P0 S0 R0 ; turn off extruder 0 \nG10 P1 S0 R0 ; turn off extruder 1 \nM106 S0 ; turn off fans \nT-1 P0 ; deselect any tools \nG4 P1 ; dwell 1ms \nG91 ;relative positioning \nG1 Z2 F500 ; Move print head up 2mm \nG90 ; absolute positioning \nG1 X{move.axes[0].min+2} Y{move.axes[1].max-2} F6000 ; move to the back left \nM84 ; disable motors" },
"machine_gcode_flavor": { "default_value": "RepRap (RepRap)" },
"machine_head_with_fans_polygon":
{
"default_value": [
[-100, 30],
[-100, 65],
[30, -105],
[-31, -100]
]
},
"machine_name": { "default_value": "Modix Base Printer" },
"machine_start_gcode": { "default_value": "G28 ; home all axes" },
"material_diameter": { "default_value": 1.75 },
"material_final_print_temperature": { "value": "material_print_temperature" },
"material_initial_print_temperature": { "value": "material_print_temperature" },
"minimum_interface_area": { "value": 10 },
"minimum_support_area": { "value": 2 },
"optimize_wall_printing_order": { "value": "True" },
"retraction_amount": { "value": 1 },
"retraction_combing": { "value": "'off' if retraction_hop_enabled else 'infill'" },
"retraction_combing_max_distance": { "value": 5 },
"retraction_count_max": { "value": 50 },
"retraction_extrusion_window": { "value": 1 },
"retraction_hop": { "value": "layer_height*4" },
"retraction_hop_enabled": { "value": "support_enable" },
"retraction_prime_speed": { "value": 40 },
"retraction_retract_speed": { "value": 40 },
"retraction_speed": { "default_value": 40 },
"skin_overlap": { "value": 10.0 },
"skirt_brim_minimal_length": { "default_value": 200 },
"skirt_gap": { "value": 5.0 },
"skirt_line_count": { "value": 3 },
"speed_layer_0": { "value": 20.0 },
"speed_prime_tower": { "value": "speed_topbottom" },
"speed_support": { "value": "speed_wall_0" },
"speed_support_interface": { "value": "speed_topbottom" },
"speed_travel": { "value": 110.0 },
"speed_wall_x": { "value": "speed_wall" },
"speed_z_hop": { "value": 5 },
"support_angle": { "value": 55 },
"support_brim_enable": { "value": true },
"support_brim_width": { "value": 5 },
"support_infill_rate": { "value": "0 if support_enable and support_structure == 'tree' else 15" },
"support_interface_density": { "value": 40 },
"support_interface_enable": { "value": true },
"support_interface_height": { "value": "layer_height * 3" },
"support_use_towers": { "value": false },
"support_xy_distance": { "value": "wall_line_width_0 * 2" },
"support_xy_distance_overhang": { "value": "wall_line_width_0" },
"support_z_distance": { "value": "layer_height if layer_height >= 0.2 else layer_height * 2" },
"top_bottom_thickness": { "value": "layer_height_0 + layer_height * 3" },
"travel_avoid_supports": { "value": true },
"travel_retract_before_outer_wall": { "value": true },
"wall_thickness": { "value": "line_width * 2" },
"z_seam_corner": { "value": "z_seam_corner_weighted" }
}
}

View File

@ -0,0 +1,13 @@
{
"version": 2,
"name": "Modix V3 BIG-120X",
"inherits": "modix_v3_base",
"metadata": { "visible": true },
"overrides":
{
"machine_depth": { "default_value": 600 },
"machine_height": { "default_value": 640 },
"machine_name": { "default_value": "Modix BIG-120X V3" },
"machine_width": { "default_value": 1200 }
}
}

View File

@ -0,0 +1,13 @@
{
"version": 2,
"name": "Modix V3 BIG-120Z",
"inherits": "modix_v3_base",
"metadata": { "visible": true },
"overrides":
{
"machine_depth": { "default_value": 600 },
"machine_height": { "default_value": 1200 },
"machine_name": { "default_value": "Modix BIG-120Z V3" },
"machine_width": { "default_value": 600 }
}
}

View File

@ -0,0 +1,13 @@
{
"version": 2,
"name": "Modix V3 BIG-180X",
"inherits": "modix_v3_base",
"metadata": { "visible": true },
"overrides":
{
"machine_depth": { "default_value": 600 },
"machine_height": { "default_value": 600 },
"machine_name": { "default_value": "Modix BIG-180X V3" },
"machine_width": { "default_value": 1800 }
}
}

View File

@ -0,0 +1,13 @@
{
"version": 2,
"name": "Modix V3 BIG-40",
"inherits": "modix_v3_base",
"metadata": { "visible": true },
"overrides":
{
"machine_depth": { "default_value": 400 },
"machine_height": { "default_value": 800 },
"machine_name": { "default_value": "Modix BIG-40 V3" },
"machine_width": { "default_value": 400 }
}
}

View File

@ -0,0 +1,13 @@
{
"version": 2,
"name": "Modix V3 BIG-60",
"inherits": "modix_v3_base",
"metadata": { "visible": true },
"overrides":
{
"machine_depth": { "default_value": 600 },
"machine_height": { "default_value": 660 },
"machine_name": { "default_value": "Modix BIG-60 V3" },
"machine_width": { "default_value": 600 }
}
}

View File

@ -0,0 +1,13 @@
{
"version": 2,
"name": "Modix V3 BIG-Meter",
"inherits": "modix_v3_base",
"metadata": { "visible": true },
"overrides":
{
"machine_depth": { "default_value": 1000 },
"machine_height": { "default_value": 1000 },
"machine_name": { "default_value": "Modix BIG-METER V3" },
"machine_width": { "default_value": 1000 }
}
}

View File

@ -0,0 +1,88 @@
{
"version": 2,
"name": "Modix Base Printer",
"inherits": "fdmprinter",
"metadata":
{
"author": "Modix",
"manufacturer": "Modix",
"file_formats": "text/x-gcode",
"has_variants": true,
"machine_extruder_trains":
{
"0": "modix_v4_extruder_0",
"1": "modix_v4_extruder_1"
},
"preferred_variant_name": "0.4 mm Nozzle",
"variants_name": "Nozzle Size"
},
"overrides":
{
"adhesion_type": { "default_value": "skirt" },
"cool_fan_full_at_height": { "value": "layer_height_0 + 2 * layer_height" },
"fill_outline_gaps": { "value": false },
"gantry_height": { "value": "90.0" },
"infill_before_walls": { "value": false },
"infill_overlap": { "value": 30.0 },
"infill_pattern": { "value": "'cubic'" },
"infill_sparse_density": { "value": "15" },
"layer_height_0": { "value": "round(machine_nozzle_size / 2, 1)" },
"line_width": { "value": "machine_nozzle_size * 1.05" },
"machine_end_gcode": { "default_value": "M83 ; extruder relative moves \nG1 E-5 F2700 ;retract a bit \nG10 P0 S0 R0 ; turn off extruder 0 \nM106 S0 ; turn off fans \nT-1 P0 ; deselect any tools \nG4 P1 ; dwell 1ms \nG91 ;relative positioning \nG1 Z2 F500 ; Move print head up 2mm \nG90 ; absolute positioning \nG1 X{move.axes[0].min+2} Y{move.axes[1].max-2} F6000 ; move to the back left \nM84 ; disable motors" },
"machine_gcode_flavor": { "default_value": "RepRap (RepRap)" },
"machine_head_with_fans_polygon":
{
"default_value": [
[-100, 30],
[-100, 65],
[30, -105],
[-31, -100]
]
},
"machine_name": { "default_value": "Modix Base Printer" },
"machine_start_gcode": { "default_value": "G28 ; home all axes" },
"material_diameter": { "default_value": 1.75 },
"material_final_print_temperature": { "value": "material_print_temperature" },
"material_initial_print_temperature": { "value": "material_print_temperature" },
"minimum_interface_area": { "value": 10 },
"minimum_support_area": { "value": 2 },
"optimize_wall_printing_order": { "value": "True" },
"retraction_amount": { "value": 1 },
"retraction_combing": { "value": "'off' if retraction_hop_enabled else 'infill'" },
"retraction_combing_max_distance": { "value": 5 },
"retraction_count_max": { "value": 50 },
"retraction_extrusion_window": { "value": 1 },
"retraction_hop": { "value": 2 },
"retraction_hop_enabled": { "value": "support_enable" },
"retraction_prime_speed": { "value": 40 },
"retraction_retract_speed": { "value": 40 },
"retraction_speed": { "default_value": 40 },
"skin_overlap": { "value": 10.0 },
"skirt_brim_minimal_length": { "default_value": 200 },
"skirt_gap": { "value": 5.0 },
"skirt_line_count": { "value": 3 },
"speed_layer_0": { "value": 20.0 },
"speed_prime_tower": { "value": "speed_topbottom" },
"speed_support": { "value": "speed_wall_0" },
"speed_support_interface": { "value": "speed_topbottom" },
"speed_travel": { "value": 250.0 },
"speed_wall_x": { "value": "speed_wall" },
"speed_z_hop": { "value": 5 },
"support_angle": { "value": 55 },
"support_brim_enable": { "value": true },
"support_brim_width": { "value": 5 },
"support_infill_rate": { "value": "0 if support_enable and support_structure == 'tree' else 15" },
"support_interface_density": { "value": 40 },
"support_interface_enable": { "value": true },
"support_interface_height": { "value": "layer_height * 3" },
"support_use_towers": { "value": false },
"support_xy_distance": { "value": "wall_line_width_0 * 2" },
"support_xy_distance_overhang": { "value": "wall_line_width_0" },
"support_z_distance": { "value": "layer_height if layer_height >= 0.2 else layer_height * 2" },
"top_bottom_thickness": { "value": "layer_height_0 + layer_height * 3" },
"travel_avoid_supports": { "value": true },
"travel_retract_before_outer_wall": { "value": true },
"wall_thickness": { "value": "line_width * 2" },
"z_seam_corner": { "value": "z_seam_corner_weighted" }
}
}

View File

@ -0,0 +1,13 @@
{
"version": 2,
"name": "Modix V4 BIG-120X",
"inherits": "modix_v4_base",
"metadata": { "visible": true },
"overrides":
{
"machine_depth": { "default_value": 600 },
"machine_height": { "default_value": 640 },
"machine_name": { "default_value": "Modix BIG-120X V4" },
"machine_width": { "default_value": 1200 }
}
}

View File

@ -0,0 +1,13 @@
{
"version": 2,
"name": "Modix V4 BIG-120Z",
"inherits": "modix_v4_base",
"metadata": { "visible": true },
"overrides":
{
"machine_depth": { "default_value": 600 },
"machine_height": { "default_value": 1200 },
"machine_name": { "default_value": "Modix BIG-120Z V4" },
"machine_width": { "default_value": 600 }
}
}

View File

@ -0,0 +1,13 @@
{
"version": 2,
"name": "Modix V4 BIG-180X",
"inherits": "modix_v4_base",
"metadata": { "visible": true },
"overrides":
{
"machine_depth": { "default_value": 600 },
"machine_height": { "default_value": 600 },
"machine_name": { "default_value": "Modix BIG-180X V4" },
"machine_width": { "default_value": 1800 }
}
}

View File

@ -0,0 +1,13 @@
{
"version": 2,
"name": "Modix V4 BIG-60",
"inherits": "modix_v4_base",
"metadata": { "visible": true },
"overrides":
{
"machine_depth": { "default_value": 600 },
"machine_height": { "default_value": 660 },
"machine_name": { "default_value": "Modix BIG-60 V4" },
"machine_width": { "default_value": 600 }
}
}

View File

@ -0,0 +1,13 @@
{
"version": 2,
"name": "Modix V4 BIG-Meter",
"inherits": "modix_v4_base",
"metadata": { "visible": true },
"overrides":
{
"machine_depth": { "default_value": 1000 },
"machine_height": { "default_value": 1000 },
"machine_name": { "default_value": "Modix BIG-METER V4" },
"machine_width": { "default_value": 1000 }
}
}

View File

@ -0,0 +1,17 @@
{
"version": 2,
"name": "SnakeOil Standard 180",
"inherits": "snakeoil_standard_base",
"metadata":
{
"visible": true,
"quality_definition": "snakeoil_standard_base"
},
"overrides":
{
"machine_depth": { "default_value": 180 },
"machine_height": { "default_value": 180 },
"machine_name": { "default_value": "SNAKEOIL STANDARD 180" },
"machine_width": { "default_value": 180 }
}
}

View File

@ -0,0 +1,17 @@
{
"version": 2,
"name": "SnakeOil Standard 250",
"inherits": "snakeoil_standard_base",
"metadata":
{
"visible": true,
"quality_definition": "snakeoil_standard_base"
},
"overrides":
{
"machine_depth": { "default_value": 240 },
"machine_height": { "default_value": 230 },
"machine_name": { "default_value": "SNAKEOIL STANDARD 250" },
"machine_width": { "default_value": 250 }
}
}

View File

@ -0,0 +1,115 @@
{
"version": 2,
"name": "SnakeOil Standard Base",
"inherits": "fdmprinter",
"metadata":
{
"visible": false,
"author": "Chip",
"manufacturer": "SnakeOilXY",
"file_formats": "text/x-gcode",
"first_start_actions": [ "MachineSettingsAction" ],
"has_machine_quality": true,
"machine_extruder_trains": { "0": "snakeoil_standard_extruder_0" },
"preferred_material": "generic_abs",
"preferred_quality_type": "normal"
},
"overrides":
{
"acceleration_enabled": { "default_value": true },
"acceleration_layer_0": { "value": 10000 },
"acceleration_print": { "default_value": 15000 },
"acceleration_roofing": { "value": 10000 },
"acceleration_travel_layer_0": { "value": 10000 },
"acceleration_wall_0": { "value": 7500 },
"adhesion_type": { "default_value": "skirt" },
"alternate_extra_perimeter": { "default_value": true },
"bridge_fan_speed_2": { "resolve": "max(cool_fan_speed, 50)" },
"bridge_fan_speed_3": { "resolve": "max(cool_fan_speed, 20)" },
"bridge_settings_enabled": { "default_value": true },
"bridge_wall_coast": { "default_value": 10 },
"cool_fan_full_at_height": { "value": "resolveOrValue('layer_height_0') + resolveOrValue('layer_height') * max(1, cool_fan_full_layer - 1)" },
"cool_fan_full_layer": { "value": 4 },
"cool_min_layer_time": { "default_value": 15 },
"cool_min_layer_time_fan_speed_max": { "default_value": 20 },
"gantry_height": { "value": 30 },
"infill_before_walls": { "default_value": false },
"infill_enable_travel_optimization": { "default_value": true },
"jerk_roofing": { "value": 10 },
"jerk_wall_0": { "value": 10 },
"layer_height_0": { "resolve": "max(0.2, min(extruderValues('layer_height')))" },
"line_width": { "value": "machine_nozzle_size * 1.125" },
"machine_acceleration": { "default_value": 1500 },
"machine_depth": { "default_value": 165 },
"machine_end_gcode": { "default_value": "END_PRINT" },
"machine_endstop_positive_direction_x": { "default_value": true },
"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_head_with_fans_polygon":
{
"default_value": [
[-35, 65],
[-35, -50],
[35, -50],
[35, 65]
]
},
"machine_heated_bed": { "default_value": true },
"machine_height": { "default_value": 165 },
"machine_max_acceleration_x": { "default_value": 15000 },
"machine_max_acceleration_y": { "default_value": 15000 },
"machine_max_acceleration_z": { "default_value": 250 },
"machine_max_feedrate_e": { "default_value": 120 },
"machine_max_feedrate_z": { "default_value": 40 },
"machine_max_jerk_e": { "default_value": 60 },
"machine_name": { "default_value": "SNAKEOIL STANDARD" },
"machine_start_gcode": { "default_value": ";Simple\nSTART_PRINT EXTRUDER_TEMP={material_print_temperature_layer_0} BED_TEMP={material_bed_temperature_layer_0}\n;Or with custom bed mesh area\n;START_PRINT EXTRUDER_TEMP={material_print_temperature_layer_0} BED_TEMP={material_bed_temperature_layer_0} AREA_START=%MINX%,%MINY% AREA_END=%MAXX%,%MAXY% FILAMENT_TYPE={material_type}" },
"machine_steps_per_mm_x": { "default_value": 160 },
"machine_steps_per_mm_y": { "default_value": 160 },
"machine_steps_per_mm_z": { "default_value": 800 },
"machine_use_extruder_offset_to_offset_coords": { "value": false },
"machine_width": { "default_value": 165 },
"material_diameter": { "default_value": 1.75 },
"meshfix_maximum_resolution": { "default_value": 0.01 },
"min_infill_area": { "default_value": 5.0 },
"minimum_polygon_circumference": { "default_value": 0.2 },
"optimize_wall_printing_order": { "default_value": true },
"retraction_amount": { "default_value": 0.8 },
"retraction_combing": { "value": "'noskin'" },
"retraction_combing_max_distance": { "default_value": 10 },
"retraction_hop": { "default_value": 0.2 },
"retraction_hop_enabled": { "default_value": true },
"retraction_prime_speed":
{
"maximum_value_warning": 130,
"value": "math.ceil(retraction_speed * 0.4)"
},
"retraction_retract_speed": { "maximum_value_warning": 130 },
"retraction_speed":
{
"default_value": 35,
"maximum_value_warning": 130
},
"roofing_layer_count": { "value": 1 },
"skirt_brim_minimal_length": { "default_value": 550 },
"speed_layer_0": { "value": "math.ceil(speed_print * 0.25)" },
"speed_roofing": { "value": "math.ceil(speed_print * 0.33)" },
"speed_slowdown_layers": { "default_value": 4 },
"speed_topbottom": { "value": "math.ceil(speed_print * 0.33)" },
"speed_travel":
{
"maximum_value_warning": 501,
"value": 300
},
"speed_travel_layer_0": { "value": "math.ceil(speed_travel * 0.4)" },
"speed_wall": { "value": "math.ceil(speed_print * 0.33)" },
"speed_wall_0": { "value": "math.ceil(speed_print * 0.33)" },
"speed_wall_x": { "value": "math.ceil(speed_print * 0.66)" },
"travel_avoid_other_parts": { "default_value": false },
"wall_line_width": { "value": "machine_nozzle_size" },
"wall_overhang_angle": { "default_value": 75 },
"wall_overhang_speed_factor": { "default_value": 50 },
"zig_zaggify_infill": { "value": true }
}
}

View File

@ -0,0 +1,117 @@
{
"version": 2,
"name": "Sovol Base Printer",
"inherits": "fdmprinter",
"metadata":
{
"visible": false,
"author": "ed3d.net",
"manufacturer": "Sovol 3D",
"file_formats": "text/x-gcode",
"exclude_materials": [
"Vertex_Delta_ABS",
"Vertex_Delta_PET",
"Vertex_Delta_PLA",
"Vertex_Delta_TPU",
"chromatik_pla",
"dsm_arnitel2045_175",
"dsm_novamid1070_175",
"fabtotum_abs",
"fabtotum_nylon",
"fabtotum_pla",
"fabtotum_tpu",
"fiberlogy_hd_pla",
"filo3d_pla",
"filo3d_pla_green",
"filo3d_pla_red",
"generic_abs",
"generic_bam",
"generic_cffcpe",
"generic_cffpa",
"generic_cpe",
"generic_cpe_plus",
"generic_gffcpe",
"generic_gffpa",
"generic_hips",
"generic_nylon",
"generic_pc",
"generic_petg",
"generic_pla",
"generic_pp",
"generic_pva",
"generic_tough_pla",
"generic_tpu",
"imade3d_petg_green",
"imade3d_petg_pink",
"imade3d_pla_green",
"imade3d_pla_pink",
"innofill_innoflex60_175",
"octofiber_pla",
"polyflex_pla",
"polymax_pla",
"polyplus_pla",
"polywood_pla",
"structur3d_dap100silicone",
"tizyx_abs",
"tizyx_pla",
"tizyx_pla_bois",
"verbatim_bvoh_175",
"zyyx_pro_flex",
"zyyx_pro_pla"
],
"first_start_actions": [ "MachineSettingsAction" ],
"has_machine_quality": true,
"has_materials": true,
"has_variants": true,
"preferred_quality_type": "standard",
"preferred_variant_name": "0.4mm Nozzle",
"variants_name": "Nozzle Size"
},
"overrides":
{
"acceleration_enabled": { "value": true },
"acceleration_print": { "value": 500 },
"acceleration_roofing": { "enabled": "acceleration_enabled and roofing_layer_count > 0 and top_layers > 0" },
"acceleration_travel": { "value": 500 },
"acceleration_travel_layer_0": { "value": "acceleration_travel" },
"adaptive_layer_height_variation": { "value": 0.04 },
"adaptive_layer_height_variation_step": { "value": 0.04 },
"adhesion_type": { "value": "'skirt'" },
"infill_before_walls": { "value": false },
"infill_line_distance": { "value": "0 if infill_sparse_density == 0 else (infill_line_width * 100) / infill_sparse_density * (2 if infill_pattern == 'grid' else (3 if infill_pattern == 'triangles' or infill_pattern == 'trihexagon' or infill_pattern == 'cubic' or infill_pattern == 'cubicsubdiv' else (2 if infill_pattern == 'tetrahedral' or infill_pattern == 'quarter_cubic' else (1 if infill_pattern == 'cross' or infill_pattern == 'cross_3d' else 1))))" },
"infill_overlap": { "value": 30.0 },
"infill_pattern": { "value": "'zigzag' if infill_sparse_density > 89 else 'cubic'" },
"infill_sparse_density": { "value": 10.0 },
"infill_wipe_dist": { "value": 0.0 },
"jerk_enabled": { "value": true },
"jerk_print": { "value": 8 },
"jerk_travel": { "value": "jerk_print * 2" },
"jerk_travel_layer_0": { "value": "jerk_travel" },
"machine_acceleration": { "value": 500 },
"machine_heated_bed": { "default_value": true },
"machine_max_acceleration_e": { "value": 5000 },
"machine_max_acceleration_x": { "value": 500 },
"machine_max_acceleration_y": { "value": 500 },
"machine_max_feedrate_e": { "value": 50 },
"machine_max_feedrate_x": { "value": 500 },
"machine_max_feedrate_y": { "value": 500 },
"machine_max_feedrate_z": { "value": 10 },
"machine_max_jerk_xy": { "value": 8 },
"material_diameter": { "default_value": 1.75 },
"material_final_print_temperature": { "value": "material_print_temperature" },
"material_initial_print_temperature": { "value": "material_print_temperature" },
"optimize_wall_printing_order": { "value": "True" },
"retraction_amount": { "default_value": 0.5 },
"retraction_speed": { "default_value": 40 },
"skin_monotonic": { "value": true },
"skin_overlap": { "value": 10.0 },
"speed_layer_0": { "value": 20.0 },
"speed_print": { "value": 50.0 },
"speed_topbottom": { "value": "math.ceil(speed_print * (50 / 100))" },
"speed_wall": { "value": "math.ceil(speed_print * (50 / 100))" },
"wall_0_wipe_dist": { "value": 0.0 },
"wall_thickness": { "value": "line_width * 2" },
"z_seam_corner": { "value": "'z_seam_corner_inner'" },
"z_seam_type": { "value": "'sharpest_corner'" }
}
}

View File

@ -0,0 +1,15 @@
{
"version": 2,
"name": "Sovol Base Bowden Printer",
"inherits": "sovol_base",
"metadata":
{
"machine_extruder_trains": { "0": "sovol_bowden_extruder_0" },
"quality_definition": "sovol_base_bowden"
},
"overrides":
{
"retraction_amount": { "default_value": 5 },
"retraction_speed": { "value": "machine_max_feedrate_e" }
}
}

View File

@ -0,0 +1,12 @@
{
"version": 2,
"name": "Sovol Base Planetary Printer",
"inherits": "sovol_base",
"metadata":
{
"machine_extruder_trains": { "0": "sovol_planetary_extruder_0" },
"quality_definition": "sovol_base_planetary"
},
"overrides":
{}
}

View File

@ -0,0 +1,12 @@
{
"version": 2,
"name": "Sovol Base Titan Printer",
"inherits": "sovol_base",
"metadata":
{
"machine_extruder_trains": { "0": "sovol_titan_extruder_0" },
"quality_definition": "sovol_base_titan"
},
"overrides":
{}
}

View File

@ -0,0 +1,29 @@
{
"version": 2,
"name": "Sovol SV01",
"inherits": "sovol_base_bowden",
"metadata":
{
"visible": true,
"quality_definition": "sovol_base_bowden"
},
"overrides":
{
"gantry_height": { "value": 33 },
"machine_depth": { "default_value": 240 },
"machine_end_gcode": { "default_value": "G91 ;Relative positioning\nG1 E-2 F2700 ;Retract a bit\nG1 E-2 Z0.2 F2400 ;Retract and raise Z\nG1 X0 Y240 F3000 ;Wipe out\nG1 Z10 ;Raise Z more\nG90 ;Absolute positioning\n\nG1 X0 Y{machine_depth} ;Present print\nM106 S0 ;Turn-off fan\nM104 S0 ;Turn-off hotend\nM140 S0 ;Turn-off bed\n\nM84 X Y E ;Disable all steppers but Z\n" },
"machine_head_with_fans_polygon":
{
"default_value": [
[-44, 16],
[-44, -60],
[44, -60],
[44, 16]
]
},
"machine_height": { "default_value": 300 },
"machine_name": { "default_value": "SV01" },
"machine_start_gcode": { "default_value": "M201 X500.00 Y500.00 Z100.00 E5000.00 ;Setup machine max acceleration\nM203 X500.00 Y500.00 Z10.00 E50.00 ;Setup machine max feedrate\nM204 P500.00 R1000.00 T500.00 ;Setup Print/Retract/Travel acceleration\nM205 X8.00 Y8.00 Z0.40 E5.00 ;Setup Jerk\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\n\nG28 ;Home\n\nG92 E0 ;Reset Extruder\nG1 Z2.0 F3000 ;Move Z Axis up\nG1 X10.1 Y20 Z0.28 F5000.0 ;Move to start position\nG1 X10.1 Y200.0 Z0.28 F1500.0 E15 ;Draw the first line\nG1 X10.4 Y200.0 Z0.28 F5000.0 ;Move to side a little\nG1 X10.4 Y20 Z0.28 F1500.0 E30 ;Draw the second line\nG92 E0 ;Reset Extruder\nG1 Z2.0 F3000 ;Move Z Axis up\n" },
"machine_width": { "default_value": 280 }
}
}

View File

@ -0,0 +1,29 @@
{
"version": 2,
"name": "Sovol SV01PRO",
"inherits": "sovol_base_titan",
"metadata":
{
"visible": true,
"quality_definition": "sovol_base_titan"
},
"overrides":
{
"gantry_height": { "value": 33 },
"machine_depth": { "default_value": 240 },
"machine_end_gcode": { "default_value": "G91 ;Relative positioning\nG1 E-2 F2700 ;Retract a bit\nG1 E-2 Z0.2 F2400 ;Retract and raise Z\nG1 X0 Y240 F3000 ;Wipe out\nG1 Z10 ;Raise Z more\nG90 ;Absolute positioning\n\nG1 X0 Y{machine_depth} ;Present print\nM106 S0 ;Turn-off fan\nM104 S0 ;Turn-off hotend\nM140 S0 ;Turn-off bed\n\nM84 X Y E ;Disable all steppers but Z\n" },
"machine_head_with_fans_polygon":
{
"default_value": [
[-44, 16],
[-44, -60],
[44, -60],
[44, 16]
]
},
"machine_height": { "default_value": 300 },
"machine_name": { "default_value": "SV01PRO" },
"machine_start_gcode": { "default_value": "M201 X500.00 Y500.00 Z100.00 E5000.00 ;Setup machine max acceleration\nM203 X500.00 Y500.00 Z10.00 E50.00 ;Setup machine max feedrate\nM204 P500.00 R1000.00 T500.00 ;Setup Print/Retract/Travel acceleration\nM205 X8.00 Y8.00 Z0.40 E5.00 ;Setup Jerk\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\n\nG28 ;Home\nM420 S1 ;use bed mesh, must have used G29 previously\n\nG92 E0 ;Reset Extruder\nG1 Z2.0 F3000 ;Move Z Axis up\nG1 X10.1 Y20 Z0.28 F5000.0 ;Move to start position\nG1 X10.1 Y200.0 Z0.28 F1500.0 E15 ;Draw the first line\nG1 X10.4 Y200.0 Z0.28 F5000.0 ;Move to side a little\nG1 X10.4 Y20 Z0.28 F1500.0 E30 ;Draw the second line\nG92 E0 ;Reset Extruder\nG1 Z2.0 F3000 ;Move Z Axis up\n" },
"machine_width": { "default_value": 280 }
}
}

View File

@ -0,0 +1,29 @@
{
"version": 2,
"name": "Sovol SV03",
"inherits": "sovol_base_titan",
"metadata":
{
"visible": true,
"quality_definition": "sovol_base_titan"
},
"overrides":
{
"gantry_height": { "value": 33 },
"machine_depth": { "default_value": 350 },
"machine_end_gcode": { "default_value": "G91 ;Relative positioning\nG1 E-2 F2700 ;Retract a bit\nG1 E-2 Z0.2 F2400 ;Retract and raise Z\nG1 X0 Y240 F3000 ;Wipe out\nG1 Z10 ;Raise Z more\nG90 ;Absolute positioning\n\nG1 X0 Y{machine_depth} ;Present print\nM106 S0 ;Turn-off fan\nM104 S0 ;Turn-off hotend\nM140 S0 ;Turn-off bed\n\nM84 X Y E ;Disable all steppers but Z\n" },
"machine_head_with_fans_polygon":
{
"default_value": [
[-44, 16],
[-44, -60],
[44, -60],
[44, 16]
]
},
"machine_height": { "default_value": 400 },
"machine_name": { "default_value": "SV03" },
"machine_start_gcode": { "default_value": "M201 X500.00 Y500.00 Z100.00 E5000.00 ;Setup machine max acceleration\nM203 X500.00 Y500.00 Z10.00 E50.00 ;Setup machine max feedrate\nM204 P500.00 R1000.00 T500.00 ;Setup Print/Retract/Travel acceleration\nM205 X8.00 Y8.00 Z0.40 E5.00 ;Setup Jerk\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\n\nG28 ;Home\nM420 S1 ;use bed mesh, must have used G29 previously\n\nG92 E0 ;Reset Extruder\nG1 Z2.0 F3000 ;Move Z Axis up\nG1 X10.1 Y20 Z0.28 F5000.0 ;Move to start position\nG1 X10.1 Y200.0 Z0.28 F1500.0 E15 ;Draw the first line\nG1 X10.4 Y200.0 Z0.28 F5000.0 ;Move to side a little\nG1 X10.4 Y20 Z0.28 F1500.0 E30 ;Draw the second line\nG92 E0 ;Reset Extruder\nG1 Z2.0 F3000 ;Move Z Axis up\n" },
"machine_width": { "default_value": 350 }
}
}

View File

@ -0,0 +1,29 @@
{
"version": 2,
"name": "Sovol SV05",
"inherits": "sovol_base_titan",
"metadata":
{
"visible": true,
"quality_definition": "sovol_base_titan"
},
"overrides":
{
"gantry_height": { "value": 25 },
"machine_depth": { "default_value": 220 },
"machine_end_gcode": { "default_value": "G91 ;Relative positioning\nG1 E-2 F2700 ;Retract a bit\nG1 E-2 Z0.2 F2400 ;Retract and raise Z\nG1 X0 Y240 F3000 ;Wipe out\nG1 Z10 ;Raise Z more\nG90 ;Absolute positioning\n\nG1 X0 Y{machine_depth} ;Present print\nM106 S0 ;Turn-off fan\nM104 S0 ;Turn-off hotend\nM140 S0 ;Turn-off bed\n\nM84 X Y E ;Disable all steppers but Z\n" },
"machine_head_with_fans_polygon":
{
"default_value": [
[-44, 16],
[-44, -60],
[44, -60],
[44, 16]
]
},
"machine_height": { "default_value": 300 },
"machine_name": { "default_value": "SV05" },
"machine_start_gcode": { "default_value": "M201 X500.00 Y500.00 Z100.00 E5000.00 ;Setup machine max acceleration\nM203 X500.00 Y500.00 Z10.00 E50.00 ;Setup machine max feedrate\nM204 P500.00 R1000.00 T500.00 ;Setup Print/Retract/Travel acceleration\nM205 X8.00 Y8.00 Z0.40 E5.00 ;Setup Jerk\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\n\nG28 ;Home\nM420 S1 ;use bed mesh, must have used G29 previously\n\nG92 E0 ;Reset Extruder\nG1 Z2.0 F3000 ;Move Z Axis up\nG1 X10.1 Y20 Z0.28 F5000.0 ;Move to start position\nG1 X10.1 Y200.0 Z0.28 F1500.0 E15 ;Draw the first line\nG1 X10.4 Y200.0 Z0.28 F5000.0 ;Move to side a little\nG1 X10.4 Y20 Z0.28 F1500.0 E30 ;Draw the second line\nG92 E0 ;Reset Extruder\nG1 Z2.0 F3000 ;Move Z Axis up\n" },
"machine_width": { "default_value": 220 }
}
}

View File

@ -0,0 +1,29 @@
{
"version": 2,
"name": "Sovol SV06",
"inherits": "sovol_base_planetary",
"metadata":
{
"visible": true,
"quality_definition": "sovol_base_planetary"
},
"overrides":
{
"gantry_height": { "value": 25 },
"machine_depth": { "default_value": 220 },
"machine_end_gcode": { "default_value": "G91 ;Relative positioning\nG1 E-2 F2700 ;Retract a bit\nG1 E-2 Z0.2 F2400 ;Retract and raise Z\nG1 X0 Y240 F3000 ;Wipe out\nG1 Z10 ;Raise Z more\nG90 ;Absolute positioning\n\nG1 X0 Y{machine_depth} ;Present print\nM106 S0 ;Turn-off fan\nM104 S0 ;Turn-off hotend\nM140 S0 ;Turn-off bed\n\nM84 X Y E ;Disable all steppers but Z\n" },
"machine_head_with_fans_polygon":
{
"default_value": [
[-44, 16],
[-44, -60],
[44, -60],
[44, 16]
]
},
"machine_height": { "default_value": 250 },
"machine_name": { "default_value": "SV06" },
"machine_start_gcode": { "default_value": "M201 X500.00 Y500.00 Z100.00 E5000.00 ;Setup machine max acceleration\nM203 X500.00 Y500.00 Z10.00 E50.00 ;Setup machine max feedrate\nM204 P500.00 R1000.00 T500.00 ;Setup Print/Retract/Travel acceleration\nM205 X8.00 Y8.00 Z0.40 E5.00 ;Setup Jerk\nM220 S100 ;Reset Feedrate\nM221 S100 ;Reset Flowrate\n\nG28 ;Home\nM420 S1 ;use bed mesh, must have used G29 previously\n\nG92 E0 ;Reset Extruder\nG1 Z2.0 F3000 ;Move Z Axis up\nG1 X10.1 Y20 Z0.28 F5000.0 ;Move to start position\nG1 X10.1 Y200.0 Z0.28 F1500.0 E15 ;Draw the first line\nG1 X10.4 Y200.0 Z0.28 F5000.0 ;Move to side a little\nG1 X10.4 Y20 Z0.28 F1500.0 E30 ;Draw the second line\nG92 E0 ;Reset Extruder\nG1 Z2.0 F3000 ;Move Z Axis up\n" },
"machine_width": { "default_value": 220 }
}
}

View File

@ -100,7 +100,7 @@
"skin_angles": { "value": "[] if infill_pattern not in ['cross', 'cross_3d'] else [20, 110]" }, "skin_angles": { "value": "[] if infill_pattern not in ['cross', 'cross_3d'] else [20, 110]" },
"skin_edge_support_thickness": { "value": "4 * layer_height if infill_sparse_density < 30 else 0" }, "skin_edge_support_thickness": { "value": "4 * layer_height if infill_sparse_density < 30 else 0" },
"skin_material_flow": { "value": "0.95 * material_flow" }, "skin_material_flow": { "value": "0.95 * material_flow" },
"skin_material_flow_layer_0": { "value": "0.85 * material_flow_layer_0" }, "skin_material_flow_layer_0": { "value": "0.9 * material_flow_layer_0" },
"skin_monotonic": { "value": "roofing_layer_count == 0" }, "skin_monotonic": { "value": "roofing_layer_count == 0" },
"speed_equalize_flow_width_factor": { "value": "110.0" }, "speed_equalize_flow_width_factor": { "value": "110.0" },
"speed_layer_0": { "value": "min(30, layer_height / layer_height_0 * speed_wall_0)" }, "speed_layer_0": { "value": "min(30, layer_height / layer_height_0 * speed_wall_0)" },

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@ -0,0 +1,19 @@
{
"version": 2,
"name": "Left Extruder",
"inherits": "fdmextruder",
"metadata":
{
"machine": "modix_v3_base",
"position": "0"
},
"overrides":
{
"extruder_nr":
{
"default_value": 0,
"maximum_value": "1"
},
"material_diameter": { "default_value": 1.75 }
}
}

View File

@ -0,0 +1,19 @@
{
"version": 2,
"name": "Right Extruder",
"inherits": "fdmextruder",
"metadata":
{
"machine": "modix_v3_base",
"position": "1"
},
"overrides":
{
"extruder_nr":
{
"default_value": 1,
"maximum_value": "1"
},
"material_diameter": { "default_value": 1.75 }
}
}

View File

@ -0,0 +1,19 @@
{
"version": 2,
"name": "Left Extruder",
"inherits": "fdmextruder",
"metadata":
{
"machine": "modix_v4_base",
"position": "0"
},
"overrides":
{
"extruder_nr":
{
"default_value": 0,
"maximum_value": "1"
},
"material_diameter": { "default_value": 1.75 }
}
}

View File

@ -0,0 +1,19 @@
{
"version": 2,
"name": "Right Extruder",
"inherits": "fdmextruder",
"metadata":
{
"machine": "modix_v4_base",
"position": "1"
},
"overrides":
{
"extruder_nr":
{
"default_value": 1,
"maximum_value": "1"
},
"material_diameter": { "default_value": 1.75 }
}
}

View File

@ -0,0 +1,19 @@
{
"version": 2,
"name": "Toolhead",
"inherits": "fdmextruder",
"metadata":
{
"machine": "snakeoil_standard_base",
"position": "0"
},
"overrides":
{
"extruder_nr":
{
"default_value": 0,
"maximum_value": 1
},
"material_diameter": { "default_value": 1.75 }
}
}

View File

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

View File

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

View File

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

File diff suppressed because it is too large Load Diff

Binary file not shown.

View File

@ -17,6 +17,12 @@ UM.MainWindow
{ {
id: base id: base
Item
{
id: mainWindow
anchors.fill: parent
}
// Cura application window title // Cura application window title
title: title:
{ {

View File

@ -1,4 +1,4 @@
// Copyright (c) 2022 Ultimaker B.V. // Copyright (c) 2022 UltiMaker
// Cura is released under the terms of the LGPLv3 or higher. // Cura is released under the terms of the LGPLv3 or higher.
import QtQuick 2.7 import QtQuick 2.7
@ -36,6 +36,7 @@ Cura.MenuItem
UM.Label UM.Label
{ {
id: brandLabelText
text: replaceText(materialBrandMenu.text) text: replaceText(materialBrandMenu.text)
Layout.fillWidth: true Layout.fillWidth: true
Layout.fillHeight:true Layout.fillHeight:true
@ -84,33 +85,15 @@ Cura.MenuItem
onTriggered: menuPopup.close() onTriggered: menuPopup.close()
} }
Popup MaterialBrandSubMenu
{ {
id: menuPopup id: menuPopup
width: materialTypesList.width + padding * 2
height: materialTypesList.height + padding * 2
property var flipped: false
x: parent.width - UM.Theme.getSize("default_lining").width
y: {
// Checks if popup is more than halfway down the screen AND further than 400 down (this avoids popup going off the top of screen)
// If it is then the popup will push up instead of down
// This fixes the popups appearing bellow the bottom of the screen.
if (materialBrandMenu.parent.height / 2 < parent.y && parent.y > 400) {
flipped = true
return -UM.Theme.getSize("default_lining").width - height + UM.Theme.getSize("menu").height
}
flipped = false
return -UM.Theme.getSize("default_lining").width
}
padding: background.border.width
// Nasty hack to ensure that we can keep track if the popup contains the mouse. // Nasty hack to ensure that we can keep track if the popup contains the mouse.
// Since we also want a hover for the sub items (and these events are sent async) // Since we also want a hover for the sub items (and these events are sent async)
// We have to keep a count of itemHovered (instead of just a bool) // We have to keep a count of itemHovered (instead of just a bool)
property int itemHovered: 0 property int itemHovered: 0
MouseArea MouseArea
{ {
id: submenuArea id: submenuArea
@ -120,16 +103,11 @@ Cura.MenuItem
onEntered: hideTimer.restartTimer() onEntered: hideTimer.restartTimer()
} }
background: Rectangle
{
color: UM.Theme.getColor("main_background")
border.color: UM.Theme.getColor("lining")
border.width: UM.Theme.getSize("default_lining").width
}
Column Column
{ {
id: materialTypesList id: materialTypesList
width: UM.Theme.getSize("menu").width
height: childrenRect.height
spacing: 0 spacing: 0
property var brandMaterials: materialTypesModel.material_types property var brandMaterials: materialTypesModel.material_types
@ -146,9 +124,7 @@ Cura.MenuItem
height: UM.Theme.getSize("menu").height height: UM.Theme.getSize("menu").height
width: UM.Theme.getSize("menu").width width: UM.Theme.getSize("menu").width
color: materialTypeButton.containsMouse ? UM.Theme.getColor("background_2") : UM.Theme.getColor("background_1") color: materialTypeButton.containsMouse ? UM.Theme.getColor("background_2") : "transparent"
property var isFlipped: menuPopup.flipped
RowLayout RowLayout
{ {
@ -185,7 +161,7 @@ Cura.MenuItem
source: UM.Theme.getIcon("ChevronSingleRight") source: UM.Theme.getIcon("ChevronSingleRight")
} }
Item Item
{ {
// Right side margin // Right side margin
width: UM.Theme.getSize("default_margin").width width: UM.Theme.getSize("default_margin").width
@ -236,34 +212,17 @@ Cura.MenuItem
onTriggered: colorPopup.close() onTriggered: colorPopup.close()
} }
Popup MaterialBrandSubMenu
{ {
id: colorPopup id: colorPopup
width: materialColorsList.width + padding * 2
height: materialColorsList.height + padding * 2
x: parent.width
y: {
// If flipped the popup should push up rather than down from the parent
if (brandMaterialBase.isFlipped) {
return -height + UM.Theme.getSize("menu").height + UM.Theme.getSize("default_lining").width
}
return -UM.Theme.getSize("default_lining").width
}
property int itemHovered: 0 property int itemHovered: 0
padding: background.border.width
background: Rectangle
{
color: UM.Theme.getColor("main_background")
border.color: UM.Theme.getColor("lining")
border.width: UM.Theme.getSize("default_lining").width
}
Column Column
{ {
id: materialColorsList id: materialColorsList
property var brandColors: model.colors property var brandColors: model.colors
width: UM.Theme.getSize("menu").width
height: childrenRect.height
spacing: 0 spacing: 0
Repeater Repeater
@ -273,12 +232,38 @@ Cura.MenuItem
delegate: Rectangle delegate: Rectangle
{ {
height: UM.Theme.getSize("menu").height height: UM.Theme.getSize("menu").height
width: UM.Theme.getSize("menu").width width: parent.width
color: materialColorButton.containsMouse ? UM.Theme.getColor("background_2") : UM.Theme.getColor("background_1") color: materialColorButton.containsMouse ? UM.Theme.getColor("background_2") : UM.Theme.getColor("main_background")
MouseArea
{
id: materialColorButton
anchors.fill: parent
hoverEnabled: true
onClicked:
{
Cura.MachineManager.setMaterial(extruderIndex, model.container_node);
menuPopup.close();
colorPopup.close();
materialMenu.close();
}
onEntered:
{
menuPopup.itemHovered += 1;
colorPopup.itemHovered += 1;
}
onExited:
{
menuPopup.itemHovered -= 1;
colorPopup.itemHovered -= 1;
}
}
Item Item
{ {
height: parent.height
width: parent.width
opacity: materialBrandMenu.enabled ? 1 : 0.5 opacity: materialBrandMenu.enabled ? 1 : 0.5
anchors.fill: parent anchors.fill: parent
@ -309,31 +294,6 @@ Cura.MenuItem
wrapMode: Text.NoWrap wrapMode: Text.NoWrap
} }
} }
MouseArea
{
id: materialColorButton
anchors.fill: parent
hoverEnabled: true
onClicked:
{
Cura.MachineManager.setMaterial(extruderIndex, model.container_node);
menuPopup.close();
colorPopup.close();
materialMenu.close();
}
onEntered:
{
menuPopup.itemHovered += 1;
colorPopup.itemHovered += 1;
}
onExited:
{
menuPopup.itemHovered -= 1;
colorPopup.itemHovered -= 1;
}
}
} }
} }
} }

View File

@ -0,0 +1,118 @@
// Copyright (c) 2022 UltiMaker
// Cura is released under the terms of the LGPLv3 or higher.
import QtQuick 2.7
import QtQuick.Controls 2.4
import QtQuick.Layouts 2.7
import UM 1.5 as UM
import Cura 1.7 as Cura
Popup
{
id: materialBrandSubMenu
bottomPadding: UM.Theme.getSize("thin_margin").height
topPadding: UM.Theme.getSize("thin_margin").height
implicitWidth: scrollViewContent.width + scrollbar.width + leftPadding + rightPadding
implicitHeight: scrollViewContent.height + bottomPadding + topPadding
// offset position relative to the parent
property int implicitX: parent.width
property int implicitY: -UM.Theme.getSize("thin_margin").height
default property alias contents: scrollViewContent.children
x: implicitX
y: implicitY
// needed for the `mapToItem` function to work; apparently a Popup is not an Item
Item
{
id: materialBrandSubMenuItem
anchors.fill: parent
}
onOpened:
{
// we want to make sure here that the popup never goes out side the window so we adjust the x and y position
// based on the width/height of the mainWindow/popup. QML is a bit weird here though, as the globalPosition
// is in absolute coordinates relative to the origin of the mainWindow while setting the x and y coordinates
// of the popup only changes the position relative to the parent.
// reset position, the remainder of the function asumes this position and size
materialBrandSubMenu.x = implicitX;
materialBrandSubMenu.y = implicitY;
materialBrandSubMenu.width = implicitWidth;
materialBrandSubMenu.height = implicitHeight;
const globalPosition = materialBrandSubMenuItem.mapToItem(null, 0, 0);
if (globalPosition.y > mainWindow.height - materialBrandSubMenu.height)
{
if (mainWindow.height > materialBrandSubMenu.height)
{
const targetY = mainWindow.height - materialBrandSubMenu.height;
const deltaY = globalPosition.y - targetY;
materialBrandSubMenu.y = implicitY - deltaY;
}
else
{
// if popup is taller then the the component, limit
// the components height and set the position to
// y = 0 (in absolute coordinates)
materialBrandSubMenu.y = implicitY - globalPosition.y;
materialBrandSubMenu.height = mainWindow.height;
}
}
if (globalPosition.x > mainWindow.width - materialBrandSubMenu.width)
{
if (mainWindow.width > materialBrandSubMenu.width)
{
const targetX = mainWindow.width - materialBrandSubMenu.width;
const deltaX = globalPosition.x - targetX;
materialBrandSubMenu.x = implicitX - deltaX;
}
else
{
materialBrandSubMenu.x = implicitX - globalPosition.x;
materialBrandSubMenu.width = mainWindow.width;
}
}
}
padding: background.border.width
background: Rectangle
{
color: UM.Theme.getColor("main_background")
border.color: UM.Theme.getColor("lining")
border.width: UM.Theme.getSize("default_lining").width
}
ScrollView
{
id: scrollView
anchors.fill: parent
contentHeight: scrollViewContent.height
clip: true
ScrollBar.vertical: UM.ScrollBar
{
id: scrollbar
anchors.right: parent.right
anchors.top: parent.top
anchors.bottom: parent.bottom
}
Rectangle
{
id: scrollViewContent
width: childrenRect.width
height: childrenRect.height
color: UM.Theme.getColor("main_background")
}
}
}

View File

@ -0,0 +1,57 @@
[general]
definition = snakeoil_standard_base
name = Fast
version = 4
[metadata]
global_quality = True
quality_type = fast
setting_version = 20
type = quality
[values]
acceleration_enabled = True
acceleration_print = 15000
acceleration_roofing = 10000
acceleration_topbottom = 10000
acceleration_travel = 15000
acceleration_wall = 15000
acceleration_wall_0 = 10000
adhesion_type = skirt
alternate_extra_perimeter = False
infill_line_width = 0.5
infill_pattern = lines
infill_sparse_density = 10
layer_height = 0.2
layer_height_0 = 0.2
optimize_wall_printing_order = True
retraction_amount = 0.8
retraction_combing = noskin
retraction_hop = 0.2
retraction_hop_enabled = True
retraction_hop_only_when_collides = True
retraction_speed = 35
roofing_layer_count = 0
skin_monotonic = True
skirt_brim_speed = 45
speed_infill = 200
speed_layer_0 = 45
speed_print = 300
speed_print_layer_0 = 45
speed_roofing = 100
speed_support = 200
speed_topbottom = 150
speed_travel = 300
speed_travel_layer_0 = 150
speed_wall = 100
speed_wall_0 = 100
speed_wall_x = 150
support_angle = 46
support_enable = False
top_bottom_thickness = 0.6
travel_avoid_supports = True
wall_line_width = 0.45
wall_line_width_0 = 0.4
wall_thickness = 1.25
zig_zaggify_infill = True

View File

@ -0,0 +1,57 @@
[general]
definition = snakeoil_standard_base
name = Fine
version = 4
[metadata]
global_quality = True
quality_type = fine
setting_version = 20
type = quality
[values]
acceleration_enabled = True
acceleration_print = 15000
acceleration_roofing = 10000
acceleration_topbottom = 10000
acceleration_travel = 15000
acceleration_wall = 7500
acceleration_wall_0 = 7500
adhesion_type = skirt
alternate_extra_perimeter = False
cool_min_layer_time = 10
infill_line_width = 0.5
infill_pattern = gyroid
infill_sparse_density = 15
inset_direction = outside_in
layer_height = 0.2
layer_height_0 = 0.2
optimize_wall_printing_order = True
retraction_amount = 0.8
retraction_combing = noskin
retraction_hop = 0.2
retraction_hop_enabled = True
retraction_hop_only_when_collides = True
retraction_speed = 35
roofing_layer_count = 1
skin_monotonic = True
skirt_brim_speed = 45
speed_infill = 150
speed_layer_0 = 45
speed_print = 100
speed_roofing = 100
speed_topbottom = 100
speed_travel = 300
speed_travel_layer_0 = 60
speed_wall = 100
speed_wall_0 = 75
speed_wall_x = 100
support_angle = 46
support_enable = False
top_bottom_thickness = 0.8
travel_avoid_supports = True
wall_line_width = 0.45
wall_line_width_0 = 0.4
wall_thickness = 1.65
zig_zaggify_infill = True

View File

@ -0,0 +1,57 @@
[general]
definition = snakeoil_standard_base
name = Normal
version = 4
[metadata]
global_quality = True
quality_type = normal
setting_version = 20
type = quality
[values]
acceleration_enabled = True
acceleration_print = 15000
acceleration_roofing = 10000
acceleration_topbottom = 10000
acceleration_travel = 15000
acceleration_wall = 10000
acceleration_wall_0 = 7500
adhesion_type = skirt
alternate_extra_perimeter = True
bottom_layers = 3
infill_line_width = 0.5
infill_pattern = gyroid
infill_sparse_density = 15
layer_height = 0.2
layer_height_0 = 0.2
optimize_wall_printing_order = True
retraction_amount = 0.8
retraction_combing = noskin
retraction_hop = 0.2
retraction_hop_enabled = True
retraction_hop_only_when_collides = True
retraction_speed = 35
roofing_layer_count = 1
skin_monotonic = True
skirt_brim_speed = 45
speed_infill = 150
speed_layer_0 = 45
speed_print = 150
speed_roofing = 100
speed_topbottom = 100
speed_travel = 300
speed_travel_layer_0 = 100
speed_wall = 100
speed_wall_0 = 100
speed_wall_x = 150
support_angle = 46
support_enable = False
top_bottom_thickness = 0.6
top_layers = 3
travel_avoid_supports = True
wall_line_width = 0.45
wall_line_width_0 = 0.4
wall_thickness = 1.25
zig_zaggify_infill = True

View File

@ -0,0 +1,56 @@
[general]
definition = snakeoil_standard_base
name = Strong
version = 4
[metadata]
global_quality = True
quality_type = strong
setting_version = 20
type = quality
[values]
acceleration_enabled = True
acceleration_print = 15000
acceleration_roofing = 10000
acceleration_topbottom = 10000
acceleration_travel = 15000
acceleration_wall = 10000
acceleration_wall_0 = 7500
adhesion_type = skirt
alternate_extra_perimeter = True
infill_line_width = 0.5
infill_pattern = gyroid
infill_sparse_density = 30
layer_height = 0.2
layer_height_0 = 0.2
optimize_wall_printing_order = True
retraction_amount = 0.8
retraction_combing = noskin
retraction_hop = 0.2
retraction_hop_enabled = True
retraction_hop_only_when_collides = True
retraction_speed = 35
roofing_layer_count = 1
skin_monotonic = True
skirt_brim_speed = 45
speed_infill = 150
speed_layer_0 = 45
speed_print = 100
speed_print_layer_0 = 60
speed_roofing = 100
speed_topbottom = 100
speed_travel = 300
speed_travel_layer_0 = 100
speed_wall = 100
speed_wall_0 = 75
speed_wall_x = 100
support_angle = 46
support_enable = False
top_bottom_thickness = 1
travel_avoid_supports = True
wall_line_width = 0.45
wall_line_width_0 = 0.4
wall_thickness = 2.05
zig_zaggify_infill = True

View File

@ -0,0 +1,14 @@
[general]
definition = sovol_base_bowden
name = Super Quality
version = 4
[metadata]
material = generic_abs
quality_type = super
setting_version = 20
type = quality
variant = 0.2mm Nozzle
[values]

View File

@ -0,0 +1,14 @@
[general]
definition = sovol_base_bowden
name = Ultra Quality
version = 4
[metadata]
material = generic_abs
quality_type = ultra
setting_version = 20
type = quality
variant = 0.2mm Nozzle
[values]

View File

@ -0,0 +1,14 @@
[general]
definition = sovol_base_bowden
name = Dynamic Quality
version = 4
[metadata]
material = generic_abs
quality_type = adaptive
setting_version = 20
type = quality
variant = 0.3mm Nozzle
[values]

View File

@ -0,0 +1,14 @@
[general]
definition = sovol_base_bowden
name = Low Quality
version = 4
[metadata]
material = generic_abs
quality_type = low
setting_version = 20
type = quality
variant = 0.3mm Nozzle
[values]

View File

@ -0,0 +1,14 @@
[general]
definition = sovol_base_bowden
name = Standard Quality
version = 4
[metadata]
material = generic_abs
quality_type = standard
setting_version = 20
type = quality
variant = 0.3mm Nozzle
[values]

View File

@ -0,0 +1,14 @@
[general]
definition = sovol_base_bowden
name = Super Quality
version = 4
[metadata]
material = generic_abs
quality_type = super
setting_version = 20
type = quality
variant = 0.3mm Nozzle
[values]

View File

@ -0,0 +1,14 @@
[general]
definition = sovol_base_bowden
name = Dynamic Quality
version = 4
[metadata]
material = generic_abs
quality_type = adaptive
setting_version = 20
type = quality
variant = 0.4mm Nozzle
[values]

View File

@ -0,0 +1,14 @@
[general]
definition = sovol_base_bowden
name = Low Quality
version = 4
[metadata]
material = generic_abs
quality_type = low
setting_version = 20
type = quality
variant = 0.4mm Nozzle
[values]

View File

@ -0,0 +1,14 @@
[general]
definition = sovol_base_bowden
name = Standard Quality
version = 4
[metadata]
material = generic_abs
quality_type = standard
setting_version = 20
type = quality
variant = 0.4mm Nozzle
[values]

View File

@ -0,0 +1,14 @@
[general]
definition = sovol_base_bowden
name = Super Quality
version = 4
[metadata]
material = generic_abs
quality_type = super
setting_version = 20
type = quality
variant = 0.4mm Nozzle
[values]

View File

@ -0,0 +1,14 @@
[general]
definition = sovol_base_bowden
name = Dynamic Quality
version = 4
[metadata]
material = generic_abs
quality_type = adaptive
setting_version = 20
type = quality
variant = 0.5mm Nozzle
[values]

View File

@ -0,0 +1,14 @@
[general]
definition = sovol_base_bowden
name = Low Quality
version = 4
[metadata]
material = generic_abs
quality_type = low
setting_version = 20
type = quality
variant = 0.5mm Nozzle
[values]

View File

@ -0,0 +1,14 @@
[general]
definition = sovol_base_bowden
name = Standard Quality
version = 4
[metadata]
material = generic_abs
quality_type = standard
setting_version = 20
type = quality
variant = 0.5mm Nozzle
[values]

View File

@ -0,0 +1,14 @@
[general]
definition = sovol_base_bowden
name = Super Quality
version = 4
[metadata]
material = generic_abs
quality_type = super
setting_version = 20
type = quality
variant = 0.5mm Nozzle
[values]

View File

@ -0,0 +1,14 @@
[general]
definition = sovol_base_bowden
name = Dynamic Quality
version = 4
[metadata]
material = generic_abs
quality_type = adaptive
setting_version = 20
type = quality
variant = 0.6mm Nozzle
[values]

View File

@ -0,0 +1,14 @@
[general]
definition = sovol_base_bowden
name = Draft Quality
version = 4
[metadata]
material = generic_abs
quality_type = draft
setting_version = 20
type = quality
variant = 0.6mm Nozzle
[values]

View File

@ -0,0 +1,14 @@
[general]
definition = sovol_base_bowden
name = Low Quality
version = 4
[metadata]
material = generic_abs
quality_type = low
setting_version = 20
type = quality
variant = 0.5mm Nozzle
[values]

View File

@ -0,0 +1,14 @@
[general]
definition = sovol_base_bowden
name = Standard Quality
version = 4
[metadata]
material = generic_abs
quality_type = standard
setting_version = 20
type = quality
variant = 0.6mm Nozzle
[values]

View File

@ -0,0 +1,14 @@
[general]
definition = sovol_base_bowden
name = Draft Quality
version = 4
[metadata]
material = generic_abs
quality_type = draft
setting_version = 20
type = quality
variant = 0.8mm Nozzle
[values]

View File

@ -0,0 +1,14 @@
[general]
definition = sovol_base_bowden
name = Draft Quality
version = 4
[metadata]
material = generic_abs
quality_type = draft
setting_version = 20
type = quality
variant = 1.0mm Nozzle
[values]

View File

@ -0,0 +1,14 @@
[general]
definition = sovol_base_planetary
name = Super Quality
version = 4
[metadata]
material = generic_abs
quality_type = super
setting_version = 20
type = quality
variant = 0.2mm Nozzle
[values]

View File

@ -0,0 +1,14 @@
[general]
definition = sovol_base_planetary
name = Ultra Quality
version = 4
[metadata]
material = generic_abs
quality_type = ultra
setting_version = 20
type = quality
variant = 0.2mm Nozzle
[values]

View File

@ -0,0 +1,14 @@
[general]
definition = sovol_base_planetary
name = Dynamic Quality
version = 4
[metadata]
material = generic_abs
quality_type = adaptive
setting_version = 20
type = quality
variant = 0.3mm Nozzle
[values]

View File

@ -0,0 +1,14 @@
[general]
definition = sovol_base_planetary
name = Low Quality
version = 4
[metadata]
material = generic_abs
quality_type = low
setting_version = 20
type = quality
variant = 0.3mm Nozzle
[values]

View File

@ -0,0 +1,14 @@
[general]
definition = sovol_base_planetary
name = Standard Quality
version = 4
[metadata]
material = generic_abs
quality_type = standard
setting_version = 20
type = quality
variant = 0.3mm Nozzle
[values]

View File

@ -0,0 +1,14 @@
[general]
definition = sovol_base_planetary
name = Super Quality
version = 4
[metadata]
material = generic_abs
quality_type = super
setting_version = 20
type = quality
variant = 0.3mm Nozzle
[values]

View File

@ -0,0 +1,14 @@
[general]
definition = sovol_base_planetary
name = Dynamic Quality
version = 4
[metadata]
material = generic_abs
quality_type = adaptive
setting_version = 20
type = quality
variant = 0.4mm Nozzle
[values]

View File

@ -0,0 +1,14 @@
[general]
definition = sovol_base_planetary
name = Low Quality
version = 4
[metadata]
material = generic_abs
quality_type = low
setting_version = 20
type = quality
variant = 0.4mm Nozzle
[values]

View File

@ -0,0 +1,14 @@
[general]
definition = sovol_base_planetary
name = Standard Quality
version = 4
[metadata]
material = generic_abs
quality_type = standard
setting_version = 20
type = quality
variant = 0.4mm Nozzle
[values]

View File

@ -0,0 +1,14 @@
[general]
definition = sovol_base_planetary
name = Super Quality
version = 4
[metadata]
material = generic_abs
quality_type = super
setting_version = 20
type = quality
variant = 0.4mm Nozzle
[values]

View File

@ -0,0 +1,14 @@
[general]
definition = sovol_base_planetary
name = Dynamic Quality
version = 4
[metadata]
material = generic_abs
quality_type = adaptive
setting_version = 20
type = quality
variant = 0.5mm Nozzle
[values]

View File

@ -0,0 +1,14 @@
[general]
definition = sovol_base_planetary
name = Low Quality
version = 4
[metadata]
material = generic_abs
quality_type = low
setting_version = 20
type = quality
variant = 0.5mm Nozzle
[values]

View File

@ -0,0 +1,14 @@
[general]
definition = sovol_base_planetary
name = Standard Quality
version = 4
[metadata]
material = generic_abs
quality_type = standard
setting_version = 20
type = quality
variant = 0.5mm Nozzle
[values]

View File

@ -0,0 +1,14 @@
[general]
definition = sovol_base_planetary
name = Super Quality
version = 4
[metadata]
material = generic_abs
quality_type = super
setting_version = 20
type = quality
variant = 0.5mm Nozzle
[values]

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