This DWIN touchscreen firmware is designed and compiled to run on the portrait-mode T5L 272x480 pixel DWIN displays provided stock with Creality CR6-SE and CR6-MAX FDM printers.
Initially refactored and extended from the T5UID1 DGUS-reloaded firmware by Desuuuu which is available from this repository.
At release 0.3, completely refactored again, to closely resemble the CF6.1 Community Firmware in look, feel, terminology, and workflow logic.
This software is provided without any warranty. You are solely responsible for your use of it.
This firmware was inspired by the CR6Community Firmware touchscreen firmware, but it is NOT as feature-rich as the CR6Community Firmware.
Features present in this version of the UI include:
- Support for most workflows best performed standing at the printer
- Emergency Stop (M112) button on every screen
- Ability to Tune some printer settings during a print
- PID autotuning for both Nozzle and for Bed, with SAVE_CONFIG option
- Pre-defined Material heat settings for PLA, PETG and ABS
- Screen Display Brightness adjustment
- Pause/Resume/Cancel print controls
- Support for M73 message display during printing
- SET_GCODE_OFFSET Z for current print session
- Support for manual leveling, for those who have retrofit bed wheels
- Run ABL with option to SAVE_CONFIG (default) Profile
- Display name of file currently being printed
- Display elapsed time since starting current print
CAUTION: The automatic bed-leveling function provided with this version of the firmware ONLY works correctly if you also configure your printer.cfg to perform a 5x5 bed mesh. If you do not want to use a 5x5 mesh, do not use this ABL function.
This firmware should be compatible with any configuration of CR6-SE or CR6-MAX printer, regardless of whether that machine is fully stock or substantially modified. (It even includes a manual leveling screen, for those of you who have installed manual bed-leveling wheels.)
Testing is done on the following machine:
- Creality CR6-SE, modified with:
- a Creality ERA 1.1.0.3 motherboard
- a direct drive Orbiter v1.5 extruder with Moons pancake motor
- a Dragon HF hotend
- a 0.9 deg Y axis motor
- a PEI flexible magnetic sheet
For this DWIN_SET to work with your printer, you must also:
- install this customized version of Klipper, per the installation guidelines
- Flash the applicable pre-compiled Klipper.bin file provided for you in the other repo.
- Configure printer.cfg to:
-
define the bed mesh as 5x5
-
add a section [t5uid1] with at least the line "firmware: dgus_reloaded", like this:
[t5uid1]
firmware: dgus_reloadedNOTE: For a complete list of all available options in the [t5uid1] section, see the sample-t5uid1.cfg file.
-
- Ensure that the START_PRINT macro includes the command "DGUS_PRINT_START" and that the END_PRINT macro includes the command "DGUS_PRINT_END", per the examples in the CR6.cfg file provided.
- Modify the slicer settings to add M117 messaging and to add layer number and file name to the gcode. (See the Cura example provided with the Klipper component)
You can make modifications to the DWIN_SET firmware by opening the DWprj.hmi
file in DGUS Tools. Two versions of that tool, documents and Tutorial URLs have been added to the repository at this release, to help anyone who would like to learn how this is done.
You can edit the graphics using a simple bitmap editing tool, like Windows PAINT.
After finishing your modifications, you will need to press the Generate command from the DGUSTool File menu to update the 3 required binary files (13TouchFile.bin, 14ShowFile.bin and 22_Config.bin) in the DWIN_SET folder. If you modified any of the screen layouts, icons or buttons, you will also need to use the ICL tool to regenerate the applicable ICL file(s) (intuitively named: 24_icons.icl, 27_buttons.icl, 32_screens.icl, 30_progress_left.icl and 37_progress_right.icl).
You can then flash your touchscreen using the resulting DWIN_SET
folder.
Please note, that to actually add/delete/modify functionality, you will also need to make the necessary changes to the applicable modified Klipper files.
If you add any data variable display widgets to any of the screens, you also need to edit the DGUS-reloaded Klipper file pages.cfg in ~/klipper/klippy/extras/t5uid1/dgus-reloaded, so that the data will be refreshed and maintained when that screen is being displayed.
If you wish to modify the nozzle and bed temperature presets for PLA, ABS and/or PETG, you will need to modify the file init.py in the folder ~/klipper/klippy/extras/t5uid1/dgus-reloaded, so that the program will initialize those variables with the values of your choosing.
CR6Community Firmware features NOT present in this release may be developed in future releases, but no schedule commitment is possible for such extensions. Users who are able to define and develop such modifications are welcome to fork this repository and to submit Pull Requests or to open Discussions or Issues as appropriate, to propose those changes.
Material | Author | Modified | License |
---|---|---|---|
DGUS-RELOADED DWIN UI | Desuuuu | Yes | GPLv3 |
Klipper logo | KevinOConnor | Yes | GPLv3 |
Feather icons | Cole Bemis | Yes | MIT |
3D Printing Line icons | Sam Baines | Yes | CC-BY 3.0 |
Fan icon | Atif Arshad | Yes | CC-BY 3.0 |
Snow icon | Shashank Singh | Yes | CC-BY 3.0 |
Electric Motor icon | Verry | Yes | CC-BY 3.0 |
Probe icon | Mohamed Mbarki | Yes | CC-BY 3.0 |
Wheel icon | Deivid Sáenz | Yes | CC-BY 3.0 |
Ruler icon | Three Six Five | - | CC-BY 3.0 |
Wrench icon | Freepik - Flaticon | Yes | Free-Use |
Emergency Stop icon copied from KlipperScreen | Jordan Ruthe | Yes | CC-BY 3.0 |