mirror of
https://github.com/OrcaSlicer/OrcaSlicer.git
synced 2026-09-28 03:11:47 +00:00
* profiles: enforce globally-unique, per-vendor-namespaced setting_id Many non-Bambu vendors copied Bambu's generic setting_ids (GFSA04 alone appeared in 1557 files), so setting_id was not globally unique. This namespaces every vendor's ids and reserves Bambu/OrcaFilamentLibrary space. - Reserve "G*" (Bambu) and "O*" (OrcaFilamentLibrary) id spaces. - Assign each other vendor a 2-char prefix (first+last letter, collision resolved) and renumber every instantiated preset to <PREFIX><NNNN>. - Strip setting_id from base profiles (instantiation:false) per Bambu's convention; assign one to instantiated presets that lacked it. - Remove the pre-existing misspelled "settings_id" key (91 files). - filament_id is left untouched (it is a per-material id). - Add one-time migration script scripts/assign_vendor_setting_ids.py with a persisted registry resources/profiles/vendor_prefixes.json. Re-runs freeze existing ids; only new vendors/profiles get new ids. - Bump version in each changed vendor index file. - Extend scripts/orca_extra_profile_check.py with a CI guard: global uniqueness, in-namespace, no base setting_id, no gaps, no settings_id typo. 7425 profile files changed across 61 vendors; 0 cross-vendor collisions; validator clean; migration idempotent. BBL and OrcaFilamentLibrary id spaces untouched. * profiles: add setting_id authoring guide for new vendors / profiles * profiles: drop in-repo README; setting_id guide now lives in the wiki * profiles: derive setting_id deterministically from vendor/type/name * bump profile version
69 lines
2.9 KiB
JSON
69 lines
2.9 KiB
JSON
{
|
|
"type": "machine",
|
|
"name": "Prusa MK3S 0.8 nozzle",
|
|
"inherits": "fdm_machine_common",
|
|
"from": "system",
|
|
"setting_id": "B3BtohdqPX8Dv1zD",
|
|
"instantiation": "true",
|
|
"printer_model": "Prusa MK3S",
|
|
"printer_variant": "0.8",
|
|
"default_filament_profile": [
|
|
"Prusa Generic PLA"
|
|
],
|
|
"default_print_profile": "0.15mm Detail @MK3S 0.8",
|
|
"nozzle_diameter": [
|
|
"0.8"
|
|
],
|
|
"bed_exclude_area": [
|
|
"0x0"
|
|
],
|
|
"printable_area": [
|
|
"0x0",
|
|
"250x0",
|
|
"250x210",
|
|
"0x210"
|
|
],
|
|
"machine_max_acceleration_retracting": [
|
|
"2500",
|
|
"2500"
|
|
],
|
|
"machine_max_speed_e": [
|
|
"120",
|
|
"120"
|
|
],
|
|
"machine_max_speed_x": [
|
|
"200",
|
|
"200"
|
|
],
|
|
"machine_max_speed_y": [
|
|
"200",
|
|
"200"
|
|
],
|
|
"max_layer_height": [
|
|
"0.6"
|
|
],
|
|
"min_layer_height": [
|
|
"0.2"
|
|
],
|
|
"host_type": "prusalink",
|
|
"printable_height": "210",
|
|
"machine_pause_gcode": "M601",
|
|
"machine_start_gcode": "M862.3 P \"MK3S\" ; printer model check\nM862.1 P[nozzle_diameter] ; nozzle diameter check\nM115 U3.13.0 ; tell printer latest fw version\nG90 ; use absolute coordinates\nM83 ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 W ; home all without mesh bed level\nG80 ; mesh bed leveling\n{if filament_settings_id[initial_tool]=~/.*Prusament PA11.*/}\nG1 Z0.3 F720\nG1 Y-3 F1000 ; go outside print area\nG92 E0\nG1 X60 E9 F1000 ; intro line\nG1 X100 E9 F1000 ; intro line\n{else}\nG1 Z0.2 F720\nG1 Y-3 F1000 ; go outside print area\nG92 E0\nG1 X60 E9 F1000 ; intro line\nG1 X100 E12.5 F1000 ; intro line\n{endif}\nG92 E0\nM221 S{if layer_height<0.075}100{else}95{endif}",
|
|
"machine_end_gcode": "{if max_layer_z < max_print_height}G1 Z{z_offset+min(max_layer_z+1, max_print_height)} F720 ; Move print head up{endif}\nG1 X0 Y200 F3600 ; park\n{if max_layer_z < max_print_height}G1 Z{z_offset+min(max_layer_z+49, max_print_height)} F720 ; Move print head further up{endif}\nG4 ; wait\nM221 S100 ; reset flow\nM900 K0 ; reset LA\n{if print_settings_id=~/.*(DETAIL @MK3S|QUALITY @MK3S|@0.25 nozzle MK3).*/}M907 E538 ; reset extruder motor current{endif}\nM104 S0 ; turn off temperature\nM140 S0 ; turn off heatbed\nM107 ; turn off fan\nM84 ; disable motors\n; max_layer_z = [max_layer_z]",
|
|
"layer_change_gcode": ";AFTER_LAYER_CHANGE\n;[layer_z]",
|
|
"before_layer_change_gcode": ";BEFORE_LAYER_CHANGE\n;[layer_z]\nG92 E0\n",
|
|
"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_MK3\n",
|
|
"scan_first_layer": "0",
|
|
"machine_load_filament_time": "17",
|
|
"machine_unload_filament_time": "16",
|
|
"nozzle_type": "hardened_steel",
|
|
"thumbnails": [
|
|
"160x120"
|
|
],
|
|
"auxiliary_fan": "0",
|
|
"machine_max_junction_deviation": [
|
|
"0.02",
|
|
"0"
|
|
]
|
|
}
|