From 5bbe09a75c0b511de05c7e01e8a5265b4282ab09 Mon Sep 17 00:00:00 2001 From: Bernhard Koppensteiner Date: Wed, 3 Apr 2024 21:22:09 +0200 Subject: [PATCH] added Prusa Mini with Input Shaper to profiles --- resources/profiles/Prusa.json | 54 +++++++++ resources/profiles/Prusa/MINIIS_cover.png | Bin 0 -> 42866 bytes .../filament/Prusa Generic ABS @MINIIS.json | 24 ++++ .../filament/Prusa Generic ABS @MK4.json | 10 +- .../filament/Prusa Generic ASA @MINIIS.json | 24 ++++ .../filament/Prusa Generic ASA @MK4.json | 10 +- .../Prusa/filament/Prusa Generic PA-CF.json | 6 +- .../Prusa/filament/Prusa Generic PA.json | 6 +- .../Prusa/filament/Prusa Generic PC.json | 6 +- .../filament/Prusa Generic PETG @MINIIS.json | 51 ++++++++ .../filament/Prusa Generic PETG @MK4.json | 10 +- .../filament/Prusa Generic PLA @MINIIS.json | 26 ++++ .../Prusa/filament/Prusa Generic PLA-CF.json | 6 +- .../Prusa/filament/Prusa Generic PVA.json | 6 +- .../filament/Prusa Generic TPU @MINIIS.json | 24 ++++ .../machine/Prusa MINIIS 0.25 nozzle.json | 114 ++++++++++++++++++ .../machine/Prusa MINIIS 0.4 nozzle.json | 114 ++++++++++++++++++ .../machine/Prusa MINIIS 0.6 nozzle.json | 114 ++++++++++++++++++ .../machine/Prusa MINIIS 0.8 nozzle.json | 114 ++++++++++++++++++ .../profiles/Prusa/machine/Prusa MINIIS.json | 12 ++ resources/profiles/Prusa/miniis.svg | 32 +++++ resources/profiles/Prusa/miniis_bed.stl | Bin 0 -> 57884 bytes .../Prusa/process/0.20mm Speed @MINIIS.json | 14 +++ .../process/0.20mm Standard @MINIIS.json | 26 ++++ .../Prusa/process/fdm_process_common.json | 5 +- .../Prusa/process/process_common_miniis.json | 44 +++++++ 26 files changed, 829 insertions(+), 23 deletions(-) create mode 100644 resources/profiles/Prusa/MINIIS_cover.png create mode 100644 resources/profiles/Prusa/filament/Prusa Generic ABS @MINIIS.json create mode 100644 resources/profiles/Prusa/filament/Prusa Generic ASA @MINIIS.json create mode 100644 resources/profiles/Prusa/filament/Prusa Generic PETG @MINIIS.json create mode 100644 resources/profiles/Prusa/filament/Prusa Generic PLA @MINIIS.json create mode 100644 resources/profiles/Prusa/filament/Prusa Generic TPU @MINIIS.json create mode 100644 resources/profiles/Prusa/machine/Prusa MINIIS 0.25 nozzle.json create mode 100644 resources/profiles/Prusa/machine/Prusa MINIIS 0.4 nozzle.json create mode 100644 resources/profiles/Prusa/machine/Prusa MINIIS 0.6 nozzle.json create mode 100644 resources/profiles/Prusa/machine/Prusa MINIIS 0.8 nozzle.json create mode 100644 resources/profiles/Prusa/machine/Prusa MINIIS.json create mode 100644 resources/profiles/Prusa/miniis.svg create mode 100644 resources/profiles/Prusa/miniis_bed.stl create mode 100644 resources/profiles/Prusa/process/0.20mm Speed @MINIIS.json create mode 100644 resources/profiles/Prusa/process/0.20mm Standard @MINIIS.json create mode 100644 resources/profiles/Prusa/process/process_common_miniis.json diff --git a/resources/profiles/Prusa.json b/resources/profiles/Prusa.json index 983e35e558..4e9589f04c 100644 --- a/resources/profiles/Prusa.json +++ b/resources/profiles/Prusa.json @@ -8,6 +8,10 @@ "name": "MK4IS", "sub_path": "machine/Prusa MK4.json" }, + { + "name": "MINIIS", + "sub_path": "machine/Prusa MINIIS.json" + }, { "name": "MK3S", "sub_path": "machine/Prusa MK3S.json" @@ -26,6 +30,10 @@ "name": "process_common_mk4", "sub_path": "process/process_common_mk4.json" }, + { + "name": "process_common_miniis", + "sub_path": "process/process_common_miniis.json" + }, { "name": "process_common_mk3", "sub_path": "process/process_common_mk3.json" @@ -144,6 +152,16 @@ "name": "0.20mm Standard @MK4", "sub_path": "process/0.20mm Standard @MK4.json" }, + { + + "name": "0.20mm Standard @MINIIS", + "sub_path": "process/0.20mm Standard @MINIIS.json" + }, + { + + "name": "0.20mm Speed @MINIIS", + "sub_path": "process/0.20mm Speed @MINIIS.json" + }, { "name": "0.24mm Standard @MK4", @@ -215,6 +233,10 @@ "name": "Prusa Generic PLA @MK4", "sub_path": "filament/Prusa Generic PLA @MK4.json" }, + { + "name": "Prusa Generic PLA @MINIIS", + "sub_path": "filament/Prusa Generic PLA @MINIIS.json" + }, { "name": "Prusa Generic PLA-CF", "sub_path": "filament/Prusa Generic PLA-CF.json" @@ -227,6 +249,10 @@ "name": "Prusa Generic PETG @MK4", "sub_path": "filament/Prusa Generic PETG @MK4.json" }, + { + "name": "Prusa Generic PETG @MINIIS", + "sub_path": "filament/Prusa Generic PETG @MINIIS.json" + }, { "name": "Prusa Generic ABS", "sub_path": "filament/Prusa Generic ABS.json" @@ -235,6 +261,10 @@ "name": "Prusa Generic ABS @MK4", "sub_path": "filament/Prusa Generic ABS @MK4.json" }, + { + "name": "Prusa Generic ABS @MINIIS", + "sub_path": "filament/Prusa Generic ABS @MINIIS.json" + }, { "name": "Prusa Generic TPU", "sub_path": "filament/Prusa Generic TPU.json" @@ -243,6 +273,10 @@ "name": "Prusa Generic TPU @MK4", "sub_path": "filament/Prusa Generic TPU @MK4.json" }, + { + "name": "Prusa Generic TPU @MINIIS", + "sub_path": "filament/Prusa Generic TPU @MINIIS.json" + }, { "name": "Prusa Generic ASA", "sub_path": "filament/Prusa Generic ASA.json" @@ -251,6 +285,10 @@ "name": "Prusa Generic ASA @MK4", "sub_path": "filament/Prusa Generic ASA @MK4.json" }, + { + "name": "Prusa Generic ASA @MINIIS", + "sub_path": "filament/Prusa Generic ASA @MINIIS.json" + }, { "name": "Prusa Generic PC", "sub_path": "filament/Prusa Generic PC.json" @@ -297,6 +335,22 @@ "name": "Prusa MK4 0.4 nozzle", "sub_path": "machine/Prusa MK4 0.4 nozzle.json" }, + { + "name": "Prusa MINIIS 0.4 nozzle", + "sub_path": "machine/Prusa MINIIS 0.4 nozzle.json" + }, + { + "name": "Prusa MINIIS 0.25 nozzle", + "sub_path": "machine/Prusa MINIIS 0.25 nozzle.json" + }, + { + "name": "Prusa MINIIS 0.6 nozzle", + "sub_path": "machine/Prusa MINIIS 0.6 nozzle.json" + }, + { + "name": "Prusa MINIIS 0.8 nozzle", + "sub_path": "machine/Prusa MINIIS 0.8 nozzle.json" + }, { "name": "Prusa MK4 0.6 nozzle", "sub_path": "machine/Prusa MK4 0.6 nozzle.json" diff --git a/resources/profiles/Prusa/MINIIS_cover.png b/resources/profiles/Prusa/MINIIS_cover.png new file mode 100644 index 0000000000000000000000000000000000000000..c321e4c54563b357894f2952c5fd07df80bd7fe3 GIT binary patch literal 42866 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%0AY2f;dVUZM0+7BObGs4(h1 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 literal 0 HcmV?d00001 diff --git a/resources/profiles/Prusa/filament/Prusa Generic ABS @MINIIS.json b/resources/profiles/Prusa/filament/Prusa Generic ABS @MINIIS.json new file mode 100644 index 0000000000..4df6cd326f --- /dev/null +++ b/resources/profiles/Prusa/filament/Prusa Generic ABS @MINIIS.json @@ -0,0 +1,24 @@ +{ + "type": "filament", + "filament_id": "GFB99_2", + "setting_id": "GFSA04", + "name": "Prusa Generic ABS @MINIIS", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_abs", + "filament_flow_ratio": [ + "0.926" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "filament_start_gcode": [ + "; Filament gcode\nM900 K{if printer_notes=~/.*PRINTER_MODEL_MINIIS.*/ and nozzle_diameter[0]==0.6}0.12{elsif printer_notes=~/.*PRINTER_MODEL_MINIIS.*/ and nozzle_diameter[0]==0.8}0.06{elsif printer_notes=~/.*PRINTER_MODEL_MINIIS.*/}0.2{elsif nozzle_diameter[0]==0.8}0.01{elsif nozzle_diameter[0]==0.6}0.02{else}0.04{endif} ; Filament gcode LA 1.5\n{if printer_notes=~/.*PRINTER_MODEL_MINIIS.*/};{elsif printer_notes=~/.*PRINTER_HAS_BOWDEN.*/}M900 K200{elsif nozzle_diameter[0]==0.6}M900 K12{elsif nozzle_diameter[0]==0.8};{else}M900 K20{endif} ; Filament gcode LA 1.0 \n\nM572 S{if nozzle_diameter[0]==0.6}0.1{elsif nozzle_diameter[0]==0.8}0.07{elsif nozzle_diameter[0]==0.4}0.19{elsif nozzle_diameter[0]==0.25}0.55{else}0{endif}" + ], + "compatible_printers": [ + "Prusa MINIIS 0.4 nozzle", + "Prusa MINIIS 0.25 nozzle", + "Prusa MINIIS 0.6 nozzle", + "Prusa MINIIS 0.8 nozzle" + ] +} diff --git a/resources/profiles/Prusa/filament/Prusa Generic ABS @MK4.json b/resources/profiles/Prusa/filament/Prusa Generic ABS @MK4.json index 1e40459111..0de674b7fe 100644 --- a/resources/profiles/Prusa/filament/Prusa Generic ABS @MK4.json +++ b/resources/profiles/Prusa/filament/Prusa Generic ABS @MK4.json @@ -16,9 +16,9 @@ "; Filament gcode\nM900 K{if nozzle_diameter[0]==0.4}0.03{elsif nozzle_diameter[0]==0.25}0.1{elsif nozzle_diameter[0]==0.3}0.06{elsif nozzle_diameter[0]==0.35}0.05{elsif nozzle_diameter[0]==0.5}0.03{elsif nozzle_diameter[0]==0.6}0.02{elsif nozzle_diameter[0]==0.8}0.01{else}0{endif} ; Filament gcode\n\n{if printer_notes=~/.*PRINTER_MODEL_MK4IS.*/}\nM572 S{if nozzle_diameter[0]==0.4}0.02{elsif nozzle_diameter[0]==0.5}0.018{elsif nozzle_diameter[0]==0.6}0.012{elsif nozzle_diameter[0]==0.8}0.01{elsif nozzle_diameter[0]==0.25}0.09{elsif nozzle_diameter[0]==0.3}0.065{else}0{endif} ; Filament gcode\n{endif}\n\nM142 S40 ; set heatbreak target temp" ], "compatible_printers": [ - "Prusa MK4 0.25 nozzle", - "Prusa MK4 0.4 nozzle", - "Prusa MK4 0.6 nozzle", - "Prusa MK4 0.8 nozzle" - ] + "Prusa MK4 0.25 nozzle", + "Prusa MK4 0.4 nozzle", + "Prusa MK4 0.6 nozzle", + "Prusa MK4 0.8 nozzle" + ] } diff --git a/resources/profiles/Prusa/filament/Prusa Generic ASA @MINIIS.json b/resources/profiles/Prusa/filament/Prusa Generic ASA @MINIIS.json new file mode 100644 index 0000000000..1301190aa4 --- /dev/null +++ b/resources/profiles/Prusa/filament/Prusa Generic ASA @MINIIS.json @@ -0,0 +1,24 @@ +{ + "type": "filament", + "filament_id": "GFB98_2", + "setting_id": "GFSA04", + "name": "Prusa Generic ASA @MINIIS", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_asa", + "filament_flow_ratio": [ + "0.93" + ], + "filament_max_volumetric_speed": [ + "12" + ], + "filament_start_gcode": [ + "; Filament gcode\nM900 K{if printer_notes=~/.*PRINTER_MODEL_MINIIS.*/ and nozzle_diameter[0]==0.6}0.12{elsif printer_notes=~/.*PRINTER_MODEL_MINIIS.*/ and nozzle_diameter[0]==0.8}0.06{elsif printer_notes=~/.*PRINTER_MODEL_MINIIS.*/}0.2{elsif nozzle_diameter[0]==0.8}0.01{elsif nozzle_diameter[0]==0.6}0.02{else}0.04{endif} ; Filament gcode LA 1.5\n{if printer_notes=~/.*PRINTER_MODEL_MINIIS.*/};{elsif printer_notes=~/.*PRINTER_HAS_BOWDEN.*/}M900 K200{elsif nozzle_diameter[0]==0.6}M900 K12{elsif nozzle_diameter[0]==0.8};{else}M900 K20{endif} ; Filament gcode LA 1.0 \n\nM572 S{if nozzle_diameter[0]==0.6}0.1{elsif nozzle_diameter[0]==0.8}0.07{elsif nozzle_diameter[0]==0.4}0.19{elsif nozzle_diameter[0]==0.25}0.55{else}0{endif}" + ], + "compatible_printers": [ + "Prusa MINIIS 0.4 nozzle", + "Prusa MINIIS 0.25 nozzle", + "Prusa MINIIS 0.6 nozzle", + "Prusa MINIIS 0.8 nozzle" + ] +} diff --git a/resources/profiles/Prusa/filament/Prusa Generic ASA @MK4.json b/resources/profiles/Prusa/filament/Prusa Generic ASA @MK4.json index e92dc0795d..de823b2306 100644 --- a/resources/profiles/Prusa/filament/Prusa Generic ASA @MK4.json +++ b/resources/profiles/Prusa/filament/Prusa Generic ASA @MK4.json @@ -16,9 +16,9 @@ "; Filament gcode\nM900 K{if nozzle_diameter[0]==0.4}0.03{elsif nozzle_diameter[0]==0.25}0.1{elsif nozzle_diameter[0]==0.3}0.06{elsif nozzle_diameter[0]==0.35}0.05{elsif nozzle_diameter[0]==0.5}0.03{elsif nozzle_diameter[0]==0.6}0.02{elsif nozzle_diameter[0]==0.8}0.01{else}0{endif} ; Filament gcode\n\n{if printer_notes=~/.*PRINTER_MODEL_MK4IS.*/}\nM572 S{if nozzle_diameter[0]==0.4}0.02{elsif nozzle_diameter[0]==0.5}0.018{elsif nozzle_diameter[0]==0.6}0.012{elsif nozzle_diameter[0]==0.8}0.01{elsif nozzle_diameter[0]==0.25}0.09{elsif nozzle_diameter[0]==0.3}0.065{else}0{endif} ; Filament gcode\n{endif}\n\nM142 S40 ; set heatbreak target temp" ], "compatible_printers": [ - "Prusa MK4 0.25 nozzle", - "Prusa MK4 0.4 nozzle", - "Prusa MK4 0.6 nozzle", - "Prusa MK4 0.8 nozzle" - ] + "Prusa MK4 0.25 nozzle", + "Prusa MK4 0.4 nozzle", + "Prusa MK4 0.6 nozzle", + "Prusa MK4 0.8 nozzle" + ] } diff --git a/resources/profiles/Prusa/filament/Prusa Generic PA-CF.json b/resources/profiles/Prusa/filament/Prusa Generic PA-CF.json index 47926d81df..8b389957c7 100644 --- a/resources/profiles/Prusa/filament/Prusa Generic PA-CF.json +++ b/resources/profiles/Prusa/filament/Prusa Generic PA-CF.json @@ -30,6 +30,10 @@ "Prusa MK4 0.25 nozzle", "Prusa MK4 0.4 nozzle", "Prusa MK4 0.6 nozzle", - "Prusa MK4 0.8 nozzle" + "Prusa MK4 0.8 nozzle", + "Prusa MINIIS 0.4 nozzle", + "Prusa MINIIS 0.25 nozzle", + "Prusa MINIIS 0.6 nozzle", + "Prusa MINIIS 0.8 nozzle" ] } \ No newline at end of file diff --git a/resources/profiles/Prusa/filament/Prusa Generic PA.json b/resources/profiles/Prusa/filament/Prusa Generic PA.json index f1507270b5..c92b0a981e 100644 --- a/resources/profiles/Prusa/filament/Prusa Generic PA.json +++ b/resources/profiles/Prusa/filament/Prusa Generic PA.json @@ -27,6 +27,10 @@ "Prusa MK4 0.25 nozzle", "Prusa MK4 0.4 nozzle", "Prusa MK4 0.6 nozzle", - "Prusa MK4 0.8 nozzle" + "Prusa MK4 0.8 nozzle", + "Prusa MINIIS 0.4 nozzle", + "Prusa MINIIS 0.25 nozzle", + "Prusa MINIIS 0.6 nozzle", + "Prusa MINIIS 0.8 nozzle" ] } \ No newline at end of file diff --git a/resources/profiles/Prusa/filament/Prusa Generic PC.json b/resources/profiles/Prusa/filament/Prusa Generic PC.json index e33173caed..0c232ec272 100644 --- a/resources/profiles/Prusa/filament/Prusa Generic PC.json +++ b/resources/profiles/Prusa/filament/Prusa Generic PC.json @@ -24,6 +24,10 @@ "Prusa MK4 0.25 nozzle", "Prusa MK4 0.4 nozzle", "Prusa MK4 0.6 nozzle", - "Prusa MK4 0.8 nozzle" + "Prusa MK4 0.8 nozzle", + "Prusa MINIIS 0.4 nozzle", + "Prusa MINIIS 0.25 nozzle", + "Prusa MINIIS 0.6 nozzle", + "Prusa MINIIS 0.8 nozzle" ] } \ No newline at end of file diff --git a/resources/profiles/Prusa/filament/Prusa Generic PETG @MINIIS.json b/resources/profiles/Prusa/filament/Prusa Generic PETG @MINIIS.json new file mode 100644 index 0000000000..eaeaf110a9 --- /dev/null +++ b/resources/profiles/Prusa/filament/Prusa Generic PETG @MINIIS.json @@ -0,0 +1,51 @@ +{ + "type": "filament", + "filament_id": "GFG99_1", + "setting_id": "GFSA04", + "name": "Prusa Generic PETG @MINIIS", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_pet", + "reduce_fan_stop_start_freq": [ + "1" + ], + "slow_down_for_layer_cooling": [ + "1" + ], + "fan_cooling_layer_time": [ + "30" + ], + "overhang_fan_speed": [ + "90" + ], + "overhang_fan_threshold": [ + "25%" + ], + "fan_max_speed": [ + "90" + ], + "fan_min_speed": [ + "40" + ], + "slow_down_min_speed": [ + "10" + ], + "slow_down_layer_time": [ + "8" + ], + "filament_flow_ratio": [ + "0.95" + ], + "filament_max_volumetric_speed": [ + "10" + ], + "filament_start_gcode": [ + "; filament start gcode\nM900 K{if printer_notes=~/.*PRINTER_MODEL_MINIIS.*/ and nozzle_diameter[0]==0.6}0.12{elsif printer_notes=~/.*PRINTER_MODEL_MINIIS.*/ and nozzle_diameter[0]==0.8}0.06{elsif printer_notes=~/.*PRINTER_MODEL_MINIIS.*/}0.2{elsif nozzle_diameter[0]==0.8}0.02{elsif nozzle_diameter[0]==0.6}0.04{else}0.08{endif} ; Filament gcode LA 1.5\n{if printer_notes=~/.*PRINTER_MODEL_MINIIS.*/};{elsif printer_notes=~/.*PRINTER_HAS_BOWDEN.*/}M900 K200{elsif nozzle_diameter[0]==0.6}M900 K24{elsif nozzle_diameter[0]==0.8};{else}M900 K45{endif} ; Filament gcode LA 1.0 \n\nM572 S{if nozzle_diameter[0]==0.6}0.22{elsif nozzle_diameter[0]==0.8}0.15{elsif nozzle_diameter[0]==0.4}0.36{elsif nozzle_diameter[0]==0.25}1.02{else}0{endif}" + ], + "compatible_printers": [ + "Prusa MINIIS 0.4 nozzle", + "Prusa MINIIS 0.25 nozzle", + "Prusa MINIIS 0.6 nozzle", + "Prusa MINIIS 0.8 nozzle" + ] +} diff --git a/resources/profiles/Prusa/filament/Prusa Generic PETG @MK4.json b/resources/profiles/Prusa/filament/Prusa Generic PETG @MK4.json index 383c86b63f..9caa793e9f 100644 --- a/resources/profiles/Prusa/filament/Prusa Generic PETG @MK4.json +++ b/resources/profiles/Prusa/filament/Prusa Generic PETG @MK4.json @@ -43,9 +43,9 @@ "; filament start gcode\nM900 K{if nozzle_diameter[0]==0.4}0.035{elsif nozzle_diameter[0]==0.25}0.12{elsif nozzle_diameter[0]==0.3}0.09{elsif nozzle_diameter[0]==0.35}0.08{elsif nozzle_diameter[0]==0.6}0.04{elsif nozzle_diameter[0]==0.5}0.05{elsif nozzle_diameter[0]==0.8}0.02{else}0{endif} ; Filament gcode\n\n{if printer_notes=~/.*PRINTER_MODEL_MK4IS.*/}\nM572 S{if nozzle_diameter[0]==0.4}0.055{elsif nozzle_diameter[0]==0.5}0.042{elsif nozzle_diameter[0]==0.6}0.025{elsif nozzle_diameter[0]==0.8}0.018{elsif nozzle_diameter[0]==0.25}0.18{elsif nozzle_diameter[0]==0.3}0.1{else}0{endif} ; Filament gcode\n{endif}\n\nM142 S36 ; set heatbreak target temp" ], "compatible_printers": [ - "Prusa MK4 0.25 nozzle", - "Prusa MK4 0.4 nozzle", - "Prusa MK4 0.6 nozzle", - "Prusa MK4 0.8 nozzle" - ] + "Prusa MK4 0.25 nozzle", + "Prusa MK4 0.4 nozzle", + "Prusa MK4 0.6 nozzle", + "Prusa MK4 0.8 nozzle" + ] } diff --git a/resources/profiles/Prusa/filament/Prusa Generic PLA @MINIIS.json b/resources/profiles/Prusa/filament/Prusa Generic PLA @MINIIS.json new file mode 100644 index 0000000000..1e6dea76c5 --- /dev/null +++ b/resources/profiles/Prusa/filament/Prusa Generic PLA @MINIIS.json @@ -0,0 +1,26 @@ +{ + "type": "filament", + "filament_id": "GFL99_2", + "setting_id": "GFSA04", + "name": "Prusa Generic PLA @MINIIS", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_pla", + "filament_flow_ratio": [ + "0.98" + ], + "filament_max_volumetric_speed": [ + "14" + ], + "slow_down_layer_time": [ + "8" + ], + "filament_start_gcode": [ + "; filament start gcode\nM900 K{if printer_notes=~/.*PRINTER_MODEL_MINIIS.*/ and nozzle_diameter[0]==0.6}0.12{elsif printer_notes=~/.*PRINTER_MODEL_MINIIS.*/ and nozzle_diameter[0]==0.8}0.06{elsif printer_notes=~/.*PRINTER_MODEL_MINIIS.*/}0.2{elsif nozzle_diameter[0]==0.8}0.01{elsif nozzle_diameter[0]==0.6}0.04{else}0.05{endif} ; Filament gcode LA 1.5\n{if printer_notes=~/.*PRINTER_MODEL_MINIIS.*/};{elsif printer_notes=~/.*PRINTER_HAS_BOWDEN.*/}M900 K200{elsif nozzle_diameter[0]==0.6}M900 K18{elsif nozzle_diameter[0]==0.8};{else}M900 K30{endif} ; Filament gcode LA 1.0 \n\nM572 S{if nozzle_diameter[0]==0.6}0.17{elsif nozzle_diameter[0]==0.8}0.12{elsif nozzle_diameter[0]==0.4}0.27{elsif nozzle_diameter[0]==0.25}0.85{else}0{endif}" ], + "compatible_printers": [ + "Prusa MINIIS 0.4 nozzle", + "Prusa MINIIS 0.25 nozzle", + "Prusa MINIIS 0.6 nozzle", + "Prusa MINIIS 0.8 nozzle" + ] +} diff --git a/resources/profiles/Prusa/filament/Prusa Generic PLA-CF.json b/resources/profiles/Prusa/filament/Prusa Generic PLA-CF.json index a167d5683f..4461005ad3 100644 --- a/resources/profiles/Prusa/filament/Prusa Generic PLA-CF.json +++ b/resources/profiles/Prusa/filament/Prusa Generic PLA-CF.json @@ -30,6 +30,10 @@ "Prusa MK4 0.25 nozzle", "Prusa MK4 0.4 nozzle", "Prusa MK4 0.6 nozzle", - "Prusa MK4 0.8 nozzle" + "Prusa MK4 0.8 nozzle", + "Prusa MINIIS 0.4 nozzle", + "Prusa MINIIS 0.25 nozzle", + "Prusa MINIIS 0.6 nozzle", + "Prusa MINIIS 0.8 nozzle" ] } \ No newline at end of file diff --git a/resources/profiles/Prusa/filament/Prusa Generic PVA.json b/resources/profiles/Prusa/filament/Prusa Generic PVA.json index 2c0e2017e3..ee80f6c637 100644 --- a/resources/profiles/Prusa/filament/Prusa Generic PVA.json +++ b/resources/profiles/Prusa/filament/Prusa Generic PVA.json @@ -30,6 +30,10 @@ "Prusa MK4 0.25 nozzle", "Prusa MK4 0.4 nozzle", "Prusa MK4 0.6 nozzle", - "Prusa MK4 0.8 nozzle" + "Prusa MK4 0.8 nozzle", + "Prusa MINIIS 0.4 nozzle", + "Prusa MINIIS 0.25 nozzle", + "Prusa MINIIS 0.6 nozzle", + "Prusa MINIIS 0.8 nozzle" ] } diff --git a/resources/profiles/Prusa/filament/Prusa Generic TPU @MINIIS.json b/resources/profiles/Prusa/filament/Prusa Generic TPU @MINIIS.json new file mode 100644 index 0000000000..a416b2b34d --- /dev/null +++ b/resources/profiles/Prusa/filament/Prusa Generic TPU @MINIIS.json @@ -0,0 +1,24 @@ +{ + "type": "filament", + "filament_id": "GFU99_2", + "setting_id": "GFSA04", + "name": "Prusa Generic TPU @MINIIS", + "from": "system", + "instantiation": "true", + "inherits": "fdm_filament_tpu", + "filament_max_volumetric_speed": [ + "3.2" + ], + "filament_flow_ratio": [ + "1.08" + ], + "filament_start_gcode": [ + "M572 S{if nozzle_diameter[0]==0.6}0.22{elsif nozzle_diameter[0]==0.8}0.15{elsif nozzle_diameter[0]==0.4}0.36{elsif nozzle_diameter[0]==0.25}1.02{else}0{endif}" + ], + "compatible_printers": [ + "Prusa MINIIS 0.4 nozzle", + "Prusa MINIIS 0.25 nozzle", + "Prusa MINIIS 0.6 nozzle", + "Prusa MINIIS 0.8 nozzle" + ] +} diff --git a/resources/profiles/Prusa/machine/Prusa MINIIS 0.25 nozzle.json b/resources/profiles/Prusa/machine/Prusa MINIIS 0.25 nozzle.json new file mode 100644 index 0000000000..26efc8107e --- /dev/null +++ b/resources/profiles/Prusa/machine/Prusa MINIIS 0.25 nozzle.json @@ -0,0 +1,114 @@ +{ + "type": "machine", + "setting_id": "GM004", + "name": "Prusa MINIIS 0.25 nozzle", + "from": "system", + "instantiation": "true", + "inherits": "fdm_machine_common", + "gcode_flavor": "marlin2", + "printer_model": "MINIIS", + "printer_variant": "0.25", + "default_filament_profile": [ + "Prusa Generic PLA @MINIIS" + ], + "default_print_profile": "0.20mm Standard @MINIIS", + "nozzle_diameter": [ + "0.25" + ], + "bed_exclude_area": [ + "0x0" + ], + "printable_area": [ + "0x0", + "180x0", + "180x180", + "0x180" + ], + "machine_max_acceleration_e": [ + "5000", + "5000" + ], + "machine_max_acceleration_extruding": [ + "4000", + "4000" + ], + "machine_max_acceleration_retracting": [ + "1250", + "1250" + ], + "machine_max_acceleration_x": [ + "4000", + "4000" + ], + "machine_max_acceleration_y": [ + "4000", + "4000" + ], + "machine_max_acceleration_z": [ + "400", + "400" + ], + "machine_max_acceleration_travel": [ + "4000", + "4000" + ], + "machine_max_jerk_e": [ + "10", + "2.5" + ], + "machine_max_jerk_x": [ + "8", + "8" + ], + "machine_max_jerk_y": [ + "8", + "8" + ], + "machine_max_jerk_z": [ + "2", + "2" + ], + "machine_max_speed_e": [ + "80", + "25" + ], + "machine_max_speed_x": [ + "400", + "400" + ], + "machine_max_speed_y": [ + "400", + "400" + ], + "retraction_length": [ + "2.5" + ], + "retraction_minimum_travel": [ + "1" + ], + "retraction_speed": [ + "70" + ], + "z_hop": [ + "0.2" + ], + "host_type": "prusalink", + "printable_height": "180", + "machine_end_gcode": "{if max_layer_z < max_print_height}G1 Z{z_offset+min(max_layer_z+2, max_print_height)} F720 ; Move print head up{endif}\nG1 X170 Y170 F4200 ; park print head\n{if max_layer_z < max_print_height}G1 Z{z_offset+min(max_layer_z+50, max_print_height)} F720 ; Move print head further up{endif}\nG4 ; wait\nM104 S0 ; turn off temperature\nM140 S0 ; turn off heatbed\nM107 ; turn off fan\nM221 S100 ; reset flow\nM572 S0 ; reset PA\nM569 S1 X Y ; reset to stealthchop for X Y\nM84 ; disable motors\n; max_layer_z = [max_layer_z]", + "machine_pause_gcode": "M601", + "machine_start_gcode": "M862.3 P \"MINI\" ; printer model check\nM862.1 P[nozzle_diameter] ; nozzle diameter check\nM862.5 P2 ; g-code level check\nM862.6 P\"Input shaper\" ; FW feature check\nM115 U5.1.2+13478\nG90 ; use absolute coordinates\nM83 ; extruder relative mode\nM104 S170 ; set extruder temp for bed leveling\nM140 S[first_layer_bed_temperature] ; set bed temp\nM109 R170 ; wait for bed leveling temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM569 S1 X Y ; set stealthchop for X Y\nM204 T1250 ; set travel acceleration\nG28 ; home all without mesh bed level\nG29 ; mesh bed leveling \nM104 S[first_layer_temperature] ; set extruder temp\nG92 E0\n\nG1 X0 Y-2 Z3 F2400\n\nM109 S[first_layer_temperature] ; wait for extruder temp\n\n; intro line\nG1 X10 Z0.2 F1000\nG1 X70 E8 F900\nG1 X140 E10 F700\nG92 E0\n\nM569 S0 X Y ; set spreadcycle for X Y\nM204 T[machine_max_acceleration_travel] ; restore travel acceleration\nM572 W0.06 ; set smooth time\nM221 S95 ; set flow", + "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\nG92 E0.0\n;[layer_z]\nM201 X{interpolate_table(extruded_weight_total, (0,4000), (1000,1700), (10000,1700))} Y{interpolate_table(extruded_weight_total, (0,4000), (1000,1700), (10000,1700))}\n{if ! spiral_mode}M74 W[extruded_weight_total]{endif}\n", + "change_filament_gcode": "M600\nG1 E0.4 F1500 ; prime after color change", + "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", + "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_PRUSA3D\nPRINTER_MODEL_MINIIS\nNO_TEMPLATES", + "scan_first_layer": "0", + "machine_load_filament_time": "17", + "machine_unload_filament_time": "16", + "nozzle_type": "brass", + "auxiliary_fan": "0", + "thumbnails": [ + "16x16", + "313x173", + "440x240" + ] +} diff --git a/resources/profiles/Prusa/machine/Prusa MINIIS 0.4 nozzle.json b/resources/profiles/Prusa/machine/Prusa MINIIS 0.4 nozzle.json new file mode 100644 index 0000000000..c3cf15a8c3 --- /dev/null +++ b/resources/profiles/Prusa/machine/Prusa MINIIS 0.4 nozzle.json @@ -0,0 +1,114 @@ +{ + "type": "machine", + "setting_id": "GM003", + "name": "Prusa MINIIS 0.4 nozzle", + "from": "system", + "instantiation": "true", + "inherits": "fdm_machine_common", + "gcode_flavor": "marlin2", + "printer_model": "MINIIS", + "printer_variant": "0.4", + "default_filament_profile": [ + "Prusa Generic PLA @MINIIS" + ], + "default_print_profile": "0.20mm Standard @MINIIS", + "nozzle_diameter": [ + "0.4" + ], + "bed_exclude_area": [ + "0x0" + ], + "printable_area": [ + "0x0", + "180x0", + "180x180", + "0x180" + ], + "machine_max_acceleration_e": [ + "5000", + "5000" + ], + "machine_max_acceleration_extruding": [ + "4000", + "4000" + ], + "machine_max_acceleration_retracting": [ + "1250", + "1250" + ], + "machine_max_acceleration_x": [ + "4000", + "4000" + ], + "machine_max_acceleration_y": [ + "4000", + "4000" + ], + "machine_max_acceleration_z": [ + "400", + "400" + ], + "machine_max_acceleration_travel": [ + "4000", + "4000" + ], + "machine_max_jerk_e": [ + "10", + "2.5" + ], + "machine_max_jerk_x": [ + "8", + "8" + ], + "machine_max_jerk_y": [ + "8", + "8" + ], + "machine_max_jerk_z": [ + "2", + "2" + ], + "machine_max_speed_e": [ + "80", + "25" + ], + "machine_max_speed_x": [ + "400", + "400" + ], + "machine_max_speed_y": [ + "400", + "400" + ], + "retraction_length": [ + "2.5" + ], + "retraction_minimum_travel": [ + "1.5" + ], + "retraction_speed": [ + "70" + ], + "z_hop": [ + "0.2" + ], + "host_type": "prusalink", + "printable_height": "180", + "machine_end_gcode": "{if max_layer_z < max_print_height}G1 Z{z_offset+min(max_layer_z+2, max_print_height)} F720 ; Move print head up{endif}\nG1 X170 Y170 F4200 ; park print head\n{if max_layer_z < max_print_height}G1 Z{z_offset+min(max_layer_z+50, max_print_height)} F720 ; Move print head further up{endif}\nG4 ; wait\nM104 S0 ; turn off temperature\nM140 S0 ; turn off heatbed\nM107 ; turn off fan\nM221 S100 ; reset flow\nM572 S0 ; reset PA\nM569 S1 X Y ; reset to stealthchop for X Y\nM84 ; disable motors\n; max_layer_z = [max_layer_z]", + "machine_pause_gcode": "M601", + "machine_start_gcode": "M862.3 P \"MINI\" ; printer model check\nM862.1 P[nozzle_diameter] ; nozzle diameter check\nM862.5 P2 ; g-code level check\nM862.6 P\"Input shaper\" ; FW feature check\nM115 U5.1.2+13478\nG90 ; use absolute coordinates\nM83 ; extruder relative mode\nM104 S170 ; set extruder temp for bed leveling\nM140 S[first_layer_bed_temperature] ; set bed temp\nM109 R170 ; wait for bed leveling temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM569 S1 X Y ; set stealthchop for X Y\nM204 T1250 ; set travel acceleration\nG28 ; home all without mesh bed level\nG29 ; mesh bed leveling \nM104 S[first_layer_temperature] ; set extruder temp\nG92 E0\n\nG1 X0 Y-2 Z3 F2400\n\nM109 S[first_layer_temperature] ; wait for extruder temp\n\n; intro line\nG1 X10 Z0.2 F1000\nG1 X70 E8 F900\nG1 X140 E10 F700\nG92 E0\n\nM569 S0 X Y ; set spreadcycle for X Y\nM204 T[machine_max_acceleration_travel] ; restore travel acceleration\nM572 W0.06 ; set smooth time\nM221 S95 ; set flow", + "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\nG92 E0.0\n;[layer_z]\nM201 X{interpolate_table(extruded_weight_total, (0,4000), (1000,1700), (10000,1700))} Y{interpolate_table(extruded_weight_total, (0,4000), (1000,1700), (10000,1700))}\n{if ! spiral_mode}M74 W[extruded_weight_total]{endif}\n", + "change_filament_gcode": "M600\nG1 E0.4 F1500 ; prime after color change", + "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", + "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_PRUSA3D\nPRINTER_MODEL_MINIIS\nNO_TEMPLATES", + "scan_first_layer": "0", + "machine_load_filament_time": "17", + "machine_unload_filament_time": "16", + "nozzle_type": "brass", + "auxiliary_fan": "0", + "thumbnails": [ + "16x16", + "313x173", + "440x240" + ] +} diff --git a/resources/profiles/Prusa/machine/Prusa MINIIS 0.6 nozzle.json b/resources/profiles/Prusa/machine/Prusa MINIIS 0.6 nozzle.json new file mode 100644 index 0000000000..b5562c3087 --- /dev/null +++ b/resources/profiles/Prusa/machine/Prusa MINIIS 0.6 nozzle.json @@ -0,0 +1,114 @@ +{ + "type": "machine", + "setting_id": "GM002", + "name": "Prusa MINIIS 0.6 nozzle", + "from": "system", + "instantiation": "true", + "inherits": "fdm_machine_common", + "gcode_flavor": "marlin2", + "printer_model": "MINIIS", + "printer_variant": "0.6", + "default_filament_profile": [ + "Prusa Generic PLA @MINIIS" + ], + "default_print_profile": "0.20mm Standard @MINIIS", + "nozzle_diameter": [ + "0.6" + ], + "bed_exclude_area": [ + "0x0" + ], + "printable_area": [ + "0x0", + "180x0", + "180x180", + "0x180" + ], + "machine_max_acceleration_e": [ + "5000", + "5000" + ], + "machine_max_acceleration_extruding": [ + "4000", + "4000" + ], + "machine_max_acceleration_retracting": [ + "1250", + "1250" + ], + "machine_max_acceleration_x": [ + "4000", + "4000" + ], + "machine_max_acceleration_y": [ + "4000", + "4000" + ], + "machine_max_acceleration_z": [ + "400", + "400" + ], + "machine_max_acceleration_travel": [ + "4000", + "4000" + ], + "machine_max_jerk_e": [ + "10", + "2.5" + ], + "machine_max_jerk_x": [ + "8", + "8" + ], + "machine_max_jerk_y": [ + "8", + "8" + ], + "machine_max_jerk_z": [ + "2", + "2" + ], + "machine_max_speed_e": [ + "80", + "25" + ], + "machine_max_speed_x": [ + "400", + "400" + ], + "machine_max_speed_y": [ + "400", + "400" + ], + "retraction_length": [ + "2.8" + ], + "retraction_minimum_travel": [ + "1.5" + ], + "retraction_speed": [ + "70" + ], + "z_hop": [ + "0.2" + ], + "host_type": "prusalink", + "printable_height": "180", + "machine_end_gcode": "{if max_layer_z < max_print_height}G1 Z{z_offset+min(max_layer_z+2, max_print_height)} F720 ; Move print head up{endif}\nG1 X170 Y170 F4200 ; park print head\n{if max_layer_z < max_print_height}G1 Z{z_offset+min(max_layer_z+50, max_print_height)} F720 ; Move print head further up{endif}\nG4 ; wait\nM104 S0 ; turn off temperature\nM140 S0 ; turn off heatbed\nM107 ; turn off fan\nM221 S100 ; reset flow\nM572 S0 ; reset PA\nM569 S1 X Y ; reset to stealthchop for X Y\nM84 ; disable motors\n; max_layer_z = [max_layer_z]", + "machine_pause_gcode": "M601", + "machine_start_gcode": "M862.3 P \"MINI\" ; printer model check\nM862.1 P[nozzle_diameter] ; nozzle diameter check\nM862.5 P2 ; g-code level check\nM862.6 P\"Input shaper\" ; FW feature check\nM115 U5.1.2+13478\nG90 ; use absolute coordinates\nM83 ; extruder relative mode\nM104 S170 ; set extruder temp for bed leveling\nM140 S[first_layer_bed_temperature] ; set bed temp\nM109 R170 ; wait for bed leveling temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM569 S1 X Y ; set stealthchop for X Y\nM204 T1250 ; set travel acceleration\nG28 ; home all without mesh bed level\nG29 ; mesh bed leveling \nM104 S[first_layer_temperature] ; set extruder temp\nG92 E0\n\nG1 X0 Y-2 Z3 F2400\n\nM109 S[first_layer_temperature] ; wait for extruder temp\n\n; intro line\nG1 X10 Z0.2 F1000\nG1 X70 E8 F900\nG1 X140 E10 F700\nG92 E0\n\nM569 S0 X Y ; set spreadcycle for X Y\nM204 T[machine_max_acceleration_travel] ; restore travel acceleration\nM572 W0.06 ; set smooth time\nM221 S95 ; set flow", + "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\nG92 E0.0\n;[layer_z]\nM201 X{interpolate_table(extruded_weight_total, (0,4000), (1000,1700), (10000,1700))} Y{interpolate_table(extruded_weight_total, (0,4000), (1000,1700), (10000,1700))}\n{if ! spiral_mode}M74 W[extruded_weight_total]{endif}\n", + "change_filament_gcode": "M600\nG1 E0.4 F1500 ; prime after color change", + "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", + "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_PRUSA3D\nPRINTER_MODEL_MINIIS\nNO_TEMPLATES", + "scan_first_layer": "0", + "machine_load_filament_time": "17", + "machine_unload_filament_time": "16", + "nozzle_type": "brass", + "auxiliary_fan": "0", + "thumbnails": [ + "16x16", + "313x173", + "440x240" + ] +} diff --git a/resources/profiles/Prusa/machine/Prusa MINIIS 0.8 nozzle.json b/resources/profiles/Prusa/machine/Prusa MINIIS 0.8 nozzle.json new file mode 100644 index 0000000000..97a9ce0206 --- /dev/null +++ b/resources/profiles/Prusa/machine/Prusa MINIIS 0.8 nozzle.json @@ -0,0 +1,114 @@ +{ + "type": "machine", + "setting_id": "GM001", + "name": "Prusa MINIIS 0.8 nozzle", + "from": "system", + "instantiation": "true", + "inherits": "fdm_machine_common", + "gcode_flavor": "marlin2", + "printer_model": "MINIIS", + "printer_variant": "0.8", + "default_filament_profile": [ + "Prusa Generic PLA @MINIIS" + ], + "default_print_profile": "0.20mm Standard @MINIIS", + "nozzle_diameter": [ + "0.8" + ], + "bed_exclude_area": [ + "0x0" + ], + "printable_area": [ + "0x0", + "180x0", + "180x180", + "0x180" + ], + "machine_max_acceleration_e": [ + "5000", + "5000" + ], + "machine_max_acceleration_extruding": [ + "4000", + "4000" + ], + "machine_max_acceleration_retracting": [ + "1250", + "1250" + ], + "machine_max_acceleration_x": [ + "4000", + "4000" + ], + "machine_max_acceleration_y": [ + "4000", + "4000" + ], + "machine_max_acceleration_z": [ + "400", + "400" + ], + "machine_max_acceleration_travel": [ + "4000", + "4000" + ], + "machine_max_jerk_e": [ + "10", + "2.5" + ], + "machine_max_jerk_x": [ + "8", + "8" + ], + "machine_max_jerk_y": [ + "8", + "8" + ], + "machine_max_jerk_z": [ + "2", + "2" + ], + "machine_max_speed_e": [ + "80", + "25" + ], + "machine_max_speed_x": [ + "400", + "400" + ], + "machine_max_speed_y": [ + "400", + "400" + ], + "retraction_length": [ + "2.8" + ], + "retraction_minimum_travel": [ + "1.5" + ], + "retraction_speed": [ + "40" + ], + "z_hop": [ + "0.2" + ], + "host_type": "prusalink", + "printable_height": "180", + "machine_end_gcode": "{if max_layer_z < max_print_height}G1 Z{z_offset+min(max_layer_z+2, max_print_height)} F720 ; Move print head up{endif}\nG1 X170 Y170 F4200 ; park print head\n{if max_layer_z < max_print_height}G1 Z{z_offset+min(max_layer_z+50, max_print_height)} F720 ; Move print head further up{endif}\nG4 ; wait\nM104 S0 ; turn off temperature\nM140 S0 ; turn off heatbed\nM107 ; turn off fan\nM221 S100 ; reset flow\nM572 S0 ; reset PA\nM569 S1 X Y ; reset to stealthchop for X Y\nM84 ; disable motors\n; max_layer_z = [max_layer_z]", + "machine_pause_gcode": "M601", + "machine_start_gcode": "M862.3 P \"MINI\" ; printer model check\nM862.1 P[nozzle_diameter] ; nozzle diameter check\nM862.5 P2 ; g-code level check\nM862.6 P\"Input shaper\" ; FW feature check\nM115 U5.1.2+13478\nG90 ; use absolute coordinates\nM83 ; extruder relative mode\nM104 S170 ; set extruder temp for bed leveling\nM140 S[first_layer_bed_temperature] ; set bed temp\nM109 R170 ; wait for bed leveling temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM569 S1 X Y ; set stealthchop for X Y\nM204 T1250 ; set travel acceleration\nG28 ; home all without mesh bed level\nG29 ; mesh bed leveling \nM104 S[first_layer_temperature] ; set extruder temp\nG92 E0\n\nG1 X0 Y-2 Z3 F2400\n\nM109 S[first_layer_temperature] ; wait for extruder temp\n\n; intro line\nG1 X10 Z0.2 F1000\nG1 X70 E8 F900\nG1 X140 E10 F700\nG92 E0\n\nM569 S0 X Y ; set spreadcycle for X Y\nM204 T[machine_max_acceleration_travel] ; restore travel acceleration\nM572 W0.06 ; set smooth time\nM221 S95 ; set flow", + "before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\nG92 E0.0\n;[layer_z]\nM201 X{interpolate_table(extruded_weight_total, (0,4000), (1000,1700), (10000,1700))} Y{interpolate_table(extruded_weight_total, (0,4000), (1000,1700), (10000,1700))}\n{if ! spiral_mode}M74 W[extruded_weight_total]{endif}\n", + "change_filament_gcode": "M600\nG1 E0.4 F1500 ; prime after color change", + "layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]", + "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_PRUSA3D\nPRINTER_MODEL_MINIIS\nNO_TEMPLATES", + "scan_first_layer": "0", + "machine_load_filament_time": "17", + "machine_unload_filament_time": "16", + "nozzle_type": "brass", + "auxiliary_fan": "0", + "thumbnails": [ + "16x16", + "313x173", + "440x240" + ] +} diff --git a/resources/profiles/Prusa/machine/Prusa MINIIS.json b/resources/profiles/Prusa/machine/Prusa MINIIS.json new file mode 100644 index 0000000000..6c42d6c770 --- /dev/null +++ b/resources/profiles/Prusa/machine/Prusa MINIIS.json @@ -0,0 +1,12 @@ +{ + "type": "machine_model", + "name": "Prusa MINI", + "model_id": "MINI", + "nozzle_diameter": "0.25;0.4;0.6;0.8", + "machine_tech": "FFF", + "family": "Prusa", + "bed_model": "miniis_bed.stl", + "bed_texture": "miniis.svg", + "hotend_model": "", + "default_materials": "Prusa Generic PLA-CF;Prusa Generic PC;Prusa Generic PVA;Prusa Generic PA;Prusa Generic PA-CF;Prusa Generic ABS @MK4;Prusa Generic PLA @MK4;Prusa Generic PETG @MK4;Prusa Generic TPU @MK4;Prusa Generic ASA @MK4;" +} diff --git a/resources/profiles/Prusa/miniis.svg b/resources/profiles/Prusa/miniis.svg new file mode 100644 index 0000000000..96c8fdec08 --- /dev/null +++ b/resources/profiles/Prusa/miniis.svg @@ -0,0 +1,32 @@ + + MINI_bed_texture + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/resources/profiles/Prusa/miniis_bed.stl b/resources/profiles/Prusa/miniis_bed.stl new file mode 100644 index 0000000000000000000000000000000000000000..2f4c45b7b150b7883c038f2104c53e8aa35fe812 GIT binary patch literal 57884 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