* Add opt-in printer overrides for filament tool-change settings Allow printer presets to define uniform ramming, loading, unloading, cooling, purge, filament scripts and pressure-advance enable settings without duplicating material presets. Apply overrides during preset composition and FDM normalization, and expose the switch in Multimaterial. Keep the feature disabled by default. Omitted or empty override vectors preserve material settings; a single value applies to every filament, including an explicitly empty script. Reject multi-value overrides. Preserve empty float vectors across project serialization and initialize empty nullable filament overrides before resizing them, preventing preset cache generation from accessing an empty vector. Include focused override tests and document the configuration semantics, Prusa MMU3 integration and INDX tool-change behavior. Co-authored-by: Codex <codex@openai.com> * Add Prusa MMU3 and CORE One INDX profiles with shared material tuning Add MK4 MMU3 and four-tool/eight-tool CORE One INDX printer definitions, process presets and printer resources. Reuse ordinary MK4 and CORE One printer/process inheritance while retaining device-specific startup, shutdown, tool-change and wipe-tower behavior. Move uniform MMU3 tip forming and INDX handling into machine filament overrides. Keep MMU3 pressure advance and purge material-specific, retain INDX material tuning, and share surviving materials with migration aliases for retired MMU3 and XL tool-change copies. Preserve unrelated Prusa filament identities, scalar value formats and inheritance rather than applying broad profile cleanup. Validation: Prusa profile checks and all 69 printer smoke slices passed. The final cleanup preserved emitted commands with identical filament selections. Co-authored-by: Codex <codex@openai.com> * Refresh filament controls after loading printer presets Synchronize the plater filament controls after preset loading, even when the internal filament list already matches the nozzle count. Co-authored-by: Codex <codex@openai.com> * Fix nullable Z-hop overrides in Prusa filament variants Represent empty overrides as nil for each inherited extruder variant so the native profile loader preserves machine Z-hop settings. Validation: full profile checks, native loading, and 1,115-printer slicing sweep passed. Co-authored-by: Codex <codex@openai.com> * Separate Prusa profiles from machine-owned filament overrides Retain profile tuning without unsupported machine override keys. Move supporting code, tests and override documentation into a separate feature change. Co-authored-by: Codex <codex@openai.com> * Default INDX tools to hardened high-flow nozzles Use the High Flow variant for every INDX tool and its dedicated filament presets. Raise Generic PLA throughput to 28 mm3/s. Co-authored-by: codex <codex@openai.com> * Use normal filament-change lifts for INDX and MMU3 Avoid duplicate INDX retraction and account for its 12.5-second dock swap in print estimates. Co-authored-by: codex <codex@openai.com> * Set z_hop_types for the machine too * Fix profile check failures in the Prusa CORE One filament presets --------- Co-authored-by: Codex <codex@openai.com> Co-authored-by: SoftFever <103989404+SoftFever@users.noreply.github.com> Co-authored-by: SoftFever <softfeverever@gmail.com>
3.2 KiB
Prusa CORE One INDX profiles
The Prusa bundle provides separate four-tool and eight-tool CORE One INDX models
with 0.4 mm high-flow nozzles and a 248 x 205 x 270 mm printable volume. These are
independent-tool printers, not single-extruder MMU3 machines. Both inherit
fdm_machine_common_coreone_indx, which inherits the ordinary CORE One HF
printer; the concrete printer presets supply their tool-count-dependent arrays. The bed and wizard resources come from Prusa.
The source configuration is PrusaResearch 2.5.10 from
Prusa's profile repository.
Its printer, process and filament settings are translated to Orca option names.
The supplied process presets cover 0.10, 0.15, 0.20 and 0.25 mm layers. Their
shared fdm_process_coreone_indx base inherits the ordinary CORE One HF SPEED
process, with explicit INDX differences and layer-specific child settings.
Material presets are shared with the ordinary CORE One family.
Tool changes and extrusion state
The start script initializes a persistent tool_init vector, counts the tools
used by the job, homes and probes using a loaded tool, calibrates the used tools,
and primes the initial tool at the cleaning station. The change script preserves
Prusa's G27, P0, T, G12, G750 and M906 sequences. It updates
e_retracted so Orca's subsequent unretraction agrees with the script's extrusion.
Per-tool temperature commands are guarded by is_extruder_used.
The off-bed purge station is the default. With a prime tower enabled, a newly
used tool still receives its initial station purge, while an initialized tool
uses the source's wipe-tower preparation path. tool_init persists across these
changes; treating every tool selection as first use would change the purge and
deretraction sequence.
Purge volume uses the filament's minimal purge setting. Orca's optional flush
volumetric speed is divided by filament cross-sectional area before it is used
as a linear extrusion-speed override. Prusa's separate filament_flush_volume
override is not available in these profiles. The source's EXCLUDE_E_START and
EXCLUDE_E_END internal markers become comments rather than printer commands.
Pressure-advance restoration and automatic pressure-advance emission use the selected filament preset's settings. These profiles do not impose machine-owned filament overrides. Dock-fan control retains the source's material and layer conditions; shutdown parks the tool and turns off the used heaters and dock fan.
Configuration boundaries
The scripts use Orca's temperature, retraction, fan and speed option names. The nozzle-check high-flow flag is fixed because these presets describe HF nozzles; the abrasive-material flag is derived from the filament's required nozzle HRC. An unset idle temperature uses Orca's zero sentinel. ABS's source XY shrinkage compensation is represented using Orca's retained-size percentage.
Prusa's consistent-surface cooling strategy and filament-specific infill crossing speed limits have no direct Orca profile equivalent. These presets use Orca's native layer-time cooling and material volumetric limits. They do not add slicer features or change existing Prusa printer profiles.