-
Notifications
You must be signed in to change notification settings - Fork 0
Contributing
github-actions[bot] edited this page Aug 15, 2026
·
1 revision
Issues and pull requests are welcome.
- Develop and test against the simulator first, then verify on-device where relevant.
- Keep changes consistent with the existing panel structure and LVGL v8 idioms in
src/(each screen is a*_panel.cpp; shared helpers live insrc/utils.cpp). - Build the targets your change affects before opening a PR — at minimum the simulator, and the MIPS build for anything that touches on-device behavior or layout.
- For small-screen work, build with
GUPPY_SMALL_SCREEN=1and check the 480×272 layout.
Issue templates are provided under .github/ISSUE_TEMPLATE/. CI (.github/workflows/build.yml) runs
the full build matrix on PRs and pushes.
This project is licensed under the GNU General Public License v3.0 (see the LICENSE file at the
repository root). Contributions are accepted under the same license.
This project builds on the work of:
- ballaswag/guppyscreen — the original GuppyScreen
- probielodan/guppyscreen — KE-focused UI rework
- pellcorp/grumpyscreen — bug fixes and improvements
- prestonbrown/guppyscreen — 3D bed mesh feature
- Moonraker, Mainsail, Klippain-shaketune
-
nginx — vendored MIPS binary (1.29.3), serves the optional Mainsail web UI.
Cross-compiled from real nginx source by
scripts/build-nginx-mipsel.sh, not a copied prebuilt binary — seedocs/VENDORING.mdfor how to rebuild it against a newer version. -
Guilouz/Creality-Helper-Script — the
useful-macros.cfg/M600-support.cfg/save-zoffset.cfgtemplates are modeled on theirs. Moonraker and Nginx were originally fetched from their repo at install time too, but are now vendored directly by OpenKE instead (a real clone of the official upstream Moonraker, and a from-source rebuild of nginx — no longer install-time-dependent on that repo staying online). As of this vendoring, the installer has no remaining runtime dependency on Guilouz's repo for anything. -
kyleisah/Klipper-Adaptive-Meshing-Purging —
Smart_Park.cfg/Line_Purge.cfgare still adapted from KAMP (GPL-3.0); the adaptive-mesh macro itself is now original OpenKE code delegating to Klipper's own native adaptive meshing, no longer vendored KAMP -
Klipper3d/klipper — Axis Twist Compensation and Screws Tilt
Adjust modules, vendored verbatim from
klippy/extras/(the KE's stock Klipper build predates/strips both; Skew Correction uses Klipper's native[skew_correction]directly, no vendored file needed) - evgarthub/klipper_tmc_autotune_k1 (a K1/KE fork of andrewmcgr/klipper_tmc_autotune) — vendored TMC Autotune
- Icons: Material Design Icons, Z-Bolt
See docs/VENDORING.md for pinned commits/tags and file-level provenance of
each vendored mod.
Upstream documentation: https://ballaswag.github.io/docs/guppyscreen/configuration/
Get started
Get great prints
- Calibration walkthrough (A→Z)
- Axis Twist Compensation
- Adaptive meshing + purge
- Square parts (Skew Correction)
- Quieter steppers (TMC Autotune)
Using the screen
Help
- Build from source
- Dev & simulator
- Architecture
- Configuration
- Releases & deployment
- Contributing
- Publishing this wiki
NebulaOS-specific