Commit Graph

29340 Commits

Author SHA1 Message Date
yw4z
ff51abc69b Improve incremental compile speed on windows (#12881)
Co-authored-by: Rodrigo Faselli <162915171+RF47@users.noreply.github.com>
2026-06-08 11:30:10 -03:00
SoftFever
f3a5c169c9 Fix user preset load crash from inconsistent per-variant vector sizes (#14106)
* Fix user preset load crash from inconsistent per-variant vector sizes
2026-06-08 22:13:00 +08:00
Kiss Lorand
bd41eebba9 Fix junction deviation and jerk settings behavior (#14004)
* Fix junction deviation and jerk settings behavior

Process settings now follow the selected printer's junction deviation
configuration. When machine_max_junction_deviation is enabled,
default_junction_deviation is shown and jerk settings are hidden. When
junction deviation is disabled, jerk settings are restored and
default_junction_deviation is hidden.

Fix a validation issue where junction deviation mismatch warnings could
be reported even when machine_max_junction_deviation was set to 0.
Warnings now apply only when junction deviation is active and point
directly to default_junction_deviation.

Also simplify Motion ability page visibility checks by reusing local
firmware-flavor booleans.

* GUI tweak

- separate Junction Deviation segment
- JD and Jerk stay visible
2026-06-08 20:27:37 +08:00
SoftFever
1e1d9cbaf8 Fix crash on printer switch from stale filament/extruder indices (#14103)
Switching to a printer with fewer filaments (e.g. H2D -> X2D) threw
std::out_of_range in check_filament_printable. Clear stale per-volume
extruder config on count shrink and bound-check filament indices at the
read sites.
2026-06-08 18:57:52 +08:00
SoftFever
0d586b28c4 Fix handy model menu failing in RelWithDebInfo (#14102)
* Fix handy model menu failing in RelWithDebInfo; replace pointer-compared labels with a data table
2026-06-08 17:16:54 +08:00
SoftFever
8cc56a9e2a bump change vendor profiles version 2026-06-08 16:47:27 +08:00
Kiss Lorand
8a64a5dd55 Fix organic tree support bottom interface layer number fallback (#14095)
- fix organic tree support bottom interface layer number fallback when "Same as top" is used
2026-06-08 15:48:49 +08:00
Kiss Lorand
a1897873ab Follow-up for PR #14069 (#14092)
- release the smoothing absolute hard limit of PR #14069
-  fix organic tree root mesh generation for buildplate roots
2026-06-08 15:46:19 +08:00
Diego Casasnovas
b676fd32b2 Bambu Lab X2D 0.4 enable air filtration (#14090)
Co-authored-by: SoftFever <softfeverever@gmail.com>
2026-06-08 15:44:10 +08:00
Sam
d1c9eb4826 Fix SeeMeCNC Multicolor change (#14096)
* Fix SeeMeCNC Multicolor change

* Fixes for Support

Support fixes for .7 and 1.0 nozzles

* Fix Retractions

* FIX

* bump version

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2026-06-08 14:57:39 +08:00
Rodrigo Faselli
2f2ebfaf6e Fixing collisions during material changes on the Snapmaker U1 (#14097)
* Update Snapmaker U1 (0.4 nozzle).json

* geometric clearances fix and bump version

Co-Authored-By: Ian Bassi <12130714+ianalexis@users.noreply.github.com>

---------

Co-authored-by: Ian Bassi <12130714+ianalexis@users.noreply.github.com>
2026-06-08 14:51:17 +08:00
SoftFever
765b3eaf1c Fix an issue wipe_tower_filament is still set to 1 in some profiles 2026-06-08 14:23:28 +08:00
SoftFever
8f65486e69 ci: fix PDB was not uploaded to release page 2026-06-08 12:24:51 +08:00
SoftFever
d8877e721b ci: add maintainer-gated workflow to publish build artifacts to a draft release (#14099) 2026-06-08 12:15:39 +08:00
SoftFever
41ff0f976c Fixed an issue that "Z contouring" is not translatable 2026-06-08 00:36:53 +08:00
SoftFever
02abe78074 Complete Zh_CN translations and a minor locale fix 2026-06-08 00:06:45 +08:00
SoftFever
968d85965b update locales 2026-06-07 23:13:48 +08:00
hamham999
1725a130fa Fixing process names and deleting old/duplicate processes of Creality Printers (#14085)
* Fixing process names and delete old/duplicate processes

* Update Creality CR-10 V3 0.6 nozzle.json

* naming fixes passes extra Profil valitadion
2026-06-07 22:57:57 +08:00
SoftFever
995facc3b7 bump profile versions for those have changes 2026-06-07 21:25:10 +08:00
SoftFever
10a1b17381 Feature/fix profile variants issus (#14084)
* add print variant validation

* fix one profile error

* fix more prifiles
2026-06-07 17:46:53 +08:00
spr0u
ff4147ede3 fix: stuck hover state after opening printer preset dialog (#14082)
* fix: stuck hover state after opening printer preset dialog
2026-06-07 15:24:17 +08:00
Argo
2a08bf026f Bugfix: VFA calibration disables input shaping (Marlin 2) (#14079)
VFA calibration does not disable input shaping anymore
2026-06-07 14:12:44 +08:00
Sam
9539dee052 Fixed speeds For SeeMeCNC 3D Printers (#14075)
* Fix speeds

* Fix

* Fix

* Wrong Syntax

* Fix Syntax

* Fix Jerk vals

* Speeds to accel fix

* Fix per nozzle size accel fix

* Create Z-Bolt.json

* seemecnc speeds fix
2026-06-07 13:33:18 +08:00
Kiss Lorand
454b6c0045 Fix crashing if slicing with non organic tree support (#14074)
Fix non organic tree support crashing

Fix Orca crashing during slicing if non organic tree support is used
2026-06-07 13:31:52 +08:00
spr0u
236a8f3941 fix: misc issues in step import dialog (#14067)
fix mesh count cancellation flag using uninitialized memory
fix initial waiting text being truncated
2026-06-07 13:30:13 +08:00
Kiss Lorand
4d86f5c250 Fix organic tree smoothing drift and layer mapping (#14069) 2026-06-07 13:28:58 +08:00
Rotzbua
d92bf80269 chore: win installer: remove duplicate code (#13998)
# Description

Remove duplicate code for creating desktop shortcuts.
The shortcut is already created by `CPACK_CREATE_DESKTOP_LINKS`.

# Reference


https://cmake.org/cmake/help/v4.3/module/CPack.html#variable:CPACK_CREATE_DESKTOP_LINKS

## Tests

- manual installation on win and check shortcut
2026-06-07 13:18:55 +08:00
SoftFever
fcfadf0e8c Creality K-series support: LAN discovery + CFS filament sync + filament profiles (#13752)
## Summary

Adds end-to-end Creality K-series (K2 / K2 Plus / K2 Pro) host support
to OrcaSlicer in a single bundle, per [@SoftFever's request to
consolidate](https://github.com/OrcaSlicer/OrcaSlicer/pull/13752#issuecomment-4560837450)
the previously stacked PRs. Three logically separable features, all
gated on `host_type=crealityprint`:

1. **LAN auto-discovery** — `Browse...` in the Physical Printer dialog
now finds K-series printers on the local network via a DNS-SD
meta-browser (per-device-unique service names
`_Creality-<MAC>._udp.local.`). Other host types unchanged.
2. **CFS filament sync** — `CrealityPrintAgent` (inheriting
`MoonrakerPrinterAgent`) queries the K-series WebSocket on `:9999` for
`boxsInfo`, maps loaded CFS slots to Orca filament presets, and
populates the Sidebar via the standard `fetch_filament_info` →
`build_ams_payload` path. Matches the shape of `MoonrakerPrinterAgent` /
`QidiPrinterAgent` / `SnapmakerPrinterAgent` per [the earlier review
feedback](https://github.com/OrcaSlicer/OrcaSlicer/pull/13752#discussion_r3278574545).
3. **K-series filament profiles** — system profiles for CR-PLA / CR-PETG
/ CR-ABS / CR-Silk / CR-TPU / CR-Nylon / CR-Wood / Hyper PLA / etc. on
K2 / K2 Plus / K2 Pro nozzle sizes (imported from CrealityPrint v7.1.0+,
normalised to OrcaSlicer profile conventions).

The previous stack base (#13291, *CrealityPrint as host type*, by
@imammedo) is **also bundled into this PR** since it's currently
conflicting with main and not moving. Happy to extract it back out if
@imammedo's PR is preferred to land first for attribution — let me know.

## What this PR is *not*

- **No new UI surfaces.** All three features hook into existing UI
(Browse button, Sidebar sync icon, filament dropdowns).
- **No phone-home / telemetry.** No Hark Tech endpoints, no licence
checks, no opt-in dialogs. Pure upstream feature work.
- **No K-series-specific Device tab.** Embedded WebView falls back to
Fluidd/Mainsail on `:4408`, same shape as the existing Moonraker
integration.

## Screenshots

Captured against a K2 Combo (F021, firmware v1.1.260206) on the v4 test
build:

| | |
|---|---|
| ![Discovery
dialog](https://harktech.co.uk/tools/orca-k2/screenshots/orca-k2-discovery-dialog.png)
| **Discovery dialog** — `Browse...` flow on a `host_type=crealityprint`
printer. Click → ~5–10 s LAN scan → K2 found with model + hostname + IP.
|
| ![Filament sidebar populated from
CFS](https://harktech.co.uk/tools/orca-k2/screenshots/orca-k2-cfs-sync-filaments.png)
| **CFS filament sync** — Sidebar after clicking the sync icon: 4 slots
populate with the real loaded CFS spools (3× Hyper PLA + 1× CR-Silk). |
| ![Device tab showing
Mainsail](https://harktech.co.uk/tools/orca-k2/screenshots/orca-k2-device-tab-mainsail.png)
| **Device tab** — Mainsail loaded into the embedded WebView for
`host_type=crealityprint`, mid-print state visible. |

## What's added

### LAN discovery
- **`deps_src/mdns/`** — vendors
[mjansson/mdns](https://github.com/mjansson/mdns) (public domain) plus
Creality's `cxmdns` C++ wrapper from CrealityPrint v7.1.1 (AGPL-3.0,
compatible with OrcaSlicer's AGPL-3.0). Attribution in
`deps_src/mdns/NOTICE.md`.
- **`Utils/CrealityHostDiscovery.{hpp,cpp}`** — synchronous DNS-SD scan
+ per-host `GET /info` probe. Maps model codes `F008` / `F012` / `F021`
→ K2 Plus / K2 Pro / K2.
- **`GUI/CrealityDiscoveryDialog.{hpp,cpp}`** — modal `wxDialog` showing
Model / Hostname / IP for each discovered host.
- **`src/slic3r/CMakeLists.txt`** — adds `Iphlpapi.lib` and `Ws2_32.lib`
to `libslic3r_gui`'s MSVC link line (needed by `GetAdaptersAddresses` +
Winsock2 calls in vendored `mdns.c`).

### CFS filament sync
- **`Utils/CrealityPrintAgent.{hpp,cpp}`** — inherits
`MoonrakerPrinterAgent`, overrides `fetch_filament_info()` to query the
K-series WS protocol on `:9999`, build `AmsTrayData`, and call inherited
`build_ams_payload()`. No printer-specific code lives outside the agent.
- K2 Plus slot-state parser handles the three documented slot states
(`0` empty / `1` manually entered / `2` RFID-tagged) per [DaviBe92's
reverse-engineering docs](https://github.com/DaviBe92/k2-websocket-re).

### K-series filament profiles
- ~110 profile JSONs under `resources/profiles/Creality/filament/`
covering K2 / K2 Plus / K2 Pro × 0.2 / 0.4 / 0.6 / 0.8 nozzle combos ×
CR-PLA / CR-PETG / CR-ABS / CR-Silk / CR-TPU / CR-Nylon / CR-Wood /
Hyper PLA / Hyper PETG-GF / Hyper PLA-CF / etc.
- Imported from CrealityPrint v7.1.0; normalised to OrcaSlicer profile
conventions (tabs not spaces, no `{if !multicolor_method}` wrappers,
`filament_vendor: ["Creality"]` on Creality Generic profiles).

## Tester confirmations on the v4 test build

| Printer | Firmware | Result | Reporter |
|---|---|---|---|
| K2 Pro | v1.1.5.5 / CFS v1.4.2 |  LAN discovery on #13752 test build
|
[@Requiem-MH](https://github.com/OrcaSlicer/OrcaSlicer/pull/13752#issuecomment-4495235225)
|
| K2 Pro | v1.1.5.5 / CFS v1.4.2 |  CFS sync across 1-CFS, 2-CFS,
partial, full configurations |
[@Requiem-MH](https://github.com/OrcaSlicer/OrcaSlicer/pull/13744#issuecomment-4495230061)
|
| K2 Plus | v1.1.5.2 / CFS v1.2.2 |  Slot-state fix resolves the
partial-sync regression |
[@DaviBe92](https://github.com/OrcaSlicer/OrcaSlicer/pull/13744#issuecomment-4499425852)
|
| K2 Plus | v1.1.5.5 / CFS v1.4.2 |  All slots syncing correctly after
fix |
[@swilsonnc](https://github.com/OrcaSlicer/OrcaSlicer/pull/13744#issuecomment-4503273127)
|
| K2 Plus | (Reddit u/TrainAss) |  Both PLA + PETG slots populated
correctly |
[@TrainAss](https://github.com/OrcaSlicer/OrcaSlicer/pull/13744#issuecomment-4503401664)
|
| K1C | (latest stock) |  `boxsInfo` payload format compatible (4 slots
of generic PETG) |
[@JoveYu](https://github.com/OrcaSlicer/OrcaSlicer/pull/13744#issuecomment-4519036448)
|

## Known follow-ups (out of scope)

- **Snapmaker U1 regression**
([@TrainAss](https://github.com/OrcaSlicer/OrcaSlicer/pull/13744#issuecomment-4529350262)):
the v3 build also happened to sync filament from his U1; v4 regressed
this. The refactor only touches `htCrealityPrint`-gated code so this is
likely incidental — needs his config + logs to diagnose. Will follow up
in a separate issue once this lands.
- **Native Device tab for K-series**: deferred. Current Mainsail WebView
shim covers the common case.
- **#13581 (@hamham999) profile overlap**: confirmed minimal code
conflict (zero), profile-file overlap of ~204 files. Whichever PR lands
second rebases off the other.

## Test plan

- [x] Linux build clean on commit `<UPDATED AFTER BUILD>` (LXC 104, GCC
12, cmake)
- [x] MSVC link clean (manual VS 2026 / MSVC 14.51 build)
- [x] End-to-end on real hardware: K2 Combo, K2 Pro, K2 Plus, K1C
- [x] `host_type ≠ htCrealityPrint` paths unchanged — Bonjour fires for
OctoPrint, Flashforge picker fires for Flashforge, Moonraker / Qidi /
Snapmaker agents unchanged
- [x] Profile-validation CI green (was a separate Elegoo test-fixture
failure on main, not introduced by this PR)

Signed-off-by: Igor Mammedov <niallain@gmail.com>
Co-authored-by: Igor Mammedov <niallain@gmail.com>
Co-authored-by: grant0013 <grant@harktech.co.uk>
Co-authored-by: SoftFever <softfeverever@gmail.com>
Co-authored-by: hamham999 <hamham999@users.noreply.github.com>
Co-authored-by: Alys Andreollo <3528187+alysandreollo@users.noreply.github.com>
2026-06-07 13:16:50 +08:00
SoftFever
ffb55c5710 use DialogButtons 2026-06-07 13:12:51 +08:00
grant0013
e9cf3fa178 harktech: drop hardcoded personal print_host IP from SPARKX i7 presets
The SPARKX i7 machine presets shipped (via #13947) with a contributor's
LAN IP (http://10.10.1.39) hardcoded in print_host. Remove it to match
the K2/K2 Pro/K2 Plus presets, which carry no print_host key — LAN
discovery + the crealityprint agent populate the host at add-printer time.
2026-06-06 23:28:06 +00:00
Alys Andreollo
4f0213d2d7 feat(profiles/Creality): SPARKX i7 to also use new CrealityPrint agent
This updates the SPARKX i7 from a "regular" klipper printer to use the
new CrealityPrinter agent, that talks to it's "supervisor" webserver
instead, and can use the native Creality features: CFS, filament
querying, filament remapping, etc...
2026-06-06 23:27:38 +00:00
Alys Andreollo
5aa3c76c36 feat(CrealityPrint): add support for SPARKX i7 (F022)
Works directly with existing code, just adding the identifiers to the
arrays.
2026-06-06 23:27:38 +00:00
yw4z
97dcae6c6e Troubleshoot Center Dialog (#12416)
* init

* update translations

* clarify warning for rebuild

* auto fill issue field on github with gathered system information

* add detection for linux package type

* fix build errors

* update

* update

* improve reading windows version

* add multi file support for zip and use timestamp on exported zip name

* fix errors

* fix errorz

* fix URL encoding

* fix CPU info

* use home or desktop as default location

* fix distro name on flatpak

* improve detecting local build on linux

* check package type on all platforms

* optimize margins

* improve monitor detection

* add support for adding text file to zip and add system info on export

* exclude user related info from config

* improve exporting profile info

* fix linux monitor info

* update

* update detecting monitor info

* Update TroubleshootDialog.cpp

* Update TroubleshootDialog.cpp

* Update TroubleshootDialog.cpp

* revert scaling and resolution detection for linux

* include project file to zip and notify after saving zip successfully saved

* improve monitor info on mac

* update

* improve packing selection menu

* update

* Update TroubleshootDialog.cpp

* Update TroubleshootDialog.cpp

* Update TroubleshootDialog.cpp

* Update TroubleshootDialog.cpp

* update

* update

* make hash clickable

* fix compatible process counting

* export profiles overview instead copying to clipboard

* auto restart app after cleaning system folder

---------

Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
2026-06-06 23:44:39 +08:00
Chris Djali
e9bc8628fc Fix mDNS on Windows machines with multiple network adapters (#13993)
ws2_32 (Winsock2) and wsock32 (Winsock) are not supposed to be used in the same application.
boost::asio requires ws2_32, but wxWidgets uses wsock32.
Which gets used depends on the order they appear in the link command, as they both define the same symbols, but with different behaviour.
ws2_32 is backwards-compatible with wsock32, so wxWidgets won't be negatively affected by linking with the newer version, and prior to c228ab2da1, that's what happened.
That commit reordered how some libraries were passed to the linker, so swapped the order of these two, breaking mDNS and causing https://github.com/OrcaSlicer/OrcaSlicer/issues/13969
2026-06-06 23:33:51 +08:00
grant0013
4469f009c4 harktech: set host_type + printer_agent=crealityprint on K2/K2 Pro/K2 Plus presets
The CFS-aware filament sync resolves its agent via switch_printer_agent(),
which reads the preset's `printer_agent` field and falls back to "orca" when
unset -- so the K-series presets need printer_agent="crealityprint" (the id
registered by CrealityPrintAgent) in addition to host_type="crealityprint"
(classic PrintHost/LAN-discovery). Without printer_agent the Device-tab sync
defaults to the Orca agent and CFS sync doesn't engage. Set both on the
F008/F012/F021 models that supports_multi_color_print() covers (not K2 SE).
Both keys are in s_PhysicalPrinter_opts, so a new Physical Printer inherits
them from the preset.
2026-06-06 15:01:44 +00:00
Alexander
1bbf8b64f4 Fix Arachne duplicate extrusion caused by bead count mismatch (#14031)
* Add test for Arachne duplicate wall segment detection

Add test cases that reproduce an issue where Arachne generates
duplicate/coinciding extrusion segments at certain min_bead_width settings.

Test configuration:
- Profile: 0.28mm Extra Draft @BBL X1C (0.4mm nozzle, 0.28mm layer)
- outer_wall_line_width: 0.42mm, inner_wall_line_width: 0.45mm
- wall_loops: 2, precise_outer_wall: enabled
- Test polygon: outer rectangle (0,0)-(20,20) with inner cutout (0.5,0.5)-(19.5,19.5)
  This creates a 0.5mm wide frame around the perimeter.

Results:
- 50% min_bead_width (0.20mm): FAILS - detects 4 duplicate segments (all 4 sides)
- 60% min_bead_width (0.24mm): PASSES - no duplicates

At 50%, Arachne generates two separate closed loops that share all 4 edges
of the inner square. At 60%, Arachne generates a single closed loop.

SVG output is exported to /tmp/opencode/ for visual debugging.

* Fix Arachne duplicate extrusion caused by bead count mismatch

WideningBeadingStrategy::compute() used optimal_width (inner wall width)
to determine if a thin wall should produce a single bead. However,
getOptimalBeadCount() uses optimal_width_outer (outer wall width) via
RedistributeBeadingStrategy to decide the bead count.

This inconsistency caused situations where getOptimalBeadCount() returned
2 beads, but compute() produced only 1 bead at full thickness. The single
bead was then generated for both inner and outer contours, resulting in
duplicate extrusion paths.

Fix: Use getTransitionThickness(1) instead of optimal_width. This method
returns the exact threshold for the 1-to-2 bead transition, ensuring
consistency between bead count calculation and bead generation.

Reproduces with: 50% min_bead_width, 0.42mm outer wall, 0.45mm inner wall,
0.5mm polygon inset creating ~0.38mm wall thickness.

Fixes #13917

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2026-06-06 22:55:37 +08:00
spr0u
e87625e023 fix: freezing caused by dynamically hidden printer edit button (#14010)
* fix: freezing caused by dynamically hidden printer edit button

* track hover state of individual widgets
2026-06-06 20:39:40 +08:00
hamham999
78eec3a72e Bug fix of Creality K2 Plus profiles start gcode (#14073) 2026-06-06 20:25:58 +08:00
Ioannis Giannakas
9446030079 Linux: opt-in X11 workaround via GDK_BACKEND to enable Device tab HW accel on single monitor setups (#14039)
* Linux compositing - retain old code and make switchable via #if statement

* Make option settable via env variable/.desktop file

* undo accidental empty row delete
2026-06-06 19:09:13 +08:00
SoftFever
69a5a70c9e Merge branch 'main' into harktech/k2-discovery 2026-06-06 17:36:30 +08:00
hamham999
abe6f95aae Updated profiles for all Creality K-series printers (+CFS-c support) and Creality SparkX i7 support (#13947)
* v2 updated profiles and fixes

* Add files via upload

fixing timelaps error

* Add files via upload

fix timelapses

* syntax fix

* fixing profil errors

* Add files via upload

fixing

* Add files via upload

fixing errors

* fixing syntax errors

* Add files via upload

syntax fix

* Add files via upload

naming fix

* Update SPARKX startgcode

* Update SPARKX i7 startgcode

* Update SPARKX i7 startgcode

* Update SPARKX i7 startgcode

* delete old file dublicates

* SparkX gcode fix

* indentation fix

* name changes of printers and deleted 2025 versions

* syntax fix

* fixes

* fixes

* profil name fixes and syntax

* fixed naming restored old names, renamed Ender 3 S1 Sonic, fixed Creality.json - used original formating and fixed the printer list order

* syntax

* Add files via upload

syntax, formating

* differences fix

fixing deleted lines in creality.json

* differences fix in creality.json

* Update Creality CR-10 SE.json

* Update Creality CR-10 V3.json

* Update Creality CR-6 Max.json

* Update Creality CR-10 V3.json

* Update Creality CR-6 SE.json

* Update Creality Ender-3 Pro.json

* Update Creality Ender-3 S1 Plus.json

* Update Creality Ender-3 V3 KE.json

* Update Creality Ender-3.json

* Update Creality Ender-5 Pro (2019).json

* Update Creality K1 Max.json

* Update Creality K1.json

* Update Creality K1C.json

* Update Creality K2 Plus.json

* Update Creality K2 Pro.json

* Update Creality K2.json

* filament and process files formating and fixes form comments

* formating fixes

* 0 value fix

* combine filament profiles

* fix deleted filament

* machine files formatting

* machine files formatting

* Update Creality Hi.json change bed type

* Update bed type Creality Ender-5 Max.json

* chore(profiles/Creality): update SPARKX i7 process names

Update the profile names according to the existing ones, according to
layer height vs nozzle diameter:

- 0.10mm @ 0.2: "HighDetail"
- 0.08mm @ 0.4: "SuperDetail"
- 0.12mm @ 0.4: "Fine"
- 0.16mm @ 0.4: "Optimal"
- 0.20mm @ 0.4: "Standard" (maintained)
- 0.24mm @ 0.4: "Draft"
- 0.28mm @ 0.4: "SuperDraft"
- 0.30mm @ 0.6: "Standard" (maintained)
- 0.40mm @ 0.8: "Standard" (maintained)

This leaves the "HueForge" one untouched, that's it's own setting.

* chore(profiles/Creality): update machine with new process name

Matches the default process for the 0.2 nozzle to the renamed process.

* chore(profiles/Creality): update processes on `Creality.json`

Update the main `Creality.json` manifest with the updated process (file)
names.

* Update Creality K1 Max (0.4 nozzle).json

* Update Creality K1 Max (0.6 nozzle).json

* Update Creality K1 Max (0.8 nozzle).json

* delete cr30 and k1 se naming fix

* Update 0.20mm Standard @Creality K1 SE 0.4.json

* Update Creality.json delete duplicat entry

* fixed formatting

* split PR

* formatting fixes

* settings id instead of filament id delete

* Delete Creality.json in wrong location

* delete filament id

* Update Creality SPARKX i7 0.2 nozzle.json

* Update Creality SPARKX i7 0.4 nozzle.json

* Update Creality SPARKX i7 0.6 nozzle.json

* Update Creality SPARKX i7 0.8 nozzle.json

* delete ender 5 files

* delete ender 5 max files

* adding ender 5 max files

* Update Creality Hi 0.6 nozzle.json

* fixes from comments

* fixes from comments

* fixes from comments and adding filamentid back

* tabs formatting fixes

* fixes

* K1C fixes and printer_structure delete undefined

* formatting

* fixes from comments

* fixes from comments

* use original pictures

* naming fixes, Default Filament profile and Filaments fixed

* match order of key process files

* match order in Creality.json and fix Profile error

* order of printers in menu fix and max accel warning fixed

* revert back fixes for warnings

* fix duplicate keys from resolving merging conflicts

---------

Co-authored-by: Alys Andreollo <3528187+alysandreollo@users.noreply.github.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2026-06-06 17:36:12 +08:00
SoftFever
3a2e3dea43 revert profiles 2026-06-06 17:22:11 +08:00
SoftFever
e23cfd4c7b Merge branch 'main' into pr/grant0013/13752 2026-06-06 17:14:33 +08:00
Kuzuri
94b13120d8 Update Snapmaker U1 (0.4 nozzle).json (#14066)
Made small performance, safety, and readability improvements.

Now the logic is only called to move the build plate lower than the tallest object if the print_sequence is, "by object".

More precise checks to not move the plate beyond the maximum build volume.
2026-06-06 13:49:10 +08:00
packerlschupfer
a529f8c473 Print Host: add Moonraker (Klipper) host type (#13991)
OrcaSlicer currently ships an "Octo/Klipper" host type that maps to the
OctoPrint REST endpoints (api/version, api/files/local). It works for
Klipper setups that run Moonraker with the OctoPrint-emulation plugin,
but native Moonraker — and Moonraker-compatible firmwares like the
Prusa-Firmware-Buddy buddy-klipper fork — speak a different shape:
distinct paths, JSON body for /printer/print/start, {"result":...}
envelope. There's no host type for that today.

Add a new Moonraker class deriving from PrintHost. Endpoints used,
matching the Moonraker spec:

- GET  /server/info                      — connection test, reads
                                            result.klippy_state
- GET  /server/files/roots               — storage-picker dropdown
                                            (returns roots with 'w'
                                            permission); gracefully
                                            degrades if absent
- POST /server/files/upload (multipart)  — upload (form fields:
                                            file, root)
- POST /printer/print/start (json)       — {"filename":"<path>"}; the
                                            filename is whatever the
                                            upload response returned
                                            in result.item.path, so any
                                            server-side rename
                                            (collision suffix etc.) is
                                            respected. JSON body is
                                            built via property_tree
                                            write_json so exotic
                                            characters in the path are
                                            properly escaped.

Auth: X-Api-Key header, only when printhost_apikey is non-empty
(Moonraker can be configured to require it but doesn't by default).
HTTP Basic / Digest are not part of the Moonraker spec and are not
sent.

Storage root is read from upload_data.storage with "gcodes" as the
fallback default, so the existing storage-picker plumbing in
PrintHostDialogs lights up automatically once enumerable roots are
returned.

UI: registers as the "Moonraker (Klipper)" entry under host_type;
selectable via the existing Physical Printer dialog (sidebar's
connection button on the printer card).

Verified against a Prusa-Firmware-Buddy buddy-klipper fork (firmware
identifies as moonraker_version "0.8.0-prusalink-shim"): /server/info
test, multipart upload to /server/files/upload, and JSON
/printer/print/start all work end-to-end. The existing "Octo/Klipper"
entry is left untouched so users currently relying on Moonraker's
OctoPrint-emulation plugin keep working.
2026-06-06 11:12:42 +08:00
Ioannis Giannakas
d5638273c6 Fix row spacing in objects list (#14053)
* Fix row spacing in objects list on MacOS
* Update for windows and linux
* Update row height for a more compact look while maintaining some spacing
2026-06-06 01:23:34 +03:00
foXaCe
57535f30ba i18n(fr): complete French translation to 100% + extract 3DPrinterOS dialog (#14037)
i18n(fr): complete French translation and extract 3DPrinterOS dialog

Translation (localization/i18n/fr/OrcaSlicer_fr.po):
- Translate 222 missing strings and revise 23 fuzzy entries (vouvoiement)
- Quality review of the existing catalog: fix 42 entries
  - "supported" calque -> "pris en charge" (physical sense -> "soutenu")
  - accented capitals (Emission -> Émission, Editer -> Modifier)
  - "cryptage" -> "chiffrement"; "initiés" -> "lancés"; "impacté" -> "affecté"
  - "basé sur" rephrased contextually; ASCII "..." -> "…" in FR strings
- Result: 0 untranslated, 0 fuzzy; placeholders preserved; msgfmt clean

Extraction (3DPrinterOS upload dialog, src/slic3r/Utils/3DPrinterOS.cpp):
- Wrap 9 hardcoded user-facing strings in _L()
- Align the radio-label comparison on _L() so the show/hide logic
  keeps working once the label is translated
- Add the file to localization/i18n/list.txt for gettext extraction
- Add the 7 new msgids to OrcaSlicer.pot and translate them in fr.po

Co-authored-by: SoftFever <softfeverever@gmail.com>
2026-06-06 02:11:00 +08:00
Ioannis Giannakas
1ec574bcbb Fix color swatch not updating when a different coloured filament is selected. (#14038)
* Fix color swatch not updating when a different coloured filament is selected.

* Address review comment
2026-06-06 02:01:51 +08:00
Ian Bassi
9f1bc75c70 Youtube to readme (#14058) 2026-06-05 14:20:27 -03:00
Ian Bassi
f4d34219b8 New FFF Wiki links (#14057) 2026-06-05 11:29:17 -03:00