# Print profiles for HartSmart Products printers.

[vendor]
repo_id = non-prusa-fff
# Vendor name will be shown by the Config Wizard.
name = HartSmart Products
# Configuration version of this file. Config file will only be installed, if the config_version differs.
# This means, the server may force the PrusaSlicer configuration to be downgraded.
config_version = 1.2.1
config_update_url = https://files.prusa3d.com/wp-content/uploads/repository/PrusaSlicer-settings-master/live/HartSmartProducts/

# The printer models will be shown by the Configuration Wizard in this order,
# also the first model installed & the first nozzle installed will be activated after install.
# Printer model name will be shown by the installation wizard.

[printer_model:HSP1-I]
name = HSP1-I
variants = 0.6; 0.4; 0.8; 1.0
technology = FFF
family = HSP1
bed_model = hsp1_i_bed.stl
bed_texture = hsp1_i.svg
default_materials = Layer Line Engineering PLA @HSP1; Push Plastic PETG @HSP1; Push Plastic PLA @HSP1;

[printer_model:HSP1-I Duplicator Mode]
name = HSP1-I Duplicator Mode
variants = 0.6; 0.4; 0.8; 1.0
technology = FFF
family = HSP1
bed_model = hsp1_i_duplicator_bed.stl
bed_texture = hsp1_i_duplicator.svg
default_materials = Layer Line Engineering PLA @HSP1; Push Plastic PETG @HSP1; Push Plastic PLA @HSP1;

# All presets starting with asterisk, for example *common*, are intermediate and they will
# not make it into the user interface.

#################### Common print presets ####################
[print:*common*]
# Layers and Perimeters
perimeters = 2
spiral_vase = 0

top_solid_layers = 4
bottom_solid_layers = 4
top_solid_min_thickness = 0.9
bottom_solid_min_thickness = 0.6

extra_perimeters = 1
extra_perimeters_on_overhangs = 0
avoid_crossing_curled_overhangs = 1
avoid_crossing_perimeters = 0
thin_walls = 0
thick_bridges = 0
overhangs = 1

seam_position = aligned
staggered_inner_seams = 0
external_perimeters_first = 0
gap_fill_enabled = 0
perimeter_generator = arachne

fuzzy_skin = none
fuzzy_skin_thickness = 0.3
fuzzy_skin_point_dist = 0.8

# Infill
fill_density = 20%
fill_pattern = cubic
infill_anchor = 600%
infill_anchor_max = 20
top_fill_pattern = monotoniclines
bottom_fill_pattern = monotonic

ironing = 0
ironing_type = top
ironing_flowrate = 15%
ironing_spacing = 0.1

infill_every_layers = 1

solid_infill_every_layers = 0
fill_angle = 45
solid_infill_below_area = 10
bridge_angle = 0
only_retract_when_crossing_perimeters = 0
infill_first = 0

# Skirt and Brim
skirts = 2
skirt_distance = 3
skirt_height = 1
draft_shield = disabled
min_skirt_length = 0

brim_width = 0
brim_separation = 0.1

# Support Material
support_material = 0
support_material_auto = 1
support_material_threshold = 50
support_material_enforce_layers = 0
raft_first_layer_density = 80%
raft_first_layer_expansion = 3

raft_layers = 0
raft_expansion = 1.5

support_material_style = grid
support_material_contact_distance = 0.22
support_material_bottom_contact_distance = 0
support_material_pattern = rectilinear
support_material_with_sheath = 0
support_material_spacing = 4
support_material_angle = 0
support_material_closing_radius = 2
support_material_interface_layers = 2
support_material_bottom_interface_layers = 0
support_material_interface_pattern = rectilinear
support_material_interface_spacing = 0.3
support_material_interface_contact_loops = 0
support_material_buildplate_only = 0
support_material_xy_spacing = 80%
dont_support_bridges = 0
support_material_synchronize_layers = 0

support_tree_angle = 40
support_tree_angle_slow = 30
support_tree_branch_diameter = 2
support_tree_branch_diameter_angle = 3
support_tree_branch_diameter_double_wall = 0
support_tree_tip_diameter = 0.6
support_tree_branch_distance = 1
support_tree_top_rate = 30%

# Speed
perimeter_speed = 80
small_perimeter_speed = 40
external_perimeter_speed = 40
infill_speed = 300
solid_infill_speed = 100
top_solid_infill_speed = 50
support_material_speed = 80
support_material_interface_speed = 40
gap_fill_speed = 0
ironing_speed = 15

enable_dynamic_overhang_speeds = 0
overhang_speed_0 = 15
overhang_speed_1 = 15
overhang_speed_2 = 20
overhang_speed_3 = 25

travel_speed = 400
travel_speed_z = 7.5

first_layer_speed = 30
first_layer_speed_over_raft = 30

external_perimeter_acceleration = 500
perimeter_acceleration = 1000
top_solid_infill_acceleration = 2000
solid_infill_acceleration = 5000
infill_acceleration = 5000
bridge_acceleration = 4000
first_layer_acceleration = 1000
first_layer_acceleration_over_raft = 1000
travel_acceleration = 5000
default_acceleration = 4000

max_print_speed = 300
max_volumetric_speed = 0

max_volumetric_extrusion_rate_slope_negative = 0
max_volumetric_extrusion_rate_slope_positive = 0

# Multiple Extruders
perimeter_extruder = 1
infill_extruder = 1
solid_infill_extruder = 1
support_material_extruder = 0
support_material_interface_extruder = 0

ooze_prevention = 0
standby_temperature_delta = -5

single_extruder_multi_material_priming = 0

interface_shells = 0
mmu_segmented_region_max_width = 0

# Advanced
extrusion_width = 0
first_layer_extrusion_width = 0
perimeter_extrusion_width = 0
external_perimeter_extrusion_width = 0
infill_extrusion_width = 0
solid_infill_extrusion_width = 0
top_infill_extrusion_width = 0
support_material_extrusion_width = 0

infill_overlap = 15%

bridge_flow_ratio = 1

slice_closing_radius = 0.049
slicing_mode = regular
resolution = 0
gcode_resolution = 0.0125
xy_size_compensation = 0
elefant_foot_compensation = 0.2

wall_transition_angle = 10
wall_transition_filter_deviation = 25%
wall_transition_length = 100%
wall_distribution_count = 1
min_bead_width = 85%
min_feature_size = 25%

# Output Options
complete_objects = 0

gcode_comments = 0
gcode_label_objects = 1
output_filename_format = {input_filename_base}_{nozzle_diameter[0]}n_{filament_type[0]}_{print_time}.gcode

threads = 12

[print:*dual*]
gcode_substitutions = "M220 S100";;;"Remove feedrate override resets";"G10 S(\\d+) P(\\d+)";"M568 P${2} S${1}";r;"RRF now uses M568 instead of G10";"M140 S(\\d+) ; (.+)";;r;"Fix incorrect 2nd layer bed temp"

[print:*duplicator*]
gcode_substitutions = "M220 S100";;;"Remove feedrate override resets";"G10 S(\\d+) P(\\d+)";"M568 P2 S${1}";r;"RRF now uses M568 instead of G10"

##################### Nozzle size presets ####################
[print:*0.6n*]
extrusion_width = 0.65
perimeter_extrusion_width = 0.65
external_perimeter_extrusion_width = 0.65
infill_extrusion_width = 0.65
solid_infill_extrusion_width = 0.65
top_infill_extrusion_width = 0.6
perimeter_speed = 80
small_perimeter_speed = 40
external_perimeter_speed = 40
infill_speed = 300
solid_infill_speed = 100
top_solid_infill_speed = 50
bridge_speed = 30
first_layer_speed = 30
first_layer_speed_over_raft = 30

[print:*0.4n*]
extrusion_width = 0.45
perimeter_extrusion_width = 0.45
external_perimeter_extrusion_width = 0.45
infill_extrusion_width = 0.45
solid_infill_extrusion_width = 0.45
top_infill_extrusion_width = 0.4
perimeter_speed = 80
small_perimeter_speed = 40
external_perimeter_speed = 40
infill_speed = 300
solid_infill_speed = 100
top_solid_infill_speed = 50
bridge_speed = 30
first_layer_speed = 30
first_layer_speed_over_raft = 30

[print:*0.8n*]
extrusion_width = 0.87
perimeter_extrusion_width = 0.87
external_perimeter_extrusion_width = 0.87
infill_extrusion_width = 0.87
solid_infill_extrusion_width = 0.87
top_infill_extrusion_width = 0.8
perimeter_speed = 60
small_perimeter_speed = 30
external_perimeter_speed = 30
infill_speed = 300
solid_infill_speed = 70
top_solid_infill_speed = 30
bridge_speed = 30
first_layer_speed = 20
first_layer_speed_over_raft = 20

[print:*1.0n*]
extrusion_width = 1.09
perimeter_extrusion_width = 1.09
external_perimeter_extrusion_width = 1.09
infill_extrusion_width = 1.09
solid_infill_extrusion_width = 1.09
top_infill_extrusion_width = 1.0
perimeter_speed = 60
small_perimeter_speed = 30
external_perimeter_speed = 30
infill_speed = 300
solid_infill_speed = 70
top_solid_infill_speed = 30
bridge_speed = 30
first_layer_speed = 20
first_layer_speed_over_raft = 20

################# Nozzle size Support presets ################
[print:*0.6n Support*]
first_layer_extrusion_width = 0.65
support_material_extrusion_width = 0.57
support_material_spacing = 3
support_material_interface_spacing = 0.3
raft_contact_distance = 0.25
support_material_contact_distance = 0.25
support_material_speed = 80
support_material_interface_speed = 40
support_tree_angle = 40
support_tree_angle_slow = 30
support_tree_branch_diameter = 3
support_tree_branch_diameter_angle = 5
support_tree_branch_diameter_double_wall = 4.5
support_tree_branch_distance = 1
support_tree_tip_diameter = 1.8
support_tree_top_rate = 30%

[print:*0.4n Support*]
first_layer_extrusion_width = 0.45
support_material_extrusion_width = 0.42
support_material_spacing = 2
support_material_interface_spacing = 0.2
raft_contact_distance = 0.20
support_material_contact_distance = 0.20
support_material_speed = 80
support_material_interface_speed = 40
support_tree_angle = 40
support_tree_angle_slow = 30
support_tree_branch_diameter = 2
support_tree_branch_diameter_angle = 5
support_tree_branch_diameter_double_wall = 3
support_tree_branch_distance = 1
support_tree_tip_diameter = 1.2
support_tree_top_rate = 30%

[print:*0.8n Support*]
first_layer_extrusion_width = 0.87
support_material_extrusion_width = 0.76
support_material_spacing = 4
support_material_interface_spacing = 0.4
raft_contact_distance = 0.30
support_material_contact_distance = 0.3
support_material_speed = 60
support_material_interface_speed = 30
support_tree_angle = 40
support_tree_angle_slow = 30
support_tree_branch_diameter = 4
support_tree_branch_diameter_angle = 5
support_tree_branch_diameter_double_wall = 6
support_tree_branch_distance = 1
support_tree_tip_diameter = 2.4
support_tree_top_rate = 30%

[print:*1.0n Support*]
first_layer_extrusion_width = 1.09
support_material_extrusion_width = 0.95
support_material_spacing = 5
support_material_interface_spacing = 0.5
raft_contact_distance = 0.35
support_material_contact_distance = 0.35
support_material_speed = 60
support_material_interface_speed = 30
support_tree_angle = 40
support_tree_angle_slow = 30
support_tree_branch_diameter = 5
support_tree_branch_diameter_angle = 5
support_tree_branch_diameter_double_wall = 7.5
support_tree_branch_distance = 1
support_tree_tip_diameter = 3.0
support_tree_top_rate = 30%

####################### Support presets ######################
[print:*Soluble*]
support_material_contact_distance = 0
support_material_interface_layers = 5
support_material_bottom_interface_layers = -1
support_material_interface_spacing = 0
support_material_style = snug
support_material = 1
support_material_interface_speed = 20
notes = SOLUBLE_SUPPORT

[print:*Soluble Interface*]
inherits = *Soluble*
support_material_pattern = rectilinear-grid
support_material_extruder = 1
support_material_interface_extruder = 2

[print:*Soluble Support*]
inherits = *Soluble*
support_material_pattern = honeycomb
support_material_extruder = 2
support_material_interface_extruder = 2
support_material_with_sheath = 1

#################### Layer height presets ####################
[print:*100 Micron*]
inherits = *common*
first_layer_height = 0.10
layer_height = 0.10

[print:*150 Micron*]
inherits = *common*
first_layer_height = 0.15
layer_height = 0.15

[print:*200 Micron*]
inherits = *common*
first_layer_height = 0.20
layer_height = 0.20

[print:*250 Micron*]
inherits = *common*
first_layer_height = 0.25
layer_height = 0.25

[print:*300 Micron*]
inherits = *common*
first_layer_height = 0.30
layer_height = 0.30

[print:*350 Micron*]
inherits = *common*
first_layer_height = 0.35
layer_height = 0.35

[print:*400 Micron*]
inherits = *common*
first_layer_height = 0.40
layer_height = 0.40

[print:*500 Micron*]
inherits = *common*
first_layer_height = 0.50
layer_height = 0.50

[print:*600 Micron*]
inherits = *common*
first_layer_height = 0.60
layer_height = 0.60

[print:*700 Micron*]
inherits = *common*
first_layer_height = 0.70
layer_height = 0.70

##################### 0.6mm Dual Presets #####################
[print:*0.6 dual*]
inherits = *dual*; *0.6n*; *0.6n Support*
compatible_printers_condition = printer_model=="HSP1-I" and printer_notes!~/.*DUPLICATOR_MODE.*/ and nozzle_diameter[0]==0.6 and nozzle_diameter[1]==0.6

[print:*0.6 dual soluble*]
inherits = *0.6 dual*
support_material_extrusion_width = 0.60

[print:200 Micron Detail @HSP1]
inherits = *200 Micron*; *0.6 dual*

[print:300 Micron Standard @HSP1]
inherits = *300 Micron*; *0.6 dual*

[print:400 Micron Fast @HSP1]
inherits = *400 Micron*; *0.6 dual*
perimeter_extrusion_width = 0.68
external_perimeter_extrusion_width = 0.68
infill_extrusion_width = 0.68
solid_infill_extrusion_width = 0.68

[print:200 Micron Soluble Interface Detail @HSP1]
inherits = *200 Micron*; *0.6 dual soluble*; *Soluble Interface*

[print:300 Micron Soluble Interface Standard @HSP1]
inherits = *300 Micron*; *0.6 dual soluble*; *Soluble Interface*

[print:400 Micron Soluble Interface Fast @HSP1]
inherits = *400 Micron*; *0.6 dual soluble*; *Soluble Interface*
perimeter_extrusion_width = 0.68
external_perimeter_extrusion_width = 0.68
infill_extrusion_width = 0.68
solid_infill_extrusion_width = 0.68

[print:200 Micron Soluble Support Detail @HSP1]
inherits = *200 Micron*; *0.6 dual soluble*; *Soluble Support*

[print:300 Micron Soluble Support Standard @HSP1]
inherits = *300 Micron*; *0.6 dual soluble*; *Soluble Support*

[print:400 Micron Soluble Support Fast @HSP1]
inherits = *400 Micron*; *0.6 dual soluble*; *Soluble Support*
perimeter_extrusion_width = 0.68
external_perimeter_extrusion_width = 0.68
infill_extrusion_width = 0.68
solid_infill_extrusion_width = 0.68

##################### 0.4mm Dual Presets #####################
[print:*0.4 dual*]
inherits = *dual*; *0.4n*; *0.4n Support*
compatible_printers_condition = printer_model=="HSP1-I" and printer_notes!~/.*DUPLICATOR_MODE.*/ and nozzle_diameter[0]==0.4 and nozzle_diameter[1]==0.4

[print:*0.4 dual soluble*]
inherits = *0.4 dual*
support_material_extrusion_width = 0.40

[print:100 Micron Detail @HSP1]
inherits = *100 Micron*; *0.4 dual*

[print:200 Micron Standard @HSP1]
inherits = *200 Micron*; *0.4 dual*

[print:300 Micron Fast @HSP1]
inherits = *300 Micron*; *0.4 dual*
perimeter_extrusion_width = 0.47
external_perimeter_extrusion_width = 0.47
infill_extrusion_width = 0.47
solid_infill_extrusion_width = 0.47

[print:100 Micron Soluble Interface Detail @HSP1]
inherits = *100 Micron*; *0.4 dual soluble*; *Soluble Interface*

[print:200 Micron Soluble Interface Standard @HSP1]
inherits = *200 Micron*; *0.4 dual soluble*; *Soluble Interface*

[print:300 Micron Soluble Interface Fast @HSP1]
inherits = *300 Micron*; *0.4 dual soluble*; *Soluble Interface*
perimeter_extrusion_width = 0.47
external_perimeter_extrusion_width = 0.47
infill_extrusion_width = 0.47
solid_infill_extrusion_width = 0.47

[print:100 Micron Soluble Support Detail @HSP1]
inherits = *100 Micron*; *0.4 dual soluble*; *Soluble Support*

[print:200 Micron Soluble Support Standard @HSP1]
inherits = *200 Micron*; *0.4 dual soluble*; *Soluble Support*

[print:300 Micron Soluble Support Fast @HSP1]
inherits = *300 Micron*; *0.4 dual soluble*; *Soluble Support*
perimeter_extrusion_width = 0.47
external_perimeter_extrusion_width = 0.47
infill_extrusion_width = 0.47
solid_infill_extrusion_width = 0.47

##################### 0.8mm Dual Presets #####################
[print:*0.8 dual*]
inherits = *dual*; *0.8n*; *0.8n Support*
compatible_printers_condition = printer_model=="HSP1-I" and printer_notes!~/.*DUPLICATOR_MODE.*/ and nozzle_diameter[0]==0.8 and nozzle_diameter[1]==0.8

[print:*0.8 dual soluble*]
inherits = *0.8 dual*
support_material_extrusion_width = 0.80

[print:300 Micron Detail @HSP1]
inherits = *300 Micron*; *0.8 dual*

[print:400 Micron Standard @HSP1]
inherits = *400 Micron*; *0.8 dual*

[print:600 Micron Fast @HSP1]
inherits = *600 Micron*; *0.8 dual*
perimeter_extrusion_width = 0.90
external_perimeter_extrusion_width = 0.90
infill_extrusion_width = 0.90
solid_infill_extrusion_width = 0.90

[print:300 Micron Soluble Interface Detail @HSP1]
inherits = *300 Micron*; *0.8 dual soluble*; *Soluble Interface*

[print:400 Micron Soluble Interface Standard @HSP1]
inherits = *400 Micron*; *0.8 dual soluble*; *Soluble Interface*

[print:600 Micron Soluble Interface Fast @HSP1]
inherits = *600 Micron*; *0.8 dual soluble*; *Soluble Interface*
perimeter_extrusion_width = 0.90
external_perimeter_extrusion_width = 0.90
infill_extrusion_width = 0.90
solid_infill_extrusion_width = 0.90

[print:300 Micron Soluble Support Detail @HSP1]
inherits = *300 Micron*; *0.8 dual soluble*; *Soluble Support*

[print:400 Micron Soluble Support Standard @HSP1]
inherits = *400 Micron*; *0.8 dual soluble*; *Soluble Support*

[print:600 Micron Soluble Support Fast @HSP1]
inherits = *600 Micron*; *0.8 dual soluble*; *Soluble Support*
perimeter_extrusion_width = 0.90
external_perimeter_extrusion_width = 0.90
infill_extrusion_width = 0.90
solid_infill_extrusion_width = 0.90

##################### 1.0mm Dual Presets #####################
[print:*1.0 dual*]
inherits = *dual*; *1.0n*; *1.0n Support*
compatible_printers_condition = printer_model=="HSP1-I" and printer_notes!~/.*DUPLICATOR_MODE.*/ and nozzle_diameter[0]==1.0 and nozzle_diameter[1]==1.0

[print:*1.0 dual soluble*]
inherits = *1.0 dual*
support_material_extrusion_width = 1.00

[print:350 Micron Detail @HSP1]
inherits = *350 Micron*; *1.0 dual*

[print:500 Micron Standard @HSP1]
inherits = *500 Micron*; *1.0 dual*

[print:700 Micron Fast @HSP1]
inherits = *700 Micron*; *1.0 dual*
perimeter_extrusion_width = 1.12
external_perimeter_extrusion_width = 1.12
infill_extrusion_width = 1.12
solid_infill_extrusion_width = 1.12

[print:350 Micron Soluble Interface Detail @HSP1]
inherits = *350 Micron*; *1.0 dual soluble*; *Soluble Interface*

[print:500 Micron Soluble Interface Standard @HSP1]
inherits = *500 Micron*; *1.0 dual soluble*; *Soluble Interface*

[print:700 Micron Soluble Interface Fast @HSP1]
inherits = *700 Micron*; *1.0 dual soluble*; *Soluble Interface*
perimeter_extrusion_width = 1.12
external_perimeter_extrusion_width = 1.12
infill_extrusion_width = 1.12
solid_infill_extrusion_width = 1.12

[print:350 Micron Soluble Support Detail @HSP1]
inherits = *350 Micron*; *1.0 dual soluble*; *Soluble Support*

[print:500 Micron Soluble Support Standard @HSP1]
inherits = *500 Micron*; *1.0 dual soluble*; *Soluble Support*

[print:700 Micron Soluble Support Fast @HSP1]
inherits = *700 Micron*; *1.0 dual soluble*; *Soluble Support*
perimeter_extrusion_width = 1.12
external_perimeter_extrusion_width = 1.12
infill_extrusion_width = 1.12
solid_infill_extrusion_width = 1.12

################## 0.6mm Duplicator Presets ##################
[print:*0.6 duplicator*]
inherits = *duplicator*; *0.6n*; *0.6n Support*
compatible_printers_condition = printer_model=="HSP1-I Duplicator Mode" and printer_notes=~/.*DUPLICATOR_MODE.*/ and nozzle_diameter[0]==0.6

[print:200 Micron Detail Duplicator @HSP1]
inherits = *200 Micron*; *0.6 duplicator*

[print:300 Micron Standard Duplicator @HSP1]
inherits = *300 Micron*; *0.6 duplicator*

[print:400 Micron Fast Duplicator @HSP1]
inherits = *400 Micron*; *0.6 duplicator*
perimeter_extrusion_width = 0.68
external_perimeter_extrusion_width = 0.68
infill_extrusion_width = 0.68
solid_infill_extrusion_width = 0.68

##################### 0.4mm Duplicator Presets #####################
[print:*0.4 duplicator*]
inherits = *duplicator*; *0.4n*; *0.4n Support*
compatible_printers_condition = printer_model=="HSP1-I Duplicator Mode" and printer_notes=~/.*DUPLICATOR_MODE.*/ and nozzle_diameter[0]==0.4

[print:100 Micron Detail Duplicator @HSP1]
inherits = *100 Micron*; *0.4 duplicator*

[print:200 Micron Standard Duplicator @HSP1]
inherits = *200 Micron*; *0.4 duplicator*

[print:300 Micron Fast Duplicator @HSP1]
inherits = *300 Micron*; *0.4 duplicator*
perimeter_extrusion_width = 0.47
external_perimeter_extrusion_width = 0.47
infill_extrusion_width = 0.47
solid_infill_extrusion_width = 0.47

################## 0.8mm Duplicator Presets ##################
[print:*0.8 duplicator*]
inherits = *duplicator*; *0.8n*; *0.8n Support*
compatible_printers_condition = printer_model=="HSP1-I Duplicator Mode" and printer_notes=~/.*DUPLICATOR_MODE.*/ and nozzle_diameter[0]==0.8

[print:300 Micron Detail Duplicator @HSP1]
inherits = *300 Micron*; *0.8 duplicator*

[print:400 Micron Standard Duplicator @HSP1]
inherits = *400 Micron*; *0.8 duplicator*

[print:600 Micron Fast Duplicator @HSP1]
inherits = *600 Micron*; *0.8 duplicator*
perimeter_extrusion_width = 0.90
external_perimeter_extrusion_width = 0.90
infill_extrusion_width = 0.90
solid_infill_extrusion_width = 0.90

################## 1.0mm Duplicator Presets ##################
[print:*1.0 duplicator*]
inherits = *duplicator*; *1.0n*; *1.0n Support*
compatible_printers_condition = printer_model=="HSP1-I Duplicator Mode" and printer_notes=~/.*DUPLICATOR_MODE.*/ and nozzle_diameter[0]==1.0

[print:350 Micron Detail Duplicator @HSP1]
inherits = *350 Micron*; *1.0 duplicator*

[print:500 Micron Standard Duplicator @HSP1]
inherits = *500 Micron*; *1.0 duplicator*

[print:700 Micron Fast Duplicator @HSP1]
inherits = *700 Micron*; *1.0 duplicator*
perimeter_extrusion_width = 1.12
external_perimeter_extrusion_width = 1.12
infill_extrusion_width = 1.12
solid_infill_extrusion_width = 1.12

################### Common filament preset ###################
[filament:*common*]
cooling = 0
compatible_printers =
filament_cost = 0
filament_density = 0
filament_diameter = 1.75
filament_notes = ""
filament_settings_id = ""
filament_soluble = 0
min_print_speed = 15
slowdown_below_layer_time = 10
compatible_printers_condition = printer_notes=~/.*PRINTER_VENDOR_HSP.*/

################### Materials base presets ###################
[filament:*PLA*]
inherits = *common*
filament_type = PLA
temperature = 205
bed_temperature = 60
first_layer_temperature = 195
first_layer_bed_temperature = 60
idle_temperature = 140
filament_max_volumetric_speed = 15
extrusion_multiplier = 0.94
filament_density = 1.24
filament_cost = 20
filament_colour = #FF3232
fan_always_on = 1
cooling = 1
min_fan_speed = 70
max_fan_speed = 70
bridge_fan_speed = 70
disable_fan_first_layers = 2
full_fan_speed_layers = 6
fan_below_layer_time = 60

[filament:*PETG*]
inherits = *common*
filament_type = PETG
temperature = 245
bed_temperature = 80
first_layer_temperature = 240
first_layer_bed_temperature = 80
idle_temperature = 160
filament_max_volumetric_speed = 12
extrusion_multiplier = 0.94
filament_density = 1.27
filament_cost = 30
filament_colour = #FF8000
fan_always_on = 1
cooling = 1
min_fan_speed = 70
max_fan_speed = 70
bridge_fan_speed = 70
disable_fan_first_layers = 3
full_fan_speed_layers = 7
fan_below_layer_time = 20

[filament:*PCTG*]
inherits = *common*
filament_type = PCTG
temperature = 255
bed_temperature = 80
first_layer_temperature = 250
first_layer_bed_temperature = 80
idle_temperature = 190
filament_max_volumetric_speed = 12
extrusion_multiplier = 0.94
filament_density = 1.21
filament_cost = 40
filament_colour = #FF8000
fan_always_on = 1
cooling = 1
min_fan_speed = 70
max_fan_speed = 70
bridge_fan_speed = 70
disable_fan_first_layers = 3
full_fan_speed_layers = 7
fan_below_layer_time = 20

[filament:*PET*]
inherits = *common*
filament_type = PETG
temperature = 275
bed_temperature = 80
first_layer_temperature = 270
first_layer_bed_temperature = 80
idle_temperature = 180
filament_max_volumetric_speed = 15
extrusion_multiplier = 0.96
filament_density = 1.27
filament_cost = 30
filament_colour = #FF8000
fan_always_on = 1
cooling = 1
min_fan_speed = 70  
max_fan_speed = 80
bridge_fan_speed = 80
disable_fan_first_layers = 3
full_fan_speed_layers = 7
fan_below_layer_time = 20

[filament:*ABS*]
inherits = *common*
filament_type = ABS
temperature = 250
bed_temperature = 100
first_layer_temperature = 245
first_layer_bed_temperature = 100
idle_temperature = 170
filament_max_volumetric_speed = 15
extrusion_multiplier = 0.92
filament_density = 1.04
filament_cost = 20
filament_colour = #3A80CA
fan_always_on = 1
cooling = 1
min_fan_speed = 15
max_fan_speed = 15
bridge_fan_speed = 15
disable_fan_first_layers = 3
full_fan_speed_layers = 7
fan_below_layer_time = 20

[filament:*ASA*]
inherits = *common*
filament_type = ASA
temperature = 255
bed_temperature = 100
first_layer_temperature = 250
first_layer_bed_temperature = 100
idle_temperature = 170
filament_max_volumetric_speed = 15
extrusion_multiplier = 0.92
filament_density = 1.06
filament_cost = 40
filament_colour = #3A08AC
fan_always_on = 1
cooling = 1
min_fan_speed = 15
max_fan_speed = 15
bridge_fan_speed = 15
disable_fan_first_layers = 3
full_fan_speed_layers = 7
fan_below_layer_time = 20

[filament:*Nylon*]
inherits = *common*
filament_type = NYLON
temperature = 255
bed_temperature = 70
first_layer_temperature = 250
first_layer_bed_temperature = 70
idle_temperature = 170
filament_max_volumetric_speed = 12
extrusion_multiplier = 0.94
filament_density = 1.06
filament_cost = 40
filament_colour = #3A08AC
fan_always_on = 1
cooling = 1
min_fan_speed = 10
max_fan_speed = 15
bridge_fan_speed = 15
disable_fan_first_layers = 3
full_fan_speed_layers = 7
fan_below_layer_time = 20

[filament:*PC*]
inherits = *common*
filament_type = PC
temperature = 270
bed_temperature = 100
first_layer_temperature = 265
first_layer_bed_temperature = 100
idle_temperature = 180
filament_max_volumetric_speed = 12
extrusion_multiplier = 0.94
filament_density = 1.19
filament_cost = 50
filament_colour = #3A08AC
fan_always_on = 1
cooling = 1
min_fan_speed = 10
max_fan_speed = 10
bridge_fan_speed = 10
disable_fan_first_layers = 3
full_fan_speed_layers = 7
fan_below_layer_time = 20

[filament:*FLEX*]
inherits = *common*
filament_type = FLEX
temperature = 230
bed_temperature = 50
first_layer_temperature = 230
first_layer_bed_temperature = 50
idle_temperature = 170
filament_max_volumetric_speed = 5
extrusion_multiplier = 1.10
filament_density = 1.16
filament_cost = 50
filament_colour = #ac5708
fan_always_on = 1
cooling = 1
min_fan_speed = 40
max_fan_speed = 40
bridge_fan_speed = 40
disable_fan_first_layers = 3
full_fan_speed_layers = 7
fan_below_layer_time = 20

[filament:*BVOH*]
inherits = *common*
filament_type = BVOH
temperature = 220
bed_temperature = 60
first_layer_temperature = 215
first_layer_bed_temperature = 60
idle_temperature = 120
filament_max_volumetric_speed = 10
extrusion_multiplier = 0.90
filament_density = 1.14
filament_cost = 100
filament_colour = #FF3232
fan_always_on = 1
cooling = 1
min_fan_speed = 5
max_fan_speed = 10
bridge_fan_speed = 10
disable_fan_first_layers = 4
fan_below_layer_time = 30
filament_soluble = 1
compatible_prints_condition = notes=~/.*SOLUBLE_SUPPORT.*/

[filament:*PVA*]
inherits = *common*
filament_type = PVA
temperature = 220
bed_temperature = 60
first_layer_temperature = 215
first_layer_bed_temperature = 60
idle_temperature = 120
filament_max_volumetric_speed = 10
extrusion_multiplier = 0.90
filament_density = 1.24
filament_cost = 80
filament_colour = #FF3232
fan_always_on = 1
cooling = 1
min_fan_speed = 5
max_fan_speed = 10
bridge_fan_speed = 10
disable_fan_first_layers = 4
fan_below_layer_time = 30
filament_soluble = 1
compatible_prints_condition = notes=~/.*SOLUBLE_SUPPORT.*/

#################### Vendor Base Presets #####################
[filament:*Generic*]
filament_vendor = Generic

## Layer Line
[filament:*Layer Line*]
filament_vendor = HartSmart Products
filament_spool_weight = 200

[filament:*Layer Line Engineering PLA*]
inherits = *PLA*; *Layer Line*
filament_cost = 34.99
filament_density = 1.22
filament_notes = Layer Line Engineering PLA

[filament:*Layer Line DuraPET*]
inherits = *PET*; *Layer Line*
filament_cost = 29.99
filament_density = 1.29
filament_notes = Layer Line DuraPET

## Push Plastic
[filament:*Push Plastic*]
filament_vendor = Push Plastic
filament_spool_weight = 320 # 750g spools weight 350g

[filament:*Push Plastic PLA*]
inherits = *PLA*; *Push Plastic*
filament_cost = 29.99
filament_density = 1.24
filament_notes = Push Plastic PLA

[filament:*Push Plastic PETG*]
inherits = *PETG*; *Push Plastic*
filament_cost = 32.99
filament_density = 1.27
filament_notes = Push Plastic PETG

##3D Fuel
[filament:*3D Fuel*]
filament_vendor = 3D Fuel
filament_spool_weight = 320

[filament:*3D Fuel PCTG*]
inherits = *PCTG*; *3D Fuel*
filament_cost = 39.99
filament_density = 1.23

## Polymaker
[filament:*Polymaker*]
filament_vendor = Polymaker
filament_spool_weight = 140

[filament:*Polymaker PolyFlex TPU95-HF*]
inherits = *FLEX*; *Polymaker*
filament_cost = 49.99
filament_density = 1.16
idle_temperature = 170
filament_notes = Polymaker PolyFlex TPU95-HF

## Taulman
[filament:*Taulman*]
filament_vendor = Taulman
filament_spool_weight = 325

## Essentium
[filament:*Essentium*]
filament_vendor = Essentium
filament_spool_weight = 325

[filament:*Essentium HTN-CF25*]
inherits = *Nylon*; *Essentium*
filament_cost = 230.00
filament_density = 1.32
filament_notes = Essentium HTN-CF25

[filament:*Essentium Support S10*]
inherits = *PVA*; *Essentium*
filament_cost = 100.00
filament_density = 1.14
filament_notes = Essentium Support S10

## BASF
[filament:*BASF*]
filament_vendor = BASF
filament_spool_weight = 215

## Jabil
[filament:*Jabil*]
filament_vendor = Jabil
filament_spool_weight = 325

## Coex
[filament:*Coex*]
filament_vendor = Coex
filament_spool_weight = 350

################ Nozzle+Hotend Compatibility #################
[filament:*0.4 Takoto*]
compatible_printers_condition = nozzle_diameter[0]==0.4

[filament:*0.6 Takoto*]
compatible_printers_condition = nozzle_diameter[0]==0.6

[filament:*0.8 Takoto*]
compatible_printers_condition = nozzle_diameter[0]==0.8

[filament:*1.0 Takoto*]
compatible_printers_condition = nozzle_diameter[0]==1.0

################ Generic 0.6 material presets ################
[filament:Generic PLA @HSP1]
inherits = *PLA*; *Generic*
start_filament_gcode = "; Filament gcode\n{if nozzle_diameter[initial_extruder] == 0.6}{local pressure_advance = 0.026}\n{elsif nozzle_diameter[initial_extruder] == 0.4}{local pressure_advance = 0.0}\n{elsif nozzle_diameter[initial_extruder] == 0.8}{local pressure_advance = 0.0}\n{elsif nozzle_diameter[initial_extruder] == 1.0}{local pressure_advance = 0.0}\n{endif}\n{if printer_notes=~/.*DUPLICATOR_MODE.*/}\nM572 D0:1 S{pressure_advance}\n{else}\nM572 D{current_extruder} S{pressure_advance}\n{endif}"

[filament:Generic PETG @HSP1]
inherits = *PETG*; *Generic*
start_filament_gcode = "; Filament gcode\n{if nozzle_diameter[initial_extruder] == 0.6}{local pressure_advance = 0.0}\n{elsif nozzle_diameter[initial_extruder] == 0.4}{local pressure_advance = 0.0}\n{elsif nozzle_diameter[initial_extruder] == 0.8}{local pressure_advance = 0.0}\n{elsif nozzle_diameter[initial_extruder] == 1.0}{local pressure_advance = 0.0}\n{endif}\n{if printer_notes=~/.*DUPLICATOR_MODE.*/}\nM572 D0:1 S{pressure_advance}\n{else}\nM572 D{current_extruder} S{pressure_advance}\n{endif}"

[filament:Generic ABS @HSP1]
inherits = *ABS*; *Generic*
start_filament_gcode = "; Filament gcode\n{if nozzle_diameter[initial_extruder] == 0.6}{local pressure_advance = 0.0}\n{elsif nozzle_diameter[initial_extruder] == 0.4}{local pressure_advance = 0.0}\n{elsif nozzle_diameter[initial_extruder] == 0.8}{local pressure_advance = 0.0}\n{elsif nozzle_diameter[initial_extruder] == 1.0}{local pressure_advance = 0.0}\n{endif}\n{if printer_notes=~/.*DUPLICATOR_MODE.*/}\nM572 D0:1 S{pressure_advance}\n{else}\nM572 D{current_extruder} S{pressure_advance}\n{endif}"

[filament:Generic ASA @HSP1]
inherits = *ASA*; *Generic*
start_filament_gcode = "; Filament gcode\n{if nozzle_diameter[initial_extruder] == 0.6}{local pressure_advance = 0.0}\n{elsif nozzle_diameter[initial_extruder] == 0.4}{local pressure_advance = 0.0}\n{elsif nozzle_diameter[initial_extruder] == 0.8}{local pressure_advance = 0.0}\n{elsif nozzle_diameter[initial_extruder] == 1.0}{local pressure_advance = 0.0}\n{endif}\n{if printer_notes=~/.*DUPLICATOR_MODE.*/}\nM572 D0:1 S{pressure_advance}\n{else}\nM572 D{current_extruder} S{pressure_advance}\n{endif}"

################### Layer Line 0.4 presets ###################
[filament:Layer Line Engineering PLA @HSP1 0.4 Takoto]
inherits = *Layer Line Engineering PLA*; *0.4 Takoto*
temperature = 215
bed_temperature = 60
first_layer_temperature = 210
first_layer_bed_temperature = 60
filament_max_volumetric_speed = 15
min_fan_speed = 70   
max_fan_speed = 70
bridge_fan_speed = 70
start_filament_gcode = "; Filament gcode\n{local pressure_advance = 0.03}\n{if printer_notes=~/.*DUPLICATOR_MODE.*/}\nM572 D0:1 S{pressure_advance}\n{else}\nM572 D{current_extruder} S{pressure_advance}\n{endif}"

[filament:Layer Line DuraPET @HSP1 0.4 Takoto]
inherits = *Layer Line DuraPET*; *0.4 Takoto*
temperature = 285
bed_temperature = 80
first_layer_temperature = 280
first_layer_bed_temperature = 80
extrusion_multiplier = 1.00
filament_max_volumetric_speed = 12
min_fan_speed = 80  
max_fan_speed = 80
bridge_fan_speed = 80
start_filament_gcode = "; Filament gcode\n{local pressure_advance = 0.0}\n{if printer_notes=~/.*DUPLICATOR_MODE.*/}\nM572 D0:1 S{pressure_advance}\n{else}\nM572 D{current_extruder} S{pressure_advance}\n{endif}"

################### Layer Line 0.6 presets ###################
[filament:Layer Line Engineering PLA @HSP1 0.6 Takoto]
inherits = *Layer Line Engineering PLA*; *0.6 Takoto*
temperature = 215
bed_temperature = 60
first_layer_temperature = 210
first_layer_bed_temperature = 60
filament_max_volumetric_speed = 15
min_fan_speed = 80  
max_fan_speed = 80
bridge_fan_speed = 80
start_filament_gcode = "; Filament gcode\n{local pressure_advance = 0.024}\n{if printer_notes=~/.*DUPLICATOR_MODE.*/}\nM572 D0:1 S{pressure_advance}\n{else}\nM572 D{current_extruder} S{pressure_advance}\n{endif}"

[filament:Layer Line DuraPET @HSP1 0.6 Takoto]
inherits = *Layer Line DuraPET*; *0.6 Takoto*
temperature = 285
bed_temperature = 80
first_layer_temperature = 280
first_layer_bed_temperature = 80
extrusion_multiplier = 1.00
filament_max_volumetric_speed = 15
min_fan_speed = 80  
max_fan_speed = 80
bridge_fan_speed = 80
start_filament_gcode = "; Filament gcode\n{local pressure_advance = 0.012}\n{if printer_notes=~/.*DUPLICATOR_MODE.*/}\nM572 D0:1 S{pressure_advance}\n{else}\nM572 D{current_extruder} S{pressure_advance}\n{endif}"

################### Layer Line 0.8 presets ###################
[filament:Layer Line Engineering PLA @HSP1 0.8 Takoto]
inherits = *Layer Line Engineering PLA*; *0.8 Takoto*
temperature = 215
bed_temperature = 60
first_layer_temperature = 210
first_layer_bed_temperature = 60
filament_max_volumetric_speed = 15
fan_always_on = 1
cooling = 1
min_fan_speed = 15
max_fan_speed = 40
bridge_fan_speed = 40
disable_fan_first_layers = 1
fan_below_layer_time = 60
start_filament_gcode = "; Filament gcode\n{local pressure_advance = 0.0}\n{if printer_notes=~/.*DUPLICATOR_MODE.*/}\nM572 D0:1 S{pressure_advance}\n{else}\nM572 D{current_extruder} S{pressure_advance}\n{endif}"

[filament:Layer Line DuraPET @HSP1 0.8 Takoto]
inherits = *Layer Line DuraPET*; *0.8 Takoto*
temperature = 285
bed_temperature = 80
first_layer_temperature = 280
first_layer_bed_temperature = 80
extrusion_multiplier = 1.00
filament_max_volumetric_speed = 20
min_fan_speed = 80  
max_fan_speed = 80
bridge_fan_speed = 80
start_filament_gcode = "; Filament gcode\n{local pressure_advance = 0.0}\n{if printer_notes=~/.*DUPLICATOR_MODE.*/}\nM572 D0:1 S{pressure_advance}\n{else}\nM572 D{current_extruder} S{pressure_advance}\n{endif}"

################### Layer Line 1.0 presets ###################
[filament:Layer Line Engineering PLA @HSP1 1.0 Takoto]
inherits = *Layer Line Engineering PLA*; *1.0 Takoto*
temperature = 230
bed_temperature = 60
first_layer_temperature = 225
first_layer_bed_temperature = 60
filament_max_volumetric_speed = 25
min_fan_speed = 80  
max_fan_speed = 80
bridge_fan_speed = 80
start_filament_gcode = "; Filament gcode\n{local pressure_advance = 0.012}\n{if printer_notes=~/.*DUPLICATOR_MODE.*/}\nM572 D0:1 S{pressure_advance}\n{else}\nM572 D{current_extruder} S{pressure_advance}\n{endif}"

[filament:Layer Line DuraPET @HSP1 1.0 Takoto]
inherits = *Layer Line DuraPET*; *1.0 Takoto*
temperature = 285
bed_temperature = 80
first_layer_temperature = 280
first_layer_bed_temperature = 80
extrusion_multiplier = 1.00
filament_max_volumetric_speed = 25
min_fan_speed = 80  
max_fan_speed = 80
bridge_fan_speed = 80
start_filament_gcode = "; Filament gcode\n{local pressure_advance = 0.0}\n{if printer_notes=~/.*DUPLICATOR_MODE.*/}\nM572 D0:1 S{pressure_advance}\n{else}\nM572 D{current_extruder} S{pressure_advance}\n{endif}"

################## Push Plastic 0.4 presets ##################
[filament:Push Plastic PLA @HSP1 0.4 Takoto]
inherits = *Push Plastic PLA*; *0.4 Takoto*
temperature = 200
bed_temperature = 60
first_layer_temperature = 195
first_layer_bed_temperature = 60
start_filament_gcode =  "; Filament gcode\n{local pressure_advance = 0.0}\n{if printer_notes=~/.*DUPLICATOR_MODE.*/}\nM572 D0:1 S{pressure_advance}\n{else}\nM572 D{current_extruder} S{pressure_advance}\n{endif}"

[filament:Push Plastic PETG @HSP1 0.4 Takoto]
inherits = *Push Plastic PETG*; *0.4 Takoto*
temperature = 245
bed_temperature = 80
first_layer_temperature = 240
first_layer_bed_temperature = 80
extrusion_multiplier = 0.94
filament_max_volumetric_speed = 12
min_fan_speed = 40  
max_fan_speed = 40
bridge_fan_speed = 40
start_filament_gcode = "; Filament gcode\n{local pressure_advance = 0.042}\n{if printer_notes=~/.*DUPLICATOR_MODE.*/}\nM572 D0:1 S{pressure_advance}\n{else}\nM572 D{current_extruder} S{pressure_advance}\n{endif}"

################## Push Plastic 0.6 presets ##################
[filament:Push Plastic PLA @HSP1 0.6 Takoto]
inherits = *Push Plastic PLA*; *0.6 Takoto*
temperature = 200
bed_temperature = 60
first_layer_temperature = 195
first_layer_bed_temperature = 60
start_filament_gcode =  "; Filament gcode\n{local pressure_advance = 0.026}\n{if printer_notes=~/.*DUPLICATOR_MODE.*/}\nM572 D0:1 S{pressure_advance}\n{else}\nM572 D{current_extruder} S{pressure_advance}\n{endif}"

[filament:Push Plastic PETG @HSP1 0.6 Takoto]
inherits = *Push Plastic PETG*; *0.6 Takoto*
temperature = 245
bed_temperature = 80
first_layer_temperature = 240
first_layer_bed_temperature = 80
extrusion_multiplier = 0.94
filament_max_volumetric_speed = 12
min_fan_speed = 80  
max_fan_speed = 80
bridge_fan_speed = 80
start_filament_gcode = "; Filament gcode\n{local pressure_advance = 0.020}\n{if printer_notes=~/.*DUPLICATOR_MODE.*/}\nM572 D0:1 S{pressure_advance}\n{else}\nM572 D{current_extruder} S{pressure_advance}\n{endif}"

################## Push Plastic 0.8 presets ##################
[filament:Push Plastic PLA @HSP1 0.8 Takoto]
inherits = *Push Plastic PLA*; *0.8 Takoto*
temperature = 200
bed_temperature = 60
first_layer_temperature = 195
first_layer_bed_temperature = 60
start_filament_gcode = "; Filament gcode\n{local pressure_advance = 0.0}\n{if printer_notes=~/.*DUPLICATOR_MODE.*/}\nM572 D0:1 S{pressure_advance}\n{else}\nM572 D{current_extruder} S{pressure_advance}\n{endif}"

[filament:Push Plastic PETG @HSP1 0.8 Takoto]
inherits = *Push Plastic PETG*; *0.8 Takoto*
temperature = 245
bed_temperature = 80
first_layer_temperature = 240
first_layer_bed_temperature = 80
extrusion_multiplier = 0.94
filament_max_volumetric_speed = 18
min_fan_speed = 80
max_fan_speed = 80
bridge_fan_speed = 80
start_filament_gcode = "; Filament gcode\n{local pressure_advance = 0.0}\n{if printer_notes=~/.*DUPLICATOR_MODE.*/}\nM572 D0:1 S{pressure_advance}\n{else}\nM572 D{current_extruder} S{pressure_advance}\n{endif}"

################## Push Plastic 1.0 presets ##################
[filament:Push Plastic PLA @HSP1 1.0 Takoto]
inherits = *Push Plastic PLA*; *1.0 Takoto*
temperature = 200
bed_temperature = 60
first_layer_temperature = 195
first_layer_bed_temperature = 60
start_filament_gcode = "; Filament gcode\n{local pressure_advance = 0.0}\n{if printer_notes=~/.*DUPLICATOR_MODE.*/}\nM572 D0:1 S{pressure_advance}\n{else}\nM572 D{current_extruder} S{pressure_advance}\n{endif}"

[filament:Push Plastic PETG @HSP1 1.0 Takoto]
inherits = *Push Plastic PETG*; *1.0 Takoto*
temperature = 250
bed_temperature = 80
first_layer_temperature = 245
first_layer_bed_temperature = 80
extrusion_multiplier = 0.94
filament_max_volumetric_speed = 25
min_fan_speed = 80
max_fan_speed = 80
bridge_fan_speed = 80
start_filament_gcode = "; Filament gcode\n{local pressure_advance = 0.016}\n{if printer_notes=~/.*DUPLICATOR_MODE.*/}\nM572 D0:1 S{pressure_advance}\n{else}\nM572 D{current_extruder} S{pressure_advance}\n{endif}"

#################### Push Plastic presets ####################
[filament:Push Plastic PCTG @HSP1]
inherits = *PCTG*; *Push Plastic*
temperature = 245
bed_temperature = 80
first_layer_temperature = 240
first_layer_bed_temperature = 80
filament_cost = 39.99
filament_density = 1.21
extrusion_multiplier = 1.00
filament_notes = Push Plastic PCTG
start_filament_gcode = "; Filament gcode\n{if nozzle_diameter[initial_extruder] == 0.6}{local pressure_advance = 0.018}\n{elsif nozzle_diameter[initial_extruder] == 0.4}{local pressure_advance = 0.026}\n{elsif nozzle_diameter[initial_extruder] == 0.8}{local pressure_advance = 0.0}\n{elsif nozzle_diameter[initial_extruder] == 1.0}{local pressure_advance = 0.0}\n{endif}\n{if printer_notes=~/.*DUPLICATOR_MODE.*/}\nM572 D0:1 S{pressure_advance}\n{else}\nM572 D{current_extruder} S{pressure_advance}\n{endif}"

[filament:Push Plastic ABS @HSP1]
inherits = *ABS*; *Push Plastic*
temperature = 250
bed_temperature = 100
first_layer_temperature = 240
first_layer_bed_temperature = 100
filament_cost = 29.99
filament_density = 1.03
filament_max_volumetric_speed = 15
filament_notes = Push Plastic ABS
start_filament_gcode = "; Filament gcode\n{if nozzle_diameter[initial_extruder] == 0.6}{local pressure_advance = 0.012}\n{elsif nozzle_diameter[initial_extruder] == 0.4}{local pressure_advance = 0.0}\n{elsif nozzle_diameter[initial_extruder] == 0.8}{local pressure_advance = 0.0}\n{elsif nozzle_diameter[initial_extruder] == 1.0}{local pressure_advance = 0.024}\n{endif}\n{if printer_notes=~/.*DUPLICATOR_MODE.*/}\nM572 D0:1 S{pressure_advance}\n{else}\nM572 D{current_extruder} S{pressure_advance}\n{endif}"

[filament:Push Plastic PC @HSP1]
inherits = *PC*; *Push Plastic*
filament_spool_weight = 350
temperature = 260
bed_temperature = 100
first_layer_temperature = 255
first_layer_bed_temperature = 100
filament_cost = 54.00
filament_density = 1.19
start_filament_gcode = "; Filament gcode\n{if nozzle_diameter[initial_extruder] == 0.6}{local pressure_advance = 0.0}\n{elsif nozzle_diameter[initial_extruder] == 0.4}{local pressure_advance = 0.0}\n{elsif nozzle_diameter[initial_extruder] == 0.8}{local pressure_advance = 0.0}\n{elsif nozzle_diameter[initial_extruder] == 1.0}{local pressure_advance = 0.0}\n{endif}\n{if printer_notes=~/.*DUPLICATOR_MODE.*/}\nM572 D0:1 S{pressure_advance}\n{else}\nM572 D{current_extruder} S{pressure_advance}\n{endif}"

################### 3D Fuel 0.4 presets ####################
[filament:3D Fuel Pro PCTG @HSP1 0.4 Takoto]
inherits = *3D Fuel PCTG*; *0.4 Takoto*
temperature = 260
bed_temperature = 80
first_layer_temperature = 260
first_layer_bed_temperature = 80
extrusion_multiplier = 0.99
filament_max_volumetric_speed = 12
min_fan_speed = 40
max_fan_speed = 40
bridge_fan_speed = 40
start_filament_gcode = "; Filament gcode\n{local pressure_advance = 0.04}\n{if printer_notes=~/.*DUPLICATOR_MODE.*/}\nM572 D0:1 S{pressure_advance}\n{else}\nM572 D{current_extruder} S{pressure_advance}\n{endif}"

################### Polymaker 0.6 presets ####################
[filament:Polymaker PolyFlex TPU95-HF @HSP1 0.6 Takoto]
inherits = *Polymaker PolyFlex TPU95-HF*; *0.6 Takoto*
temperature = 220
bed_temperature = 50
first_layer_temperature = 220
first_layer_bed_temperature = 50
filament_max_volumetric_speed = 10
extrusion_multiplier = 0.96
min_fan_speed = 50
max_fan_speed = 50
bridge_fan_speed = 50
start_filament_gcode = "; Filament gcode\n{local pressure_advance = 0.030}\n{if printer_notes=~/.*DUPLICATOR_MODE.*/}\nM572 D0:1 S{pressure_advance}\nM98 P{\"{directories.system^\\\"/System Macros/Change Settings/adjust_filament_monitor_sensitivity.g\\\"}\"} D0 L65 H120\nM98 P{\"{directories.system^\\\"/System Macros/Change Settings/adjust_filament_monitor_sensitivity.g\\\"}\"} D1 L65 H120\n{else}\nM572 D{current_extruder} S{pressure_advance}\nM98 P{\"{directories.system^\\\"/System Macros/Change Settings/adjust_filament_monitor_sensitivity.g\\\"}\"} D{current_extruder} L65 H120\n{endif}"

[filament:Polymaker PolyLite PLA-CF @HSP1]
inherits = *PLA*; *Polymaker*
temperature = 205
bed_temperature = 60
first_layer_temperature = 200
first_layer_bed_temperature = 60
filament_cost = 29.99
filament_density = 1.29
filament_max_volumetric_speed = 15
extrusion_multiplier = 0.93
filament_abrasive = 1
filament_notes = Polymaker PolyLite PLA-CF
start_filament_gcode = "; Filament gcode\n{if nozzle_diameter[initial_extruder] == 0.6}{local pressure_advance = 0.012}\n{elsif nozzle_diameter[initial_extruder] == 0.4}{local pressure_advance = 0.0}\n{elsif nozzle_diameter[initial_extruder] == 0.8}{local pressure_advance = 0.0}\n{elsif nozzle_diameter[initial_extruder] == 1.0}{local pressure_advance = 0.0}\n{endif}\n{if printer_notes=~/.*DUPLICATOR_MODE.*/}\nM572 D0:1 S{pressure_advance}\n{else}\nM572 D{current_extruder} S{pressure_advance}\n{endif}"

[filament:Polymaker PolyMide PA6-CF @HSP1]
inherits = *Nylon*; *Polymaker*
temperature = 290
bed_temperature = 50
first_layer_temperature = 285
first_layer_bed_temperature = 50
filament_cost = 74.99
filament_density = 1.17
filament_max_volumetric_speed = 12
extrusion_multiplier = 0.93
enable_dynamic_fan_speeds = 1
overhang_fan_speed_0 = 30
overhang_fan_speed_1 = 25
overhang_fan_speed_2 = 15
overhang_fan_speed_3 = 10
filament_abrasive = 1
filament_notes = Polymaker PolyMide PA6-CF
start_filament_gcode = "; Filament gcode\n{if nozzle_diameter[initial_extruder] == 0.6}{local pressure_advance = 0.016}\n{elsif nozzle_diameter[initial_extruder] == 0.4}{local pressure_advance = 0.0}\n{elsif nozzle_diameter[initial_extruder] == 0.8}{local pressure_advance = 0.0}\n{elsif nozzle_diameter[initial_extruder] == 1.0}{local pressure_advance = 0.0}\n{endif}\n{if printer_notes=~/.*DUPLICATOR_MODE.*/}\nM572 D0:1 S{pressure_advance}\n{else}\nM572 D{current_extruder} S{pressure_advance}\n{endif}"

[filament:Polymaker PolyDissolve S1 @HSP1]
inherits = *PVA*; *Polymaker*
temperature = 220
first_layer_temperature = 215
filament_cost = 79.99
filament_density = 1.13
filament_max_volumetric_speed = 10
extrusion_multiplier = 0.90
filament_notes = Polymaker PolyDissolve S1
start_filament_gcode = "; Filament gcode\n{if nozzle_diameter[initial_extruder] == 0.6}{local pressure_advance = 0.018}\n{elsif nozzle_diameter[initial_extruder] == 0.4}{local pressure_advance = 0.0}\n{elsif nozzle_diameter[initial_extruder] == 0.8}{local pressure_advance = 0.0}\n{elsif nozzle_diameter[initial_extruder] == 1.0}{local pressure_advance = 0.0}\n{endif}\n{if printer_notes=~/.*DUPLICATOR_MODE.*/}\nM572 D0:1 S{pressure_advance}\n{else}\nM572 D{current_extruder} S{pressure_advance}\nM98 P{\"{directories.system^\\\"/System Macros/Change Settings/adjust_filament_monitor_sensitivity.g\\\"}\"} D{current_extruder} L60 H140\n{endif}"


################### Essentium 0.6 presets ####################
[filament:Essentium HTN-CF25 @HSP1 0.6 Takoto]
inherits = *Essentium HTN-CF25*; *0.6 Takoto*
temperature = 280
bed_temperature = 80
first_layer_temperature = 275
first_layer_bed_temperature = 80
filament_max_volumetric_speed = 12
extrusion_multiplier = 0.95
fan_always_on = 0
cooling = 0
min_fan_speed = 0
max_fan_speed = 0
enable_dynamic_fan_speeds = 1
overhang_fan_speed_0 = 30
overhang_fan_speed_1 = 25
overhang_fan_speed_2 = 15
overhang_fan_speed_3 = 10
filament_abrasive = 1
start_filament_gcode = "; Filament gcode\n{local pressure_advance = 0.006}\n{if printer_notes=~/.*DUPLICATOR_MODE.*/}\nM572 D0:1 S{pressure_advance}\n{else}\nM572 D{current_extruder} S{pressure_advance}\n{endif}"

[filament:Essentium Support S10 @HSP1 0.6 Takoto]
inherits = *Essentium Support S10*; *0.6 Takoto*
temperature = 215
first_layer_temperature = 210
filament_max_volumetric_speed = 10
extrusion_multiplier = 0.90
start_filament_gcode = "; Filament gcode\n{local pressure_advance = 0.04}\n{if printer_notes=~/.*DUPLICATOR_MODE.*/}\nM572 D0:1 S{pressure_advance}\n{else}\nM572 D{current_extruder} S{pressure_advance}\n{endif}"

###################### BASF 0.6 presets ######################
[filament:BASF Ultrafuse ABS Fusion+ @HSP1]
inherits = *ABS*; *BASF*
temperature = 255
bed_temperature = 100
first_layer_temperature = 250
first_layer_bed_temperature = 100
filament_cost = 45.00
filament_density = 1.07
filament_max_volumetric_speed = 15
extrusion_multiplier = 0.95
filament_notes = BASF Ultrafuse ABS Fusion+
start_filament_gcode = "; Filament gcode\n{if nozzle_diameter[initial_extruder] == 0.6}{local pressure_advance = 0.0}\n{elsif nozzle_diameter[initial_extruder] == 0.4}{local pressure_advance = 0.0}\n{elsif nozzle_diameter[initial_extruder] == 0.8}{local pressure_advance = 0.0}\n{elsif nozzle_diameter[initial_extruder] == 1.0}{local pressure_advance = 0.0}\n{endif}\n{if printer_notes=~/.*DUPLICATOR_MODE.*/}\nM572 D0:1 S{pressure_advance}\n{else}\nM572 D{current_extruder} S{pressure_advance}\n{endif}"

[filament:BASF Ultrafuse BVOH @HSP1]
inherits = *BVOH*; *BASF*
temperature = 215
first_layer_temperature = 210
filament_cost = 143.00
filament_density = 1.14
filament_max_volumetric_speed = 10
extrusion_multiplier = 0.91
filament_notes = BASF Ultrafuse BVOH
start_filament_gcode = "; Filament gcode\n{if nozzle_diameter[initial_extruder] == 0.6}{local pressure_advance = 0.0}\n{elsif nozzle_diameter[initial_extruder] == 0.4}{local pressure_advance = 0.0}\n{elsif nozzle_diameter[initial_extruder] == 0.8}{local pressure_advance = 0.0}\n{elsif nozzle_diameter[initial_extruder] == 1.0}{local pressure_advance = 0.0}\n{endif}\n{if printer_notes=~/.*DUPLICATOR_MODE.*/}\nM572 D0:1 S{pressure_advance}\n{else}\nM572 D{current_extruder} S{pressure_advance}\n{endif}"

##################### Jabil 0.6 presets ######################
[filament:Jabil PETG 0800 ESD @HSP1]
inherits = *PETG*; *Jabil*
temperature = 265
bed_temperature = 80
first_layer_temperature = 260
first_layer_bed_temperature = 80
filament_cost = 100
filament_density = 1.26
filament_max_volumetric_speed = 12
extrusion_multiplier = 0.96
filament_abrasive = 1
start_filament_gcode = "; Filament gcode\n{if nozzle_diameter[initial_extruder] == 0.6}{local pressure_advance = 0.01}\n{elsif nozzle_diameter[initial_extruder] == 0.4}{local pressure_advance = 0.0}\n{elsif nozzle_diameter[initial_extruder] == 0.8}{local pressure_advance = 0.018}\n{elsif nozzle_diameter[initial_extruder] == 1.0}{local pressure_advance = 0.0}\n{endif}\n{if printer_notes=~/.*DUPLICATOR_MODE.*/}\nM572 D0:1 S{pressure_advance}\n{else}\nM572 D{current_extruder} S{pressure_advance}\n{endif}"

################### Common printer presets ###################
[printer:*common*]
printer_technology = FFF
autoemit_temperature_commands = 0
color_change_gcode = M600
gcode_flavor = reprapfirmware
high_current_on_filament_swap = 0
machine_limits_usage = time_estimate_only
machine_max_acceleration_e = 2400
machine_max_acceleration_extruding = 5000
machine_max_acceleration_retracting = 5000
machine_max_acceleration_travel = 5000
machine_max_acceleration_x = 5000
machine_max_acceleration_y = 5000
machine_max_acceleration_z = 300
machine_max_feedrate_e = 100
machine_max_feedrate_x = 500
machine_max_feedrate_y = 500
machine_max_feedrate_z = 10
machine_max_jerk_e = 15
machine_max_jerk_x = 4
machine_max_jerk_y = 4
machine_max_jerk_z = 2.5
max_print_height = 1000
parking_pos_retraction = 92
pause_print_gcode = M226
remaining_times = 1
silent_mode = 0
single_extruder_multi_material = 0
thumbnails = 256x256/QOI
use_firmware_retraction = 0
use_relative_e_distances = 1
use_volumetric_e = 0
variable_layer_height = 1
z_offset = 0
extruder_clearance_height = 90
extruder_clearance_radius = 95
default_filament_profile = Layer Line Engineering PLA @HSP1
end_gcode = ; Stop the print\nM0\n\n;NUM_LAYERS:[total_layer_count]\n
before_layer_gcode = ;LAYER:[layer_num]

# dual preset
[printer:*dual*]
inherits = *common*
printer_model = HSP1-I
autoemit_temperature_commands = 0
bed_shape = 0x0,650x0,650x640,0x640
extruder_colour = #FFFF00;#FF00FF
extruder_offset = 0x0,0x0
wipe = 1,1
retract_before_wipe = 50%,50%
retract_layer_change = 1,1
retract_length_toolchange = 2,2
retract_lift = 0.4,0.4
retract_lift_above = 0,0
retract_lift_below = 0,0
retract_restart_extra = 0,0
retract_restart_extra_toolchange = 0,0
retract_speed = 35,35
deretract_speed = 0,0
toolchange_gcode = T{next_extruder}\nM116 P{next_extruder} S5
layer_gcode = {if layer_num == 1}M140 S{max((is_extruder_used[0]? bed_temperature[0]:0),(is_extruder_used[1]? bed_temperature[1]:0))}{endif}
printer_notes = ;Don't remove the following keywords! These keywords are used in the "compatible printer" condition of the print and filament profiles to link the particular print and filament profiles to this printer profile.\nPRINTER_VENDOR_HSP\nPRINTER_MODEL_HSP1-I\n
start_gcode = ; Run nozzle diameter and filament check\nM98 P{"{directories.system^\\"/System Macros/Config Checks/nozzle_check.g\\"}"} {if is_extruder_used[0]}L{nozzle_diameter[0]}{endif} {if is_extruder_used[1]}S{nozzle_diameter[1]}{endif}\nM98 P{"{directories.system^\\"/System Macros/Config Checks/filament_check.g\\"}"} {if is_extruder_used[0]}{if filament_notes[0] == ""}L"{filament_type[0]}"{else}A"{filament_notes[0]}"{endif}{endif} {if is_extruder_used[1]}{if filament_notes[1] == ""}S"{filament_type[1]}"{else}B"{filament_notes[1]}"{endif}{endif}\n\n; set extruder temp\n{if is_extruder_used[0]}M568 P0 S{first_layer_temperature[0]} R{(!is_nil(idle_temperature[0])? idle_temperature[0]:first_layer_temperature[0]-60)} A1{endif}\n{if is_extruder_used[1]}M568 P1 S{first_layer_temperature[1]} R{(!is_nil(idle_temperature[1])? idle_temperature[1]:first_layer_temperature[1]-60)} A1{endif}\n\n; Set and wait for bed temp\nM190 S{max((is_extruder_used[0]? first_layer_bed_temperature[0]:0),(is_extruder_used[1]? first_layer_bed_temperature[1]:0))}\n\n; Home all axes\nG28\n\n; Enable mesh compensation\nM98 P{"{directories.system^\\"/System Macros/Config Checks/load_heightmap.g\\"}"}\n\n; Move to starting position\nG0 H2 X{"{move.axes[0].min}"} Y50 F6000\n\n; Select first tool\nT{initial_extruder}\n\n; Move near start\nG1 X[first_layer_print_min_0] Y[first_layer_print_min_1] Z{first_layer_height + 2.0} F12000\n

# duplicator preset
[printer:*duplicator*]
inherits = *common*
printer_model = HSP1-I Duplicator Mode
autoemit_temperature_commands = 0
bed_shape = 0x0,320x0,320x640,0x640 
extruder_colour = #FFFF00
extruder_offset = 0x0
wipe = 1
retract_before_wipe = 50%
retract_layer_change = 1
retract_length_toolchange = 0
retract_lift = 0.4
retract_lift_above = 0
retract_lift_below = 0
retract_restart_extra = 0
retract_restart_extra_toolchange = 0
retract_speed = 35
deretract_speed = 0
printer_notes = ;Don't remove the following keywords! These keywords are used in the "compatible printer" condition of the print and filament profiles to link the particular print and filament profiles to this printer profile.\nPRINTER_VENDOR_HSP\nPRINTER_MODEL_HSP1-I\nDUPLICATOR_MODE\n
start_gcode = ; Run nozzle diameter and filament check\nM98 P{"{directories.system^\\"/System Macros/Config Checks/nozzle_check.g\\"}"} L{nozzle_diameter[0]} S{nozzle_diameter[0]}\nM98 P{"{directories.system^\\"/System Macros/Config Checks/filament_check.g\\"}"} {if filament_notes[0] == ""}L"{filament_type[0]}" S"{filament_type[0]}"{else}A"{filament_notes[0]}" B"{filament_notes[0]}"{endif}\n\n; set extruder temp\nM568 P2 S{first_layer_temperature[0]} R{(!is_nil(idle_temperature[0])? idle_temperature[0]:first_layer_temperature[0]-60)} A1\n\n; Set and wait for bed temp\nM190 S{first_layer_bed_temperature[0]}\n\n; Home all axes\nG28\n\n; Enable mesh compensation\nG29 S1\n\n; Move to starting position\nG0 H2 X{"{move.axes[0].min}"} Y50 F6000\n\n; Select duplicator "tool"\nT2\n\n; Move near start\nG1 X[first_layer_print_min_0] Y[first_layer_print_min_1] Z{first_layer_height + 2.0} F12000\n

# mirror preset
[printer:*mirror*]
inherits = *common*
printer_model = HSP1-I Duplicator Mode
autoemit_temperature_commands = 0
bed_shape = 0x0,300x0,300x640,0x640 
extruder_colour = #FFFF00
extruder_offset = 0x0
wipe = 1
retract_before_wipe = 50%
retract_layer_change = 1
retract_length_toolchange = 0
retract_lift = 0.4
retract_lift_above = 0
retract_lift_below = 0
retract_restart_extra = 0
retract_restart_extra_toolchange = 0
retract_speed = 35
deretract_speed = 0
printer_notes = ;Don't remove the following keywords! These keywords are used in the "compatible printer" condition of the print and filament profiles to link the particular print and filament profiles to this printer profile.\nPRINTER_VENDOR_HSP\nPRINTER_MODEL_HSP1-I\nDUPLICATOR_MODE\n
start_gcode = ; Run nozzle diameter and filament check\nM98 P{"{directories.system^\\"/System Macros/Config Checks/nozzle_check.g\\"}"} L{nozzle_diameter[0]} S{nozzle_diameter[0]}\nM98 P{"{directories.system^\\"/System Macros/Config Checks/filament_check.g\\"}"} {if filament_notes[0] == ""}L"{filament_type[0]}" S"{filament_type[0]}"{else}A"{filament_notes[0]}" B"{filament_notes[0]}"{endif}\n\n; set extruder temp\nM568 P3 S{first_layer_temperature[0]} R{(!is_nil(idle_temperature[0])? idle_temperature[0]:first_layer_temperature[0]-60)} A1\n\n; Set and wait for bed temp\nM190 S{first_layer_bed_temperature[0]}\n\n; Home all axes\nG28\n\n; Enable mesh compensation\nG29 S1\n\n; Move to starting position\nG0 H2 X{"{move.axes[0].min}"} Y50 F6000\n\n; Select mirror "tool"\nT3\n\n; Move near start\nG1 X[first_layer_print_min_0] Y[first_layer_print_min_1] Z{first_layer_height + 2.0} F12000\n

#################### Nozzle size presets ####################
[printer:*0.6*]
min_layer_height = 0.1
max_layer_height = 0.5
retract_before_travel = 1.5
printer_variant = 0.6

[printer:*0.4*]
min_layer_height = 0.05
max_layer_height = 0.3
retract_before_travel = 1
printer_variant = 0.4

[printer:*0.8*]
min_layer_height = 0.2
max_layer_height = 0.6
retract_before_travel = 2
printer_variant = 0.8

[printer:*1.0*]
min_layer_height = 0.3
max_layer_height = 0.8
retract_before_travel = 2.5
printer_variant = 1.0


#################### Dual printer presets ####################
[printer:HSP1-I - 2x0.6mm Takoto]
inherits = *dual*; *0.6*

nozzle_diameter = 0.6,0.6
retract_length = 1,1
default_print_profile = 300 Micron Standard @HSP1

[printer:HSP1-I - 2x0.4mm Takoto]
inherits = *dual*; *0.4*
nozzle_diameter = 0.4,0.4
retract_length = 1,1
default_print_profile = 200 Micron Standard @HSP1

[printer:HSP1-I - 2x0.8mm Takoto]
inherits = *dual*; *0.8*
nozzle_diameter = 0.8,0.8
retract_length = 1,1
default_print_profile = 400 Micron Standard @HSP1

[printer:HSP1-I - 2x1.0mm Takoto]
inherits = *dual*; *1.0*
nozzle_diameter = 1.0,1.0
retract_length = 1,1
default_print_profile = 500 Micron Standard @HSP1


################# Duplicator printer presets #################
[printer:HSP1-I - 0.6mm Takoto Duplicator]
inherits = *duplicator*; *0.6*
nozzle_diameter = 0.6
retract_length = 1
default_print_profile = 300 Micron Standard Duplicator @HSP1

[printer:HSP1-I - 0.4mm Takoto Duplicator]
inherits = *duplicator*; *0.4*
nozzle_diameter = 0.4
retract_length = 1
default_print_profile = 200 Micron Standard Duplicator @HSP1

[printer:HSP1-I - 0.8mm Takoto Duplicator]
inherits = *duplicator*; *0.8*
nozzle_diameter = 0.8
retract_length = 1
default_print_profile = 400 Micron Standard Duplicator @HSP1

[printer:HSP1-I - 1.0mm Takoto Duplicator]
inherits = *duplicator*; *1.0*
nozzle_diameter = 1.0
retract_length = 1
default_print_profile = 500 Micron Standard Duplicator @HSP1

################# Mirror printer presets #################
[printer:HSP1-I - 0.6mm Takoto Mirror]
inherits = *mirror*; *0.6*
nozzle_diameter = 0.6
retract_length = 1
default_print_profile = 300 Micron Standard Duplicator @HSP1

[printer:HSP1-I - 0.4mm Takoto Mirror]
inherits = *mirror*; *0.4*
nozzle_diameter = 0.4
retract_length = 1
default_print_profile = 200 Micron Standard Duplicator @HSP1

[printer:HSP1-I - 0.8mm Takoto Mirror]
inherits = *mirror*; *0.8*
nozzle_diameter = 0.8
retract_length = 1
default_print_profile = 400 Micron Standard Duplicator @HSP1

[printer:HSP1-I - 1.0mm Takoto Mirror]
inherits = *mirror*; *1.0*
nozzle_diameter = 1.0
retract_length = 1
default_print_profile = 500 Micron Standard Duplicator @HSP1
