GPL-3.0 Compliance Request: Source Code for Compiled .so Modules#4
Open
gitstonelabs wants to merge 2 commits into
Open
GPL-3.0 Compliance Request: Source Code for Compiled .so Modules#4gitstonelabs wants to merge 2 commits into
gitstonelabs wants to merge 2 commits into
Conversation
|
@StevenCreality @StevenCreality This is true for the CR10SE as well. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The Creality Hi firmware ships with the following compiled Cython modules in klippy/extras/ with no corresponding source code available:
motor_control_wrapper.cpython-39.so
box_wrapper.cpython-39.so
serial_485_wrapper.cpython-39.so
filament_rack_wrapper.cpython-39.so
prtouch_v2_wrapper.cpython-39.so
prtouch_v3_wrapper.cpython-39.so
This repository is licensed under GPL-3.0. These compiled modules are derivative works of Klipper and are distributed as part of the firmware to every Creality Hi, K1, K1C, and K2 series customer. Under GPL-3.0 Section 6, Creality is required to provide the Corresponding Source (the .pyx Cython source files) upon request.
This same issue has been raised for the K1 series (CrealityOfficial/K1_Series_Klipper Issue #9) and on the Creality Forum by user fake-name. Creality released prtouch_v1 and prtouch_v2 source code approximately 5 months ago, but the modules listed above remain compiled-only, now for over 15 months since first reported.
I am a Creality Hi and K1C customer actively working on CFS integration with custom Klipper configurations. These compiled binaries have directly prevented me from:
Debugging a motor_control_wrapper crash (RuntimeError: No active exception to reraise) that occurs on a new replacement mainboard
Understanding and modifying the RS485 communication protocol between the printer and CFS
Adapting the CFS system for use with non-stock toolheads
Without the source code, the only option is reverse engineering these binaries, which is exactly what the GPL is designed to prevent.
I would also like to note that these GPL compliance concerns have been publicly raised by multiple community members for over 15 months. Creality has acknowledged these reports and made partial efforts, such as releasing the prtouch_v1 and prtouch_v2 source code, but the modules listed above remain in violation. Continued non-compliance after being made aware of the issue for this length of time may be viewed as willful infringement rather than an oversight, which carries significantly greater legal exposure under copyright law.
Additionally, Creality has disabled the Issues feature on this repository, redirecting users to upstream Klipper's contact page, which has no authority over Creality's GPL obligations. This effectively prevents customers from formally requesting source code through the same platform where the GPL-licensed code is hosted. This pull request serves as a formal, documented request in lieu of a proper issue.
Request: Please publish the .pyx source files for all compiled modules listed above, or provide them upon request as required by GPL-3.0.