The Creality K2 series 3D printer firmware (encompassing the K2, K2 SE, K2 Pro, and K2 Plus) contains a systemic violation of the GNU General Public License v3 (GPLv3) due to the inclusion of proprietary binary blobs compiled directly into the open-source Klipper host environment. Despite marketing the flagship hardware lineup as a fully open-source ecosystem, Creality has formally refused to share the corresponding source code for multiple critical communication modules, instead utilizing Cython to compile proprietary control logic into CPython shared object files. The ongoing non-compliance has been formally escalated to the Software Freedom Conservancy (SFC) and the Free Software Foundation (FSF) following a series of admissions by the company's support team.
Background
The Creality K2 series firmware represents a systemic copyleft compliance dispute involving a derivative work based on Klipper, which is licensed under the GNU General Public License v3 (GPLv3). In December 2025, Creality launched their official GitHub repository for the K2 Series, publicly promoting the flagship line as a fully open-source hardware and software ecosystem [1]. However, community developers quickly discovered that the released codebase was severely outdated, out of sync with active printer configurations, and conspicuously lacked the corresponding source code for critical operational modules [1].
While Cython is occasionally used for performance optimization, its primary utility in this context was to obfuscate the implementation logic of the printer’s primary hardware integrations [2]. By placing these binary wrappers directly inside Klipper’s process directory, Creality forced the GPLv3-licensed Klipper host process to dynamically link to and execute opaque binaries at runtime, creating a copyleft compliance conflict [2].
This licensing issue systemically affects the firmware images distributed across the entire flagship K2 hardware line:
- K2 SE: V2.3.6.49 and V2.3.6.66 (`CR4CU220812S11_ota_img_V2.3.6.49.img`) [3]
- K2: V1.1.5.5 (`CR0CN200400C10_R_202605061516_ota_img_V1.1.5.5.img`) [3]
- K2 Pro: V1.1.5.5 (`CR0CN200400C10_R_202605061516_ota_img_V1.1.5.5.img`) [3]
- K2 Plus: V1.1.5.5 (`CR0CN240110C10_R_202605081127_ota_img_V1.1.5.5.img`) [3]
Incident
Creality distributes Cython-compiled shared library objects (`.so`) inside Klipper's core process directory structures (`/usr/share/klipper/klippy/extras/`) without providing the corresponding source code [2]. These files handle proprietary hardware wrappers and communicate intimately with the GPLv3 host:
- `serial_485_wrapper.cpython-39.so` (Manages the custom RS-485 serial communication protocol linking the mainboard to the CFS feeder) [2] [3]
- `box_wrapper.cpython-39.so` (Handles logical state routing, filament changes, and multi-material commands) [2] [3]
- `filament_rack_wrapper.cpython-39.so` (Controls physical spool selection, drive gears, and filament runout sensors inside the CFS) [2] [3]
- `motor_control_wrapper.cpython-39.so` (Governs specialized stepper motor accelerations and hardware-level load balancing) [2]
- `prtouch_v2_wrapper.cpython-39.so` (Governs strain-gauge-based automatic bed leveling and nozzle probing) [2]
- `prtouch_v3_wrapper.cpython-39.so` (Handles advanced real-time Z-axis compensation algorithms) [2]
Following a formal compliance demand issued on May 14, 2026, and an official acknowledgment from front-line support on May 15, 2026 [3], a 14-day compliance deadline was established on May 20, 2026 [3]. Because compliance was not met, a formal license complaint was logged with the Software Freedom Conservancy (SFC) and the Free Software Foundation (FSF) on May 28, 2026 [3]. Creality continues to distribute the K2 hardware and locked-down firmware images to retail consumers while remaining in active violation of the GPLv3 license terms.
Creality's Response & Admissions
Throughout May 2026, the community documented a highly structured deflection loop used by Creality's front-line support staff to handle GPL inquiries, frequently issuing direct denials or stalling templates [2].
On May 15, 2026, Creality Customer Service formally acknowledged the initial source code application, stating: *"We have officially forwarded your application for the complete GPLv3 source code for all firmware versions of the K2 series to our R&D team for processing. ... Please stay tuned for further announcements on our official website."* [3]
On May 20, 2026, investigator Alex Mercer rejected the indefinite "stay tuned" timeline, establishing a strict 14-day compliance deadline under threat of escalation to the FSF and SFC [3].
On May 24, 2026, Creality sent a written response detailing their inability to provide immediate source code matching the distributed binaries:
"Due to the involvement of custom firmware modules, underlying dependencies, and the need to clarify copyrights from multiple parties, the compilation of relevant materials requires a considerable period of time. Currently, we are unable to directly provide the corresponding source code or updated repository links." [3]
On May 29, 2026, Creality issued a follow-up response confirming that *"cleaning up a fully compliant source code package without affecting commercial proprietary code does require an internal process that, for now, does not have a publicly available timeline."* [3] Open-source legal experts note that this statement serves as an explicit corporate admission that proprietary commercial code was actively compiled and dynamically linked into a distributed GPLv3 copyleft work—an architectural contamination directly forbidden under the license guidelines.
On May 31, 2026, Creality deflected subsequent inquiries regarding the legal implications of copyleft contamination, closed active communication on the ticket, and forwarded the entire case history to their internal legal department and R&D managers without providing a compliance timeline [3].
Consumer Response & Hardware Bypass
The release of the K2 series firmware triggered significant backlash across Klipper Discourse, Creality Forums, and Reddit [1]. The community strongly criticized Creality for "malicious compliance"—promoting a printer as open-source while lockboxing its core features behind closed binaries [2] [4].
These licensing omissions created severe, practical issues for consumers, blocking hardware repair, preventing the use of third-party toolheads, and restricting underlying Linux access [2] [5]. This backlash was compounded by the fact that Creality had previously repeated the exact same violation when launching the K1 series, only releasing the `prtouch` source code months later after intense public pressure [6]. The restriction of root access on subsequent iterations like the K1C 2025 further intensified user distrust [7].
Historically, activist and tech community figure Naomi Wu played a critical role in forcing Creality to establish its initial open-source compliance baseline. Wu acted as a direct liaison and public advocate, leveraging significant pressure on Creality management during their past Marlin and early Klipper releases to ensure they published physical source repositories. Her historical intervention established the exact public precedent that community developers have relied upon to demand the release of missing `prtouch` and CFS source text.
Kevin O'Connor, the original creator of Klipper, publicly reiterated: *"Klipper is licensed under the GNU GPLv3. Any redistribution of that code is required to follow the license. I have not dual-licensed the code nor provided any exceptions."* [8]
Frustrated by these restrictions, independent developers launched the `fake-name/cfs-reverse-engineering` project to manually map the Co-extrusion Filament System (CFS) feeder bus [9]. Developers discovered that the CFS's GigaDevice GD32F303VET6 microcontroller was binary-compatible with the STM32F106VET6 [9]. By designing a custom hardware interposer board to reroute the isolated RS-485 lines to an unused MCU header, developers successfully bypassed Creality's closed-source serial protocol, converting the CFS communication layer into an open CAN bus running standard *candleLight_fw* and native upstream Klipper [9].
Industry Context & Legal Precedents
Creality's ongoing non-compliance occurs amidst a broader industry crackdown on open-source license violations. Creality has a documented history of violations, previously being blacklisted on TH3D Studio LLC's 3D Printer GPL Violation List for withholding source code for Marlin-based printers and the Klipper-based Sonic Pad [8].
Furthermore, on May 18, 2026, the Software Freedom Conservancy (SFC) launched a major compliance initiative against Bambu Lab over violations of the GNU Affero General Public License v3 (AGPLv3) [10] [11]. When Bambu Lab attempted to keep their networking library (`libbambu_networking.so`) proprietary and issued a cease-and-desist to an independent developer, the SFC launched Project "baltobu" to reverse-engineer the closed-source libraries and host a fully independent fork of the slicer [10] [12]. This underscores a shifting industry landscape where enforcement bodies are taking direct legal and technical action against companies isolating commercial IP within copyleft frameworks.
References
- ↑ 1.0 1.1 1.2 "Creality Open-Source 3D Printer Firmware is Here!", Official Creality Forum.
- ↑ 2.00 2.01 2.02 2.03 2.04 2.05 2.06 2.07 2.08 2.09 2.10 2.11 "Where are the (required to be released) sources for Creality's modifications to Klipper the K2", Creality Forum Tracker.
- ↑ 3.00 3.01 3.02 3.03 3.04 3.05 3.06 3.07 3.08 3.09 3.10 3.11 3.12 3.13 3.14 "Creality K2 GPLv3 Compliance Demand Correspondence Logs (May 2026)", Hosted on the Internet Archive.
- ↑ "K2 Plus Firmware Source Code", r/Creality Community Discussion.
- ↑ "Creality K2 Plus and GPL violations", Klipper Discourse Group.
- ↑ "This repository contains binary-only extensions, violating the Klipper GPLv3 license", K1 Series GitHub Issue #9.
- ↑ "K1C 2025 + OrcaSlicer: Workarounds for Missing Web Interface", Creality Community Forum.
- ↑ 8.0 8.1 "Creality Violating Klipper License", Klipper Discourse Group.
- ↑ 9.0 9.1 9.2 fake-name/cfs-reverse-engineering, GitHub Repository.
- ↑ 10.0 10.1 "Comprehensive Response to Bambu's AGPLv3 Violations", Software Freedom Conservancy.
- ↑ "Open-source non-profit claims Bambu Lab violated license", Tom's Hardware.
- ↑ "The Software Freedom Conservancy (SFC) launched a counter-offensive against Bambu Lab over AGPL violations", r/BambuLab - Reddit.