Laser Control
The direct control surface for your laser — from connection to finished job.
Laser Control is Vextrify's full control surface for diode lasers (GRBL, Marlin, Smoothieware, Snapmaker), CO2 machines (Ruida, TopWisdom, Trocen / AWC, K40 with the stock board) and fiber galvo lasers (JCZ / EZCAD2, EZCad3, SEA-LASER / BSL): connect, create and edit objects, align to the real workpiece with the camera, set per-layer parameters, run the job, and have everything saved durably. This reference describes every visible area and control using the same names you see in the app — from the toolbar to rotary engraving.
Connecting to the machine only happens in the desktop app (macOS, Windows and Linux). Which controller family is addressed is set in the device profile, not here. Connect over USB or, where the machine supports it, over the network.
- ⚡ Connect · {Port}
- One-click connect to the best detected laser port — the app suggests the most likely port automatically.
- Disconnect
- Ends the active connection to the machine.
- Port selector · ▾ Choose another laser
- Shows a list of plausible ports when several are possible. Non-laser ports are filtered out automatically.
- ⟳ Search for laser
- Re-scans available ports, e.g. after plugging in a new device.
- Auto-Connect
- A recognised laser automatically opens its own tab and loads its saved profile when plugged in — shown as a "Laser detected" message.
Every laser gets its own tab — with its own connection, profile, camera, calibration, job queue and job. Locks apply per laser, so one tab never blocks another.
- Laser tab
- Switches the active machine profile. Double-click the tab to rename it.
- Queue
- "Add job to queue" puts a copy of the current job into this laser's queue. Jobs run one after another; "Ask before each job" waits after every job, e.g. to change the material. Move up/down changes the order, "Clear finished" tidies up.
- × Close tab
- Closes this laser's tab (the saved profile is kept).
- + Open/add laser
- Opens a dropdown of saved lasers plus "New laser …", which launches the Add-Laser wizard.
- Undo
- Reverts the last edit.
- Redo
- Restores an undone edit.
- Zoom out / 100% / Zoom in
- Controls the canvas zoom level.
- Preview
- Opens the preview/timeline with time estimate and mini-simulation.
- File menu
- Open (⌘O), Save (⌘S), Download project (.vextrify), Open project (.vextrify)."Export .rd file (USB)" only appears for Ruida devices.
- Edit menu
- Copy, Paste, Delete the current selection.
- View menu
- Hand/Pan, Wheel Zoom, Zoom to selection, Fit Output, Fit Bed, Reset view.
- Device menu
- Add laser, Search, Add manually, Import, Camera, Device Settings.
- Overflow ⋯ → Customize toolbar
- Three checkboxes show/hide groups: Device actions, File-edit, View-zoom.
- Overflow ⋯ → Settings
- Opens the Settings dialog.
- Select
- Selects and moves objects on the canvas.
- Node
- Edits individual anchor points of a vector path.Needs an editable vector path.
- Line
- Draws a straight line.
- Rect
- Draws a rectangle.
- Ellipse
- Draws an ellipse/circle.
- Text
- Inserts a text object.
- Image
- Opens a file picker to insert an image.
- SVG
- Opens a file picker to insert an SVG file.
- QR/Barcode
- Opens the QR/Barcode flyout: type (QR or Code39), content, size/height in mm, margin/quiet zone, insert button.
- Measure
- Measures distances and dimensions on the canvas.
- Weld
- Merges two or more selected paths into one.Needs at least 2 objects.
- Subtract
- Subtracts one path from another.
- Intersect
- Keeps only the overlapping area of the selection.
- Split
- Splits a combined path into its sub-paths.
- Cut line
- Creates a dividing line across the selection.
- Array
- Duplicates the selection in a grid or circular pattern.
- Tabs
- Adds holding tabs along a cut path.
- Frame
- Creates a frame around the selection.Needs a closed path.
- Camera marker
- Places a camera reference marker on the canvas.
- Move to selection
- Moves the laser head to the selection (laser off).Laser off, rapid move to the centre of the selection. Diode lasers (GRBL) for now.
The context ribbon appears once an object is selected and is organised into tabs: Transform, Image, Text, Shape, Arrange.
- Transform
- X/Y position, width/height in mm, lock aspect ratio, rotate (degrees), flip horizontal/vertical, lock, group/ungroup, align.
- Image
- Dot pattern/dither, threshold, engraving speed, min/max power, DPI↔line interval, contrast, invert, air on/off, bind recipe.Handoff buttons: Edit opens Photo Studio, SVG opens the trace/vectorize tool, plus Outline and Crop/mask.
- Text
- Text content, font, import custom font, font size in mm, letter spacing, line height, alignment, text output (fill/line/both), outline width, on path, connecting bridge (joins letters for cut-outs).
- Shape
- Corner radius, convert to path.
- Arrange
- Offset outward/inward with distance, array (grid or circular), tabs (count + width), split angle (0/45/90°), duplicate (5×/10×/20×).
- Object right-click menu
- Photo Studio, AI Studio, Upscale, Remove background, Relief Studio, Create contour, Vectorize, Mask, Convert to path, Edit nodes, Duplicate, Lock, Delete.
- Drag/resize/rotate handles
- Move, scale, and rotate the selected object directly on the canvas.
- Marquee select
- Selects multiple objects by dragging a box.
- Hand-pan
- Pans the visible canvas area.
- Wheel-zoom
- Zooms the view via the mouse wheel.
- Rulers/grid/center mark
- Show measurement aids for orientation on the canvas.
- Camera overlay
- Overlays the live camera feed onto the canvas, warped to the material via homography.
- Coordinates / units (mm or inch)
- The coordinate display follows the machine origin; units are switchable.
- Layer palette
- Numbered colour layers (like LightBurn, 01–…) plus tool layers T1/T2. Click sets the active layer.
- Bed footer metrics
- Shows Job/Frame/Transfer/Estimate plus status tiles Origin/Camera/Output/Selection and an out-of-bounds warning.
Right dock "Cuts" — a table with one row per layer.
- Mode
- Line, Fill, or Guide; image layers show the mode locked to "Image".
- Speed (mm/s)
- Sets how fast the head moves for this layer.No default value — the right value depends on material and is found by running a test.
- Power
- Sets the laser power for this layer.Ruida shows separate min + max, GRBL a single value. No default value — find it by testing.
- Passes
- Number of repeats (passes) for this layer.
- Interval (mm) + computed DPI
- Sets the line spacing in fill mode; DPI is computed automatically from it.
- Out
- Toggles whether this layer is output (run) at all.
- Show
- Toggles whether the layer is visible on the canvas.
- Air
- Toggles air assist for this layer.
All run controls here need a connected controller.
- Send (GRBL family, Marlin, Smoothieware, Snapmaker)
- Streams the prepared job directly to the machine. "Save G-code…" saves exactly that program (with the current start, optimization and repeat settings) as a file.
- Start (Ruida)
- Runs the job live and immediately — engraves right away, nothing is stored.
- Send to laser (Ruida)
- Stores the job under a name (max 8 uppercase characters) in controller memory. The laser does not start — the operator starts it at the machine's panel.
- Pause
- Pauses the running job.
- Resume
- Continues a paused job.
- Stop
- Cancels the running job.
- Live job status & progress bar
- Shows whether a dry-run/preview is running or an actual engrave, including elapsed and remaining time.
- Blocked reasons
- Explains why nothing can start right now: not connected, no geometry on an output layer, the profile is for designing only, or an image sits on a non-output layer.
Laser dock — sets where the job starts on the machine.
- Start from
- Chooses the reference point for the job: Absolute coordinates, Current position, User origin, or Selection origin.
- 3×3 job-origin anchor grid
- Selects the job's anchor point (top-left … bottom-right) relative to the reference point.
- Selected graphics only
- Limits the job to the currently selected objects instead of the entire canvas.
- Start homing
- Triggers homing via $H for GRBL.Self-homing controllers show a "Self-Home" note instead.
Move dock — movement is always laser-off and needs a connection.
- Jog step size (mm)
- Sets how far a single jog step moves.
- X±/Y± D-pad
- Moves the head step-by-step in the chosen direction.
- Frame
- Runs the outline of the job without engraving.
- Go Origin
- Moves to the configured job origin.
- Home
- Moves the machine to its home position.
- Snap
- Grid snap on/off with adjustable spacing in mm; snapping to edges, centers, nodes, or the zero point.
- Align
- Aligns left/center X/right and top/center Y/bottom.Needs at least 2 selected objects.
- Distribute X/Y
- Distributes the selection evenly in X or Y.Needs at least 3 selected objects.
The native camera feed and calibration only run in the desktop app; the browser build degrades this functionality.
- Show overlay
- Toggles the camera overlay on the canvas.
- Start camera / Stop
- Starts or stops the live camera stream.
- Digital zoom/pan
- Zooms and pans the displayed camera image digitally.
- Capture still
- Freezes the current camera image as a still.
- Camera selector + Search cameras
- Selects a connected camera or scans for new ones.
- Bind this / Unbind
- Permanently associates a camera with this laser, or removes that binding.
- Background opacity
- Controls the transparency of the camera background image.
- Calibrate lens
- Starts the lens calibration wizard: print/save the ArUco calibration board, capture at least N of 9 positions (use the jog pad to move the head out of frame), then "Calculate" — shows the reprojection error.
- Align artboard
- Engraves a low-power marker pattern, captures a still, you click the 9 marks — solves the homography and shows "Alignment solved · error … mm".
- Update / capture background image
- Refreshes or captures the background image used for the overlay.
- Export
- Exports the current camera/background image.
- Clear image
- Removes the currently stored background image.
With the camera aligned, Vextrify finds every piece on the bed without you tapping them one by one. "Align artboard" comes first. Pieces that touch, or sit at the edge of the camera view, are reported and not placed on.
- Detect workpieces
- Finds every piece on the bed, using a reference picture of the empty bed or the contrast to the bed.
- Workpieces removed – capture now / Retake reference picture
- Takes the reference picture of the empty bed. A base board or jig may stay on. This is the most reliable basis.
- Height above aligned surface (mm) + Camera height (cm)
- Corrects the position for the material height. For lasers that focus by moving the table, the height is 0.
- Place design on all pieces
- Puts the selected design on every detected piece.
- Fit design into each piece
- Scales the design to the size of each piece.
- Use as mask
- Turns the pieces into masks; an image you drag onto one is clipped to that piece.
- Fill all masks the same
- Fills all masks with the same image.
- Use as shape
- Takes the outlines of the pieces as shapes.
- Cut outline + Outline offset (mm)
- Adds a cut line around each piece. A positive offset lies outside the piece.
- Cut a holder
- Creates a holder (jig) the pieces fit back into later.
- Adjust detection
- Sensitivity, Smallest piece (cm²), Largest piece (cm²) and Detection area ("Draw area on the bed") control what counts as a piece.
- Ignore this spot from now on
- Permanently hides a stain or mark; "Reset ignored spots" undoes it.
Bring along projects and devices you already set up in LightBurn.
- Project (.lbrn2)
- Takes over shapes, layers, sub-layers, images, tabs and offset fill.What cannot be carried over appears as a visible note in the import, for example elements not taken over, skewed images or linked images without embedded data. Save old .lbrn files as .lbrn2 in LightBurn first.
- Material library (.clb)
- Reads a LightBurn material library.
- Device files (.lbdev / .lbzip)
- Creates a device profile from a LightBurn device file.
For fiber lasers with JCZ / EZCAD2, EZCad3 or SEA-LASER / BSL boards. Values depend on source and material; there are no defaults.
- Red-light frame
- Shows the job's frame with the red pilot light; the laser stays off. It repeats until you press Stop.
- Own frequency for this layer
- Sets the pulse frequency per layer; off uses the frequency from the device settings.
- Wobble
- The beam circles or swings around the path: wider, smoother lines (spiral or zigzag, with step and size).
- Auto-rotate
- Spreads several passes evenly over 180° for an even finish.
- Cylinder correction
- For round parts: the design is drawn flat and bent so it lands true on the curve (outside or inside, with diameter and lens distance).
- Split marking
- Marks a design larger than the field in parts; the job pauses after each part so you can move the work.
Tools and layer options that make jobs cleaner and faster. Find the values on the real material with a test.
- Delete duplicates
- Removes shapes lying exactly on top of each other; optionally overlapping line pieces too.
- Convert to bitmap
- Turns shapes or text into an image, with a chosen resolution and content (fill, outlines only, or as set on each layer).
- Corner relief (dogbone)
- Dogbone or T-bone cut-outs in inside corners so square tabs fit into their slots.
- Linked array
- Copies in a grid or circle that follow every change to the original; convertible to normal copies later.
- Fill style: Offset
- Fills with rings that follow the outline inward instead of scan lines.
- Overscan
- Extra run-out per layer (Auto, Off or custom) so the speed is even at the edges.
- Offset by speed…
- Table of scan offsets per speed, with a calibration pattern and CSV import/export.
- Angle increment / Auto-rotate
- Turns the scan angle further with every pass (needs 2 or more passes).
- Automatic tabs
- Adds holding tabs to every closed shape on a layer (number or spacing, skip inner shapes).
- Path cleanup
- Joins open lines (Auto-join), closes and simplifies paths.
- Arrange (nesting)
- Arranges parts on the material to save space.
These apply to every laser, the preview and the time estimate.
- Optimization settings…
- Remove overlapping lines, inner shapes first, reduce travel moves, best starting point and direction.
- Repeat job
- Runs the whole job this many times in a row.
- When finished
- End position: stay where it ends, go to origin or go to a position (not on controllers that decide this themselves).
- Frame settings…
- Frame each shape on its own, repeat until stopped, own frame speed, and optionally the laser on at low power.
- Ruida: grayscale & files in the controller
- Grayscale engraving, list, start and delete files stored in the controller, plus live progress, jog, frame and go to origin.
Material dock.
- Active recipe summary
- Shows the currently assigned recipe, including a compatibility warning if it doesn't match the machine.
- Assign
- Assigns a saved recipe to the current layer/job.
- Save
- Saves the current parameters as a new recipe.
- Material Test
- Creates a real test object on the canvas to help find the right settings.No values are pre-filled — the result depends on the material.
- Interval Test
- Creates a real test object to determine the right line interval/DPI.
- Import
- Imports recipes from outside, including a conflict list for name clashes.
- Photo Note
- Attaches a production note with a photo to the recipe.
Queue dock.
- Estimated total time + pure engrave time
- Shows the calculated total job time and the share that is pure engraving time. This is an internal calculation/estimate, not artificial intelligence.
- Mini-simulation play/pause
- Plays a live simulation of the job's run order.
- Speed 2×–32×
- Controls the playback speed of the simulation.
- Travel-move toggle
- Shows or hides travel moves in the simulation.
- Time-split bar
- Visualises the time share of pure engraving, acceleration overhead, and travel moves.
- Speed-vs-time "optimum" hint
- Shows a calculated hint for where speed-versus-time is most favourable.
- Per-layer job manifest
- Lists the parameters for every layer in this job.
- CSV / Variable / Expand / Proof
- Variable-data tools: CSV import, variable fields, Expand to preview every variant, Proof to run a single variant.
- Serial-number generator
- Generates sequential serial numbers for variable jobs.
- Date generator
- Generates date values for variable jobs.
- CSV column picker
- Chooses which CSV column maps to which text field.
Device dock.
- Output release
- The safety gate before real firing: a locked profile shows "⚠ Output locked — release"; after confirming, it shows "✓ Output released · laser can fire" with a "Lock" option.
- Device editor
- Device name, controller (e.g. GRBL, Ruida, Marlin, Smoothieware, Snapmaker, TopWisdom, Trocen, K40 M2 Nano, JCZ / EZCAD2, EZCad3, SEA-LASER / BSL, design only), origin (front/back, left/right), width/height, camera, connection (Serial-USB/Ethernet/USB-Controller/File transfer/No output), homing (before each job/on connect/manual/not supported), power scale S-Max.
- Machine limits · safety
- Max mm/s, acceleration in mm/s², min/max %, scan offset in mm, "Hard-enforce limits".Ruida only: "Read from controller" — reads bed and limits directly, no motion involved.
- Device list
- Add, search, add manually, import, export, edit, set as default, remove.
- Artboard from machine
- Syncs the canvas with the machine dimensions and checks for mismatches.
Settings dialog, organised into tabs.
- Editor
- Switch to select after drawing, mouse-wheel zoom + direction, hand/pan behavior.
- Units & grid
- mm/inch selector, grid spacing, snap targets, nudge step sizes for arrow/shift/alt.
- Display
- Light/Dark/System, rulers, 10 mm grid, center mark, camera overlay on/off.
- Import/export
- Bed-change scaling: keep mm, fit selection, or fit job.Vector files (SVG, DXF, PDF, AI) and LightBurn projects are imported from the Device menu or the toolbar.
- Camera
- Preview frame rate (fps), overlay tint (full colour/black and white).
- Download project (.vextrify)
- Saves a portable, editable project file containing objects, layers, and layer parameters.
- Open project (.vextrify)
- Loads a previously exported .vextrify project.
- Durable auto-save
- Settings, device profiles, material recipes, lens calibration, camera binding, auto-connect ports, and rotary configuration are all saved durably and restored on launch — they survive reinstall and an OS reset.
- Storage warning
- Shows "Project too large for local storage — please export" when local storage overflows.
Hardware-gated — only visible/active with a connected rotary axis.
- Enable
- Turns on rotary mode for this job.
- Connection
- Chooses whether the rotary axis replaces the Y axis or runs as its own A axis.
- Type
- Chooses between a roller or chuck setup.
- Object diameter
- Enter the workpiece diameter; circumference is computed from it.
- Mirror output (rotary)
- Mirrors the output for the rotary setup.
- Roller diameter
- Enter the drive roller diameter.
- mm per revolution
- Calibration value for converting rotation to feed distance accurately.
- Test · one revolution
- Runs a single test revolution to check calibration.
| GRBL | CO2 / Ruida | |
|---|---|---|
| Send job | Send (streamed) | Start (live) + Send to laser (storage) |
| .rd export | — | File export (USB stick) |
| Power per layer | single value | min + max |
| Homing | $H | often self-homes on power-up |
| Read controller | — | Read from controller (bed & limits) |
- Always run a Frame pass first — it takes seconds and prevents misplacement.
- Lens calibration survives a reinstall; after moving the camera, only the artboard homography needs to be re-solved, not the lens parameters.
- With "Detect workpieces" you put your design on many pieces at once: take the empty-bed reference picture first, then detect and place on all pieces.
- Each laser tab is independent: its own profile, calibration, and job — locks never apply across tabs.
- On Ruida, "Start" runs the job live immediately, while "Send to laser" only stores it — the laser only fires once someone starts it at the panel.
- The time-split view in the preview shows where you're losing time to travel moves versus engraving, so you can reorder objects to save time.
- Export clean .rd, LightBurn, or EZCAD files when a job needs to run on a different machine.