add cura profile
This commit is contained in:
		
							
								
								
									
										63
									
								
								03-cura/01-configuration/README.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										63
									
								
								03-cura/01-configuration/README.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,63 @@ | ||||
| # Install Cura Plugins | ||||
|  | ||||
| - Settings Guide | ||||
| - Sidebar GUI | ||||
| - Moonraker Connection | ||||
| - Material Settings | ||||
| - Power Cost | ||||
| - Klipper Settings | ||||
| - AutoTowers Generator | ||||
| - Auto-Orientation | ||||
| - Automatic Slicing Toggle | ||||
| - Material Cost Tools | ||||
|  | ||||
| # Disable Cura Plugins | ||||
|  | ||||
| - USB Printing | ||||
|  | ||||
|  | ||||
| # Loading Cura Printer Profiles | ||||
|  | ||||
| Cura loads printer quality configuration files in a stack. | ||||
| The following files must be present in order for Cura to load a profile. | ||||
|  | ||||
| ## Quality File | ||||
|  | ||||
| The file `quality/flsun_v400_global_<quality>_Quality.inst.cfg` defines some global properties for all nozzle sizes and | ||||
| all materials. Linking global qualities to layer heights is a valid example, but not a must. Cura's intentions seems to | ||||
| be centred on print speed. | ||||
|  | ||||
| `<quality>`  should be replaced with one of the values following values, at least one must be present. | ||||
|  | ||||
| - Superdraft (e.g. for layer height of `0.4mm`, or a speed of `600mm/s`) | ||||
| - Verydraft (e.g. for a layer height of `0.3mm`, or a speed of `400mm/s`) | ||||
| - Draft (e.g. for a layer height of `0.2mm`, or a speed of `300mm/s`) | ||||
| - Fast (e.g. for a layer height of `0.15mm`, or a speed of `200mm/s`) | ||||
| - Normal (e.g. for a layer height of `0.1mm`, or a speed of `150mm/s`) | ||||
| - High (e.g. for a layer height of `0.06mm`, or a speed of `80mm/s`) | ||||
|  | ||||
| ## Variant File | ||||
|  | ||||
| On top of the global quality file, there needs to be setting file for each variant: | ||||
| `variants/flsun_v400_<variant>.inst.cfg`. The settings in these files are specific to the variant, but are independent | ||||
| of all quality or material settings. | ||||
|  | ||||
| Variants can be whatever machine detail you want to choose. Commonly, this is the nozzle size. | ||||
|  | ||||
| ## Specific Settings | ||||
|  | ||||
| The third layer of the stack is the quality, material, and variant specific settings in  | ||||
| `quality/<material>/<variant>/flsun_v400_<variant>_<material>_<quality>_Quality.inst.cfg`. | ||||
|  | ||||
| ## Intentions | ||||
|  | ||||
| Optionally, there can be even more modifications of settings in intent files.  | ||||
| They are stored in the intents folder with the name intent | ||||
| `<material>/flsun_v400_<variant>_<material>_<quality>_<intent>.inst.cfg`. | ||||
|  | ||||
| This file can modify settings that are only relevant for specific intents. Examples for intents are | ||||
|  | ||||
| - Dimensional accuracy | ||||
| - Visual Quality | ||||
| - Smooth Surface | ||||
| - etc | ||||
							
								
								
									
										74
									
								
								03-cura/01-configuration/cura-parameter-list.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										74
									
								
								03-cura/01-configuration/cura-parameter-list.html
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,74 @@ | ||||
| <html> | ||||
| <head> | ||||
| <meta charset="utf-8"/> | ||||
| <title>Settings and replacement patterns</title> | ||||
| <script type="text/javascript"> | ||||
| function showJSON(file) { | ||||
|   var xobj = new XMLHttpRequest(); | ||||
|   xobj.overrideMimeType("application/json"); | ||||
|   xobj.open('GET', file, false); | ||||
|   xobj.onreadystatechange = function () { | ||||
|     if (xobj.readyState == 4 && xobj.status == "200") { | ||||
|       var json = JSON.parse(xobj.responseText); | ||||
|  | ||||
|       for(var category_id in json.settings) { | ||||
|         var category = json.settings[category_id]; | ||||
|         document.write("<tr><th colspan=\"3\">" + category.label + "</th></tr>"); | ||||
|         formatSettings(category.children); | ||||
|       } | ||||
|     } | ||||
|   }; | ||||
|   xobj.send(null); | ||||
| } | ||||
|  | ||||
| function formatSettings(settings) { | ||||
|   for(var setting_id in settings) { | ||||
|     var setting = settings[setting_id]; | ||||
|     document.write("<tr><td>{" + setting_id + "}</td><td>" + setting.label + "</td><td>" + setting.description + "</td></tr>"); | ||||
|     if(setting.children) { | ||||
|       formatSettings(setting.children) | ||||
|     } | ||||
|   } | ||||
| } | ||||
| </script> | ||||
| </head> | ||||
| <body> | ||||
|   <h1>Settings and replacement patterns</h1> | ||||
|   <h2>Application-defined patterns</h2> | ||||
|   <table> | ||||
|   <script type="text/javascript"> | ||||
|     formatSettings({ | ||||
|       "time": {"label": "", "description": "Time when slicing started"}, | ||||
|       "date": {"label": "", "description": "Date when slicing started"}, | ||||
|       "day": {"label": "", "description": "Day when slicing started"}, | ||||
|       "initial_extruder_nr": {"label": "", "description": "The first extruder train used for the print"}, | ||||
|       "print_temperature": {"label": "", "description": "Alias for material_print_temperature (deprecated, do not use)"}, | ||||
|       "print_bed_temperature": {"label": "", "description": "Alias for material_bed_temperature (deprecated, do not use)"}, | ||||
|       "travel_speed": {"label": "", "description": "Alias for speed_travel (deprecated, do not use)"}, | ||||
|       "material_id": {"label": "", "description": "The id of the material (eg 'ultimaker_pla_blue')"}, | ||||
|       "material_type": {"label": "", "description": "The type of material (eg 'PLA')"}, | ||||
|       "material_name": {"label": "", "description": "The display name of the material (eg 'Blue PLA'"}, | ||||
|       "material_brand": {"label": "", "description": "The brand of the material (eg 'Ultimaker')"}, | ||||
|       "print_time": {"label": "", "description": "The print duration in ISO8601 format"}, | ||||
|       "filament_amount": {"label": "", "description": "List of the lengths of extruded filaments per extruder"}, | ||||
|       "filament_weight": {"label": "", "description": "List of the weights of extruded filament per extruder, if material density is known"}, | ||||
|       "filament_cost": {"label": "", "description": "List of the cost of the extruded filaments per extruder, if the price of the material is known"}, | ||||
|       "jobname": {"label": "", "description": "Print job name"} | ||||
|     }); | ||||
|   </script> | ||||
|   </table> | ||||
|   <h2>Settings</h2> | ||||
|   <p>The following settings are defined in <a href="https://github.com/Ultimaker/Cura/blob/master/resources/definitions/fdmprinter.def.json">fdmprinter.def.json</a>.</p> | ||||
|   <table> | ||||
|   <script type="text/javascript"> | ||||
|     showJSON("https://raw.githubusercontent.com/Ultimaker/Cura/master/resources/definitions/fdmprinter.def.json"); | ||||
|   </script> | ||||
|   </table> | ||||
|   <h2>Extruder settings</h2> | ||||
|   <p>The following settings are defined in <a href="https://github.com/Ultimaker/Cura/blob/master/resources/definitions/fdmextruder.def.json">fdmextruder.def.json</a>, and are only settable per extruder</p> | ||||
|   <table> | ||||
|   <script type="text/javascript"> | ||||
|     showJSON("https://raw.githubusercontent.com/Ultimaker/Cura/master/resources/definitions/fdmextruder.def.json"); | ||||
|   </script> | ||||
|   </table> | ||||
| </body> | ||||
							
								
								
									
										45
									
								
								03-cura/01-configuration/definitions/flsun_v400.def.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										45
									
								
								03-cura/01-configuration/definitions/flsun_v400.def.json
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,45 @@ | ||||
| { | ||||
|     "version": 2, | ||||
|     "name": "Flsun V400", | ||||
|     "inherits": "fdmprinter", | ||||
|     "metadata": | ||||
|     { | ||||
|         "visible": true, | ||||
|         "author": "FLSUN, Guislain Cyril, Frank Zechert", | ||||
|         "manufacturer": "Flsun", | ||||
|         "file_formats": "text/x-gcode", | ||||
|         "platform": "flsun_v400.stl", | ||||
|         "has_machine_quality": true, | ||||
|         "has_materials": true, | ||||
|         "machine_extruder_trains": { "0": "flsun_v400_extruder_0" }, | ||||
|         "platform_offset": [ | ||||
|             0, | ||||
|             -40.6455, | ||||
|             -43.5 | ||||
|         ] | ||||
|     }, | ||||
|     "overrides": | ||||
|     { | ||||
|         "gantry_height": { "value": "0" }, | ||||
|         "infill_sparse_density": { "default_value": 15 }, | ||||
|         "machine_center_is_zero": { "default_value": true }, | ||||
|         "machine_depth": { "default_value": 300 }, | ||||
|         "machine_end_gcode": { "default_value": "END_PRINT\n" }, | ||||
|         "machine_head_with_fans_polygon": | ||||
|         { | ||||
|             "default_value": [ | ||||
|                 [0, 0], | ||||
|                 [0, 0], | ||||
|                 [0, 0], | ||||
|                 [0, 0] | ||||
|             ] | ||||
|         }, | ||||
|         "machine_heated_bed": { "default_value": true }, | ||||
|         "machine_height": { "default_value": 410 }, | ||||
|         "machine_shape": { "default_value": "elliptic" }, | ||||
|         "machine_start_gcode": { "default_value": ";Nozzle diameter = {machine_nozzle_size}\n;Filament type = {material_type}\n;Filament name = {material_brand} {material_name}\n;Filament weight = {filament_weight}\n;M109 S{material_print_temperature}\n;M190 S{material_bed_temperature}\n\nSTART_PRINT BED_TEMP={material_bed_temperature_layer_0} EXTRUDER_TEMP={material_print_temperature_layer_0}\n" }, | ||||
|         "machine_width": { "default_value": 300 }, | ||||
|         "material_diameter": { "default_value": 1.75 }, | ||||
|         "z_seam_type": { "value": "'sharpest_corner'" } | ||||
|     } | ||||
| } | ||||
| @@ -0,0 +1,15 @@ | ||||
| { | ||||
|     "version": 2, | ||||
|     "name": "Extruder 1", | ||||
|     "inherits": "fdmextruder", | ||||
|     "metadata": | ||||
|     { | ||||
|         "machine": "flsun_v400", | ||||
|         "position": "0" | ||||
|     }, | ||||
|     "overrides": | ||||
|     { | ||||
|         "extruder_nr": { "default_value": 0 }, | ||||
|         "material_diameter": { "default_value": 1.75 } | ||||
|     } | ||||
| } | ||||
							
								
								
									
										42
									
								
								03-cura/01-configuration/install.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										42
									
								
								03-cura/01-configuration/install.sh
									
									
									
									
									
										Executable file
									
								
							| @@ -0,0 +1,42 @@ | ||||
| #!/bin/bash | ||||
|  | ||||
| DIR="$(dirname "$(realpath "$0")")" | ||||
| CURA_CONFIG_BASE="${HOME}/.config/cura" | ||||
| CURA_FOLDER="/opt/ultimaker-cura" | ||||
|  | ||||
| function get_cura_directories() { | ||||
| 	local VERSION | ||||
| 	VERSION=$(find "${CURA_CONFIG_BASE}" -maxdepth 1 -mindepth 1 -type d -printf "%f\n" -prune | sort -gr | head -n1) | ||||
| 	CURA_CONFIG="${HOME}/.config/cura/${VERSION}" | ||||
| 	CURA_SHARE="${HOME}/.local/share/cura/${VERSION}" | ||||
| 	CURA_INTERNAL_SHARE="${CURA_FOLDER}/share/cura/resources" | ||||
| } | ||||
|  | ||||
| get_cura_directories | ||||
|  | ||||
| echo "-------------------" | ||||
| echo "Cura Configuration Folder: ${CURA_CONFIG}" | ||||
| echo "Cura Share Folder: ${CURA_SHARE}" | ||||
| echo "Cura Folder: ${CURA_FOLDER}" | ||||
| echo "Own Folder: ${DIR}" | ||||
| echo "-------------------" | ||||
| echo "Deleting existing Cura resources for the printer FLSUN V400" | ||||
| find "${CURA_INTERNAL_SHARE}" -type f -iname 'flsun_v400*' -exec sudo rm {} + | ||||
| echo "-------------------" | ||||
| echo "Installing new Cura resources for the printer FLSUN V400" | ||||
| mkdir -p "${CURA_SHARE}/definitions" 2>/dev/null | ||||
| mkdir -p "${CURA_SHARE}/extruders" 2>/dev/null | ||||
| mkdir -p "${CURA_SHARE}/meshes" 2>/dev/null | ||||
| ln -sf "${DIR}/definitions/flsun_v400.def.json" "${CURA_SHARE}/definitions/flsun_v400.def.json" | ||||
| ln -sf "${DIR}/extruders/flsun_v400_extruder_0.def.json" "${CURA_SHARE}/extruders/flsun_v400_extruder_0.def.json" | ||||
| ln -sf "${DIR}/meshes/flsun_v400.stl" "${CURA_SHARE}/meshes/flsun_v400.stl" | ||||
| echo "-------------------" | ||||
| echo "Installing Quality Profile" | ||||
| mkdir -p "${CURA_SHARE}/quality" | ||||
| mkdir -p "${CURA_SHARE}/quality/PLA/0.4" | ||||
| mkdir -p "${CURA_SHARE}/variants" | ||||
| ln -sf "${DIR}/quality/flsun_v400_global_Draft_Quality.inst.cfg" "${CURA_SHARE}/quality/flsun_v400_global_Draft_Quality.inst.cfg" | ||||
| ln -sf "${DIR}/variants/flsun_v400_0.4.inst.cfg" "${CURA_SHARE}/variants/flsun_v400_0.4.inst.cfg" | ||||
| ln -sf "${DIR}/quality/PLA/0.4/flsun_v400_0.4_PLA_Draft_Print.inst.cfg" "${CURA_SHARE}/quality/PLA/0.4/flsun_v400_0.4_PLA_Draft_Print.inst.cfg" | ||||
| echo "-------------------" | ||||
| echo "Done" | ||||
							
								
								
									
										
											BIN
										
									
								
								03-cura/01-configuration/meshes/flsun_v400.stl
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								03-cura/01-configuration/meshes/flsun_v400.stl
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| @@ -0,0 +1,15 @@ | ||||
| [general] | ||||
| version = 4 | ||||
| name = Draft | ||||
| definition = flsun_v400 | ||||
|  | ||||
| [metadata] | ||||
| setting_version = 22 | ||||
| type = quality | ||||
| quality_type = draft | ||||
| weight = -2 | ||||
| material = generic_pla | ||||
| variant = 0.4 | ||||
|  | ||||
| [values] | ||||
| line_width = 0.44 | ||||
| @@ -0,0 +1,92 @@ | ||||
| [general] | ||||
| version = 4 | ||||
| name = Fast (Draft Quality) | ||||
| definition = flsun_v400 | ||||
|  | ||||
| [metadata] | ||||
| setting_version = 23 | ||||
| type = quality | ||||
| quality_type = draft | ||||
| weight = -2 | ||||
| global_quality = True | ||||
|  | ||||
| [values] | ||||
| layer_height = 0.2 | ||||
| layer_height_0 = 0.2 | ||||
| initial_layer_line_width_factor = 110 | ||||
|  | ||||
| acceleration_enabled = False | ||||
| acceleration_travel_enabled = False | ||||
| acceleration_Layer_0 = 5000 | ||||
| acceleration_print = 8000 | ||||
| acceleration_topbottom = 5000 | ||||
| jerk_enabled = False | ||||
|  | ||||
| infill_pattern = ='zigzag' if infill_sparse_density > 80 else 'gyroid' | ||||
| infill_overlap = =20 if infill_sparse_density > 80 else 5 | ||||
| infill_sparse_density = 20 | ||||
| infill_wall_line_count = 1 | ||||
| zig_zaggify_infill = True | ||||
|  | ||||
| bridge_settings_enabled = True | ||||
|  | ||||
| support_enable = False | ||||
| support_structure = tree | ||||
| support_type = everywhere | ||||
| support_infill_rate = 10 | ||||
| support_pattern = lines | ||||
| support_roof_enable = True | ||||
| support_roof_pattern = grid | ||||
| support_xy_distance = 0.16 | ||||
|  | ||||
| roofing_layer_count = 1 | ||||
| top_bottom_thickness = 1 | ||||
| top_layers = 5 | ||||
| bottom_layers = 4 | ||||
|  | ||||
| skin_monotonic = True | ||||
| skin_overlap = 25 | ||||
| skirt_gap = 10 | ||||
|  | ||||
| bridge_skin_speed = 60 | ||||
| bridge_wall_material_flow = 100 | ||||
|  | ||||
| fill_outline_gaps = False | ||||
|  | ||||
| optimize_wall_printing_order = True | ||||
|  | ||||
| retraction_combing = off | ||||
|  | ||||
| small_feature_speed_factor = 40 | ||||
| small_hole_max_size = 9 | ||||
|  | ||||
| speed_print = 200 | ||||
| speed_infill = =speed_print / 100 * 150 | ||||
|  | ||||
| speed_layer_0 = 30 | ||||
| speed_travel_layer_0 = =speed_print / 100 * 50 | ||||
|  | ||||
| speed_roofing = =speed_print / 100 * 30 | ||||
| speed_topbottom = =speed_print / 100 * 50 | ||||
|  | ||||
| speed_wall_0 = =speed_print / 100 * 50 | ||||
| speed_wall_x = =speed_print | ||||
|  | ||||
| speed_z_hop = 30 | ||||
|  | ||||
| wall_line_count = 3 | ||||
| wall_overhang_angle = 35 | ||||
| wall_overhang_speed_factor = 30 | ||||
|  | ||||
| z_seam_type = sharpest_corner | ||||
|  | ||||
| retraction_amount = 0.7 | ||||
| retraction_speed = 40 | ||||
| retraction_extra_prime_amount = 0.05 | ||||
|  | ||||
| machine_firmware_retract = True | ||||
| klipper_retract_length = =retraction_amount | ||||
| klipper_retract_prime_length = =retraction_extra_prime_amount | ||||
| klipper_retract_prime_speed = =retraction_speed | ||||
| klipper_retract_speed = =retraction_speed | ||||
| klipper_retraction_speed = =retraction_speed | ||||
							
								
								
									
										12
									
								
								03-cura/01-configuration/variants/flsun_v400_0.4.inst.cfg
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								03-cura/01-configuration/variants/flsun_v400_0.4.inst.cfg
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,12 @@ | ||||
| [general] | ||||
| name = 0.4 | ||||
| version = 4 | ||||
| definition = flsun_v400 | ||||
|  | ||||
| [metadata] | ||||
| setting_version = 20 | ||||
| type = variant | ||||
| hardware_type = nozzle | ||||
|  | ||||
| [values] | ||||
| line_width = 0.44 | ||||
		Reference in New Issue
	
	Block a user