⚠️ WARNING: Trogdor has only ever been tested on Comgrow Z1 10W Laser and nothing else. Use at your own risk.
Trogdor is a high-fidelity GRBL runner and custom engineering tool for the Comgrow Z1 Laser engraver. It features a modern, tabbed user interface built with Rust, Raylib, and the Clay layout engine, offering precise control and advanced processing capabilities.
- 10 Dark & 10 Light Themes: Cycle through a wide variety of aesthetics including Slate Night, Cyberpunk, Nordic, Solarized (Light/Dark), Dracula, Gruvbox, and more.
- On-the-fly Switching: Use
Alt + Tto cycle themes instantly without restarting the application. - Full Compatibility: All UI components, including logs and interactive elements, adapt perfectly to both light and dark backgrounds.
- Real-time Notifications: Non-intrusive popover messages for important events like file loading, burn completion, and system alerts.
- Interactive Feedback: Supports timed auto-dismiss, manual dismissal, and optional action buttons.
- Detailed Comm Logs: Automatically records all
TXandRXserial traffic during burn operations. - Millisecond Precision: Every log entry includes a high-resolution timestamp (
hh:mm:ss:ms). - Persistence: Logs are saved to
~/.trogdor/burnlog/[timestamp].logfor post-job analysis.
- Live Typing: Type directly into the UI with a real-time preview and blinking cursor.
- System Font Access: Select from any installed system font via a scrollable dropdown menu.
- Vector & Raster Modes: High-fidelity engraving using
font-kitfor precise outline extraction.
- Advanced SVG Extraction: Recursive path extraction supports deeply nested SVG groups and complex geometries.
- Raster Fidelity: Adjust Low/High fidelity (White/Black) thresholds and lines-per-mm for perfect photo engraving.
- Toggleable Previews: Instant eyeball button (
👁️) toggles high-performance vector previews on the virtual grid.
- Content-Aware Tracing: Use the
[]button to trace the exact footprint of your work without firing the laser. - Virtual Grid Visualizer: Real-time rendering of machine and virtual head positions with major/minor grid lines.
- 40+ Quick Commands: A dedicated Manual tab with categorized GRBL commands, jog controls, and manual laser firing.
- UI Scaling: Full interface zooming via
Ctrl++/-that respects layout boundaries.
- Automatic Homing: Every job automatically begins and ends with an
$Hsequence for perfect calibration. - Explicit Laser-Off: Ensures
M5is sent before every homing operation and safety reset. - SafetyGuard: Automatically sends
!,M5,0x18on normal exit orCtrl-Cto ensure the machine is left in a safe state. - Emergency Stop: Massive, always-visible E-STOP button that provides dynamic visual feedback.
Run the included installation script to set up required system libraries:
./install-dependent-packages.shUse the build script which handles the local libudev workaround:
./build.shEnsure you have access to the serial port:
sudo chmod 666 /dev/ttyUSB0Run without arguments to launch the graphical interface:
./target/debug/trogdorRun any command defined in the UI by its label:
./target/debug/trogdor Status
./target/debug/trogdor Unlock
./target/debug/trogdor HomeSend raw G-Code directly to the machine:
./target/debug/trogdor "G91 G0 X20 Y20"Execute predefined shapes or assets using named parameters:
./target/debug/trogdor test-pattern [shape] --power [pct]% --speed [pct]% --scale [scale]x --passes [count]
