mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-19 04:37:51 -06:00
Add not supported instance container type and qt role - CURA-4451
This commit is contained in:
parent
b50f027c83
commit
9083fe1bf0
15 changed files with 645 additions and 19 deletions
47
cura/Settings/NotSupportedProfileContainer.py
Normal file
47
cura/Settings/NotSupportedProfileContainer.py
Normal file
|
@ -0,0 +1,47 @@
|
|||
# Copyright (c) 2017 Ultimaker B.V.
|
||||
# Cura is released under the terms of the LGPLv3 or higher.
|
||||
|
||||
from UM.Signal import signalemitter
|
||||
|
||||
from UM.Settings.InstanceContainer import InstanceContainer
|
||||
from UM.Settings.ContainerRegistry import ContainerRegistry
|
||||
from UM.MimeTypeDatabase import MimeType, MimeTypeDatabase
|
||||
|
||||
|
||||
## A container for not supported profiles.
|
||||
#
|
||||
#
|
||||
@signalemitter
|
||||
class NotSupportedProfileContainer(InstanceContainer):
|
||||
|
||||
def __init__(self, container_id: str, machine_id: str, material_id: str, *args, **kwargs):
|
||||
super().__init__(container_id, *args, **kwargs)
|
||||
|
||||
# self._id = str(container_id) # type: str
|
||||
# self._name = "Not supported" # type: str
|
||||
|
||||
self.setMetaData({
|
||||
"setting_version": 3,
|
||||
"supported": False,
|
||||
"type": "quality",
|
||||
"weight": "0",
|
||||
"material": material_id
|
||||
})
|
||||
|
||||
# register this container
|
||||
ContainerRegistry.getInstance().addContainer(self)
|
||||
|
||||
# set printer definition
|
||||
definition = ContainerRegistry.getInstance().findDefinitionContainers(id = machine_id)
|
||||
self.setDefinition(definition[0])
|
||||
|
||||
|
||||
# register the container mime type
|
||||
not_support_instance_mime = MimeType(
|
||||
name = "application/x-cura-notsupportedinstancecontainer",
|
||||
comment = "Cura Not Supported Instance Container",
|
||||
suffixes = []
|
||||
)
|
||||
|
||||
MimeTypeDatabase.addMimeType(not_support_instance_mime)
|
||||
ContainerRegistry.addContainerTypeByName(NotSupportedProfileContainer, "not_supported_instance", not_support_instance_mime.name)
|
|
@ -7,11 +7,11 @@ from PyQt5.QtCore import Qt
|
|||
|
||||
from UM.Application import Application
|
||||
from UM.Settings.ContainerRegistry import ContainerRegistry
|
||||
from UM.Settings.InstanceContainer import InstanceContainer
|
||||
from UM.Settings.Models.InstanceContainersModel import InstanceContainersModel
|
||||
|
||||
from cura.QualityManager import QualityManager
|
||||
from cura.Settings.ExtruderManager import ExtruderManager
|
||||
from cura.Settings.NotSupportedProfileContainer import NotSupportedProfileContainer
|
||||
|
||||
|
||||
## QML Model for listing the current list of valid quality profiles.
|
||||
|
@ -78,9 +78,9 @@ class ProfilesModel(InstanceContainersModel):
|
|||
if len(result) == 0:
|
||||
machine_id = global_container_stack.definition.getId()
|
||||
material_id = extruder_stacks[0].material.getId()
|
||||
not_supported_container = self.generateNoSupportedInstanceContainer(machine_id, material_id)
|
||||
container_id = machine_id + "_" + material_id + "_not_supported"
|
||||
not_supported_container = NotSupportedProfileContainer(container_id, machine_id, material_id)
|
||||
result.append(not_supported_container)
|
||||
# ContainerRegistry.getInstance().addContainer(not_supported_container)
|
||||
return result
|
||||
|
||||
# The usable quality types are set
|
||||
|
@ -98,32 +98,22 @@ class ProfilesModel(InstanceContainersModel):
|
|||
|
||||
return result
|
||||
|
||||
def generateNoSupportedInstanceContainer(self, machine_id: str, material_id: str):
|
||||
container = InstanceContainer("not_supported")
|
||||
container.setName("Not Supported")
|
||||
container.metaData["setting_version"] = 3
|
||||
container.metaData["supported"] = False
|
||||
container.metaData["type"] = "quality"
|
||||
container.metaData["weight"] = "0"
|
||||
container.metaData["material"] = material_id
|
||||
container.metaData["quality_type"] = "normal"
|
||||
definition = ContainerRegistry.getInstance().findDefinitionContainers(id = machine_id)
|
||||
container.setDefinition(definition)
|
||||
return container
|
||||
|
||||
## Re-computes the items in this model, and adds the layer height role.
|
||||
def _recomputeItems(self):
|
||||
#Some globals that we can re-use.
|
||||
|
||||
# Some globals that we can re-use.
|
||||
global_container_stack = Application.getInstance().getGlobalContainerStack()
|
||||
if global_container_stack is None:
|
||||
return
|
||||
|
||||
# Detecting if the machine has multiple extrusion
|
||||
multiple_extrusion = global_container_stack.getProperty("machine_extruder_count", "value") > 1
|
||||
|
||||
# Get the list of extruders and place the selected extruder at the front of the list.
|
||||
extruder_manager = ExtruderManager.getInstance()
|
||||
active_extruder = extruder_manager.getActiveExtruderStack()
|
||||
extruder_stacks = extruder_manager.getActiveExtruderStacks()
|
||||
|
||||
if multiple_extrusion:
|
||||
# Place the active extruder at the front of the list.
|
||||
# This is a workaround checking if there is an active_extruder or not before moving it to the front of the list.
|
||||
|
@ -181,7 +171,9 @@ class ProfilesModel(InstanceContainersModel):
|
|||
|
||||
# Now all the containers are set
|
||||
for item in containers:
|
||||
profile = container_registry.findContainers(id=item["id"])
|
||||
profile = container_registry.findContainers(id = item["id"])
|
||||
|
||||
# when the profile is not supported
|
||||
if not profile:
|
||||
self._setItemLayerHeight(item, "", "")
|
||||
item["available"] = False
|
||||
|
@ -195,6 +187,7 @@ class ProfilesModel(InstanceContainersModel):
|
|||
# Easy case: This profile defines its own layer height.
|
||||
if profile.hasProperty("layer_height", "value"):
|
||||
self._setItemLayerHeight(item, profile.getProperty("layer_height", "value"), unit)
|
||||
item["not_supported"] = False
|
||||
yield item
|
||||
continue
|
||||
|
||||
|
@ -213,16 +206,18 @@ class ProfilesModel(InstanceContainersModel):
|
|||
quality = None
|
||||
if quality and quality.hasProperty("layer_height", "value"):
|
||||
self._setItemLayerHeight(item, quality.getProperty("layer_height", "value"), unit)
|
||||
item["not_supported"] = False
|
||||
yield item
|
||||
continue
|
||||
|
||||
#Quality has no value for layer height either. Get the layer height from somewhere lower in the stack.
|
||||
# Quality has no value for layer height either. Get the layer height from somewhere lower in the stack.
|
||||
skip_until_container = global_container_stack.material
|
||||
if not skip_until_container or skip_until_container == ContainerRegistry.getInstance().getEmptyInstanceContainer(): #No material in stack.
|
||||
skip_until_container = global_container_stack.variant
|
||||
if not skip_until_container or skip_until_container == ContainerRegistry.getInstance().getEmptyInstanceContainer(): #No variant in stack.
|
||||
skip_until_container = global_container_stack.getBottom()
|
||||
self._setItemLayerHeight(item, global_container_stack.getRawProperty("layer_height", "value", skip_until_container = skip_until_container.getId()), unit) # Fall through to the currently loaded material.
|
||||
item["not_supported"] = False
|
||||
yield item
|
||||
|
||||
def _setItemLayerHeight(self, item, value, unit):
|
||||
|
|
117
resources/definitions/builder_premium_large.def.json
Normal file
117
resources/definitions/builder_premium_large.def.json
Normal file
|
@ -0,0 +1,117 @@
|
|||
{
|
||||
"id": "builder_premium_large",
|
||||
"version": 2,
|
||||
"name": "Builder Premium Large",
|
||||
"inherits": "fdmprinter",
|
||||
"metadata": {
|
||||
"visible": true,
|
||||
"author": "Builder SZ",
|
||||
"manufacturer": "Builder",
|
||||
"category": "Other",
|
||||
"quality_definition": "builder_premium_small",
|
||||
"file_formats": "text/x-gcode",
|
||||
"platform": "builder_premium_platform.stl",
|
||||
"platform_offset": [-126, -36, 117],
|
||||
"has_machine_quality": true,
|
||||
"preferred_quality": "*Normal*",
|
||||
"machine_extruder_trains":
|
||||
{
|
||||
"0": "builder_premium_large_rear",
|
||||
"1": "builder_premium_large_front"
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
|
||||
"overrides": {
|
||||
"machine_name": { "default_value": "Builder Premium Large" },
|
||||
"machine_heated_bed": { "default_value": true },
|
||||
"machine_width": { "default_value": 215 },
|
||||
"machine_height": { "default_value": 600 },
|
||||
"machine_depth": { "default_value": 205 },
|
||||
"material_diameter": { "default_value": 1.75 },
|
||||
|
||||
"infill_pattern": {"value": "'triangles'" },
|
||||
"infill_before_walls": {"value": false },
|
||||
|
||||
"default_material_print_temperature": { "value": "215" },
|
||||
"material_print_temperature_layer_0": { "value": "material_print_temperature + 5" },
|
||||
"material_standby_temperature": { "value": "material_print_temperature" },
|
||||
|
||||
"switch_extruder_retraction_speeds": {"default_value": 15 },
|
||||
"switch_extruder_retraction_speed": {"default_value": 15 },
|
||||
"switch_extruder_prime_speed": {"default_value": 15 },
|
||||
"switch_extruder_retraction_amount": {"value": 1 },
|
||||
|
||||
"speed_travel": { "value": "100" },
|
||||
"speed_layer_0": { "value": "20" },
|
||||
"speed_prime_tower": { "value": "speed_topbottom" },
|
||||
"speed_print": { "value": "40" },
|
||||
"speed_support": { "value": "speed_wall_0" },
|
||||
"speed_support_interface": { "value": "speed_topbottom" },
|
||||
"speed_topbottom": { "value": "math.ceil(speed_print * 20 / 35)" },
|
||||
"speed_wall": { "value": "math.ceil(speed_print * 30 / 40)" },
|
||||
"speed_wall_0": { "value": "math.ceil(speed_wall * 20 / 25)" },
|
||||
"speed_wall_x": { "value": "speed_wall" },
|
||||
|
||||
"prime_tower_position_x": { "default_value": 175 },
|
||||
"prime_tower_position_y": { "default_value": 178 },
|
||||
"prime_tower_wipe_enabled": { "default_value": false },
|
||||
"prime_tower_min_volume": { "default_value": 50 },
|
||||
"dual_pre_wipe": { "default_value": false },
|
||||
|
||||
"prime_blob_enable": { "enabled": true },
|
||||
|
||||
"acceleration_enabled": { "value": "True" },
|
||||
"acceleration_layer_0": { "value": "acceleration_topbottom" },
|
||||
"acceleration_prime_tower": { "value": "math.ceil(acceleration_print * 2000 / 4000)" },
|
||||
"acceleration_print": { "value": "3000" },
|
||||
"acceleration_support": { "value": "math.ceil(acceleration_print * 2000 / 4000)" },
|
||||
"acceleration_support_interface": { "value": "acceleration_topbottom" },
|
||||
"acceleration_topbottom": { "value": "math.ceil(acceleration_print * 1000 / 3000)" },
|
||||
"acceleration_travel": { "value": "acceleration_print" },
|
||||
"acceleration_wall": { "value": "math.ceil(acceleration_print * 1000 / 3000)" },
|
||||
"acceleration_wall_0": { "value": "math.ceil(acceleration_wall * 1000 / 1000)" },
|
||||
|
||||
"cool_fan_full_at_height": { "value": "layer_height_0 + 2 * layer_height" },
|
||||
"cool_min_layer_time": { "default_value": 10 },
|
||||
|
||||
"jerk_enabled": { "value": "True" },
|
||||
"jerk_layer_0": { "value": "jerk_topbottom" },
|
||||
"jerk_prime_tower": { "value": "math.ceil(jerk_print * 15 / 25)" },
|
||||
"jerk_print": { "value": "25" },
|
||||
"jerk_support": { "value": "math.ceil(jerk_print * 15 / 25)" },
|
||||
"jerk_support_interface": { "value": "jerk_topbottom" },
|
||||
"jerk_topbottom": { "value": "math.ceil(jerk_print * 5 / 25)" },
|
||||
"jerk_wall": { "value": "math.ceil(jerk_print * 10 / 25)" },
|
||||
"jerk_wall_0": { "value": "math.ceil(jerk_wall * 5 / 10)" },
|
||||
|
||||
"wall_thickness": { "value": "1.2" },
|
||||
|
||||
"retraction_amount": { "default_value": 3 },
|
||||
"retraction_speed": { "default_value": 15 },
|
||||
"retraction_retract_speed": { "default_value": 15 },
|
||||
"retraction_prime_speed": { "default_value": 15 },
|
||||
"travel_retract_before_outer_wall": { "default_value": true },
|
||||
"skin_overlap": { "value": "15" },
|
||||
"adhesion_type": { "default_value": "skirt" },
|
||||
"machine_nozzle_heat_up_speed": { "default_value": 2 },
|
||||
"machine_nozzle_cool_down_speed": { "default_value": 2 },
|
||||
"machine_head_polygon": { "default_value": [[-75, -18],[-75, 35],[18, 35],[18, -18]] },
|
||||
"gantry_height": { "default_value": 55 },
|
||||
"machine_max_feedrate_x": { "default_value": 300 },
|
||||
"machine_max_feedrate_y": { "default_value": 300 },
|
||||
"machine_max_feedrate_z": { "default_value": 40 },
|
||||
"machine_max_acceleration_z": { "default_value": 500 },
|
||||
"machine_acceleration": { "default_value": 1000 },
|
||||
"machine_max_jerk_xy": { "default_value": 10 },
|
||||
"machine_gcode_flavor": { "default_value": "RepRap (Marlin/Sprinter)" },
|
||||
"machine_start_gcode": {
|
||||
"default_value": "G21 ;metric values\nG90 ;absolute positioning\nM82 ;set extruder to absolute mode\nM107 ;start with the fan off\nG28 X0 Y0 ;move X/Y to min endstops\nG28 Z0 ;move Z to min endstops\nG1 Z15.0 F9000 ;move the platform down 15mm\nG92 E0 ;zero the extruded length\nG1 F200 E15 ;extrude 15mm of feed stock\nG92 E0 ;zero the extruded length again\nG1 F9000\nT0 ;Start with Rear Extruder\n;Put printing message on LCD screen\nM117 Printing..."
|
||||
},
|
||||
"machine_end_gcode": {
|
||||
"default_value": "M104 S0 ;extruder heater off\nM140 S0 ;heated bed heater off (if you have it)\nG91 ;relative positioning\nG1 E-1 F300 ;retract the filament a bit before lifting the nozzle, to release some of the pressure\nG1 Z+0.5 E-5 X-20 Y-20 F9000 ;move Z up a bit and retract filament even more\nG28 X0 Y0 ;move X/Y to min endstops, so the head is out of the way\nM84 ;steppers off\nG90 ;absolute positioning"
|
||||
},
|
||||
"machine_extruder_count": { "default_value": 2 }
|
||||
}
|
||||
}
|
117
resources/definitions/builder_premium_medium.def.json
Normal file
117
resources/definitions/builder_premium_medium.def.json
Normal file
|
@ -0,0 +1,117 @@
|
|||
{
|
||||
"id": "builder_premium_medium",
|
||||
"version": 2,
|
||||
"name": "Builder Premium Medium",
|
||||
"inherits": "fdmprinter",
|
||||
"metadata": {
|
||||
"visible": true,
|
||||
"author": "Builder SZ",
|
||||
"manufacturer": "Builder",
|
||||
"category": "Other",
|
||||
"quality_definition": "builder_premium_small",
|
||||
"file_formats": "text/x-gcode",
|
||||
"platform": "builder_premium_platform.stl",
|
||||
"platform_offset": [-126, -36, 117],
|
||||
"has_machine_quality": true,
|
||||
"preferred_quality": "*Normal*",
|
||||
"machine_extruder_trains":
|
||||
{
|
||||
"0": "builder_premium_medium_rear",
|
||||
"1": "builder_premium_medium_front"
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
|
||||
"overrides": {
|
||||
"machine_name": { "default_value": "Builder Premium Medium" },
|
||||
"machine_heated_bed": { "default_value": true },
|
||||
"machine_width": { "default_value": 215 },
|
||||
"machine_height": { "default_value": 400 },
|
||||
"machine_depth": { "default_value": 205 },
|
||||
"material_diameter": { "default_value": 1.75 },
|
||||
|
||||
"infill_pattern": {"value": "'triangles'" },
|
||||
"infill_before_walls": {"value": false },
|
||||
|
||||
"default_material_print_temperature": { "value": "215" },
|
||||
"material_print_temperature_layer_0": { "value": "material_print_temperature + 5" },
|
||||
"material_standby_temperature": { "value": "material_print_temperature" },
|
||||
|
||||
"switch_extruder_retraction_speeds": {"default_value": 15 },
|
||||
"switch_extruder_retraction_speed": {"default_value": 15 },
|
||||
"switch_extruder_prime_speed": {"default_value": 15 },
|
||||
"switch_extruder_retraction_amount": {"value": 1 },
|
||||
|
||||
"speed_travel": { "value": "100" },
|
||||
"speed_layer_0": { "value": "20" },
|
||||
"speed_prime_tower": { "value": "speed_topbottom" },
|
||||
"speed_print": { "value": "40" },
|
||||
"speed_support": { "value": "speed_wall_0" },
|
||||
"speed_support_interface": { "value": "speed_topbottom" },
|
||||
"speed_topbottom": { "value": "math.ceil(speed_print * 20 / 35)" },
|
||||
"speed_wall": { "value": "math.ceil(speed_print * 30 / 40)" },
|
||||
"speed_wall_0": { "value": "math.ceil(speed_wall * 20 / 25)" },
|
||||
"speed_wall_x": { "value": "speed_wall" },
|
||||
|
||||
"prime_tower_position_x": { "default_value": 175 },
|
||||
"prime_tower_position_y": { "default_value": 178 },
|
||||
"prime_tower_wipe_enabled": { "default_value": false },
|
||||
"prime_tower_min_volume": { "default_value": 50 },
|
||||
"dual_pre_wipe": { "default_value": false },
|
||||
|
||||
"prime_blob_enable": { "enabled": true },
|
||||
|
||||
"acceleration_enabled": { "value": "True" },
|
||||
"acceleration_layer_0": { "value": "acceleration_topbottom" },
|
||||
"acceleration_prime_tower": { "value": "math.ceil(acceleration_print * 2000 / 4000)" },
|
||||
"acceleration_print": { "value": "3000" },
|
||||
"acceleration_support": { "value": "math.ceil(acceleration_print * 2000 / 4000)" },
|
||||
"acceleration_support_interface": { "value": "acceleration_topbottom" },
|
||||
"acceleration_topbottom": { "value": "math.ceil(acceleration_print * 1000 / 3000)" },
|
||||
"acceleration_travel": { "value": "acceleration_print" },
|
||||
"acceleration_wall": { "value": "math.ceil(acceleration_print * 1000 / 3000)" },
|
||||
"acceleration_wall_0": { "value": "math.ceil(acceleration_wall * 1000 / 1000)" },
|
||||
|
||||
"cool_fan_full_at_height": { "value": "layer_height_0 + 2 * layer_height" },
|
||||
"cool_min_layer_time": { "default_value": 10 },
|
||||
|
||||
"jerk_enabled": { "value": "True" },
|
||||
"jerk_layer_0": { "value": "jerk_topbottom" },
|
||||
"jerk_prime_tower": { "value": "math.ceil(jerk_print * 15 / 25)" },
|
||||
"jerk_print": { "value": "25" },
|
||||
"jerk_support": { "value": "math.ceil(jerk_print * 15 / 25)" },
|
||||
"jerk_support_interface": { "value": "jerk_topbottom" },
|
||||
"jerk_topbottom": { "value": "math.ceil(jerk_print * 5 / 25)" },
|
||||
"jerk_wall": { "value": "math.ceil(jerk_print * 10 / 25)" },
|
||||
"jerk_wall_0": { "value": "math.ceil(jerk_wall * 5 / 10)" },
|
||||
|
||||
"wall_thickness": { "value": "1.2" },
|
||||
|
||||
"retraction_amount": { "default_value": 3 },
|
||||
"retraction_speed": { "default_value": 15 },
|
||||
"retraction_retract_speed": { "default_value": 15 },
|
||||
"retraction_prime_speed": { "default_value": 15 },
|
||||
"travel_retract_before_outer_wall": { "default_value": true },
|
||||
"skin_overlap": { "value": "15" },
|
||||
"adhesion_type": { "default_value": "skirt" },
|
||||
"machine_nozzle_heat_up_speed": { "default_value": 2 },
|
||||
"machine_nozzle_cool_down_speed": { "default_value": 2 },
|
||||
"machine_head_polygon": { "default_value": [[-75, -18],[-75, 35],[18, 35],[18, -18]] },
|
||||
"gantry_height": { "default_value": 55 },
|
||||
"machine_max_feedrate_x": { "default_value": 300 },
|
||||
"machine_max_feedrate_y": { "default_value": 300 },
|
||||
"machine_max_feedrate_z": { "default_value": 40 },
|
||||
"machine_max_acceleration_z": { "default_value": 500 },
|
||||
"machine_acceleration": { "default_value": 1000 },
|
||||
"machine_max_jerk_xy": { "default_value": 10 },
|
||||
"machine_gcode_flavor": { "default_value": "RepRap (Marlin/Sprinter)" },
|
||||
"machine_start_gcode": {
|
||||
"default_value": "G21 ;metric values\nG90 ;absolute positioning\nM82 ;set extruder to absolute mode\nM107 ;start with the fan off\nG28 X0 Y0 ;move X/Y to min endstops\nG28 Z0 ;move Z to min endstops\nG1 Z15.0 F9000 ;move the platform down 15mm\nG92 E0 ;zero the extruded length\nG1 F200 E15 ;extrude 15mm of feed stock\nG92 E0 ;zero the extruded length again\nG1 F9000\nT0 ;Start with Rear Extruder\n;Put printing message on LCD screen\nM117 Printing..."
|
||||
},
|
||||
"machine_end_gcode": {
|
||||
"default_value": "M104 S0 ;extruder heater off\nM140 S0 ;heated bed heater off (if you have it)\nG91 ;relative positioning\nG1 E-1 F300 ;retract the filament a bit before lifting the nozzle, to release some of the pressure\nG1 Z+0.5 E-5 X-20 Y-20 F9000 ;move Z up a bit and retract filament even more\nG28 X0 Y0 ;move X/Y to min endstops, so the head is out of the way\nM84 ;steppers off\nG90 ;absolute positioning"
|
||||
},
|
||||
"machine_extruder_count": { "default_value": 2 }
|
||||
}
|
||||
}
|
116
resources/definitions/builder_premium_small.def.json
Normal file
116
resources/definitions/builder_premium_small.def.json
Normal file
|
@ -0,0 +1,116 @@
|
|||
{
|
||||
"id": "builder_premium_small",
|
||||
"version": 2,
|
||||
"name": "Builder Premium Small",
|
||||
"inherits": "fdmprinter",
|
||||
"metadata": {
|
||||
"visible": true,
|
||||
"author": "Builder SZ",
|
||||
"manufacturer": "Builder",
|
||||
"category": "Other",
|
||||
"file_formats": "text/x-gcode",
|
||||
"platform": "builder_premium_platform.stl",
|
||||
"platform_offset": [-126, -36, 117],
|
||||
"has_machine_quality": true,
|
||||
"preferred_quality": "*Normal*",
|
||||
"machine_extruder_trains":
|
||||
{
|
||||
"0": "builder_premium_small_rear",
|
||||
"1": "builder_premium_small_front"
|
||||
}
|
||||
},
|
||||
|
||||
|
||||
|
||||
"overrides": {
|
||||
"machine_name": { "default_value": "Builder Premium Small" },
|
||||
"machine_heated_bed": { "default_value": true },
|
||||
"machine_width": { "default_value": 215 },
|
||||
"machine_height": { "default_value": 200 },
|
||||
"machine_depth": { "default_value": 205 },
|
||||
"material_diameter": { "default_value": 1.75 },
|
||||
|
||||
"infill_pattern": {"value": "'triangles'" },
|
||||
"infill_before_walls": {"value": false },
|
||||
|
||||
"default_material_print_temperature": { "value": "215" },
|
||||
"material_print_temperature_layer_0": { "value": "material_print_temperature + 5" },
|
||||
"material_standby_temperature": { "value": "material_print_temperature" },
|
||||
|
||||
"switch_extruder_retraction_speeds": {"default_value": 15 },
|
||||
"switch_extruder_retraction_speed": {"default_value": 15 },
|
||||
"switch_extruder_prime_speed": {"default_value": 15 },
|
||||
"switch_extruder_retraction_amount": {"value": 1 },
|
||||
|
||||
"speed_travel": { "value": "100" },
|
||||
"speed_layer_0": { "value": "20" },
|
||||
"speed_prime_tower": { "value": "speed_topbottom" },
|
||||
"speed_print": { "value": "40" },
|
||||
"speed_support": { "value": "speed_wall_0" },
|
||||
"speed_support_interface": { "value": "speed_topbottom" },
|
||||
"speed_topbottom": { "value": "math.ceil(speed_print * 20 / 35)" },
|
||||
"speed_wall": { "value": "math.ceil(speed_print * 30 / 40)" },
|
||||
"speed_wall_0": { "value": "math.ceil(speed_wall * 20 / 25)" },
|
||||
"speed_wall_x": { "value": "speed_wall" },
|
||||
|
||||
"prime_tower_position_x": { "default_value": 175 },
|
||||
"prime_tower_position_y": { "default_value": 178 },
|
||||
"prime_tower_wipe_enabled": { "default_value": false },
|
||||
"prime_tower_min_volume": { "default_value": 50 },
|
||||
"dual_pre_wipe": { "default_value": false },
|
||||
|
||||
"prime_blob_enable": { "enabled": true },
|
||||
|
||||
"acceleration_enabled": { "value": "True" },
|
||||
"acceleration_layer_0": { "value": "acceleration_topbottom" },
|
||||
"acceleration_prime_tower": { "value": "math.ceil(acceleration_print * 2000 / 4000)" },
|
||||
"acceleration_print": { "value": "3000" },
|
||||
"acceleration_support": { "value": "math.ceil(acceleration_print * 2000 / 4000)" },
|
||||
"acceleration_support_interface": { "value": "acceleration_topbottom" },
|
||||
"acceleration_topbottom": { "value": "math.ceil(acceleration_print * 1000 / 3000)" },
|
||||
"acceleration_travel": { "value": "acceleration_print" },
|
||||
"acceleration_wall": { "value": "math.ceil(acceleration_print * 1000 / 3000)" },
|
||||
"acceleration_wall_0": { "value": "math.ceil(acceleration_wall * 1000 / 1000)" },
|
||||
|
||||
"cool_fan_full_at_height": { "value": "layer_height_0 + 2 * layer_height" },
|
||||
"cool_min_layer_time": { "default_value": 10 },
|
||||
|
||||
"jerk_enabled": { "value": "True" },
|
||||
"jerk_layer_0": { "value": "jerk_topbottom" },
|
||||
"jerk_prime_tower": { "value": "math.ceil(jerk_print * 15 / 25)" },
|
||||
"jerk_print": { "value": "25" },
|
||||
"jerk_support": { "value": "math.ceil(jerk_print * 15 / 25)" },
|
||||
"jerk_support_interface": { "value": "jerk_topbottom" },
|
||||
"jerk_topbottom": { "value": "math.ceil(jerk_print * 5 / 25)" },
|
||||
"jerk_wall": { "value": "math.ceil(jerk_print * 10 / 25)" },
|
||||
"jerk_wall_0": { "value": "math.ceil(jerk_wall * 5 / 10)" },
|
||||
|
||||
"wall_thickness": { "value": "1.2" },
|
||||
|
||||
"retraction_amount": { "default_value": 3 },
|
||||
"retraction_speed": { "default_value": 15 },
|
||||
"retraction_retract_speed": { "default_value": 15 },
|
||||
"retraction_prime_speed": { "default_value": 15 },
|
||||
"travel_retract_before_outer_wall": { "default_value": true },
|
||||
"skin_overlap": { "value": "15" },
|
||||
"adhesion_type": { "default_value": "skirt" },
|
||||
"machine_nozzle_heat_up_speed": { "default_value": 2 },
|
||||
"machine_nozzle_cool_down_speed": { "default_value": 2 },
|
||||
"machine_head_polygon": { "default_value": [[-75, -18],[-75, 35],[18, 35],[18, -18]] },
|
||||
"gantry_height": { "default_value": 55 },
|
||||
"machine_max_feedrate_x": { "default_value": 300 },
|
||||
"machine_max_feedrate_y": { "default_value": 300 },
|
||||
"machine_max_feedrate_z": { "default_value": 40 },
|
||||
"machine_max_acceleration_z": { "default_value": 500 },
|
||||
"machine_acceleration": { "default_value": 1000 },
|
||||
"machine_max_jerk_xy": { "default_value": 10 },
|
||||
"machine_gcode_flavor": { "default_value": "RepRap (Marlin/Sprinter)" },
|
||||
"machine_start_gcode": {
|
||||
"default_value": "G21 ;metric values\nG90 ;absolute positioning\nM82 ;set extruder to absolute mode\nM107 ;start with the fan off\nG28 X0 Y0 ;move X/Y to min endstops\nG28 Z0 ;move Z to min endstops\nG1 Z15.0 F9000 ;move the platform down 15mm\nG92 E0 ;zero the extruded length\nG1 F200 E15 ;extrude 15mm of feed stock\nG92 E0 ;zero the extruded length again\nG1 F9000\nT0 ;Start with Rear Extruder\n;Put printing message on LCD screen\nM117 Printing..."
|
||||
},
|
||||
"machine_end_gcode": {
|
||||
"default_value": "M104 S0 ;extruder heater off\nM140 S0 ;heated bed heater off (if you have it)\nG91 ;relative positioning\nG1 E-1 F300 ;retract the filament a bit before lifting the nozzle, to release some of the pressure\nG1 Z+0.5 E-5 X-20 Y-20 F9000 ;move Z up a bit and retract filament even more\nG28 X0 Y0 ;move X/Y to min endstops, so the head is out of the way\nM84 ;steppers off\nG90 ;absolute positioning"
|
||||
},
|
||||
"machine_extruder_count": { "default_value": 2 }
|
||||
}
|
||||
}
|
27
resources/extruders/builder_premium_large_front.def.json
Normal file
27
resources/extruders/builder_premium_large_front.def.json
Normal file
|
@ -0,0 +1,27 @@
|
|||
{
|
||||
"id": "builder_premium_large_front",
|
||||
"version": 2,
|
||||
"name": "Front Extruder",
|
||||
"inherits": "fdmextruder",
|
||||
"metadata": {
|
||||
"machine": "builder_premium_large",
|
||||
"position": "1"
|
||||
},
|
||||
|
||||
"overrides": {
|
||||
"extruder_nr": {
|
||||
"default_value": 1,
|
||||
"maximum_value": "1"
|
||||
},
|
||||
"machine_nozzle_offset_x": { "default_value": 0.0 },
|
||||
"machine_nozzle_offset_y": { "default_value": 0.0 },
|
||||
|
||||
"machine_extruder_start_pos_abs": { "default_value": true },
|
||||
"machine_extruder_start_pos_x": { "value": "prime_tower_position_x" },
|
||||
"machine_extruder_start_pos_y": { "value": "prime_tower_position_y" },
|
||||
"machine_extruder_end_pos_abs": { "default_value": true },
|
||||
"machine_extruder_end_pos_x": { "value": "prime_tower_position_x" },
|
||||
"machine_extruder_end_pos_y": { "value": "prime_tower_position_y" },
|
||||
"extruder_prime_pos_abs": { "default_value": true }
|
||||
}
|
||||
}
|
27
resources/extruders/builder_premium_large_rear.def.json
Normal file
27
resources/extruders/builder_premium_large_rear.def.json
Normal file
|
@ -0,0 +1,27 @@
|
|||
{
|
||||
"id": "builder_premium_large_rear",
|
||||
"version": 2,
|
||||
"name": "Rear Extruder",
|
||||
"inherits": "fdmextruder",
|
||||
"metadata": {
|
||||
"machine": "builder_premium_large",
|
||||
"position": "0"
|
||||
},
|
||||
|
||||
"overrides": {
|
||||
"extruder_nr": {
|
||||
"default_value": 0,
|
||||
"maximum_value": "1"
|
||||
},
|
||||
"machine_nozzle_offset_x": { "default_value": 0.0 },
|
||||
"machine_nozzle_offset_y": { "default_value": 0.0 },
|
||||
|
||||
"machine_extruder_start_pos_abs": { "default_value": true },
|
||||
"machine_extruder_start_pos_x": { "value": "prime_tower_position_x" },
|
||||
"machine_extruder_start_pos_y": { "value": "prime_tower_position_y" },
|
||||
"machine_extruder_end_pos_abs": { "default_value": true },
|
||||
"machine_extruder_end_pos_x": { "value": "prime_tower_position_x" },
|
||||
"machine_extruder_end_pos_y": { "value": "prime_tower_position_y" },
|
||||
"extruder_prime_pos_abs": { "default_value": true }
|
||||
}
|
||||
}
|
27
resources/extruders/builder_premium_medium_front.def.json
Normal file
27
resources/extruders/builder_premium_medium_front.def.json
Normal file
|
@ -0,0 +1,27 @@
|
|||
{
|
||||
"id": "builder_premium_medium_front",
|
||||
"version": 2,
|
||||
"name": "Front Extruder",
|
||||
"inherits": "fdmextruder",
|
||||
"metadata": {
|
||||
"machine": "builder_premium_medium",
|
||||
"position": "1"
|
||||
},
|
||||
|
||||
"overrides": {
|
||||
"extruder_nr": {
|
||||
"default_value": 1,
|
||||
"maximum_value": "1"
|
||||
},
|
||||
"machine_nozzle_offset_x": { "default_value": 0.0 },
|
||||
"machine_nozzle_offset_y": { "default_value": 0.0 },
|
||||
|
||||
"machine_extruder_start_pos_abs": { "default_value": true },
|
||||
"machine_extruder_start_pos_x": { "value": "prime_tower_position_x" },
|
||||
"machine_extruder_start_pos_y": { "value": "prime_tower_position_y" },
|
||||
"machine_extruder_end_pos_abs": { "default_value": true },
|
||||
"machine_extruder_end_pos_x": { "value": "prime_tower_position_x" },
|
||||
"machine_extruder_end_pos_y": { "value": "prime_tower_position_y" },
|
||||
"extruder_prime_pos_abs": { "default_value": true }
|
||||
}
|
||||
}
|
27
resources/extruders/builder_premium_medium_rear.def.json
Normal file
27
resources/extruders/builder_premium_medium_rear.def.json
Normal file
|
@ -0,0 +1,27 @@
|
|||
{
|
||||
"id": "builder_premium_medium_rear",
|
||||
"version": 2,
|
||||
"name": "Rear Extruder",
|
||||
"inherits": "fdmextruder",
|
||||
"metadata": {
|
||||
"machine": "builder_premium_medium",
|
||||
"position": "0"
|
||||
},
|
||||
|
||||
"overrides": {
|
||||
"extruder_nr": {
|
||||
"default_value": 0,
|
||||
"maximum_value": "1"
|
||||
},
|
||||
"machine_nozzle_offset_x": { "default_value": 0.0 },
|
||||
"machine_nozzle_offset_y": { "default_value": 0.0 },
|
||||
|
||||
"machine_extruder_start_pos_abs": { "default_value": true },
|
||||
"machine_extruder_start_pos_x": { "value": "prime_tower_position_x" },
|
||||
"machine_extruder_start_pos_y": { "value": "prime_tower_position_y" },
|
||||
"machine_extruder_end_pos_abs": { "default_value": true },
|
||||
"machine_extruder_end_pos_x": { "value": "prime_tower_position_x" },
|
||||
"machine_extruder_end_pos_y": { "value": "prime_tower_position_y" },
|
||||
"extruder_prime_pos_abs": { "default_value": true }
|
||||
}
|
||||
}
|
27
resources/extruders/builder_premium_small_front.def.json
Normal file
27
resources/extruders/builder_premium_small_front.def.json
Normal file
|
@ -0,0 +1,27 @@
|
|||
{
|
||||
"id": "builder_premium_small_front",
|
||||
"version": 2,
|
||||
"name": "Front Extruder",
|
||||
"inherits": "fdmextruder",
|
||||
"metadata": {
|
||||
"machine": "builder_premium_small",
|
||||
"position": "1"
|
||||
},
|
||||
|
||||
"overrides": {
|
||||
"extruder_nr": {
|
||||
"default_value": 1,
|
||||
"maximum_value": "1"
|
||||
},
|
||||
"machine_nozzle_offset_x": { "default_value": 0.0 },
|
||||
"machine_nozzle_offset_y": { "default_value": 0.0 },
|
||||
|
||||
"machine_extruder_start_pos_abs": { "default_value": true },
|
||||
"machine_extruder_start_pos_x": { "value": "prime_tower_position_x" },
|
||||
"machine_extruder_start_pos_y": { "value": "prime_tower_position_y" },
|
||||
"machine_extruder_end_pos_abs": { "default_value": true },
|
||||
"machine_extruder_end_pos_x": { "value": "prime_tower_position_x" },
|
||||
"machine_extruder_end_pos_y": { "value": "prime_tower_position_y" },
|
||||
"extruder_prime_pos_abs": { "default_value": true }
|
||||
}
|
||||
}
|
27
resources/extruders/builder_premium_small_rear.def.json
Normal file
27
resources/extruders/builder_premium_small_rear.def.json
Normal file
|
@ -0,0 +1,27 @@
|
|||
{
|
||||
"id": "builder_premium_small_rear",
|
||||
"version": 2,
|
||||
"name": "Rear Extruder",
|
||||
"inherits": "fdmextruder",
|
||||
"metadata": {
|
||||
"machine": "builder_premium_small",
|
||||
"position": "0"
|
||||
},
|
||||
|
||||
"overrides": {
|
||||
"extruder_nr": {
|
||||
"default_value": 0,
|
||||
"maximum_value": "1"
|
||||
},
|
||||
"machine_nozzle_offset_x": { "default_value": 0.0 },
|
||||
"machine_nozzle_offset_y": { "default_value": 0.0 },
|
||||
|
||||
"machine_extruder_start_pos_abs": { "default_value": true },
|
||||
"machine_extruder_start_pos_x": { "value": "prime_tower_position_x" },
|
||||
"machine_extruder_start_pos_y": { "value": "prime_tower_position_y" },
|
||||
"machine_extruder_end_pos_abs": { "default_value": true },
|
||||
"machine_extruder_end_pos_x": { "value": "prime_tower_position_x" },
|
||||
"machine_extruder_end_pos_y": { "value": "prime_tower_position_y" },
|
||||
"extruder_prime_pos_abs": { "default_value": true }
|
||||
}
|
||||
}
|
BIN
resources/meshes/builder_premium_platform.stl
Normal file
BIN
resources/meshes/builder_premium_platform.stl
Normal file
Binary file not shown.
|
@ -0,0 +1,24 @@
|
|||
[general]
|
||||
version = 2
|
||||
name = Coarse
|
||||
definition = builder_premium_small
|
||||
|
||||
[metadata]
|
||||
type = quality
|
||||
quality_type = coarse
|
||||
material = generic_pla_175
|
||||
setting_version = 3
|
||||
weight = -1
|
||||
|
||||
[values]
|
||||
material_print_temperature = =default_material_print_temperature + 15
|
||||
material_standby_temperature = =material_print_temperature
|
||||
material_initial_print_temperature= =material_print_temperature
|
||||
material_final_print_temperature= =material_print_temperature
|
||||
material_bed_temperature = 45
|
||||
material_bed_temperature_layer_0= =material_bed_temperature
|
||||
layer_height = 0.3
|
||||
top_thickness = =layer_height * 5
|
||||
bottom_thickness = =layer_height * 3
|
||||
speed_print = 60
|
||||
|
|
@ -0,0 +1,25 @@
|
|||
[general]
|
||||
version = 2
|
||||
name = High Quality
|
||||
definition = builder_premium_small
|
||||
|
||||
[metadata]
|
||||
type = quality
|
||||
quality_type = high
|
||||
material = generic_pla_175
|
||||
setting_version = 3
|
||||
weight = 1
|
||||
|
||||
[values]
|
||||
acceleration_print = 2000
|
||||
material_print_temperature = =default_material_print_temperature + 15
|
||||
material_standby_temperature = =material_print_temperature
|
||||
material_initial_print_temperature= =material_print_temperature
|
||||
material_final_print_temperature= =material_print_temperature
|
||||
material_bed_temperature = 45
|
||||
material_bed_temperature_layer_0= =material_bed_temperature
|
||||
layer_height = 0.1
|
||||
top_thickness = =layer_height * 7
|
||||
bottom_thickness = =layer_height * 5
|
||||
speed_print = 40
|
||||
layer_height_0 = 0.2
|
|
@ -0,0 +1,23 @@
|
|||
[general]
|
||||
version = 2
|
||||
name = Normal
|
||||
definition = builder_premium_small
|
||||
|
||||
[metadata]
|
||||
type = quality
|
||||
quality_type = normal
|
||||
material = generic_pla_175
|
||||
setting_version = 3
|
||||
weight = 0
|
||||
|
||||
[values]
|
||||
material_print_temperature = =default_material_print_temperature + 15
|
||||
material_standby_temperature = =material_print_temperature
|
||||
material_initial_print_temperature= =material_print_temperature
|
||||
material_final_print_temperature= =material_print_temperature
|
||||
material_bed_temperature = 45
|
||||
material_bed_temperature_layer_0= =material_bed_temperature
|
||||
layer_height = 0.2
|
||||
top_thickness = =layer_height * 5
|
||||
bottom_thickness = =layer_height * 3
|
||||
speed_print = 50
|
Loading…
Add table
Add a link
Reference in a new issue