From picture to engraved

  1. Pick your machine — laser or CNC.
  2. Make a job — photo, text, cut-out, test grid, relief, lithophane.
  3. Connect and run — USB or Wi-Fi, or download the G-code.

Laser & CNC engraver studio: design, G-code and sending, in one page

A free engraver tool that goes from a picture to a finished job. Pick your machine — diode laser or hobby CNC — choose a job like a photo, text, a cut-out, a test grid, a relief or a lithophane, and the page makes GRBL G-code. It shows the toolpaths on your machine's work area, then sends the job over USB or Wi-Fi with live status, jogging, framing, pause and stop. Or download the G-code for any other sender.

New — 8 November 2026: first version. Written by Ned Walsch. The G-code and the streaming protocol are tested against a simulated GRBL machine; tell us how it goes on yours.

How to run a job

  1. Machine: laser or CNC and its work area; for a laser, its optical power.
  2. Job and material: add a picture or type text; pick the material (laser) or the bit (CNC). New material? Run the test grid first.
  3. Placement: the design's front-left corner or its centre goes at your work zero.
  4. Connect: USB in Chrome or Edge, or Wi-Fi for ESP32 boards. Home if your machine has switches, jog to the start, press "zero X/Y here" (and Z on the stock for a CNC), then Frame to see the outline.
  5. Run: tick the checklist and press Start. Pause holds the motion; Stop is a soft reset that turns the laser or spindle off at once.

Starting settings for a ~10 W diode laser

MaterialPhotoText / fillCut (3 mm)
Plywood / basswood3000 mm/min, 0–60 %3000, 70 %300, 100 %, 2 passes
Hardwood2500, 0–70 %2500, 80 %200, 100 %, 3 passes
Leather4000, 0–35 %4000, 40 %400, 100 %, 2 passes
Slate (inverted)2500, 0–80 %2500, 85 %—
Cardboard5000, 0–25 %5000, 30 %1000, 70 %, 1 pass
Anodized aluminium3000, 0–60 %2000, 80 %—
Dark acrylic3000, 0–40 %3000, 45 %150, 100 %, 4 passes

A diode laser cannot cut clear or blue acrylic (the light passes through), metal, or glass; never laser PVC or vinyl — it releases chlorine gas.

Laser safety

Wear glasses rated for your laser's wavelength (445–455 nm for blue diodes, OD5 or better) or use an enclosure; ordinary sunglasses do not protect you. Never leave a running laser; keep a fire extinguisher at hand and vent the smoke outside. The page's Stop button resets the controller and switches the laser off; your machine's emergency stop is the one to rely on.

Frequently asked questions

Which engravers does it work with?

Anything running GRBL 1.1 or a GRBL-compatible ESP32 firmware: most diode lasers (Ortur, Atomstack, Sculpfun, Creality Falcon, Two Trees, Comgrow and similar) and hobby CNC routers (3018, 4040, 6060). Over USB in Chrome or Edge on a computer; over Wi-Fi for FluidNC boards (live) and Grbl_Esp32 / MKS DLC32 / ESP3D web interfaces (upload & run). Machines that only talk to their maker's own app, Ruida CO2 controllers and Marlin-based engravers are not driven directly — download the G-code and use their software if it accepts G-code.

How can a website talk to the engraver on my Wi-Fi?

Chrome and Edge now ask "allow this site to access devices on your local network?" the first time a page reaches a device at a local address. Allow it, enter the engraver's IP (or name.local) and connect. With FluidNC the page streams the job and shows live status over the board's WebSocket; with Grbl_Esp32 / MKS DLC32 / ESP3D it uploads the file to the SD card and starts it, but those boards do not report back to other sites, so you watch the machine. Any browser can still download the G-code and upload it on the engraver's own web page.

What settings should I use for my material?

The material buttons give starting points for a ~10 W (optical) diode, scaled for 5 W and 20 W+ machines — but lasers, lenses and materials vary a lot. Run the power × speed test grid on a scrap of each new material: it burns a labelled matrix of squares, and you pick the square you like. Photos usually want a lower maximum power than text.

Is it safe to run a laser from a web page?

The page sends the same G-code any sender would, with the laser off on every rapid move (S0) and laser mode checked on connect. But a laser can start a fire and blind you: wear glasses rated for your laser's wavelength (445 nm for blue diodes, OD5+), never leave it running, keep an extinguisher near, and vent the smoke. Stop is a soft reset that turns the laser off at once; the machine's own emergency stop is still the one to trust. The Start button stays disabled until you tick the safety checklist.

Can my CNC carve a lithophane?

Yes — choose CNC → Lithophane: it maps the photo to a thickness (0.6–3.2 mm by default) and carves the front of a 3.2 mm (⅛") sheet of white Corian or opaque white acrylic — thicker sheets work too, with more depth passes with a ball-nose bit, in depth passes, zig-zag at 0.4 mm stepover. Zero Z on top of the sheet. Lit from behind it shows the photo. Relief does the same as a carving to look at: light parts high, dark parts deep.

Why does my engraved photo look too dark or washed out?

Wood darkens more than the preview suggests. Lower the maximum power, raise contrast, try a gamma above 1, and use 8–10 lines per mm on wood (finer lines overlap and burn everything dark). Dithering (Floyd–Steinberg or Jarvis) gives crisper photos on most woods and slate; greyscale suits materials that shade smoothly, like light basswood or leather. Slate and dark materials engrave light: tick "invert".

What is laser mode ($32)?

A GRBL setting that switches the laser off between moves and lets the power follow the speed (M4). With $32=0 the laser can stay on during rapid moves and leave lines across the work. The page puts S0 on every rapid anyway and warns you on connect if laser mode is off; send $32=1 once from the console to fix it for good.

Related

Lithophane studio3D-printed lithophanes and lampsSign & keychain makerNames and logos in colourCookie cutter makerShapes for cutters and stampsSTL splitterSplit big models for the bed