mirror of
https://github.com/OrcaSlicer/OrcaSlicer.git
synced 2026-09-27 19:01:02 +00:00
The belt-printer branch is failing two profile gates. Both stem from the three belt-only vendors (Custom's generic belt printer, IdeaFormer, Printcepts) not existing upstream, so upstream maintenance passed them by. Slice check: 4 of 1015 printers failed - Custom's MyBeltPrinter 0.2/0.4/ 0.6/0.8 nozzle all fell back to "Default Setting". No process profile in the Custom vendor listed any MyBeltPrinter in compatible_printers, and Custom's fdm_belt_common pointed default_print_profile at "0.20mm Standard @System", which does not exist in that vendor's index, so the generic belt printer had no usable process at all. This gap dates to when MyBeltPrinter was added (2026-04-07); it only started failing now because the slice-check job is newer than that. Adds two process profiles modelled on the sibling @MyKlipper ones: - 0.20mm Standard @MyBeltPrinter - 0.4/0.6/0.8 nozzles - 0.12mm Fine @MyBeltPrinter - 0.2/0.4 nozzles The split is forced by hardware: the 0.2 nozzle preset caps max_layer_height at 0.16, so a single 0.20mm profile cannot legally cover it. fdm_belt_common now defaults to the standard profile and the 0.2 nozzle preset overrides to the fine one. setting_id: 14 files failed the rules introduced in #14432. That migration renumbered 7425 files across 61 vendors but skipped these three, leaving BabyBelt Pro, IdeaFormer IR3 V2 and MyBeltPrinter squatting the "G*" id space reserved for Bambu (GMPC0BBP01, GMIF001, GM_BELT_00x) and four instantiated filament/process presets carrying no setting_id at all. Regenerated with scripts/assign_vendor_setting_ids.py. Also repoints the identical dangling "0.20mm Standard @System" in Printcepts' and IdeaFormer's fdm_belt_common at their own real process profiles. That is a no-op today because both concrete printers override it, but it is the same landmine that took out MyBeltPrinter. Vendor index versions bumped so check_installed_vendor_profiles() will re-install the corrected profiles over an existing install. Note: changing a shipped preset's setting_id can orphan user presets that reference it as base_id. #14432 accepted that tradeoff for 61 vendors; this keeps these three consistent with the rest. Verified: orca_extra_profile_check.py reports 0 errors across 66 vendors (was 14 files with errors), and OrcaSlicer_profile_validator -s slices all 1015 printer presets successfully (was 4 failures).
95 lines
3.3 KiB
JSON
95 lines
3.3 KiB
JSON
{
|
|
"type": "machine",
|
|
"name": "IdeaFormer IR3 V2 0.4 nozzle",
|
|
"inherits": "fdm_belt_common",
|
|
"from": "system",
|
|
"setting_id": "MDQZgwRgg72lmjtu",
|
|
"instantiation": "true",
|
|
"printer_model": "IdeaFormer IR3 V2",
|
|
"printer_variant": "0.4",
|
|
"nozzle_diameter": [
|
|
"0.4"
|
|
],
|
|
"printable_area": [
|
|
"0x0",
|
|
"250x0",
|
|
"250x2000",
|
|
"0x2000"
|
|
],
|
|
"printable_height": "250",
|
|
"belt_printer_infinite_y": "1",
|
|
"thumbnails": [
|
|
"48x48/PNG",
|
|
"300x300/PNG"
|
|
],
|
|
"default_filament_profile": [
|
|
"Generic PLA @IdeaFormer IR3 V2"
|
|
],
|
|
"default_print_profile": "0.20mm Standard @IdeaFormer IR3 V2",
|
|
"use_relative_e_distances": "1",
|
|
"machine_max_acceleration_e": [
|
|
"5000"
|
|
],
|
|
"machine_max_acceleration_extruding": [
|
|
"5000"
|
|
],
|
|
"machine_max_acceleration_retracting": [
|
|
"1000"
|
|
],
|
|
"machine_max_acceleration_travel": [
|
|
"9000"
|
|
],
|
|
"machine_max_acceleration_x": [
|
|
"5000"
|
|
],
|
|
"machine_max_acceleration_y": [
|
|
"5000"
|
|
],
|
|
"machine_max_acceleration_z": [
|
|
"100"
|
|
],
|
|
"machine_max_jerk_e": [
|
|
"2.5"
|
|
],
|
|
"machine_max_jerk_x": [
|
|
"10"
|
|
],
|
|
"machine_max_jerk_y": [
|
|
"10"
|
|
],
|
|
"machine_max_jerk_z": [
|
|
"0.4"
|
|
],
|
|
"machine_max_speed_e": [
|
|
"60"
|
|
],
|
|
"machine_max_speed_x": [
|
|
"500"
|
|
],
|
|
"machine_max_speed_y": [
|
|
"500"
|
|
],
|
|
"machine_max_speed_z": [
|
|
"20"
|
|
],
|
|
"retraction_length": [
|
|
"2"
|
|
],
|
|
"retraction_speed": [
|
|
"40"
|
|
],
|
|
"deretraction_speed": [
|
|
"40"
|
|
],
|
|
"z_hop": [
|
|
"0.4"
|
|
],
|
|
"retract_lift_below": [
|
|
"300"
|
|
],
|
|
"machine_start_gcode": "; === IdeaFormer IR3 V2 Belt Printer Start ===\n; Axes: X=lateral, Y=gantry height (probe), Z=belt\nG90 ; absolute positioning\nM82 ; absolute extruder\nG21 ; millimeters\nG28 ; home all axes\nG1 Y20 F500 ; lift nozzle 20mm from belt\n; Bed + hotend temps come from the active filament profile. Belt PLA requires 75 C bed — use Generic/eSun PLA @IdeaFormer IR3 V2 filament presets to get it automatically.\nM140 S[hot_plate_temp_initial_layer] ; set bed temp\nM104 S[nozzle_temperature_initial_layer] ; hotend temp\nM109 S[nozzle_temperature_initial_layer] ; wait hotend\nM190 S[hot_plate_temp_initial_layer] ; wait bed\n; --- Purge blob ---\nG92 E0 ; zero extruder\nG1 Y.1 ; nozzle 0.1mm above belt\nG1 E15 F1000 ; purge 15mm blob\nG1 Z20 E25 F800 ; belt advance 20mm + extrude\nG1 E23 ; retract 2mm\nG28 Y ; re-probe belt surface\nG1 E25 ; de-retract\n; --- Prime lines (full 250mm bed width) ---\nFMS_on ; filament motion sensor\nG1 X250 E50 F2000 ; prime line 1\nG92 Z0 ; reset belt origin\nG1 Z.4 ; belt advance 0.4mm\nG1 X0 E75 ; prime line 2\nG1 F1000 ; default feedrate\nG92 E0 Z0 ; zero extruder + belt = print origin\n",
|
|
"machine_end_gcode": "; === IdeaFormer IR3 V2 Belt Printer End ===\nM400 ; wait for moves to finish\nM104 S0 ; heater off\nM140 S0 ; bed off\nG92 E0 ; zero extruder\nG1 E-5 F300 ; retract 5mm\nG4 P5000 ; wait for ooze\nG91 ; relative mode - keep every end move relative on a belt\nG1 Y20 F1000 ; raise gantry 20mm for clearance over the part\nG1 Z676 F3000 ; advance belt one full machine-depth to eject the part and clean the belt\nG90 ; back to absolute\nG28 X ; home X only - NEVER 'G28' all: that homes Z/belt and reverses the whole print back into the gantry\nFMS_off ; filament motion sensor off\nBED_MESH_CLEAR\nM84 ; disable motors\n",
|
|
"machine_pause_gcode": "PAUSE",
|
|
"layer_change_gcode": "G92 E0 ; belt: reset extruder at layer change (relative E)"
|
|
}
|