Skip to main content

Rayforge 1.7 - CO2/Fiber Lasers, Ruida, OctoPrint, Config Wizard

Rayforge Team
Core development team

Rayforge 1.7 brings CO2 and fiber laser support, a Ruida driver, an experimental OctoPrint driver, a configuration wizard for GRBL devices, job sanity checks, a manual laser control dock, parametric text templates, and 15 new device profiles.

CO2 and Fiber Laser PWM Settings

Rayforge now understands that not all lasers are diodes. A new Laser Type dropdown in the laser head settings lets you choose between Diode, CO2, and Fiber. When you select CO2 or Fiber, a dedicated PWM section appears with controls for frequency and pulse width -- including configurable min/max bounds.

These settings flow through the pipeline, so each operation step can use or override the defaults. The Ruida driver already leverages them for native frequency and pulse width commands.

Ruida Driver

A complete Ruida driver is now available with jogging, position reporting, air assist, layer selection, auto-connect, status polling, and reference points support. It has been tested with a real controller.

Generic device profiles for Ruida, GRBL, and Smoothieware are included so you can get started even without a machine-specific profile.

Configuration Wizard

Setting up a new machine is now much easier. The new configuration wizard probes GRBL devices over serial or network, detects the firmware version and settings, and creates a machine profile automatically. Just plug in your controller, pick the driver, and let the wizard handle the rest.

OctoPrint Driver (Experimental)

A new driver lets you submit G-code directly to an OctoPrint server over the network. It connects via WebSocket for real-time status updates and falls back to REST polling when needed. Setup requires just a hostname and API key, and the driver includes a "Request Access" flow that walks you through OctoPrint's application key system.

This driver is labeled experimental and has not been tested on real hardware yet. If you have an OctoPrint setup, your feedback would be invaluable.

Manual Laser Control Dock

A new dockable panel gives you hands-on laser control with per-head power, frequency, pulse width, and an auto-off timer. Useful for testing, alignment, and manual positioning.

Job Sanity Checks

Before sending or exporting a job, Rayforge now runs a set of composable sanity checks and presents the results in a structured dialog. The system catches three categories of problems:

  • Machine extent violations -- geometry extending beyond what your machine can physically reach
  • Workarea violations -- workpieces outside the configured workarea boundaries
  • No-go zone collisions -- geometry overlapping restricted areas defined in machine settings

Each check produces at most one issue per unique violation, keeping the dialog readable even for complex projects.

Parametric Text Templates

Text boxes in the sketcher now support template expressions using curly braces. Any sketch parameter or input variable can be referenced:

  • {width} resolves to the current width value
  • {name} resolves to a string input parameter
  • {sqrt(area):.1f} evaluates math and formats the result

Built-in functions include {today()} for the current date, {now()} for a full timestamp, and {uuid4()} for a unique 8-character identifier.

Text rendering has also been improved: Now Pango is used internally, which draws text more accurately than the old Cairo-based rendering.

15 New Device Profiles

Out-of-the-box support for popular laser cutters:

  • Ortur Laser Master 3 and Laser Master 4
  • Atomstack X40 Pro and A70
  • TwoTrees TTS-55
  • NEJE Master 3 Max
  • Creality Falcon 2 Pro
  • OMTech Polar 50W
  • Longer Ray5
  • Thunder Laser Nova 35
  • Sculpfun iCube Ultra, S30 Pro Max, S40 MAX, and S70 MAX
  • Elidor Z6

Better Layer Interaction

Layer columns now highlight selected workpieces and stay in sync with the canvas selection:

  • Single click selects one item
  • Ctrl-click toggles individual items in a multi-selection
  • Shift-click selects a range within a column
  • Drag moves selected items between layers, including across multiple layers at once

Right-clicking a workpiece in the layer tab opens a context menu with move, delete, and properties actions. The asset browser also received context menus with copy, cut, paste, and duplicate operations.

Direct Vector Editing

You can now double-click a workpiece to edit its vectors directly -- delete individual paths without having to go back to an external editor. This is a first step toward fuller in-app vector editing.

Linear Light Image Processing

All image processing -- resizing, grayscale conversion, dithering, and color LUT gradients -- now operates in linear light instead of sRGB. This produces more accurate interpolation when scaling and better dithering quality, especially for gradients and fine detail.

Sketcher Auto-Constraints

The path tool now automatically creates horizontal and vertical constraints when the snap engine shows alignment guides during drawing. Your geometry comes out more precise with less manual constraint management.

Other Improvements

  • Job time estimate shown in the 3D canvas
  • Search field in the machine profile selector
  • Sketch parameters displayed as a separate preferences group
  • Locale-aware number formatting in sliders
  • Grid toggle in the 3D canvas visibility overlay
  • Debug log can optionally include the project file
  • Project files are now zipped internally
  • GRBL serial transport -- non-blocking read, offloaded writes, exclusive port mode, buffer flushing, and multiple deadlock fixes

Bug Fixes

Fixed GRBL buffer overflow on devices with smaller RX buffers, GRBL buffer deadlock from lost ok responses on certain line endings, laser-off command sent during active jog causing error:9, deadlock detection false positives, parametric text not updating with volatile expressions, crash in MergeLinesTransformer, wrong visibility icon for invisible layers, IndexError and AttributeError on startup, circle and ellipse sketches missing thumbnails, canvas stuck in shift-pressed state, pipeline holding stale machine references, pipeline recalculation loop, power percentage rounding in step summaries, and many more stability fixes.

Special Thanks

This release was made possible with the support of our Patreon supporters: Amsel, froqstar, old-man-and-the-seam, pghpete, Derek McTavish, and four anonymous supporters.

Download Rayforge 1.7

Join the Community