🎉 WIN a Snapmaker U1 Printer! Enter FREE now

--load-filaments

"f1.json;f2.json"
Input & Configuration Orca SlicerBambu Studio

Map filament profiles to extruder or AMS slots positionally via a semicolon-separated list of JSON preset files, one per slot; --load-filament-ids and --clone-objects both require this flag to be present.

Details

--load-filaments accepts a single quoted string of semicolon-delimited file paths, one JSON filament config per extruder or AMS slot. Assignment is strictly positional: the first path becomes slot 1, the second slot 2, and so on. Each file is a JSON preset in the same format the slicer writes when exporting a filament profile. The engine validates each file on load: the JSON must have "type": "filament" and a "from" field whose value is "system", "User", or "user". Any other value in "from", or a "type" other than "filament", causes an immediate fatal exit.

When a file's "from" is "user" or "User", the engine reads its "inherits" field. If that value matches a profile name in the bundled BBL filament library, the engine pulls variant-tracked options from that parent and uses them as defaults for any variant fields the user file does not explicitly set. System-profile files (where "from" is "system") undergo no such merge; they are loaded as-is.

An empty string in the semicolon list acts as a slot placeholder. When the default-filament fill is active, the first successfully loaded profile fills in for any empty-string slots so that the slot-to-index alignment stays intact. This mode can be requested explicitly via a dedicated flag (--load-defaultfila), and the engine also enables it automatically in estimate mode.

If all entries across the list resolve to the same profile name in a BBL 3MF context (and estimate mode is not active), the engine automatically suppresses the wipe tower for the job. It can reinstate the tower, however, if the color overrides passed alongside the filament list contain more than one distinct color value, if smooth timelapse is active, or if wrapping detection is enabled and a wrapping exclude area is configured.

Examples

Minimal filament JSON structure
{
  "name": "My PLA Profile",
  "type": "filament",
  "from": "user",
  "filament_id": "GFA00",
  "inherits": "Bambu PLA Basic @base",
  "filament_type": ["PLA"]
}

Watch out for

  • Each file is type-checked on load. Passing a machine or process JSON exits immediately with a config error, even if the JSON is otherwise well-formed.
  • All filament files in a single invocation must target the same printer technology. Mixing an FDM filament profile with a resin one exits with a printer-technology mismatch error.
  • `--load-filament-ids` and `--clone-objects` each require `--load-filaments` to be present; passing either without it is a fatal parameter error.

Related flags

Sign up for free today

No credit card required. Connect unlimited printers and get production automation running in minutes.