Releases: Phil1988/FreeDi
FreeDi v1.42
🚀 FreeDi v1.42
🔧 Changes & Fixes
This update was focused on improving (MCU and display) firmware update stability & enabling Update Manager updates.
🌐 Reworked Git structure
Hopefully this will completely enable seamless Moonraker Updates for better maintainability.
📲 Improved screen firmware update process
Addressed potential serial interface overload issues during firmware uploads.
- Ensured stability without significantly slowing the update process.
- Upload times remain within 231.943s - 237.465s (based on 40 measurements).
🦄 Fixed a bug that no one had! (but me) 😅
- NoneType WebSocket object error in third-party plugins caused log error entries.
- Non-critical, but it's now handled accordingly and no more log errors!
⚡ Optimized KAF for more reliable MCU flashing
To update, please have a look at the update instructions
Full Changelog: v1.41...v1.42
FreeDi v1.41
🚀 FreeDi v1.41
This is a smaller update to rule out some bugs and roll out some improvements
🔧 Fixes & Enhancements
-
🎛 Improved Unload/Load Filament buttons in Pause Menu
Behavior adjustments for a smoother experience.
#149 -
🛠 Fixed forwarding on the "print completed" screen when pressing "Save z-offset button and confirm with "Yes"
#161 -
🖥 LCD screen file name multiline support
Display filenames more effectively on the LCD screen.
#145 -
📁 Improved filename parsing
Fixed an issue where special characters in print job filenames caused invalid file path locations.
#173 -
🖼 Increased allocated memory for thumbnails
Previously, very detailed thumbnails could cause a memory overflow, leading to incomplete thumbnails.
#159 -
▶️ Fixed print screen forwarding issue
A case where forwarding to the print screen didn't work has been resolved.
#173 (comment) -
📟 New firmware for the toolhead (RP2040)
Now usingCLKDIV4
to prevent errors with certain toolhead boards.
#165 -
🩹 Workaround for QIDIStudio bug
Handles emptyfilament_type
values to ensure display functionality remains intact.
#168 -
⏳ Extended KAF delay
Ensures Klipper starts safely and allows more reliable MCU flashing. -
🔄 Command sequence update in PRINT_END & CANCEL_PRINT
Optimized for better execution.
To use it, simply copy & paste the PRINT_END & CANCEL_PRINT macros.
For example X-Max 3 users see here:
https://github.com/Phil1988/FreeDi/blob/9eec725d2c6c2cff605e9175b24e1506cc0604f6/config_section/X-Max3/macros.cfg#L104
And:
https://github.com/Phil1988/FreeDi/blob/9eec725d2c6c2cff605e9175b24e1506cc0604f6/config_section/X-Max3/macros.cfg#L194 -
❄ Fixed M107 behavior in QIDISlicer
AddedM107
to macros to handle QIDI slicer's unusual behavior of turning off the part cooling fan withM107
instead ofM106
.
To use it, simply copy & paste the M107 macro (identical for all printers)
See:
https://github.com/Phil1988/FreeDi/blob/9eec725d2c6c2cff605e9175b24e1506cc0604f6/config_section/X-Max3/macros.cfg#L322
🔥 Update now to enjoy a smoother experience! 🚀
Instructions to Update:
For the 3 macros ( PRINT_END, CANCEL_PRINT and M107):
Go to the config_section and get the matching macro for your printer (copy the macro and replace yours)
Full Changelog: v1.40...v1.41
FreeDi v1.40 (software and image)
🌟 Welcome to The Next Level.
Get Ready for the Latest Breakthroughs from FreeDi-Labs 🧪
This release brings a ton of improvements for a smoother workflow and completely reinvents how to flash Klipper!
New features create seamless interaction between the display and the operating system.
It comes with a lot of "under the hood" changes that can’t be updated through Moonraker Update Manager.
Want to try it out?
Take a look at the
Update Guide
🆕 New Features
📣 Announcements for FreeDi
Easily stay updated!
FreeDi can now ring your bells 😉
🚀 Klipper Auto-Flasher
No more SD card hassle!
Flashing both the mainboard MCU and toolhead firmware is now (semi-) automatic.
- Mainboard MCU: Fully automated - no user interaction needed.
- Toolhead: Just:
- Power off the printer.
- Hold the boot button on the toolhead.
- Power on, release the button - done!
Magic made simple 🧙✨
🌐 Custom Port Feature
Now you can set the port of the printer service
See #40 (comment)
📁 Full Subfolder Support
Effortlessly navigate your folders with the smart File-Manager 🤖!
It remembers your last visited (sub-) folder, and you can quickly return to the root by tapping the icon again.
Easy!
- Folders: Listed alphabetically always.
- G-Code files: Sorted by latest first (default).
🔄 Sorting Options
G-Code files order can be switched between:
- Newest first (default).
- Alphabetical order.
📏 File Name Shortening
Long file names and folder paths are now automatically shortened for better readability.
Example:
- Filename: Start...end.gcode
- Folder Path: .../superlong_folder_path/
💾 USB Drive Support
Plug and play!
Enjoy folder views of USB drives.
📦 Pre-included Firmwares
- Toolhead and MCU firmware now included.
- No manual downloads required. (This was a common source of errors)
- Works seamlessly with Klipper Auto-Flasher.
🕰️ Stock Klipper firmwares:
I’ve pre-compiled the stock Klipper firmwares for those who want to roll back.
Currently... just one guy... no witch burning 😅
He’s got a faulty toolhead from the factory and wants to claim warranty.
./old_mainboard_and_toolhead_firmwares/v0.10.0-530_old_stock
🌡️ PID Tuning Macros
Included for nozzle and bed tuning:
Get the matching macros from here.
ℹ️ Infopages when rebooting/shudown
Shutdown and Reboot shows the info page when invoked via system/moonraker/mainsail/fluidd
🛠 Fixes & Improvements
🧹 CR+LF/Space Errors
Resolved errors in PRINT_END and CANCEL_PRINT macros.
Replace your macro from here.
📡 Alternative WiFi Module Activation
Fixed activation issues.
See #100
📟 [X-Smart3]
Fixed bugs for the X-Smart 3:
- Move&Extrude menu not accessible when pausing
- Move&Extrude menu: Removed unnecessary pause icon
🎚️ Screws Tilt Adjust
Updated coordinates for Plus3 and Max3.
Replace with the updated section here.
📝 Chamber Heater Macro Fix
Corrected the M191 macro chamber heater reference:
Replace with the updated macro here.
🖼️ UI Enhancements
Mini Thumbnails: Background color now matches the menu 😍 (OrcaSlicer)
📚 Wiki Updates
- Full installation video guide released 📹
- Added pictures for clarity 🖼️
- New "First Steps" section 📖
Happy printing! ✨
Full Changelog: v1.30...v1.40
FreeDi v1.30 (software and image)
🆕 New Features
- New Update Mechanism
- Introduced a new update mechanism to bypass limitations imposed by Moonraker's Update Manager and Git restrictions.
- Support for subfolder GCODE location (#35)
- Display now shows subfolder organized gcodes
- Auto-detection of toolhead serial ID
- For fresh installs, the
install.sh
detects users unique toolhead ID automatically and includes it to the printer.cfg.
- For fresh installs, the
- Support for Tenda AIC8800DC WiFi dongle (#23)
- Users with the alternative AIC8800DC wifi chip gets it automatically detected and installed when using the
install.sh
- Users with the alternative AIC8800DC wifi chip gets it automatically detected and installed when using the
- Support for custom Moonraker ports
You can now specify a custom port for the printer service by adding the following to the[freedi]
section of yourprinter.cfg
:
[freedi]
[...]
# Port of the printer service
port: 80
This may help with issues like #40.
🚀 Improvements
- Faster screen page transitions
- E.g., when starting or aborting a print via WebUI (Mainsail|Fluidd).
- Faster display updates
- Values now update twice as fast.
- Markers in
printer.cfg
#!#
markers make it easier to compare critical sections and values for new users. (included in full image and at the config section)
- Optimized Configparser
- Now more efficient and forgiving towards duplicated options.
- New WebSocket structure
- Increased responsiveness.
- Improved debug messages
- New debug outputs makes it easier to detect incorrect hardware configurations at the printer.cfg
🐞 Fixes
-
[All Printers]
- Fixed: Previous thumbnail remained on screen when starting a new uploaded printjobs via WebUI.
- Fixed: Move buttons remained enabled on screen when axes were homed, and Klipper was restarted.
-
[X-Plus 3]
- Fixed: Corrected firmware filename for FreeDi image (#36) (included in the released image).
-
[X-Smart 3]
- Fixed: Return to print job screen from Babystepping menu (#42).
- Fixed: Buttons now fully work for Z-offset, mesh, and shaping (#49).
- Fixed: Corrected print cancel and print end macros for the error "move Z exceeds limits" (#27) (in released image | in config section).
- Fixed: M106 Macro corrected for error "missing fan2" (#27) (in released image | in config section).
- Fixed: Correct printer model selection in the advanced display settings menu (#32).
💾 Firmware images
New users can experience all the improvements and fixes right away with the...
- New full images attached to this release for all supported printers:
- X-Smart 3
- X-Plus 3
- X-Max 3
🙏 Special Thanks:
A big thank you to rosenrot00 for his invaluable contributions to this project:
- For the outstanding work on the structure for interacting with the Moonraker WebSocket, which greatly improved the communication.
- For his invaluable help in identifying and fixing bugs, making this release more stable and reliable.
- And, of course, for his constant support in the ongoing battle with GitHub and Moonraker. His dedication has constantly infected me with new motivation to overcome these challenges! 😃
Thank you so much for your continued efforts and collaboration! 🙏
Auto generated
New Contributors:
- C0co contributed 26 commits
- rosenrot00 contributed 12 commits
- robonxt contributed 1 commits
FreeDi v1.21
Release v1.21
Small fixes for software and TFT firmware
This release is for updating from v1.20.
If you are not running v1.20 yet, please head over to the full release and take the image files first:
https://github.com/Phil1988/FreeDi/releases/tag/v1.20
To update from v1.20, simply use the moonraker update manager:
Software changes:
- Changed timings for enhanced stability to initiate the display firmware update
Display firmware:
- Fixed fonts and missing animations
- Fixed for X-Smart 3 only: Model selection now corrected (was X-Plus 3 and Q1-Pro)
FreeDi v1.20 (software and image)
🚀 This. Changes. Everything.
The Biggest Release Yet – Packed with Game-Changing Features and Breaking Changes!
I'm beyond excited to introduce this monumental update that redefines how you experience this project.
This release is a quantum leap forward, with groundbreaking improvements and unparalleled ease of use.
🌟 Highlights of This Release
🖥️ Serial Display Firmware Updates
Ditch the SD card! You can now flash display firmware directly via serial:
- Flash Time Reduced: From the agonizing 30–40 minutes with stock Qidi updates to just ~4 minutes (~257.078s to be precise).
🌐 Moonraker Update Manager
Updating has never been this effortless.
- One-Click Updates: Manage updates directly from Mainsail with a simple click.
- Automatic Firmware Flashing: When needed, even the display firmware updates itself – perfectly matched to your printer.
- Blazing Speed: A full update, including firmware flashing, takes only ~4 minutes. Software-only updates are done in just 10 seconds!
This massive improvement in user experience far surpasses the clunky official Qidi update process, which requires manual downloads and USB sticks ... + ~40min time for updating it.
🛠️ Config Simplified
Ease your workflow with a new printer.cfg configuration section:
- The old
config.ini
has been removed. The [freedi] section in your printer.cfg is now the new and easily accessible config area :) - Effortlessly toggle between printer models like the X-Smart 3 in the printer.cfg file.
🧩 X-Smart 3 Support
The new structure extends compatibility to the X-Smart 3 printer.
- Printer-Specific Configurations: Easily toggle between configurations for the X-Smart 3, X-Plus 3, or X-Max 3, ensuring the right setup every time.
- Tailored Thumbnails: Smaller, printer-optimized thumbnails generated and displayed automatically - just right for your printer model!
🚦 Automatic Serial Baud Rate Detection
Say goodbye to manual baud rate configuration! The screen now automatically detects and adjusts baud rates.
No more toggling between “normal” and “legacy” firmware modes:
- Dynamic Baud Rate Switching: Change baud rates seamlessly, even mid-session.
🖼️ Thumbnail Improvements
Improved occasional image glitches during thumbnail generation for a smoother, more polished display.
💡 Why This Matters
This update doesn’t just keep your setup running - it propels it into the future.
With features that drastically reduce time and effort, alongside improved support for new printers, this is the next evolution for having an up-to-date system.
Not less! :)
➡️ Upgrade now and witness the revolution.
Get ready to experience the ultimate convenience and power.
Simply head over to the update wiki page:
https://github.com/Phil1988/FreeDi/wiki/Updating-FreeDi
Have fun and merry christmas! 🎅🎄
FreeDi v1.03 beta for X-Smart 3
FreeDi v1.03 beta release for the X-Smart 3
Changelog:
Complete UI design from scratch for the X-Smart 3 display.
Installation
Please follow the existing guides to flash a pure and minimal image to your EMMC or USB flahs drive.
See Installation guide for fresh systems how to install it.
For the screen use the attached X3seriesLCD_XSmart3_firmware_v1.03_beta.tft firmware!
Software update for existing FreeDi systems
To update the software check out the Updating FreeDi guide
Please head over to the Installation guide section for step by step guides.
FreeDi v1.03 (software and image)
FreeDi v1.03 release
Changelog:
New: Included the tft version and sw version to show them at the "about menu":
Fixed: Z Position updates frequently now during Z offset calibration.
Fixed: Manual z-offset calibration now show decimal numbers.
Fixed for the image: Set stepper_z position_min to -2 to allow negative movement while z-offset calibrating
New: Changed interface of the Manual measurement menu:
New: If you change the z-offset during a print (baby stepping) a new button "Save z-offset" will appear on the "Printjob done screen"
This will save the new applied z-offset persistent and will restart the printer:
Fixed: "move bed to bottom"-button is working again
Fixed: "Load" and "Unload" filament buttons do now work again at cold nozzles
Changed: Preset temperatures for load and unload filament changed 215°C -> 230°C
New: When pressing the "Load" or "Unload" filament button, the extruder animation starts only when the nozzle temperature is > 215°C
Moonraker updated: v0.9.2-6 > v0.9.3-0
Based on and included
- Armbian 24.2.0 Bookworm 6.6.17 OS
- KIAUH v5.1
- Klipper v0.12.0-289
- Moonraker v0.9.3-0
- Mainsail v2.12.0
- X3seriesLCD v1.00
Current supported printer models:
- X-Max 3
- X-Plus 3
Image for new systems
This release includes an image (*.rar archive -> *.img file when unpacked) to flash a pure and minimal image to your EMMC or USB flahs drive.
See Installation guide for fresh systems how to install it
Software update for existing FreeDi systems
To update the software check out the Updating FreeDi guide
Please head over to the Installation guide section for step by step guides.
FreeDi v1.02
New pause menu and bug fixes
Bug fixes:
Fixed a bug caused by the gcode naming with special chars.
New features:
Introducing a new submenu during a print pause to control the extruder and movement
To update:
1. Flash the screen with the new tft firmware:
- Added: X3seriesLCD_firmware_v1.02.tft
- Added: X3seriesLCD_firmware_v1.02_legacy.tft
FYI:
See https://github.com/Phil1988/FreeDi/tree/main/screen_firmwares for other firmwares
2. Replace your files with these:
- Modified: main.cpython-311-aarch64-linux-gnu.so
- Modified: printer.cpython-311-aarch64-linux-gnu.so
- Modified: lcd.cpython-311-aarch64-linux-gnu.so
FYI:
Latest software is in https://github.com/Phil1988/FreeDi/tree/main/X3seriesLCD
Older releases are located in https://github.com/Phil1988/FreeDi/tree/main/old_X3seriesLCD_software
FreeDi v1.00 initial release
Initial FreeDi v1.00 release
This is an image to flash a pure and minimal image to your EMMC or USB flahs drive.
Current supported printer models:
- X-Max 3
- X-Plus 3
Based on and included
- Armbian 24.2.0 Bookworm 6.6.17 OS
- KIAUH v5.1
- Klipper v0.12.0-289
- Moonraker v0.9.2-6
- Mainsail v2.12.0
- X3seriesLCD v1.00
Please head over to the Installation guide section for more information.