OrcaSlicer for the Creality K2
Community test build of OrcaSlicer with native Creality K-series support, LAN auto-discovery for K2 / K2 Plus / K2 Pro, live CFS filament-slot sync from the printer, and the 191 K2-specific filament profiles from Creality Print imported in. Built on top of imammedo's upstream PR #13291. This work has now been merged into OrcaSlicer (PR #13752), if you just want K2 support, the official OrcaSlicer nightly now has it. These portable builds remain for anyone who prefers them.
What's in this build
Four K-series additions on top of upstream OrcaSlicer
All four changes live on the public harktech/k2-discovery branch and are open as Draft PRs against the upstream repo, this build is just an easy way to try them without compiling.
- LAN auto-discovery (K2 / K2 Plus / K2 Pro)
- CFS filament-slot sync
- 191 K2 filament profiles imported
- Mainsail web UI as the Device tab
- Open source · AGPL-3.0
What changed
LAN discovery + CFS sync
K-series printers announce themselves via DNS-SD under a per-device-unique service name (_Creality-<mac>._udp) which OrcaSlicer's existing Bonjour browser can't find. This build adds a Creality-specific scanner: click Browse... in the Physical Printer dialog and your K2 appears in 5–10 seconds, no typing IPs.
The AMS-sync icon now queries the K2's CFS over WebSocket, reads the slot data (vendor, type, brand name, colour, pressure-advance) and updates Orca's sidebar with the brand-specific filament preset that actually matches the loaded spool. No more “Generic PLA” placeholder when you've got Hyper PLA loaded.
Profiles + device tab
191 K2-family filament profiles (PLA / PLA-CF / PLA-GF / ABS / ASA / PA / PC / PET / TPU, K2 + K2 Plus + K2 Pro) imported from Creality Print v7.1.1. Brand-specific presets, eSun PLA+, Hyper PLA, Polymaker PolyTerra, etc, show up in the filament dropdown straight away.
The Device tab shows Mainsail at http://<ip>:4408 instead of the empty Bambu-only panel, so you get the full Klipper web UI (camera, console, macros, gcode files) inside the slicer.
Get started
Quick start
-
Download & extract the zip anywhere, e.g.
C:\OrcaSlicer-K2\. It's a portable build, no installer, no admin rights, doesn't touch your existing OrcaSlicer install. To revert, just delete the folder. -
Run
orca-slicer.exe. First-launch wizard: pick your machine. There's a Creality K2 / K2 Plus / K2 Pro entry; choose the one you have. - Add the printer connection: in the device list, click the ☰ menu › Add Physical Printer. Set Host Type = Creality Print. Click Browse… next to Print Host URL, a busy cursor appears for 5–10 seconds while the LAN scan runs, then the discovery dialog opens with your K2 listed. Select it › Use Selected.
- Sync CFS filaments: in the sidebar, click the AMS-sync icon next to the filament rows. Your CFS slots populate with the brand-specific filaments currently loaded. Slice as usual.
First launch, what to expect
The build is not code-signed, so on first launch Windows SmartScreen will say “Windows protected your PC”. This is a generic warning shown for every unsigned executable from a small publisher, it doesn't mean anything is wrong with the file. To launch: click More info › Run anyway.
If you'd like to verify the zip matches what we published before extracting it, see “Verify your download” below.
Before you run it
Requirements
- Windows 10 or 11 (any edition). Linux / macOS builds are not yet packaged, build from source for now.
- Creality K2, K2 Plus or K2 Pro on the same LAN as your PC. Wired ethernet on the PC is helpful (more reliable mDNS than Wi-Fi).
- K2 firmware that exposes the Creality WebSocket on port 9999 (any recent stock firmware does).
- ~370 MB free disk space once extracted.
Known limitations
- End-to-end tested on a K2 Combo (F021, firmware v1.1.260206). K2 Plus / K2 Pro should work but are untested in the wild, your feedback is what tells us they do.
- Wi-Fi client isolation on some routers (especially mesh systems) will block the mDNS discovery. If the dialog finds nothing, that's the first thing to check.
- This is a test build. Some upstream features may have minor regressions inherited from the base PR (#13291) it stacks on.
Verify your download
SHA256
Run this in PowerShell after downloading, and check the output matches:
Get-FileHash OrcaSlicer-K2-Test-2026-06-12-8761ffb.zip -Algorithm SHA256 3F5BA8BB4DAE9774A4BC8DEE61A0AE0B7BCB4A7331BEE232729CFEDEE05CCD36
Companion file: OrcaSlicer-K2-Test-2026-06-12-8761ffb.zip.sha256
Help us land it upstream
How to give feedback
The whole point of this build is to gather real-world test signal for the upstream OrcaSlicer maintainers. If you try it, please drop a comment on whichever PR is relevant, one-liners (“works on my K2 Plus”, “CFS sync didn't pick up my third slot”) are exactly what we need:
Source & attribution
Open source, with credit where it's due
- This build's source: grant0013/OrcaSlicer @ harktech/test-build-20260612, the PR #14089 K1-family branch plus the PR #14166 performance fix and the filename-encoding upload fix. Required by AGPL. (Older builds: harktech/k2-discovery.)
- Upstream OrcaSlicer: SoftFever/OrcaSlicer, licensed AGPL-3.0. Everything here is a follow-up to @imammedo's PR #13291 which adds the Creality Print host type.
- mDNS library: mjansson/mdns (public domain). C++ wrapper
cxmdnsfrom CrealityPrint v7.1.1 (AGPL-3.0). Attribution insrc/slic3r/Utils/mdns/NOTICE.md. - Filament profiles: imported from CrealityPrint v7.1.1 (AGPL-3.0). Attribution in
resources/profiles/Creality/NOTICE.md. - Built & packaged by Hark Tech on a self-hosted GitHub Actions runner (VS 2026 / MSVC 14.51).
Builds
Pick a build
Each release is a portable Windows zip or Linux AppImage pinned to a git commit so you can rebuild from source. Downloads are hosted on GitHub Releases (checksums attached to each release). Older builds kept for reproducibility, the latest is always recommended.
First build based on OrcaSlicer main with the merged K-series support (PR #13752 landed upstream June 7) plus everything currently queued for upstream. New in this build: K1-family CFS support (PR #14089, K1 / K1 SE / K1C with LAN discovery and CFS filament sync, hardware-confirmed on a K1 SE, plus a single shared CFS-capable model table so discovery and sync can't drift apart); the slicing performance fix from PR #14166 (the g-code post-processing pass no longer recompiles its regexes on every line, up to 2.9× faster slicing on Klipper-flavour g-code); and a fix for uploads failing with "File/data transfer interrupted" when the filename contains URL-reserved characters like # (standalone PR pending). Built from branch harktech/test-build-20260612.
SHA256 (Windows)
3F5BA8BB4DAE9774A4BC8DEE61A0AE0B7BCB4A7331BEE232729CFEDEE05CCD36
SHA256 (Linux)
b7ea4e8d7291ba1ab62e30812ce8d60b08bdd18298f810bd5100ea8c7209b31e
Internal refactor in response to the first maintainer review on PR #13752. CFS filament sync now lives inside CrealityPrintAgent::fetch_filament_info and follows the same shape as MoonrakerPrinterAgent / QidiPrinterAgent / SnapmakerPrinterAgent, the Sidebar-side htCrealityPrint special case is gone, so there's no longer any printer-specific code in Plater.cpp. Net diff is 227 deletions / 4 insertions across three files. No behaviour change vs the 2026-05-21 build, same CFS-sync click, same auto-discovery, same Mainsail Device tab. Worth retesting on the new build so we can confirm the cleaner code path doesn't regress anything before flipping the PR back out of review. Everything else carries forward: K2 Plus state-fix, LAN auto-discovery (PR #13752), CFS filament-slot sync (PR #13744), 191 K2 filament profile imports + CR-PETG, Mainsail web UI as the Device tab. Stacks on imammedo's PR #13291.
SHA256 (Windows)
AD2BE62FF6975FAB52C33BF3EAF43B59AE2C91DE51C272BC151F325606560121
SHA256 (Linux)
349eaf0689cd4a8c7c04571291cfdc1ba597ba7278d9abb3beaba102fc5f2d91
Hot-fix on top of the earlier 2026-05-21 build. The 10 CR-PETG filament profiles added that day inherited from a base template (fdm_filament_petg) that didn't exist in the bundle, OrcaSlicer aborted the Creality filament load on parse error, leaving the K2 absent from the printer dropdown after testers added it. Fix repoints all 10 CR-PETG profiles at the existing fdm_filament_pet base, which already declares filament_type: ["PETG"]. No other changes vs b513dff2. If you tried the earlier 2026-05-21 build and the K2 wouldn't show in the dropdown, this is the fix. Everything else carries forward: K2 Plus CFS state-fix, LAN auto-discovery (PR #13752), CFS filament-slot sync (PR #13744), Creality HF Generic vendor categorization, Mainsail web UI, and the rest. Stacks on imammedo's PR #13291.
SHA256 (Windows)
FF806F20CB195DA8E1095DF823F7D80A7B28494F9DA410D757C848896353D47D
SHA256 (Linux)
43d5c03d2f1c02390a7cb7b6766cc90f626cc639cd7c52d5a52ccadf34b2f2d3
Adds missing CR-PETG filament profile for the K2 family (10 nozzle variants across K2 / K2 Plus / K2 Pro), the K2 firmware references this filament name in CFS payloads (per DaviBe92's docs and a real Creality spool confirmed by @swilsonnc) but Orca was missing the profile. Sourced from CrealityPrint v7.1.0 via @hamham999's PR #13581. Also fixes Creality HF Generic PLA and Creality HF Generic Speed PLA appearing under General instead of Creality in the filament picker. Carries forward everything from the previous build: K2 Plus CFS state-fix (per DaviBe92's docs), LAN auto-discovery (PR #13752), CFS filament-slot sync (PR #13744), Mainsail web UI as the Device tab, and stacks on imammedo's PR #13291.
SHA256 (Windows)
C2A578BC05786EC3100E5BFE3B3B3FE675DD160219AEEA7124883EF15721C262
SHA256 (Linux)
679b838be09d24bfc3cefa3b97d6b17f3ab0ebb781c3320a514c931c9cbbfe7b
K2 Plus CFS sync fix, addresses the "no loaded slots detected" and "wrong tray mapping" symptoms reported by multiple K2 Plus testers. The K2 Plus firmware uses three slot state values (per DaviBe92's reverse-engineering docs): 0 empty, 1 manually entered, 2 loaded with RFID tag. Our parser previously only accepted state == 1 and dropped every RFID-tagged spool; the fix is to treat any non-zero state as loaded. No behaviour change for K2 / K2 Pro. Carries forward everything from previous builds: LAN auto-discovery (PR #13752), CFS filament-slot sync (PR #13744), 191 K2 filament profile imports, Mainsail web UI as the Device tab.
SHA256 (Windows)
08203A21FE13B203D8FD1E7F0C4620BA97BA3559B4EC81FC6EC49848C327D206
SHA256 (Linux)
56569d7b485510e053a63904a86ee5c637d7cb38bf638b47b5b9d3cd64abe51a
Bug-fix update from Reddit feedback. Fixes two issues: (1) slicing failure on Hyper PLA / Creality Generic PLA High Speed, an undefined multicolor_method placeholder in filament_start_gcode was inherited from CrealityPrint and broke Orca's parser; the wrapper has been stripped from 110 K2 Plus profiles. (2) Creality filaments now appear under Creality instead of Generic in the filament picker (50 profiles had missing filament_vendor). Carries forward everything from the previous build: LAN auto-discovery (PR #13752), CFS filament-slot sync (PR #13744), 191 K2 filament profile imports, and Mainsail web UI as the Device tab. Stacks on imammedo's PR #13291.
SHA256
C3568977D072BB6977DEF7B7C6316FC465A168E36C928EACDF734ACAB21D418D
Ready to try it on your K2?
Portable Windows zip (~154 MB) or Linux AppImage (~134 MB). No installer, no account. Comments on the PRs go directly to the OrcaSlicer maintainers.
Download OrcaSlicer K2 (test build)Found something broken? The PR comment threads (#13744 / #13752) are the best place, the OrcaSlicer maintainers see them too. For things specific to this build / page, the contact form also works.