Files
OrcaSlicer/resources/profiles/CONSTRUCT3D/machine/Construct 1 0.4 nozzle.json
SoftFever 8cb2e4e01e profiles: deterministic setting_id from vendor/type/name (#14432)
* 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
2026-06-27 20:11:25 +08:00

89 lines
2.4 KiB
JSON

{
"type": "machine",
"name": "Construct 1 0.4 nozzle",
"inherits": "fdm_machine_common",
"from": "system",
"setting_id": "NvupYOd7fBM7ewuh",
"instantiation": "true",
"printer_settings_id": "CONSTRUCT3D",
"printer_model": "Construct 1",
"default_print_profile": "0.22mm Quality @Construct 1",
"nozzle_diameter": [
"0.4"
],
"printer_variant": "0.4",
"printable_area": [
"0x0",
"225x0",
"225x260",
"0x260"
],
"printable_height": "180",
"nozzle_type": "hardened_steel",
"thumbnails_format": "QOI",
"machine_max_acceleration_e": [
"9000"
],
"machine_max_acceleration_extruding": [
"9000"
],
"machine_max_acceleration_retracting": [
"9000"
],
"machine_max_acceleration_travel": [
"9000",
"1250"
],
"machine_max_acceleration_x": [
"18000"
],
"machine_max_acceleration_y": [
"18000"
],
"machine_max_jerk_e": [
"6"
],
"machine_max_jerk_x": [
"25"
],
"machine_max_jerk_y": [
"25"
],
"machine_max_speed_e": [
"100"
],
"machine_max_speed_x": [
"320"
],
"machine_max_speed_y": [
"320"
],
"machine_max_speed_z": [
"40"
],
"machine_end_gcode": ";Retract the filament\nG92 E1\nG1 E-5 F900\n;Move nozzle fast\nG1 X5 Y258 F15000\n;Move Bed Down\nG1 Z180 F6000\n\n;Set machine to idle\nM104 S0\nM104 S0 ; turn off temperature\nM140 S0 ; turn off heatbed\nM107 ; turn off fan\nM84 ; disable motors",
"machine_start_gcode": "G90 ; use absolute coordinates\nM83 ; extruder relative mode\nM106 S0 ; Turn Fan off\nM204 S[machine_max_acceleration_extruding] T[machine_max_acceleration_retracting]\nM190 S[first_layer_bed_temperature] ; set bed temp\nM109 S160 ; set extruder temp\nM557 P5 X{adaptive_bed_mesh_min[0]}:{adaptive_bed_mesh_max[0]} Y{adaptive_bed_mesh_min[1]}:{adaptive_bed_mesh_max[1]} ; dynamic meshing\nG28 ; home all\nG1 Z15 F6000 ; move the printer down 15mm\nG1 Y1.0 Z0.3 F4000 ; move print head up\nM109 S[first_layer_temperature] ; set extruder temp\n\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\n;prime the extruder\nG1 X5 Y2 Z0.3 F6000; go to edge of build volume\nG1 X60 E10 F1000 ;gentle purge start\nG1 X110 E25 F1000; heavy purge\nG1 X60;",
"max_layer_height": [
"0.38"
],
"min_layer_height": [
"0.08"
],
"retraction_length": [
"0.7"
],
"retraction_speed": [
"50"
],
"z_hop": [
"0.2"
],
"bed_mesh_max": "200,235",
"bed_mesh_min": "10,20",
"fan_kickstart": "0.5",
"fan_speedup_time": "1",
"z_hop_types": [
"Auto Lift"
]
}