Commit Graph

48 Commits

Author SHA1 Message Date
SoftFever
ab21af6b08 fix filament names 2026-09-01 17:44:12 +08:00
SoftFever
6ec904074b Give generic filaments one name and one identity across every vendor 2026-09-01 17:26:57 +08:00
SoftFever
1a62a25d36 Merge branch 'main' into feature/filament_id
Brings in 560 commits (merge base 2026-07-04 .. origin/main af9fd10d7a).
19 conflicts resolved; the other 138 touched files auto-merged.

Conflict resolutions
- Snapmaker/Polymaker (7): main normalised JSON key order in #15039 while this
  branch inserted filament_id/filament_vendor. Took main's key order and kept
  this branch's values, inserting a single filament_id key rather than letting
  git's line merge leave duplicate "from"/"instantiation" keys.
- re3D rPETG @0.8/@1.75 nozzle (2): main renamed these from "re3D Greengate
  rPETG @*" and re-vendored GreenGate3D -> re3D (#15169). Git's rename-aware
  merge produced a file with two filament_vendor keys; took main's version
  wholesale instead. The id is reconciled by the tooling, not by hand.
- re3D rPP (1): kept main's inherits change (fdm_filament_pet -> fdm_filament_pp,
  local filament_type override dropped) and its widened compatible_printers.
  The flattened type is still PP, so the product triple and id OFfHGM1D are
  unchanged.
- re3D Greengate rPETG.json, Afinia {ABS+,ABS,PLA,TPU,Value ABS,Value PLA}.json
  (7 modify/delete): accepted main's deletions. The Afinia ids are not orphaned
  - the surviving @HS presets resolve the same triple and already carry the
  same ids, so nothing is retired.
- .github/workflows/check_profiles.yml: kept both main's new "validate slice"
  step and this branch's tree-wide filament-subtype check.
- tests/libslic3r/CMakeLists.txt: kept both test_filament_id_succession.cpp and
  main's test_preset_diff.cpp.

Verified
- No conflict markers; all 12795 profile JSONs parse with no duplicate keys.
- All branch artifacts (tooling, snapshot, ledger, doc, tests) intact and
  unmodified by the merge.
- The succession-ledger C++ call sites survived main's refactors; audited
  Preset.{cpp,hpp}, PresetBundle.cpp, DeviceManager.cpp, PresetComboBoxes.cpp,
  CaliHistoryDialog.cpp, MoonrakerPrinterAgent.cpp against base/ours/theirs.
- scripts/tests: 115/116 pass.

Known follow-up: assign_filament_ids.py --check reports 243 errors, all from
filament data main added in the last month (BBL/addnorth, Qidi X5/Plus 5,
Snapmaker U1, re3D). The single failing unit test is the live-tree conformance
test asserting that count is zero. Reconciliation lands separately.
2026-08-08 02:05:37 +08:00
SoftFever
0545750c1b fix profile errors caught in new tests 2026-07-15 00:08:26 +08:00
SoftFever
f7c1b290fd v3.2: vendor-bundle re-mint under the product-triple rule
Every remaining legacy filament_id outside the BBL/QD_* islands re-derives
from its product triple (filament_vendor / filament_type / family name),
completing the content-addressed id model of filament_id_plan_v3.md:

- Relocation pre-step: 14 fdm_filament_* template forks (Cubicon x3,
  Prusa x6, RH3D x6 minus the pc fork already re-homed) stop declaring
  ids; the 16 presets that rode Prusa's forks now declare the id they
  already resolved (verified zero effective-id drift over all 5892
  instantiated presets).
- --drop-redundant-ids: 6 Custom/MyToolChanger generics drop copied GF
  ids and ride their OFL families.
- --remint over all 62 non-island vendors: 2647 declarations re-derived;
  identical products converge cross-bundle (showcase: PolyLite PLA is now
  OF5CgdDq in OrcaFilamentLibrary, Qidi, OrcaArena and Snapmaker).
- Prusament @XL completions surfaced by the relocation: filament_vendor
  ["Prusa Polymers"] on the 8 @XL declarers; Prusament PA-CF typed
  PA11-CF (the product is Prusament PA11CF) and PC-CF typed PC-CF
  (-CF family typed as base polymer); each family converges on one id.
- Succession: 331 ids retired with mode-rule successors, 355 never-shipped
  v1 mints forgotten with chain splicing, 151 GF-shaped ids released to
  the island space with hints, 27 curated BBL-generic -> OFL-generic
  hints (GFL99 -> OFDSrzZ8 class). New --retire "OLD=NEW" maintenance
  mode records lineage for OGFC99/OGFG99/OGFN99 (the shipped ids of OFL's
  Generic PC/PETG/PA in released versions, whose claims migrated in v3.1
  while Cubicon's inert fork declarations kept them alive).
- Retiring the P-hex system ids removes the last system ids from
  check_ams_filament_valid's destructive P-gate.
- AMS-ambiguity fixes surfaced by convergence (validator -f): 4 presets
  riding another family's id through inherits now declare their true
  family id (Elegoo Generic ASA-CF/PETG-CF, Snapmaker PolyLite Dual PLA /
  PolyLite J1 PLA); 9 Cubicon @base presets and Dremel Generic PLA, which
  duplicate their per-printer variants on the same printers, split onto
  the salt-1 iteration of their triple (sanctioned by the mint-conformance
  check; --remint now leaves salt-conformant declarations alone).

Gates: assign_filament_ids --check 0; orca_extra_profile_check 0;
116 python unit tests; config-equivalence over all 5892 instantiated
presets (byte-identical configs except the 14 sanctioned Prusament
vendor/type corrections; setting_id and compatible_printers unchanged;
per-family convergence and ledger conservation verified); profile
validator base/-f/-r(BBL)/-r(Qidi) all green; libslic3r_tests 48610
assertions; Moonraker OFL generic map check; custom-preset fixture
archives v1.9.0-v2.4.1.
2026-07-04 21:09:29 +08:00
SoftFever
55a3114ec9 Long-tail vendors: family filament_ids (17 vendors, 41 collision groups)
Phase 2 completion - Volumic, Ratrig, Chuanying, Afinia, Eryone, FLSun,
Tiertime, Blocks, CONSTRUCT3D, Co Print, CoLiDo, DeltaMaker, Ginger
Additive, OrcaArena, Peopoly, Wanhao France, iQ. All are P1 copy-paste or
small structural fixes; owners keep their ids by Bambu-catalog/OFL/historic-
introducer precedence, impostor families get fresh deterministic mints,
zero effective-config change:

- Volumic 10 mints (ABS/ASA/PP, PETG/PCTG/ESD, PLA/UNIVERSAL, PA/PPS lines);
  Ratrig 10 (BigNozzle/PunkFil lines off the Generic line's ids); Chuanying
  8 (plus 3 redundant own-id lines removed so parents' minted ids flow to
  the 0.25-nozzle variants); FLSun 4 (S1/T1 High Speed + Silk); Peopoly 4
  (Lancer lines off Generic PLA's GFL99); Afinia 3 (Value PLA/ABS+/Value ABS
  inside the frozen GFx##_## scheme); Co Print 3 (ABS/PETG/TPU off GFL99).
- Tiertime: Generic SBS had copy-pasted Generic PLA's ids on both printer
  lines - one family mint on both variants collapses the split. Eryone: PP
  copy-pasted PETG-CF's EFL43 (same introducing commit) - PP minted.
  Blocks: ASA-CF copy-pasted PLA-CF's BSFI010 - ASA-CF minted. CONSTRUCT3D:
  High Flow PETG minted off GFG99. CoLiDo: both claimants of the invented
  GFA99 re-minted. DeltaMaker: Brand PLA minted off GFL99. OrcaArena:
  Generic PLA Silk minted; the Bambu-clone Arena PLA Silk keeps GFA05
  (catalog precedence). iQ: Grauts HPP4GF25 minted off Fiberthree's IQM1.
- Ginger Additive (P5): the shared fdm_filament_common template carried
  P510eff9; moved onto the two pellet families (Generic PETG keeps it as
  first claimant, Generic PLA minted), template key removed after verifying
  every inheritor still resolves an id.
- Wanhao France (P4): YUMI PLA Bowden stops over-claiming the six
  direct-drive printers covered by YUMI PLA Direct Drive (trim only, no
  mints).

Verified: config-equivalence gate zero unexpected diffs; extra check exit 0;
--check exit 0; validator -l 2 exit 0; and with all 30 vendor migrations
now applied, the extended validator's -f check is clean TREE-WIDE
(0 ambiguity errors, down from 1256 baseline / 16448 with the library-aware
extension); -r exit 0 for BBL and Qidi.
2026-07-03 00:16:01 +08:00
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
yw4z
054a173af7 Fix possible crash on startup because of low max volumetric speed on profiles (#13716)
* Update fdm_filament_common.json

* update

* Update fdm_filament_common.json
2026-05-18 19:00:48 +03:00
yw4z
95cf1745a8 Profile folder optimizations (Anycubic, Creality, Elegoo, Flashforge, Qidi, Prusa, Re3d, Rh3d, Snapmaker, Sovol and more) (#13149)
* anker

* blocks

* prusa

* zbolt

* snapmaker

* iQ

* eryone

* OpenEYE

* RH3D

* anycubic kobra neo

* kobra neo cover

* prusa one L cover

* longer lk10 & plus

* anycubic predettor

* creality covers

* k2 - k2 pro bed models

* m3d enabler d8500

* artillery m1 pro

* wemake3d

* Update Anet A8 Plus(A8+)_cover.png

* cubicon

* qidi

* Update Qidi X-Max 4_cover.png

* re3D

* Update Flashforge Artemis_cover.png

* flashforge

* tronxy

* Update flashforge_g2s_buildplate_model.stl

* Update FlyingBear Ghost7-bed.stl

* lulzbot

* Rolohaun3D

* Raise3D

* Update ThePositron_bed_texture.svg

* Mellow M1

* flsun

* CoPrint

* chuanying

* artillery

* anycubic

* sovol

* comgrow

* elegoo

* fix conflict

* update

* Update M5-CE-texture.svg

* prusa

* anker

* creality texture and model

* creality covers

* magicmaker

* Update wm_buildplate_model.stl

* comgrow

* infimech

* voxelab

* flashforge

* peopoly

* biqu

* ginger additive

* e3ng

* flashforge

* wanhao

* compress covers

* re3D

* wemake3d

* update

* flsun

* flashforge

* elegoo

* creality

* blocks

* update

* anycubic

* artillery

* Update Co_Print_ChromaSet_buildplate_texture.svg

* comgrow

* Update Taz_Pro_Dual_printbed.svg

* Update elegoo_orangestorm_giga_buildplate_texture.svg

* snapmaker

* flashforge

* anycubic 3 and S1

* artillery

* artillery

* update

* update

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2026-04-26 20:17:08 +08:00
Ian Bassi
16727644bb Reduce size by Json Fromatting (#13163)
Reduce the size of current and new JSONs by standardising them with 1 tab indentation instead of 4 spaces.
This effectively reduces the size by almost 20 MB.

| Current | New |
|---|---|
| 85.2 Mib | 67 Mib |

Used [JQ](https://jqlang.org/) `--tab` to automatically format every current JSON.

> [!NOTE]
> Some profiles had the arrays on the same line, but those created by Orca were in the standard format (each object below the previous one). In some cases, this increases the number of tabs due to the new lines, but the increase is negligible, and this way both the base profiles and those created by Orca maintain the same style.
2026-04-15 22:58:12 +08:00
SoftFever
f4224e9780 tidy up and bump profile version (#12889)
* tidy up and bump profile version

* fix error

* tidy up

* fix

* tide up more

* fix errors

* fix more errors
2026-03-23 01:17:34 +08:00
yw4z
3c65617139 Fixes / Improvements for Covers & Printer Selection dialog (#11151)
* init

* update

* Crop cover images

* match setup wizard UI

* update

* tiertime

* anycubic

* anycubic

* construct3d

* update

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-11-04 10:16:06 +08:00
SoftFever
ce854fa3de Update filament profiles to use arrays for cost, density, and max volumetric speed
Updated multiple filament profiles to convert fields such as filament_cost, filament_density, and filament_max_volumetric_speed from single values to arrays for consistency. Removed unnecessary fields from filament profiles to streamline data structure. This change enhances compatibility with the updated profile handling logic in the orca_filament_lib.py script.
2025-10-25 17:21:51 +08:00
yw4z
ff0507e5a3 Profile folder optimizations (Anycubic, Artillery, Bambu Lab, BIQU, Creality, Flashforge, Prusa, Ratrig, Sovol, Volumic, Voron, VzBot, Z-Bolt, Wanhao and more) (#10806)
* init

* voron covers

* voron models

* qidi hotends

* ultimaker

* seckit

* kingroon

* Update kp3s_bed.stl

* default hotend

* VzBot

* Update goliath.stl

* Construct3D

* comgrow

* biqu

* artillery

* anycubic

* bambulab

* flashforge

* chuanying

* update

* ratrig

* snapmaker

* Update sovol_zero_buildplate_model.stl

* sovol

* sovol

* Update wm_3dp_hotend.stl

* Update magicmaker_hotend.stl

* flsun

* iQ

* wanhao

* deltamaker

* phrozen

* MagicMaker covers

* z-bold

* volumic

* VzBot covers

* custom printers

* custom printer covers

* orca arena

* Update Orca Arena X1 Carbon_cover.png

* creality

* sovol sv08 max

* qidi texture

* Update qidi_xplus_buildplate_texture.png

* bump versions

* folgertech

* twotrees

* VzBot

* dremel

* FlyingBear

* Wanhao

* wanhao

* Delete 230 - Mono320x320.png

* voron

* voron

* voron

* seckit

* ultimaker

* kingroon

* default hotend

* Update qidi_xseries_gen3_hotend.stl

* Update deltamaker_2_buildplate_texture.svg

* vzbot

* Update goliath.stl

* biqu

* anycubic

* folgertech

* geetech

* ginger additive

* anycubic

* Update Wanhao D12-300_hotend.stl

* phrozen

* bump versions

* fix missing files on linux & add new models for sv07

* fix missing files

* Prusa

* update

* Update ultimaker_2_buildplate_model.stl

* fix all cover images

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-10-25 15:41:29 +08:00
SoftFever
4f50fdc94e Fixed many profile issues and cleaned up some messes. (#10686) 2025-09-11 17:50:53 +08:00
Brian Schmidt Pedersen
e52eb480d6 Transparent versions (#9771)
Replaced FLSun T1 and S1 cover images with transparent versions from FLSunSlicer.
2025-06-08 18:06:05 +08:00
yw4z
1558edf827 Profile folder optimizations (BLOCKS, ELEGOO, ERYONE, FLSUN, GEETECH, GINGER ADDITIVE, LULZBOT, SOVOL) (#8764)
* update

* Merge branch 'main' into profiles-optimisation-2

* Fix gridlines not visible on Sovol
2025-03-09 13:29:27 +08:00
yw4z
b2e142c1bb Optimized images on profile folder (#8374)
update
2025-02-12 09:56:29 +08:00
Cyril Guislain
4f9c730705 Fixes for FLSUN S1/T1 (#6574) 2024-08-28 23:17:25 +08:00
Cyril Guislain
bcf4c29028 Improved FLSUN S1 and T1 configurations (#6349) 2024-08-11 22:59:59 +08:00
Flsun3d
7b6b5a3f81 Improved Flsun S1,T1 configuration parameters (#6244)
* Add files via upload

* Add files via upload

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2024-08-03 00:01:44 +08:00
SoftFever
2a8cf0ec86 reduce size of printer models and cover images 2024-06-26 21:30:56 +08:00
Thomas
accc1a4fc1 Fixed a typo in Flsun SR profile (#5504) 2024-06-03 21:39:03 +08:00
SoftFever
0459c28596 Tweak default parameters
1.  Change default ensure_vertical_shell_thickness value back to ensure_all as suggested by @igiannakas
2.  Change default sparse_infill_pattern vaule to ipCrossHatch
2024-05-29 23:07:29 +08:00
Thomas
206a9608ad Flsun SR : Fine tuning of speeds and accelerations (#5483)
Fine tuning of speeds and accelerations
2024-05-28 22:53:26 +08:00
cochcoder
0b0205938d Add puase G-Code for FLSUN V400 (#5469)
Add puase g-code
2024-05-28 22:40:21 +08:00
Thomas
8dc946dc7a Flsun Super Racer (SR) Profile (#5454)
* Added Flsun SR

* Optimized images

* Enabled only one wall on top surfaces
2024-05-25 21:26:06 +08:00
SoftFever
f13dc1fdcd bump profiles version to 2.1, change most profiles' top_surface_pattern to monotonicline as default pattern 2024-05-22 22:54:56 +08:00
Thomas
eae2703610 Optimized PNG files (#4294)
* Optimized PNG files

* Added back hints

* Revert "Added back hints"

This reverts commit e1d3890b08.

* Fixed Comgrow T500 cover background
2024-03-04 22:00:47 +08:00
SoftFever
f89932f63e make exclude_object off by default 2023-12-29 09:21:49 +08:00
SoftFever
5213fbfa86 Support initial_tool variable for filename format 2023-11-13 22:25:32 +08:00
SoftFever
e624632969 semm 2023-09-09 13:19:59 +08:00
SoftFever
e6fcbfae07 fix 2023-08-26 20:55:44 +08:00
SoftFever
476c05a764 Bring back PrusaSlicer history till 2.4 2023-08-26 20:05:42 +08:00
SoftFever
43087cc6a6 update locale and tweak some profiles 2023-08-14 20:15:57 +08:00
SoftFever
61db1ef369 misc profile fixes 2023-08-11 21:13:53 +08:00
SoftFever
aaefc400e1 Tweak profiles
1. Fix Voron Trident printable height issue #1641
2. Revamp Qidi X3 printer profiles
3. Turn on accel_to_decel_enable for klipper machine by default
4. Many other profiles tweaks
2023-07-31 19:52:56 +08:00
Carlos Caruncho
cccc857f6f Fixed spanish translation and kingroon profiles added (#1572)
* Update OrcaSlicer_es.po

* Update OrcaSlicer_es.po

More strings!

* Update OrcaSlicer_es.po

* modified:   bbl/i18n/es/OrcaSlicer_es.po

* Update Orcaslicer spanish

* Merge

* Corregidos duplicados

* modified:   bbl/i18n/es/OrcaSlicer_es.po

* modified:   bbl/i18n/es/OrcaSlicer_es.po

* modified:   bbl/i18n/es/OrcaSlicer_es.po

* modified:   bbl/i18n/es/OrcaSlicer_es.po

* modified:   bbl/i18n/es/OrcaSlicer_es.po
	modified:   bbl/i18n/es/OrcaSlicer_es.mo

* modified:   bbl/i18n/es/OrcaSlicer_es.mo

* Update Orca es

* FIX:orcaslicer_es.po  some strings

* modified:   bbl/i18n/es/OrcaSlicer_es.po

* modified:   bbl/i18n/es/OrcaSlicer_es.po

* modified:   bbl/i18n/es/OrcaSlicer_es.po
	modified:   resources/i18n/es/OrcaSlicer.mo

* Update text.js

Added es_ES to text.js (spanish strings)

* Kingroon profiles added

Added Kp3s and kp5l printers

* Update OrcaSlicer_es.po

CAMBIOS EN CUARTEL

* Update OrcaSlicer_es.po

* [FIX] Fixed some spanish strings

Improved translation

* More spanish string fixes

More fixes

* Fix More Spanish Strings

* add kingoon profiles

* Last mo update

* Fix KP3S PRO S1 profile

* Kingroon printers fixes

* Update OrcaSlicer.mo

* Added plate bed
2023-07-23 12:03:53 +08:00
fr3ak2402
7bf453ab0f Add & revise FLSun Profile (#1045)
* Add & revise FLSun Profile

FLSun Q5
FLSun QQ-S Pro

* change FLSun V400 printer image
2023-05-12 23:26:06 +08:00
SoftFever
c81ca8c9d7 profile cover image reorg 2023-05-07 23:52:11 +08:00
SoftFever
e6fec51ce2 change to multi-plate friendly bed model for Flsun V400 2023-04-28 21:33:34 +08:00
SoftFever
fb9733c4bc slow down flsun 2023-04-26 21:05:30 +08:00
SoftFever
162f7d2ac3 optimized hot end model 2023-04-24 18:04:47 +08:00
SoftFever
afe5e9ed2a simplify the v400 bed mesh, make it smaller 2023-04-23 18:48:11 +08:00
SoftFever
55c766b8ba Add bed model for FLSun V400 #825
Bed Model is a remix to make it compatible with Orca Slicer. Original model can be found  from @mcpea (https://www.printables.com/model/311792-custom-buildplate-flsun-400-prusa-slicer/files)

Adjust bed texture so the logo is less white. The original bed texture is made by @Art3Design(https://www.printables.com/model/315387-flsun-v400-prusaslicer-profile)
2023-04-23 16:47:44 +08:00
SoftFever
0c364705ed update some settings for FLSun V400 profile 2023-04-23 11:59:54 +08:00
SoftFever
e7ee0effa2 FLSun V400 2023-04-15 23:25:31 +08:00
rtyr
ef5df08358 Initial FLSun bundle
https://github.com/prusa3d/PrusaSlicer/pull/5582
2021-01-03 20:59:36 +01:00