Commit graph

3710 commits

Author SHA1 Message Date
Argo
769fc137c7
Ported Bambu Studio wipe tower interface features (with improved preheat and cooldown behaviour) - NEW (#12266)
Wipe tower interface features and preheat fixes

Fresh PR branch rebuilt on upstream/main (squash of origin/BBL-studio-wipe-tower-merge) to avoid merge-history issues.
2026-02-13 22:53:25 +08:00
yw4z
b02a50add0
Filament selection dialog > Switch to column browser UI with search boxes (#12167)
Some checks are pending
Build all / Build Linux (push) Waiting to run
Build all / Build Non-Linux (push) Waiting to run
Build all / Unit Tests (push) Blocked by required conditions
Build all / Flatpak (push) Waiting to run
* init

* update

* add ability to select / unselect filtered items

* update

* update

* match icon placements on filter / search boxes

* add clear button

* add ability to filter checked / unchecked items

* update

* update

* update

* update

* remove use of :has selector for better browser support

* increase contrast on light mode

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2026-02-11 17:42:57 +08:00
paxx12
039a693b25
Update Snapmaker U1 printer profile and G-code sequences (#12219)
* Sync Snapmaker U1 profiles with upstream v2.2.1

* Customize Snapmaker U1 start gcode: auto bed leveling and adaptive mesh

* fix bed mesh min/max  regression issues

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2026-02-10 10:54:57 +08:00
Rodrigo Faselli
084c58f365
500C temp tower Calib (#12103)
* 500C temp tower

* better model

* draco temp tower

Co-Authored-By: Ian Bassi <ian.bassi@outlook.com>

---------

Co-authored-by: Ian Bassi <ian.bassi@outlook.com>
2026-02-09 10:03:32 -03:00
Ian Bassi
ed1b03fe6d
Reduce Orca weight: Resources to Draco (#12194)
Some checks are pending
Build all / Build Linux (push) Waiting to run
Build all / Build Non-Linux (push) Waiting to run
Build all / Unit Tests (push) Blocked by required conditions
Build all / Flatpak (push) Waiting to run
# Description

Transforming internal 3D Files to DRC to reduce orca size

## Calibs

(Not counting temperature_tower)
Original 6,01 MB
Converted 1,57 MB

- Mesh (STL/3MF) to LossLess DRC
	- SCV-V2 116kb -> 15kb
	- fast_tower_test 66kb -> 9kb
	- ringing_tower 172kb -> 22kb
	- pressure_advance_test 124kb -> 16kb
	- tower_with_seam 2kb -> 1kb
	- retraction_tower 1.726kb -> 97kb (done at 25, if 0 = 212kb)
	- ~~temperature_tower~~ Updated, fixed, wider range and Draco in: #12103 5.075kb -> 485kb
	- vfa 1.453kb -> 179kb
- Step
	- SpeedTestStructure 1.312kb -> 86kb
		- Imported:
			- Linear Deflection: 0.002
			- Angle Deflection: 0.25
		- Exported as LossLess DRC

## Handy Models

Original 4,66 MB
Converted 1,53 MB

- STL/3MF to LossLess DRC (Maybe reduce the bit depth???)
	- 3DBenchy 2.417kb -> 570kb (done at 25, if 0 = 1.340kb)
	- calicat 43kb -> 6kb
	- ksr_fdmtest_v4 128kb -> 74kb
	- Orca_stringhell 63kb -> 37kb
	- OrcaToleranceTest 758kb -> 94kb
	- Stanford_Bunny 755kb -> 187kb (done at 25, if 0 = 316kb)
	- Voron_Design_Cube_v7 34kb -> 21kb

## Bit used

After some test with a lot of models and all possible combinations it's safe to say that >20 is BondingBox and mm3 volume the best it can.
So i used 25 just as a safe value in:

- Stanford_Bunny
- 3DBenchy
- retraction_tower

<img width="324" height="499" alt="imagen" src="https://github.com/user-attachments/assets/bb5000cf-c1fa-4153-af2f-691ea59bc254" />
<img width="324" height="499" alt="imagen" src="https://github.com/user-attachments/assets/f38e3528-0d05-4621-984e-f107a0eec91e" />

## MultiPart 3MF

Didint change them, too much trouble for small changes.
2026-02-09 10:48:29 +08:00
davyd
2f2f0df6af
feat: Add File header G-code option and print_time_sec/filament_length_m placeholders (#12186)
Some checks are pending
Build all / Build Linux (push) Waiting to run
Build all / Build Non-Linux (push) Waiting to run
Build all / Unit Tests (push) Blocked by required conditions
Build all / Flatpak (push) Waiting to run
## Problem

Some Creality printers (e.g. Ender-3 V3 SE) rely on metadata comments in the first lines of G-code files to display print info on the screen (estimated time, filament usage, layer height). This follows a format originally used by Cura/Creality Print:
```
;FLAVOR:Marlin
;TIME:3708.97
;Filament used:6.21m
;Layer height:0.2
```

OrcaSlicer currently has no way to write content before the `HEADER_BLOCK` in the G-code output, and does not expose `print_time_sec` or `filament_length_m` as usable placeholders. As a result, these printers show zeroed-out print info on screen.

## Changes

### 1. New placeholders (post-processing)
Added two new G-code placeholders resolved during post-processing:
- `{print_time_sec}` — total estimated print time in seconds (double)
- `{filament_length_m}` — total filament length in meters (double)

These values are only available after G-code generation, so they use inline marker replacement (`@PRINT_TIME_SEC@`, `@FILAMENT_LENGTH_M@`) that `GCodeProcessor::run_post_process()` substitutes with actual computed values — the same pattern used by existing M73 and layer count placeholders.

### 2. New "File header G-code" option (`machine_top_gcode`)
Added a new G-code field in **Printer Settings > Machine G-code** that writes content at the very top of the output file, before `HEADER_BLOCK_START`. This allows users to add firmware-specific metadata that must appear in the first lines.

### 3. Creality Ender-3 V3 SE profile update
Pre-configured the Ender-3 V3 SE profiles (all 4 nozzle variants) with a default `machine_top_gcode` value matching the Cura-compatible header format, so print info displays correctly out of the box.

# Screenshots

| Before (current OrcaSlicer) | After (this PR) |
|---|---|
| ![IMG_5285](https://github.com/user-attachments/assets/fdd2cc96-6593-4108-83f4-e272d5547467) | ![IMG_5286](https://github.com/user-attachments/assets/6cb4091a-4560-4596-93d9-49f2ff8f0a2b) |

## Tests

- Sliced test model with Ender-3 V3 SE profile
- Verified G-code output contains correct values in first lines:
  - `;TIME:` with actual print time in seconds
  - `;Filament used:` with filament length in meters
  - `;Layer height:` with correct layer height
- Verified `{print_time_sec}` and `{filament_length_m}` work in both Machine Start G-code and File header G-code fields
- Verified empty `machine_top_gcode` produces no extra output
- Built and tested on macOS (arm64)
2026-02-08 23:56:28 +08:00
Finn Bosholm
1663dab6ff
fix wrong inheritance for idex profiles (#12009)
The IDEX profiles for Ratrig v-core 4.0 printers where only working for the 0.4 mm nozzle. I suppose these changes should fix it. I only asked copilot about it, so not tested if that is the reason why I cannot select a second filament with the bigger nozzle profiles.
2026-02-08 23:46:17 +08:00
wrathernaut
506ab3ed14
Correct pressure advance syntax in startup GCODE for Taz Pro S (#11981) 2026-02-08 23:44:18 +08:00
FlyingbearOfficial
cca8dc9790
Update bed temp for Flyingbear Ghost7 machine (#12199)
Update fdm_filament_pla @Ghost7.json
2026-02-08 17:45:17 +08:00
InfimechOfficial
8fd556e4b0
Add new models named EX and EX+APS (#11776)
# Description

<!--
> Please provide a summary of the changes made in this PR. Include details such as:
  > * What issue does this PR address or fix? Add new models
  > * What new features or enhancements does this PR introduce? no
  > * Are there any breaking changes or dependencies that need to be considered? no
-->

# Screenshots/Recordings/Graphs

<!--
> Please attach relevant screenshots to showcase the UI changes.
> Please attach images that can help explain the changes.
-->

## Tests

<!--
> Please describe the tests that you have conducted to verify the changes made in this PR.
-->
2026-02-08 17:24:24 +08:00
Sezgin AÇIKGÖZ
8a77b4269d
Add Elas filament profiles (PLA, PLA Pro, PETG, ASA) (#11758)
* Add Elas filament profiles (PLA, PLA Pro, PETG, ASA)

Signed-off-by: Sezgin AÇIKGÖZ <sezginacikgoz@mail.com>

* Re-add missing filament profiles to global library

Signed-off-by: Sezgin AÇIKGÖZ <sezginacikgoz@mail.com>

* Update Elas filament profiles

Signed-off-by: Sezgin AÇIKGÖZ <sezginacikgoz@mail.com>

---------

Signed-off-by: Sezgin AÇIKGÖZ <sezginacikgoz@mail.com>
2026-02-08 17:23:17 +08:00
Noisyfox
d46cd65d7c
Add Elegoo CC 2 profiles (#11240)
### NOTE: NOT TESTED

<img width="789" height="601" alt="image" src="https://github.com/user-attachments/assets/f0057c21-d169-4269-8bf1-ab9cb2f5d10d" />
<img width="1567" height="1065" alt="image" src="https://github.com/user-attachments/assets/5f4e3fcf-b294-4b56-810e-59d85caff4ef" />
2026-02-08 17:00:52 +08:00
LGT-WX
48b8edc2bb
[PROFILE] Add LONGER printer profiles (#11161)
# Description

Add printer profiles for LONGER LK10 and LK10 Plus by LONGER

# Screenshots/Recordings/Graphs

<img width="1920" height="965" alt="lk10 plus" src="https://github.com/user-attachments/assets/1a7667a2-1473-459c-8a15-21db709f94a9" />
<img width="1920" height="965" alt="lk10" src="https://github.com/user-attachments/assets/d3f49715-e825-41a1-9bf5-a5fc05fd07ad" />
<img width="1920" height="1039" alt="xz" src="https://github.com/user-attachments/assets/f6b92b28-679c-4c9c-825e-4da4826b5838" />


## Tests

Profiles have been tested and used with the latest OrcaSlicer 2.3.1.
Verified by Python as shown in the figure
<img width="854" height="145" alt="py" src="https://github.com/user-attachments/assets/0fa50e01-1b56-4dc4-882a-c63c294ba5ec" />
2026-02-08 16:45:08 +08:00
Ioannis Giannakas
aa4eb9de13
Fix printer selection cursor on Mac (#12183)
Some checks are pending
Build all / Build Linux (push) Waiting to run
Build all / Build Non-Linux (push) Waiting to run
Build all / Unit Tests (push) Blocked by required conditions
Build all / Flatpak (push) Waiting to run
2026-02-05 13:37:50 +00:00
Ioannis Giannakas
f9101a18f0
Fix wipe dialogue pointer on mac (#12172)
Some checks are pending
Build all / Build Linux (push) Waiting to run
Build all / Build Non-Linux (push) Waiting to run
Build all / Unit Tests (push) Blocked by required conditions
Build all / Flatpak (push) Waiting to run
2026-02-04 14:25:56 +00:00
yw4z
d608d7dffe
UI Fixes / Improvements (#12069)
Some checks are pending
Build all / Build Linux (push) Waiting to run
Build all / Build Non-Linux (push) Waiting to run
Build all / Unit Tests (push) Blocked by required conditions
Build all / Flatpak (push) Waiting to run
* clone dialog - spin input stuck on selected

* fix advanced toggle label

* fix scrollbar appearing on project page welcome screen

* create slicing section on preferences

* reduce margins on tabs

* bbl part skip dialog

* Update filament_not_mactch.svg

* Update icon_qusetion.svg

* match hyperlink color on notifications

* fix position of notifications on slicing errors

* match background color of BBL > Calibration tab > Sidebar

* match look of BBL sidebars

* match bbl monitor icons

* match multi-device page margins

* bbl > monitor > print control buttons

* fix flush dialog showing text selection on buttons

* Printer network dialog > match combo box width
2026-02-04 11:40:02 +00:00
yw4z
ea3685aacb
Tool position window Fixes / Improvements (#12068)
* init

* fix fold/unfold button direction

* remove window border

* remove unused icons

* add scaling support

* match libvgcode roles with orca terms

* fix expanding table window

* Update GCodeViewer.cpp

* fix translation support

* fix translations

* fix imgui styles
2026-02-04 11:38:05 +00:00
SoftFever
c12912e0df
Fix Setup Wizard stuck on "Loading..." on Wayland (#12159)
# Description

Fixes the Setup Wizard getting stuck on the "Loading......" screen when
running on Wayland sessions.

**Root Cause:** When OrcaSlicer runs under XWayland (Wayland sessions
with `GDK_BACKEND=x11`), WebKit2GTK's compositing mode can fail
silently, causing the Setup Wizard WebView to freeze or render blank.
The JavaScript signal from C++ (`userguide_profile_load_finish`) either
fails to execute or its rendering result never displays, leaving users
permanently stuck.

**Solution:**
1. Set `WEBKIT_DISABLE_COMPOSITING_MODE=1` environment variable to force
software rendering for WebKit2GTK - this is the same fix used by
BambuStudio
2. Enable the 20-second timeout fallback in `load.js` so the wizard
proceeds automatically even if the C++ → JavaScript communication fails

**Files changed:**
- `src/OrcaSlicer.cpp` - Added `WEBKIT_DISABLE_COMPOSITING_MODE` env var
(4 lines)
- `resources/web/guide/0/load.js` - Enabled timeout fallback (2 lines)

# Screenshots/Recordings/Graphs

N/A - This is a Linux/Wayland-specific fix that addresses a rendering
issue. The visual result is simply that the Setup Wizard proceeds past
"Loading......" as expected.

## Tests

1. **On Wayland session (e.g., GNOME on Wayland):**
- Remove existing config (`~/.config/OrcaSlicer/`) to simulate first
launch
   - Launch OrcaSlicer
- Verify Setup Wizard proceeds past "Loading......" to the actual wizard
page

2. **On X11 session:**
   - Same test as above to verify no regression

3. **Verify env var is set:**
- Check that `WEBKIT_DISABLE_COMPOSITING_MODE=1` is in the process
environment on Linux builds
2026-02-03 23:10:17 +08:00
SoftFever
56f1f05f12 Fix Setup Wizard stuck on "Loading..." on Wayland
When running under XWayland (Wayland sessions with GDK_BACKEND=x11),
WebKit2GTK's compositing mode can fail silently, causing the Setup
Wizard WebView to freeze or render blank. This leaves users stuck on
the "Loading......" screen indefinitely.

Changes:
- Set WEBKIT_DISABLE_COMPOSITING_MODE=1 to force software rendering,
  matching the fix used by BambuStudio
- Enable the 20-second timeout fallback in load.js so the wizard
  proceeds even if the C++ -> JavaScript signal fails
2026-02-03 14:47:08 +08:00
SoftFever
cf3d9118ab
Merge branch 'main' into feature/orca_network_refactor 2026-02-02 23:51:39 +08:00
SoftFever
977a66be39
Fix active filament preset not matching wizard selection on first run (#12132)
Some checks are pending
Build all / Build Linux (push) Waiting to run
Build all / Build Non-Linux (push) Waiting to run
Build all / Unit Tests (push) Blocked by required conditions
Build all / Flatpak (push) Waiting to run
* Fix active filament preset not matching wizard selection on first run

After completing the setup wizard with only a non-PLA filament selected
(e.g. Generic ABS), the active filament preset defaulted to Generic PLA
instead of the user's selection. This happened because load_presets()
falls back to Generic PLA when the initial printer differs from the
preferred printer, and the first_added_filament override was disabled.

Add post-load correction in apply_config() that switches the active
filament to the first compatible wizard-selected filament when the
current active filament is not in the wizard selection. Also fix the
guide JS (22.js, 23.js) to use the filalist attribute for building
the filament array, and add platform-specific build test commands to
CLAUDE.md.

* Replace @System filaments with vendor-specific overrides in wizard

When the wizard selects a generic filament like "Generic ABS @System",
check if a vendor-specific override exists (e.g. BBL "Generic ABS")
and use that instead. This ensures printer-tuned profiles are preferred,
preventing load_installed_filaments from adding unwanted BBL defaults.

When printers from the default bundle are also selected, both variants
are kept since those printers need the @System version.

Also adds diagnostic logging for filament loading in LoadProfileFamily.

* Guard against persisting presets for Default Printer and fix filament override logic

Prevent export_selections from saving stale preset settings for the
built-in "Default Printer" placeholder, which is only the initial state
before a real printer is loaded. Also require a non-default vendor printer
to be selected before replacing @System filaments with vendor-specific
overrides in the wizard, avoiding incorrect filament substitution when
only the default bundle is present.
2026-02-01 21:34:14 +08:00
liutang
3a056f2aa3
Snapmaker U1: switch wall_generator to arachne (#12121)
Some checks are pending
Build all / Build Linux (push) Waiting to run
Build all / Build Non-Linux (push) Waiting to run
Build all / Unit Tests (push) Blocked by required conditions
Build all / Flatpak (push) Waiting to run
2026-02-01 00:10:09 +08:00
SoftFever
570d0ec7b6
Merge branch 'main' into feature/orca_network_refactor 2026-01-27 20:59:07 +08:00
Ian Bassi
e0192ae437
Update documentation links in hints.ini (#12075)
Some checks are pending
Build all / Build Linux (push) Waiting to run
Build all / Build Non-Linux (push) Waiting to run
Build all / Unit Tests (push) Blocked by required conditions
Build all / Flatpak (push) Waiting to run
Replaced GitHub wiki URLs with new orcaslicer.com documentation links for several hints to provide more accurate and up-to-date references.

Co-authored-by: yw4z <yw4z@outlook.com>
2026-01-26 09:51:00 -03:00
SoftFever
9703a6b4d7 init 2026-01-23 17:05:56 +08:00
Dmitrii
f3f752d0be
Prusa CORE One L (C1L) Profiles (#11447)
# Description

This adds support for Prusa CORE One L.

Prusaslicer commit: 5bda77520e

# Screenshots/Recordings/Graphs

<img width="762" height="289" alt="image" src="https://github.com/user-attachments/assets/ff117547-daaa-46c1-a964-996d533613cc" />

(no i'm not sure if it's meant to be this wide)

## Tests

None yet, plz help
2026-01-22 15:34:43 +08:00
Rodrigo Faselli
eac352f95d
Non manifold edges calibration bug-fix (#11861)
* fix non manifold edges calib

Update Plater.cpp

* remove unused model

* Model Fix

Co-Authored-By: yw4z <yw4z@outlook.com>

---------

Co-authored-by: yw4z <yw4z@outlook.com>
2026-01-16 18:27:22 -03:00
Jingxi-Polymaker
8225d642d0
Add CoPE material type (#11867)
Some checks are pending
Build all / Build Linux (push) Waiting to run
Build all / Build Non-Linux (push) Waiting to run
Build all / Unit Tests (push) Blocked by required conditions
Build all / Flatpak (push) Waiting to run
# Description

This PR introduces a new material type called **CoPE** to the system.

**Changes:**
* **New Material:** Implemented `CoPE` as a selectable material type.
* **Configuration:** Added necessary material properties and parameters specific to CoPE.

**Breaking Changes:**
* None.

# Screenshots/Recordings/Graphs
<img width="1793" height="618" alt="image" src="https://github.com/user-attachments/assets/8577be4d-9f5f-4bda-b0de-c0842857625d" />
<img width="978" height="937" alt="image" src="https://github.com/user-attachments/assets/ec2ba1a3-41d5-4792-8fea-41c282136ff2" />

## Tests

I have verified the changes with the following tests:

* **UI Validation:** Verified that `CoPE` correctly appears in the software's material selection list.
* **Preset Management:**
  * Successfully **exported** a preset containing the CoPE material.
  * Successfully **imported** the CoPE preset back into the software.
2026-01-14 19:51:13 +08:00
SoftFever
8c2f3290f2
Misc profile fixes (#11944)
* fix errors in Qidi profile

* update U1 profile

* Add permissions for pull requests and contents in check_profiles.yml
2026-01-13 21:06:48 +08:00
axtox
f47f7a6288
Fixed wrong tool change at the starting G-Code for the multicolor Geeetech printers (#11926)
* Added proper tool‑change handling for Geeetech multi‑color

* Better variables used for initial bed/nozzle temp for Geeetech multicolor printers

* Wrong colon symbol (U+FF1A) replaced with regular  U+003A
During the slicing those symbols are not recognized by the printers and come out with artifacts
2026-01-13 20:23:32 +08:00
Chiheb Madiouni
7bab2c2785
Add WEMAKE3D 3DPrinters Profiles (#11880)
Some checks failed
Build all / Build Linux (push) Has been cancelled
Build all / Build Non-Linux (push) Has been cancelled
Build all / Flatpak (push) Has been cancelled
Build all / Unit Tests (push) Has been cancelled
# Description

<!--
> Please provide a summary of the changes made in this PR. Include details such as:

  > * What issue does this PR address or fix?
  > * What new features or enhancements does this PR introduce?
  > * Are there any breaking changes or dependencies that need to be considered?
-->
This PR adds support for two new Wemake3D printer models to OrcaSlicer: the `Phoenix Pro V1` and `TinyBot V1`.

Changes Made:
Added new printer definitions for:

`WEMAKE3D Phoenix Pro V1`

`WEMAKE3D TinyBot V1`

Includes standard printer profiles (machines  and process settings).

Implements device-specific start/end G-code.

Adds recommended slicing parameters for optimal print quality.

**Dependencies & Considerations:**
This PR adds new configuration files only and does not modify any existing core functionality.

No breaking changes are introduced.

The profiles are based on standard Marlin-compatible G-code and should work with the stock firmware on these devices.

# Screenshots/Recordings/Graphs

<!--
> Please attach relevant screenshots to showcase the UI changes.
> Please attach images that can help explain the changes.
-->
Printer Selection Menu
The new printers "Wemake3D Phoenix Pro V1" and "Wemake3D TinyBot V1" now appear in the printer selection list.
<img width="806" height="656" alt="image" src="https://github.com/user-attachments/assets/39c4e2fb-c1cc-4bdd-b6c6-ee432fbc198f" />



Printer Settings Preview

Example printer settings panel for the Phoenix Pro V1.
<img width="1180" height="785" alt="image" src="https://github.com/user-attachments/assets/44f0c820-6c70-4daa-86a2-94a7792d1216" />


## Tests
Verification Steps:

**Profile Validation:** Validated with  `orca_extra_profile_check.py`

**Installation & Discovery:** Successfully installed the configuration files and verified both printers appear in the "Add Printer" wizard.

**Profile Loading:** Tested loading each printer profile and confirmed all default settings (print, filament, process) are applied correctly.

**G-code Validation:** Manually reviewed the start and end G-code for each model to ensure compatibility and safety.

**Slice Simulation:** Performed test slices on sample models (benchy, calibration cube) for both printers to verify parameter application and generate error-free G-code.

**Basic Compatibility:** Confirmed generated G-code follows standard Marlin syntax and should be compatible with the printers' expected firmware.

**Test Environment:**

OrcaSlicer Version : `2.3.2-dev` & `2.3.1`

OS :` Windows 10` & `Windows 11`


<!--
> Please describe the tests that you have conducted to verify the changes made in this PR.
-->
2026-01-10 23:06:41 +08:00
HYzd766
c400640197
QIDI MAX4 (#11888)
New Machine QIDI X-Max4
2026-01-09 20:36:57 +08:00
Dan Martí
e175f8582c
Merge branch 'main' into main 2026-01-06 12:44:23 -03:00
Dan Martí
71c1e741ee
Fixed a typo 2026-01-06 12:43:42 -03:00
SoftFever
ba5f0e707d
Port libvgcode/improved G-code viewer from PrusaSlicer 2.8.0 (#10735)
Some checks are pending
Build all / Build Linux (push) Waiting to run
Build all / Build Non-Linux (push) Waiting to run
Build all / Unit Tests (push) Blocked by required conditions
Build all / Flatpak (push) Waiting to run
# Description

Fixes #6813 
Fixes #7782 
Fixes #6367

This is a port of libvgcode, OpenGL Core Profile (libvgcode requires OpenGL 3.2+), and probably other stuff I forgot from PrusaSlicer. libvgcode is also known as "Improved G-code Viewer" which was introduced in [PrusaSlicer 2.8.0](https://github.com/prusa3d/PrusaSlicer/releases/tag/version_2.8.0-alpha5). It significantly improves performance of the G-code preview and allows displaying the actual speed and volumetric flow rate.

## TODO

- [x] Make the sliders work properly again
- [x] Make view type selection work
- [x] Fix toggling of feature type visibility
- [x] Expose actual speed/actual flow view types
- [x] Fix display of G2/G3 arcs
- [x] Wire up actual speed graph widgets
- [x] Fix painter gizmos
- [x] Fix crash when selecting filament view type on Windows
- [ ] Figure out display color management (#10827)
- [x] Fix incorrect rendering of small area flow compensation (or any extrusions with varying flow)
- [ ] Localization
- [ ] Testing
- [ ] Code cleanup, performance optimization

## Removed functionality

Some functionality is not supported by libvgcode:

- Toggling visibility of tools
- Toggling visibility of colors in color print view
- Support for systems with OpenGL <3.2
- Bambu's implementation of G2/G3 arcs was replaced with PrusaSlicer's implementation

# Screenshots/Recordings/Graphs

https://github.com/user-attachments/assets/c1413a82-3058-4541-b96c-3d5f7cdef174

<details>
<summary>Outdated Stuff</summary>

https://github.com/user-attachments/assets/ca172ef4-0828-4d21-8768-b08a4132c9ab

<img width="1611" height="1145" alt="image" src="https://github.com/user-attachments/assets/5e0d04ff-8046-4636-a08a-cdedc60303bc" />
</details>

## Tests

- [x] Normally sliced G-code
- [ ] G-code viewer mode
- [x] Arc fitting enabled
- [x] Spiral Z-hops
- [x] Multi-extruder/multi-color
- [x] Vase mode
- [x] Skirt/brim
- [x] Supports
- [ ] Support transition (whatever this is)
- [x] Painter gizmos
- [x] Measurement gizmo
- [x] Move/rotate/scale gizmos
- [x] H2D/H2S support (oh no)
- [ ] Windows
- [x] macOS
- [ ] Linux
2026-01-06 23:15:16 +08:00
Neo
eb72dce9aa
Fix typo in filament_sbs_template.json (#11837)
Some checks are pending
Build all / Build Linux (push) Waiting to run
Build all / Build Non-Linux (push) Waiting to run
Build all / Unit Tests (push) Blocked by required conditions
Build all / Flatpak (push) Waiting to run
Lowered hot_plate_temp from 5705 to a reasonable 70 degrees. 

(should be 60-90 degrees according to sources, made it the same as the first layer bed temp)
2026-01-06 08:34:34 +00:00
Dan Martí
98f6467942
Merge branch 'main' into main 2026-01-06 02:46:32 -03:00
Dan Martí
128ef60bf3
Add profiles for Anycubic Kobra 2 Neo
Added the 0.12, 0.26 and 0.28 profiles for Anycubic Kobra 2 Neo 0.4
2026-01-06 02:40:29 -03:00
SoftFever
1b355be432
Merge branch 'main' into libvgcode 2026-01-06 11:09:09 +08:00
Byeon Ho cheol.
57dd572427
Add support for Cubicon xCeler-Plus printer and profiles. (#11771)
Some checks are pending
Build all / Build Linux (push) Waiting to run
Build all / Build Non-Linux (push) Waiting to run
Build all / Unit Tests (push) Blocked by required conditions
Build all / Flatpak (push) Waiting to run
# Description
This PR adds support for the new printer model **Cubicon xCeler-Plus**.
It includes:
- Machine configuration (JSON)
- Process profiles (Speed, Quality settings)
- Filament settings
- Bed texture and model resources

# Screenshots/Recordings/Graphs
# Tests
I have successfully tested the sliced G-code on the actual machine (Cubicon xCeler-Plus).
- [x] Slicing test passed
- [x] Printing test passed with Klipper firmware
2026-01-06 10:56:00 +08:00
Dan Martí
89c58a7429
Merge branch 'main' into main 2026-01-05 20:53:01 -03:00
Ioannis Giannakas
eab86797dd
Relax flushing volume thresholds for printers needing higher purge. (#11778)
* Relax flushing volume thresholds for printers needing higher purge.

* Revert multiplier UI color handling
2026-01-05 22:41:04 +00:00
Pepe-Polymaker
8670bb65f2
Refactor Polymaker folder within Snapmaker profile directory and add more profiles (#11613)
# Description
* What issue does this PR address or fix?
1. Refactor Polymaker folder within Snapmaker profile directory, so that the structure is more clear.
2. Add more Polymaker filament presets for Snapmaker printers.
* What new features or enhancements does this PR introduce?
1. None
* Are there any breaking changes or dependencies that need to be considered?
1. None
2026-01-05 18:12:56 +08:00
Sezgin AÇIKGÖZ
03c8541b09
Update machine profile for OpenEYE Peacock V2 (#11790)
# Description

This PR updates the machine start G-code and adaptive bed mesh options of the **OpenEYE Peacock V2** printer profile.

There are no breaking changes. Existing profiles and workflows remain fully compatible.

## Tests

- Loaded the updated profile in Orca Slicer.
- Generated sample G-code files and verified the updated startup sequence.
- Confirmed no impact on slicing behavior, materials, or process settings.
2026-01-04 14:15:31 +08:00
mjfsch
ad88d43db8
CoPrint Profiles Update (#11818)
# Description

Accurate color change calculations for coprint setups by specifying the nozzle volume, reduced risk of jamming by removing parking position setting.

## Tests

Settings tested on N3+ and K1 equipped with coprint kits.
2026-01-04 14:14:54 +08:00
neo-jayfeather
af9688e619
Small Printer Thumbnail Orientation and Typo Fixes (#11807)
Some checks are pending
Build all / Build Linux (push) Waiting to run
Build all / Build Non-Linux (push) Waiting to run
Build all / Unit Tests (push) Blocked by required conditions
Build all / Flatpak (push) Waiting to run
# Description
- Centered P2S image and removed unnecessary padding (different source image). 
- Renamed Ginger Additive G1 (ginger --> Ginger, no image change).
- Renamed Magic maker hj SK (sk --> SK, no image change).
- Renamed Wondermaker ZR Ultra S (ULtra --> Ultra, no image change). 
- Replaced Geeetech A10M (to hide spool on top, better framing)
- Edited M3D Enabler so the white background is transparent (same image, edited & cropped).

> [!NOTE]
> All images were edited using GIMP on Linux, are 240x240 px @ 144 dpi. 
> (and no AI was used for this description or image processing, if that matters)
# Screenshots/Recordings/Graphs
| Printer | Old | New |
|----|-----|----|
|P2S|<img width="373" height="203" alt="image" src="https://github.com/user-attachments/assets/49e441b0-b2bf-4ec4-b63d-a6a53736181a" /> | <img width="369" height="208" alt="image" src="https://github.com/user-attachments/assets/ce10d552-d238-453e-8ee0-d1382203c7e7" /> |
|Ginger Additive G1|<img width="185" height="221" alt="image" src="https://github.com/user-attachments/assets/d97998cb-7385-4cca-a747-05860b47ea0f" />|<img width="187" height="207" alt="image" src="https://github.com/user-attachments/assets/07054674-9358-4d50-9db1-690542d66ffb" />|
|Magic Maker hj SK|<img width="170" height="211" alt="image" src="https://github.com/user-attachments/assets/795dfb48-749b-4fbb-8005-49689a11fcc7" />|<img width="189" height="210" alt="image" src="https://github.com/user-attachments/assets/5d0f60d8-8c64-4881-baee-ee7089970c25" />|
|Wondermaker ZR Ultra S|<img width="171" height="208" alt="image" src="https://github.com/user-attachments/assets/40618ef8-ec2e-4dd8-8257-907dab1537eb" />|<img width="178" height="207" alt="image" src="https://github.com/user-attachments/assets/ba5ec44c-9aac-41f6-b8b4-8fd96edb489c" />|
|Geeetech A10 M|<img width="186" height="206" alt="image" src="https://github.com/user-attachments/assets/f5db21c0-e8e1-4f24-bdc7-ac46db8cd646" />|<img width="181" height="205" alt="image" src="https://github.com/user-attachments/assets/b008e2f6-4409-43d4-9463-4258e0b07be7" />|
|M3D Enabler|<img width="204" height="228" alt="image" src="https://github.com/user-attachments/assets/697f0c25-d4de-4e23-94e4-de78b57865cf" />|<img width="209" height="231" alt="image" src="https://github.com/user-attachments/assets/95dc6a0e-bb3d-4c63-bdef-0bdfb7209e50" />|

## Tests

No code was changed, so no logic was tested. I have tested the import UI and have made sure that the images follow previous standards (appears to be 240x240, 144 ppi).
2026-01-02 17:26:27 +08:00
innovatiQ
11018ba0f3
Polymaker Polymax PETG updated - Grauts HPP4GF25 added (#11665)
Some checks are pending
Build all / Build Linux (push) Waiting to run
Build all / Build Non-Linux (push) Waiting to run
Build all / Unit Tests (push) Blocked by required conditions
Build all / Flatpak (push) Waiting to run
* Added InnovatiQ Vendor Files

* Cover image corrected

* Corrected Texture Image

* Support Interface Pattern modified

* Fix file name casing

* Added new filament(PETG)

* changed three parameters

* Added 6 new printer files

0.25, 0.6, 0.8 printer profiles are added to TiQ2 and TiQ8

* Added 6 new machines in machine list

* 6 new machines added in machine list

* Modified the PACF filament and process file

* Added two new filament file and one process file

* Modified one filament and one process file

* PETG Polymax profile for TiQ2 updated

* HPP4GF25 Grauts filament-process addeed to TiQ2

---------

Co-authored-by: MohanS <sibi.mohan@innovatiq.com>
Co-authored-by: Noisyfox <timemanager.rick@gmail.com>
Co-authored-by: Ashidsha Jaleel <JaA0@germanreprap.local>
Co-authored-by: SoftFever <softfeverever@gmail.com>
Co-authored-by: ash-innovatiq <ashidsha.jaleel@innovatiq.com>
2026-01-02 10:06:53 +08:00
Ian Bassi
7c91459c37
Emit Disable Power Loss Recovery (#11616)
Some checks are pending
Build all / Build Linux (push) Waiting to run
Build all / Build Non-Linux (push) Waiting to run
Build all / Unit Tests (push) Blocked by required conditions
Build all / Flatpak (push) Waiting to run
* Emit Disable Power Loss Recovery

Now only works if it's enabled but the goal it's to force disable it.
With this change it will always emit the command for BBL or Marlin 2.

Co-Authored-By: Michael Rook <54159303+michaelr0@users.noreply.github.com>

* Refactor power loss recovery G-code comments

* Return empty power loss recovery when no compatible printer

* Update power loss recovery comments

Update label and tooltip for power loss recovery

* Add enum for power loss recovery mode

Refactored power loss recovery configuration to use a new PowerLossRecoveryMode enum instead of a boolean. Updated GCodeWriter and related logic to handle the new enum, allowing for 'printer_configuration', 'enable', and 'disable' options. Updated config handling, legacy value conversion, and default values accordingly.

* Update PrintConfig.cpp

---------

Co-authored-by: Michael Rook <54159303+michaelr0@users.noreply.github.com>
Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-12-31 00:16:47 +08:00
yw4z
0330e86007
Introduce canvas menu (#11618)
* init

* update

* Update GLCanvas3D.cpp

* Update GLCanvas3D.cpp

* cleanup

* fix icon size

---------

Co-authored-by: SoftFever <softfeverever@gmail.com>
2025-12-31 00:02:48 +08:00
Dan Martí
04dfbc3e39
Merge branch 'main' into main 2025-12-28 22:05:28 -03:00