FFF (Fused Filament Fabrication) printing profiles.
A collection of 3D printer profiles I've created or modified.
Currently, these profiles only cover the Prusa CORE One+ device, with Prusaslicer. They might be useful as starting points for other setups.
Profiles are published individually under profiles/, organised by vendor as
profiles/<Vendor>/filament/<Base>__<Printer>_<Slicer>.ini (the target printer and slicer
are encoded in the filename). Each file is a small PrusaSlicer config bundle: it holds
the filament preset (plus any of its non-system parent presets, and optionally a paired
print/process and printer preset). To use one:
- Download the
.iniyou want (or clone this repository). - Open PrusaSlicer.
- Go to File → Import → Import Config Bundle… and select the
.inifile, or drag and drop the file onto the PrusaSlicer window. - The imported presets are added to the corresponding dropdowns. Select the filament (and, if included, the print/printer preset) before slicing.
Because these were tuned for a specific setup (Prusa CORE One+), treat them as starting points: review the print, filament, and printer settings and adjust them to match your own hardware, nozzle, and materials before printing.
Each filament preset carries a compatibility condition targeting the Prusa CORE One
(for example printer_model=~/(COREONE…)/ and nozzle_diameter[0]==0.4), so on another
printer the filament may show as incompatible and stay hidden. To adapt one:
- Select a printer profile for your machine first, then either edit the filament's Compatible printers condition (Filament Settings → Advanced) to match, or tick All to show it regardless.
- Re-check temperatures, cooling, flow, and max volumetric speed against your hotend and extruder — these were tuned for the CORE One's high-flow hardware and are the settings most likely to need adjusting.
If you want to share your own profiles or contribute changes back, export them as a config bundle:
- In PrusaSlicer, make sure the presets you want to share are saved (use the save/floppy-disk icon next to each preset dropdown to name and store any modified settings).
- Go to File → Export → Export Config Bundle….
- Choose which preset types to include and save the resulting
.inifile. - Share that file, or include it in a pull request (see below).
To export a single active configuration instead of a bundle, use File → Export → Export Config….
These profiles were initially calibrated in OrcaSlicer, using its built-in calibration tooling (flow, temperature, pressure advance, etc.), and then transferred to PrusaSlicer for finishing and day-to-day use.
If you want to follow a similar workflow, be aware of some CORE One gotchas on the OrcaSlicer side:
- Pressure advance is configured differently between the two slicers — don't copy the value across blindly; re-check it in the target slicer.
- OrcaSlicer needs custom G-code for things the Prusa firmware/PrusaSlicer handle more directly, notably the heatbreak (cooling) temperature and the filtration fan (if you have one installed).
A dedicated write-up of these differences (and possibly a conversion helper) is planned — see
the TODOs in CLAUDE.md.
Large language models were used in this project only for administrative work:
documentation (this README), repository organization, and the tooling that
packages and validates the profiles — the extraction script under scripts/ and its
test suite. That tooling only selects and copies presets; it does not author, tune,
or alter any of the profiles' technical values.
The printing profiles themselves — every temperature, speed, flow, and cooling value — were developed, tuned, and validated by the human author.
| Path | What it is |
|---|---|
profiles/<Vendor>/{filament,process}/ |
Published, ready-to-import profiles (generated). |
scripts/extract.py |
Splits the maintainer's master config bundle into the per-profile files. |
tests/ |
Test suite for the tooling, plus a fixture bundle. |
manifest.example.json |
Template listing which presets to publish. |
LICENSE, LICENSE-CODE |
CC BY-SA 4.0 (profiles/docs) and GPLv3 (code). |
The full master bundle is maintained locally by the author and is not committed; only the curated per-filament outputs are published.
The tooling is plain Python 3 (standard library only — no dependencies).
make test # run the offline test suite
make test-net # also validate against a pristine bundle pulled from Prusa's GitHub
make list # list presets in your local master bundle
make publish # regenerate profiles/ from manifest.jsonSee scripts/extract.py --help for direct usage.
Contributions and feedback are welcome:
- Reporting issues: Open an issue on the GitHub issue tracker describing the problem, the profile involved, and your hardware/setup.
- Contributions: Fork the repository, make your changes on a branch, and open a pull request. Please describe what you changed and the setup you tested it on.
This project uses two licenses depending on the type of file:
- Printing profiles and documentation are licensed under the Creative Commons Attribution-ShareAlike 4.0 International License (CC BY-SA 4.0). You are free to share and adapt them, including for commercial use, as long as you give appropriate credit and distribute any derivatives under the same license.
- Any code (scripts, tooling) is licensed under the GNU General Public License v3.0 (GPLv3) — the share-alike equivalent for software.