Commit Graph
19 Commits
Author SHA1 Message Date
226e95f734 feat(profiles): add Lulzbot Mini 1 (#15476)
Adds the LulzBot Mini 1 (single extruder, 0.5 mm nozzle, 2.85 mm filament)
to the existing Lulzbot vendor, which previously shipped only TAZ models.

Values are taken from LulzBot's own current slicer configuration
(github.com/lulzbot3d/CuraLE) rather than estimated:

  - geometry and custom g-code from resources/definitions/single_mini_mini_1.def.json
    and resources/gcodes/mini_1/{mini_1_start,mini_1_end}.gcode
  - filament temperatures and cooling from resources/materials/*.xml.fdm_material,
    overridden by resources/quality/single_mini/<material>/*.inst.cfg

The start g-code reproduces the Mini's nozzle wipe and four-washer G29 probe,
with the filament-type temperature conditionals used by the sibling TAZ profiles.

One deliberate departure from current CuraLE: the pre-wipe retract is 30 mm,
the value used by Cura LE 4.13.x, rather than the 4 mm current CuraLE uses.
The Mini probes by electrical contact between nozzle and washer, so the nozzle
must stay clean through the wipe and all four touches. At 4 mm the melt zone
stays full and can ooze onto a washer, which caused auto-levelling failures on
hardware; 30 mm empties it. The cost is a ~24 s purge at print start.

The three filament presets follow docs/HLSD/filament_id.md rule 4: a vendor
tuning a generic material inherits Generic X @System, keeps the Generic X base
name and declares no filament_id, so identity stays with OrcaFilamentLibrary.
Their compatible_printers is the Mini alone, disjoint from Generic X @Lulzbot
(TAZ only) as rule 3 requires. They exist because temperature is a filament-scope
setting, so LulzBot's values need printer-scoped presets. All six plate types
carry the same temperature, because the Mini has a single bed and curr_bed_type
can hold a stale value carried over from another printer.

Strictly additive: no existing profile is modified, so TAZ behaviour is
unchanged and no migration is required. Lulzbot.json is bumped to 02.04.00.05.

Verified with scripts/orca_profile_tool.py check and scripts/check_profile.sh
on the full tree (profile tool, system validation, slice, filament subtypes and
custom-preset fixtures all pass), by diffing sliced output against LulzBot's own
Cura LE g-code for the same model and filament (temps, retraction, speeds and
the full wipe/probe sequence match), and by printing a 3DBenchy on a Mini 1 over
OctoPrint.


Claude-Session: https://claude.ai/code/session_012aLyqsXB7FKqwQdE2QF7Et

Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
Co-authored-by: SoftFever <103989404+SoftFever@users.noreply.github.com>
2026-09-22 23:53:15 +08:00
SoftFever f520e9221f Repair shipped default materials and obsolete settings, and validate them (#15741)
* add orca profile skill

* add default material check

Improve validation for default materials and filament profiles

* Fix default materials and obsolete keys

* clarifying orca-profiles skill
2026-09-18 00:39:46 +08:00
SoftFever ab21af6b08 fix filament names 2026-09-01 17:44:12 +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
SoftFever 16a992b4d5 bump profile version 2026-05-22 02:27:34 +08:00
yw4zandSoftFever 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
SoftFever 0f92dec77d update profile version 2026-03-06 11:44:20 +08:00
SoftFever 7cabde6ca6 update profile version 2026-03-01 00:41:54 +08:00
SoftFever 06cee7ffe7 bump profile version to "02.03.02.40" (#12309) 2026-02-15 14:24:36 +08:00
SoftFever 7736b31015 update profile version 2025-09-29 22:57:27 +08:00
SoftFever 4f50fdc94e Fixed many profile issues and cleaned up some messes. (#10686) 2025-09-11 17:50:53 +08:00
SoftFever e3d55b3c5b update profiles 2025-09-10 23:21:45 +08:00
wrathernaut 4eaef65a79 Add Lulzbot Taz 4, 5, Pro Dual, Pro S (#8844)
* Update Lulzbot.json to include Taz 4, 5, Pro Dual, and Pro S

* Rename Lulzbot Taz 4, 5_cover.png to Lulzbot Taz 4 or 5_cover.png

* Add build plate model for Taz 4 or Taz 5

* Add compatible printers

* Add compatible printers

* Update Lulzbot 2.85mm PLA.json

* Add Taz 4, 5, Pro Dual, Pro S

* Add files for Taz 4, 5, Pro Dual, Pro S

* simplified build plate model
2025-03-17 08:46:55 +08:00
SoftFever 4ebbadb2a6 update profile version 2025-03-16 22:59:07 +08:00
SoftFever c17b52ad66 bump profile version to "02.03.00.02" 2025-03-09 15:25:44 +08:00
SoftFever 0965b92895 update profile version 2025-03-01 17:49:00 +08:00
wrathernautandSoftFever 71b40f9bd5 Add Lulzbot Taz 6 printer profile. (#8513)
* Add files via upload

Added Lulzbot Taz 6 profile, and supporting files images to add other printers in the future.

* Add bed model and image for Taz Pro

* Filament name clarifications and prep for GFL

* Changes to align with GFL

* GFL Integrated

* Update version # to reflect changes to use GFL

* format cleanup

* cleanup format

* cleanup format

* correct discrepancy on max acceleration label/value

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-02-26 19:54:13 +08:00