Configuration Files - Phil1988/FreeDi GitHub Wiki
Configuration Files
FreeDi uses multiple configuration files to control your printer. This guide shows you what each file does and how to apply changes.
⚠️ Quick Context: Configuration files are read at service startup. After editing, restart the appropriate service for changes to take effect.
📖 New to Klipper? Read Configuration Basics for Beginners first.
Quick Reference: Which Restart?
| File Changed | What It Controls | Restart Method |
|---|---|---|
| freedi.cfg | Display behavior & presets | Power → Restart FreeDi |
| printer.cfg | Hardware settings | Save & Restart (Klipper) |
| macros.cfg | Automation sequences | Save & Restart (Klipper) |
| moonraker.conf | Web interface backend | Power → Restart Moonraker |
| crowsnest.conf | Camera settings | Power → Restart Crowsnest |
FreeDi-Specific: freedi.cfg
Location: /home/mks/printer_data/config/freedi.cfg
What it controls:
- Basic setup parameters for display functionality
- Display settings / preferences like:
- Case light settings and behaviour
- Quick-toggle temperature defaults
- Movement and extrusion step presets
- Home screen preset button names and macros
Key difference: Requires FreeDi service restart, NOT Klipper restart.
How to Apply freedi.cfg Changes
Via Mainsail:
- Edit and save freedi.cfg
- Click Power button (top-right)
- Find FreeDi under Service Control
- Click restart icon
Via SSH:
sudo systemctl restart FreeDi.service
💡 Note: Restarting FreeDi doesn't interrupt running prints – it only reloads the display.
When to edit: Setting up display, adjusting temperature presets, personalizing workflow shortcuts.
Standard Klipper Files
printer.cfg – Hardware Configuration
What it controls: Stepper motors, sensors (endstops, thermistors, probes), heating elements, bed size, speed/acceleration limits, pin assignments.
When to edit: Adding hardware, adjusting motion settings, fine-tuning your setup.
Restart: Save & Restart (Klipper)
macros.cfg – Automation Sequences
What it controls: Print start/end sequences, filament changes, calibration routines, custom commands.
When to edit: Customizing print routines, adding automation.
Restart: Save & Restart (Klipper)
Why separate? FreeDi splits hardware (printer.cfg) from automation (macros.cfg) for easier updates. Klipper reads both as one file.
moonraker.conf – Web Interface Backend
What it controls: Mainsail/Fluidd backend, update manager, API access, power controls.
When to edit: Rarely needed – pre-configured. Edit when adding power devices or remote access.
Restart: Power → Restart Moonraker
Reference: moonraker.conf on GitHub
crowsnest.conf – Camera Settings
What it controls: Camera configuration for print monitoring.
When to edit: Installing or adjusting a camera.
Restart: Power → Restart Crowsnest
References:
Model-Specific Configurations
FreeDi maintains optimized configurations in config_section/:
Model folders (printer.cfg + macros.cfg):
Shared configs:
File Locations & Access
Location: /home/mks/printer_data/config/
Access via:
- Mainsail/Fluidd: Machine tab → Config files
- SSH:
cd ~/printer_data/config
Quick backup:
- Machine tab → Find file
- Three-dot menu → Download
- Save with date (e.g.,
printer.cfg.2026-01-08)
See Also: