ALPS Advanced Laser Processing Software

Release notes

What’s New

Shipped changes from the same changelog shown inside ALPS.

2026.0.4

The Wednesday fix batch: crashes, nesting that interlocks, and cut-quality you can steer

  • Fixed the crash that killed the whole app when you selected a text and a shape together (the 'ALPS hit an unexpected error' screen from tonight). Both support bundles pointed at the same bug.
  • Nesting now actually interlocks: six triangles pack nose-to-tail instead of standing in a row. Fine rotation steps keep improving a layout even when everything already fits.
  • Tangential entry/exit grew up: the on-screen exit now shows the true path (after the overcut overlap, where the laser really leaves), you can type entry/exit angles relative to the cut direction, and the cut START point is draggable on any closed cut — no lead required.
  • The 3D relief preview no longer turns into spikes on noisy depth maps, and a Preview-height slider lets you set how tall the surface reads. Preview only — your job output is untouched.
  • Award Plaque and nameplate text sits centred in its bands now, and the Design Builder's review page shows dark engraving on light material instead of black-on-black.
  • Define Plate: engrave fills shade to your plate material, the plate draws as a real sized rectangle on the bed (top-left origin), artwork hanging off the plate gets a preflight note, and the Plate picker has 'Custom plate…' for one-off sizes.
  • Jobs got a broom: Archive sweeps stale jobs out of Active (reversible, nothing deleted), folder chips explain where their jobs come from, and Move-to-folder is a proper picker. Dashboard queue rows now jump to that job on the Jobs screen.
  • Crop v2: crop an image non-destructively — re-edit, rotate/straighten, or clear the crop any time; the laser only burns what you kept.
  • All three editor docks (Bed Calibration, Rotary, 3D Engraving) roll up to a strip, and every collapse state survives a relaunch. The hide-panels arrow no longer sits on the Layers header.
  • 3D Engraving lives in the wrench flyout, the rotary rail icon is easier to read, machine bed drawings are true-to-proportion, and support bundles now carry a time in the filename so same-day crashes don't overwrite each other.
2026.0.3

Your material, your bed position, and a complete machine dossier

  • The 3D preview now looks like your material — brass reads as brass — with proper lighting, and the false teeth around a model's rim are gone.
  • Your relief model now sits on the canvas: drag it where you want on the bed, and that is where it burns. 3D Engraving is back in the editor's tool flyout too.
  • The Machines page is redesigned: pick a machine on the left and see its full dossier on the right — specs, calibration, a to-scale drawing of its bed, camera, and history. Nothing moved away: every action from the old page is still there.
  • Typing in a data-grid column heading no longer loses focus after one character.
  • The right panel's process settings are tighter, and Layers and Processes have cleaner headers.
  • The File menu is organized into groups; Fonts and Updates settings pages are now real.
  • Image Trace preview now zooms with the scroll wheel.
2026.0.2

Licensing now points clearly from Green to an upgrade

  • The licence banner now explains that Green functionality is already included and points to upgrading your licence, instead of offering a redundant free licence.
  • The Choose licence file control on the License page is now properly sized to match the rest of Settings.
2026.0.1

Introducing ALPS 2026 — a new name for a new yearly release

  • ALPS now stands for Advanced Laser Processing Software: a name that reflects the complete preparation and production workflow, not only printing.
  • A new ALPS 2026 splash appears while the application starts, then gets out of the way as soon as the workspace is ready.
  • ALPS releases now carry the year in their customer-facing name and version, making each annual generation immediately recognizable. Your existing installation, licence, and settings continue in place.
0.1.261

Check the whole job before you send — without taking the decision away from you

  • New: a preflight summary before you send checks the machine, fit, material, processes, focus, and estimated time. Every item has a link to fix it. It never blocks: sending is always your call. Preflight is on by default at Green; turn it off from the card itself or in Settings.
  • Parts Library previews draw again instead of appearing invisibly thin. Home and the sidebar badge now count the same jobs.
  • Layout keeps your job’s machine instead of grabbing the first one, and warns when a job and sheet do not match instead of silently re-bedding it.
  • If the camera cannot connect, it now says so after 20 seconds and offers Retry. The “Local Library” tab is now honestly named “All”.
0.1.260

Cancel means cancel, and production tools now say exactly what they will do

  • Cancel in a maker or wizard now truly cancels: the job you had open is restored exactly, while work you already finished is never rolled back. Tag Builder also stays attached to the job where you opened it and can no longer write into a different job you open later.
  • Batch sends now go to the machine your job selects, and the button names the destination — for example, “Queue 3 sheets to Fusion Pro.” If the selected machine is a galvo, ALPS explains that multi-sheet batches need a flatbed and asks you to choose one.
  • Menus now say what they do: Save Job actually saves; Browse Jobs, Go to Jobs, and Open Job Editor make navigation explicit.
  • Nesting now tells you what is eligible and why other items are excluded before you fit the sheet.
  • Camera Calibration and Bed Flatness now live under Support with the other setup tools.
  • Stamp is not built yet, so it no longer appears as a ready tool in the editor.
0.1.259

Licensing now starts at the right level, and 3D relief is easier to inspect

  • A fresh install that chooses Black during setup now correctly runs at Green until a licence is applied. The banner already said so; now the toolbar agrees too.
  • The License page now opens reliably from the Settings link, and you can choose the licence file directly instead of opening it and pasting its text.
  • 3D Engraving now has a rotatable 3D height preview with a pop-out view, plus a shaded preview in the editor. The 3D view shows the generated mathematical surface; it does not promise a physical engraving depth or finish.
0.1.258

ALPS now trusts Synergy's production licence keys

  • ALPS licences are now issued with Synergy's non-exportable production signing keys held in Google KMS, with a separate reserve key ready for safe rotation.
  • Earlier test licences no longer verify, including the demo licence applied today. Anyone holding one needs a new production licence from Synergy.
  • A computer with an earlier test licence is not locked out: ALPS keeps running at Green tier until the new licence is applied.
0.1.257

Tall rotary engravings now stay aligned from end to end

  • Rotary taper correction now follows the cup's changing diameter along the whole height of a vector design, instead of using one scale taken at its middle. The ends of a tall engraving no longer drift out — the old error measured as high as 9.5%.
  • The 3D cup preview now has a Closed bottom option, on by default, so the preview matches cups and tumblers with a sealed base.
  • Raster images still use the simpler mid-point taper correction. On a tall image placed across a strongly tapered or curved cup, its ends can still drift; use vector artwork when end-to-end placement matters.
0.1.256

Your ALPS licence can now be issued for this computer

  • Settings now has a License page showing this computer's fingerprint. Send that fingerprint to Synergy Products to receive your licence file, then apply the file on the same page.
  • A licence unlocks the tier issued to you and may include an expiry date.
  • Your licence is tied to the computer it was issued for. If you move ALPS to a new PC, send Synergy the fingerprint shown on the new computer and ask us to reissue the licence.
0.1.255

See what artwork cleanup will do before you apply it

  • Dragging a cleanup slider now shows the proposed result ghosted over your artwork — including the path you would get and the nodes that would be removed — so you can judge the setting before committing to it.
  • Your artwork does not change while you explore the sliders. The preview becomes real only when you press Apply.
  • Each cleanup slider now has a small before-and-after picture explaining what that control changes.
0.1.254

Fix traced artwork properly — select a run of nodes and straighten it, align it, or turn it into a real curve

  • New: select GROUPS of nodes. Drag a box over them with the Direct Select tool, or shift-click to add and remove. Dragging any selected node moves the whole set as one undo. Previously you could only ever have one node selected.
  • New: Straighten selected run — the staircase you get down the edge of a traced letter collapses to a single straight line.
  • New: Align selected nodes X / Y — puts them on one axis. No tolerance to guess at: you're telling ALPS those nodes are in a line rather than asking it to work that out.
  • New: Fit curve to selected run — turns a run of short straight chords back into a real curve. This is the one for artwork that arrives from a customer already bad, where you can't go back and re-trace it.
  • All four work only on what you selected. Nothing outside your selection moves, ever — the ends of your selection are a fence. Select across two separate paths and it refuses and tells you why rather than doing something to half of it.
  • New: the image tracer now produces CURVES. A traced circle comes out as a handful of smooth segments instead of 64 straight ones, and a traced square keeps its four sharp corners.
  • New in the Trace window: a Curve/Corner bias so you can tell it whether the artwork should read as flowing or angular, and Anti-aliasing removal for photos and JPEGs whose soft edges were tracing as a ragged staircase. The old Despeckle control is now labelled Noise filter.
  • Rotary moved out of the Tools flyout to its own button under the magnifier, and the Job Mode block has left the right-hand panel — rotary and pass-through now live in one place. The Library has a Rotary heading, and that library is visible inside the rotary flyout so picking a tumbler brings its settings with it.
  • The Corrected/Uncorrected toggle is now on the pop-out cup view too, not just the docked one.
0.1.253

Node Cleanup — imported artwork arrives with far fewer nodes, and tells you what it changed

  • New: traced and imported artwork now comes in with its node count reduced automatically, so it's easier to edit and cleaner to run. A real traced outline goes from 310 nodes to 202 at the default setting, with nothing moving further than 0.002 in — less than a typical kerf.
  • It never does this silently. The import banner tells you how many nodes went and the worst amount anything moved, every time. If you'd rather it left your artwork alone, there's a switch in Settings — turn it off and imports are byte-for-byte what they were before.
  • New: a Node Cleanup panel docks on the left when you pick the Direct Select tool, or from Object ▸ Reduce Nodes. It shows the before/after node count and the measured deviation live as you change the tolerance, so you can see exactly what a setting costs before you apply it.
  • New: Check Artwork reports problems without touching your file — open paths, near-closed gaps, duplicate shapes (including ones that are reversed or start at a different point), self-intersections, slivers and stray tiny loops.
  • New: Join & Repair closes small gaps between path ends. It deliberately refuses to guess: if an open end has more than one possible partner nearby, it stops and tells you rather than welding the wrong two contours together. It reports duplicates rather than deleting them, and leaves small loops alone — those are usually real tabs and holes.
  • New: an Optimize control in the Image Trace window, in inches, with a live node count — so a bitmap trace never has to land in your document with hundreds of unnecessary nodes in the first place.
  • Tolerances are always shown as a real distance in inches, never a 0–10 score, so you can compare them against your kerf.
0.1.252

No more flashing black windows when you print — plus fonts you have installed, and a fixed 3D preview

  • Fixed: printing from CorelDRAW to the ALPS laser no longer flashes a string of black console windows across your screen. ALPS runs its PDF helper invisibly now. Nothing about the artwork changes — this was purely the windows appearing.
  • New: a PDF that names a font WITHOUT embedding it now uses that font from your own machine, if you have it installed. Corel does this routinely — it printed Comic Sans without embedding it — and those letters used to be skipped. Verified against CorelDRAW on the same file: the text now matches, and the bounding boxes are tight.
  • Fixed: the 3D mug preview was showing the artwork MIRRORED — you were effectively seeing the inside of the cup. Text at 0° now reads correctly. The flat canvas was always right; only this preview was wrong, so no job you sent was affected.
  • The job simulator now frames YOUR page size by default instead of the whole machine bed, with a one-click toggle for the full bed when you want to see where the part sits on the table.
  • Simulator rulers now start at zero in the top-left corner, matching the editor. The unit you have ALPS set to runs closest to the part, with the other unit on the outside — so you can read either without changing a setting.
0.1.251

Text in non-embedded fonts now imports — the PDF own-fix set is complete

  • New: PDFs that use the standard fonts (Helvetica/Arial, Times, Courier, Symbol, Dingbats) WITHOUT embedding them now import their text as real geometry. ALPS bundles those 14 faces itself (about 1.2 MB), so it works on every machine — no Epilog Suite required.
  • It uses the widths the PDF itself specifies rather than the bundled font's own, so text lands where the file intended instead of drifting across a line.
  • A font ALPS doesn't recognise still says so rather than quietly substituting a lookalike — a substituted typeface would put different letterforms on the material than the preview showed.
  • This completes the run of PDF fixes: of the four import classes that used to need Ghostscript, three are now handled by ALPS itself.
0.1.250

Filled shapes import as CLOSED shapes

  • Fixed: a filled region in a PDF whose outline was not explicitly closed used to import as an OPEN contour. That matters on a laser, not just on screen — closed-vs-open decides which side the kerf offset goes on and where a lead-in is placed. Measured on a real CorelDRAW file: five shapes that came in open now come in closed, with the geometry itself unchanged.
  • Outlines that are genuinely open — a stroked line that isn't a shape — stay open, as they should.
0.1.249

Inline images import — and PDFs stop losing pictures

  • New: images embedded directly inside a PDF's drawing instructions (rather than stored separately) now import. Small logos, stamps and dither patterns are commonly written this way.
  • Knock-on fix: this was the last case where a rescued PDF could come in MISSING a picture — Ghostscript rewrites separate images into the embedded form, which ALPS previously couldn't read. It can now, so that risk is gone.
0.1.248

Type 3 font text imports as real geometry

  • Improved: PDFs whose text uses Type 3 fonts — where each letter is a little drawing program rather than a normal font — now import as real cuttable/engravable geometry on every machine, instead of needing Ghostscript to flatten them first.
  • Two of the four PDF classes that used to depend on Ghostscript are now handled by ALPS itself; the ledger table tracks exactly what's left.
0.1.247

Spot colours import as real colours — and as separate processes

  • Fixed: PDFs using spot inks (PANTONE-style /Separation colours) imported as BLACK, and two different spot inks merged into ONE process — so a two-colour job came in as one. ALPS now works out each spot ink's true colour from the file's own colour recipe, so each ink becomes its own cut/engrave process, exactly as the artwork intends.
  • This is ours, not Ghostscript's: Ghostscript preserves spot colours rather than resolving them, so this class was wrong on BOTH import paths until now.
  • Files with unusual or broken colour recipes fall back to a neutral grey WITH a note naming the colour space and the reason — never a silently wrong colour.
0.1.246

Form-wrapped PDF art imports everywhere — no Ghostscript needed

  • Improved: artwork wrapped in a PDF 'form' container — what Illustrator and most CAD exporters write, and the biggest cause of a PDF importing blank — now imports natively on every machine, with fills correctly closed. This was the flagship case the 0.1.242 Ghostscript rescue covered; ALPS now reads it itself, so it works with or without the Epilog Suite installed, and better (the rescue could leave a rescued fill as an open contour; the native path can't).
  • Hostile or broken files with absurdly nested forms degrade to a clear note instead of hanging — bounded by measured work budgets.
  • The Ghostscript ledger's first row has flipped from FIXES to NEUTRAL — the plan is to keep shrinking that table.
0.1.245

Paragraph indents and spacing

  • New: the Paragraph roll-up gains the full Corel-style set — First-line indent, Left/Right indents, and Space before/after paragraph. All in your working units, all wrap-aware: indents narrow the wrap and inset the lines, paragraph spacing opens up between paragraphs (one Enter = one paragraph), never at the edges.
  • What you see is what burns: one layout engine feeds the canvas, the Layout sheet, the simulator and the machine — indents and spacing land identically everywhere.
  • Documents that don't use the new controls lay out exactly as before, to the byte.
0.1.244

Traced letters keep their holes + the Ghostscript ledger

  • Fixed: colour-mode Image Trace burned the counters of letters (and any ring/hole) SOLID — a traced 'O' engraved as a disc. Same-colour contours now land in one path with the correct fill rule, so holes stay holes. Measured on real art: fidelity jumped from 35% to 95% overlap with the source.
  • New: docs/GHOSTSCRIPT_LEDGER.md — the always-current table of exactly what the PDF Ghostscript assist fixes and what Ghostscript would hurt (why it's never the default). It cannot go stale: a build-gating test fails the suite if the ledger and the import tests ever drift apart.
  • Also: the VTracer trace-engine evaluation is complete (docs/research) — ALPS's own tracer wins for cut outlines; a possible colour-mode upgrade is recorded for later with its conditions.
0.1.243

Job Mark — the blank that knows its job

  • New: Tools ▸ Job Mark (Blue). Engrave a small QR mark on a blank that names a saved job. Later — even weeks later — photograph the bed and ALPS reads the mark, tells you which job the blank belongs to and how it's sitting ("moved 0.31 in, rotated 1.2°"), and offers Load / Queue. No more matching mystery blanks to jobs by eye.
  • Careful by design: a suspect read refuses loudly (mirrored mark, wrong size, poor fit) instead of placing art wrong, and a mark never decodes to the WRONG job — in testing it either read exactly or not at all.
  • This is the software half of the self-running cell: the chain deliberately stops at QUEUED — you still press START at the machine. Auto-start arrives with the actuator hardware.
0.1.242

PDFs that imported blank now import — Ghostscript rescue

  • Fixed: some PDFs imported blank or with a 'text in font' warning (form-XObject art, PDFs using built-in fonts, Type 3 text, and some producers whose art came in truncated). When Ghostscript is present — it ships with the Epilog Software Suite, so it almost always is — ALPS now quietly re-runs those files through it and keeps the result only when it's strictly better. One real-world test file used to lose everything below 1.4in on the page; it now imports complete.
  • Nothing changes for PDFs that already imported fine, and nothing requires Ghostscript — without it, behaviour is exactly as before.
  • Grounded in a 13-fixture side-by-side (docs/research) — which is also why Ghostscript is NOT simply used for everything: measured, it loses images and invents geometry on healthy files.
0.1.241

Simulator text now uses the one text engine

  • Fixed: engraved TEXT in the Job Simulator is now laid out by the same text engine as the editor, the Layout sheet and the burn — including auto-fitted text (it used to preview at its raw design size), letter-spacing and paragraph wrapping (both previously ignored by the simulator).
  • This closes the text-engine unification: every surface that draws text now reads the same numbers, and an internal gate test keeps it that way.
0.1.240

Curved tumblers — waisted and barrel cups, previewed and corrected

  • New: Middle Ø. The Rotary dock and the Rotary Simulator now take a middle diameter alongside Bottom and Top — set it smaller for a waisted tumbler, larger for a barrel mug. The 3D preview shows the real curved shape (not a straight cone), and the art-distortion correction follows the curve, so your design comes out square on the curved wall.
  • A barrel with equal ends is handled too — that's still a curved cup, and ALPS corrects for it.
  • Straight and simple-taper cups are untouched: leave Middle Ø blank (or on the straight line) and everything behaves exactly as before.
0.1.239

DXF arcs come in round + a Clean Up Drawing command

  • Fixed: DXF polylines with rounded corners (bulge arcs) now import as true arcs — they used to come in with the corners flattened straight. Applies to LWPOLYLINE, old-style POLYLINE and hatch boundaries.
  • New: curve-aware joining. When AutoCAD prints arc-heavy art to the ALPS printer, touching curve segments now weld into continuous paths — without flattening the curves. Already-joined art passes through byte-identically.
  • New: Object ▸ Clean Up Drawing. One click welds a drawing's loose line and curve segments into clean cuttable paths — colour by colour, so cut and engrave lines never merge. Works on the whole drawing or just your selection; use it for art imported before this feature or with auto-join turned off.
0.1.238

Refresh Fonts — install a font mid-job, no restart

  • New: Type ▸ Refresh Fonts. Installed or updated a font while ALPS was running? One click re-scans your installed fonts — the font picker lists the new font, and text set in an updated font measures, previews and converts from the NEW file. Until now a restart was the only way ALPS would notice.
  • This closes the last gap from the text-engine unification: every layer that remembered fonts (the font list, the letter outlines, the text-box measurements) now refreshes together, in the right order, so nothing is left showing yesterday's font.
0.1.237

One text engine — the box hugs the letters, fonts resolve right

  • Text geometry is now computed by ONE engine everywhere — the selection box, the canvas, the Layout sheet, the Tag screen, the fit-to-box logic and the burn all use the same numbers. The box you see is the ink you get.
  • Fonts are found by their REAL names, read from the font files themselves. "Comic Sans MS" (shipped by Windows as comic.ttf) and every similarly-named font now converts and burns correctly, and the font picker lists names your designs can actually use — no more silent stand-in fonts drawing the wrong letterforms.
  • The Layout sheet and Tag screen now show fit-to-box text at its true fitted size (they previously drew it at the raw design size).
  • Single-line (engraving font) text with tracking or custom line spacing now burns exactly as it previews — those two settings were silently dropped on the way to the laser.
  • Guard tests now make this whole class of drift un-shippable: any code that tries to compute text geometry on its own fails the build.
0.1.236

Right-click crash fixed

  • Right-clicking on the canvas of a brand-new (never saved or opened) job could crash ALPS to the recovery screen. Fixed — found from Jon's live report, reproduced exactly, and a guard now makes this whole bug class impossible to ship again.
  • Known issue, next up: text boxes can disagree with the drawn letters for some fonts (letters poking past the selection box, spacing tighter than other apps show the same font). Convert to Path is the reliable workaround until the text-engine unification lands — it uses the true letter outlines.
0.1.235

PDF import: rotated pages, NX/SketchUp files, and scanned exports now come in right

  • Landscape drawings from AutoCAD (and any PDF with a rotated page) now import the way your PDF viewer shows them. Before this, a rotated page came in sideways and misplaced — with no warning. If an imported drawing ever looked turned 90°, this was why.
  • PDFs written with compressed object streams — the modern format Siemens NX and SketchUp export — now import their full vector content. These files used to arrive completely empty.
  • Scanned/raster PDF exports whose image is double-compressed (common from AutoCAD) now import as a proper picture instead of an empty page.
  • Verified against 737 real professional CAD files (AutoCAD, SolidWorks, CATIA, NX, SketchUp, Revit) compared render-for-render against a real PDF viewer — not just "no errors." Files matching the viewer nearly doubled; the every-file comparison is now part of how importer changes get accepted.
0.1.234

Import warnings you can see, printer page follows your machine

  • Importing or printing into ALPS now shows its warnings right in the editor — an amber banner over the canvas lists anything worth knowing (wrong paper size, artwork past the bed) instead of importing silently. Dismiss with one click; Ctrl+Z brings it back.
  • A printed page BIGGER than the machine's bed now gets a loud, specific warning naming both sizes — only the bed-sized top-left of the page can reach the machine, and ALPS never shrinks artwork to fit (position is corrected, size never is). Fix the page size, not the artwork.
  • Incoming prints now say which machine they were placed for and how ALPS chose it (your AutoPrint target, the last machine you used, or the first configured one) — so a print landing on the wrong bed announces itself.
  • The ALPS Laser printer's default page now follows the machine you're working on: switch machines in ALPS and the next print from CorelDRAW defaults to that bed, instead of always the first machine's.
  • When the ruler-corner origin toggle is on (0 at the field centre), a "± centre 0,0" badge appears beside the X/Y fields so you always know what your numbers mean. Click it to switch back to top-left. The toggle only changes the display — artwork never moves.
0.1.233

Tumbler opening on the left, Corel text imports, taper preview toggle

  • Rotary: design with the tumbler's OPENING on the LEFT of the canvas — the 2D page, the 3D cup, and the burn all agree. Taper correction now anchors to the end your attachment actually grips (roller = the rim, 3-jaw chuck = the base), so the true-size end of your artwork is the gripped end.
  • Printing from CorelDRAW (or any PDF) to the ALPS printer now brings TEXT through as geometry — no more converting to curves first. Embedded fonts are read directly; PDF import is also far more robust on real-world files, and Ghostscript is found automatically when installed (including Corel's copy).
  • 3D cup: a Corrected/Uncorrected toggle shows exactly what the taper correction does to your artwork, with a readout of where the art sits from the opening — and ALPS now warns if the corrected artwork would wrap past a full turn.
  • Align now centres paragraph text by its INK, not its text-box frame — a circle and a dragged-out text box line up properly.
  • Text dock: Paragraph on/off is now right in the dock, and line spacing shows as a percentage (Corel-style).
  • Library tumblers now default to the rim-style roller, and Tumbler-wizard jobs preview their taper in the rotary dock.
0.1.232

Rotated text box, cup line weights, Pop out

  • Fixed: a rotated text object's box now fully contains the letters — the last glyph no longer pokes past the edge (the box gets a hair of margin at the far edge; the burn origin is unchanged).
  • The 3D mug now shows your stroke widths at their real weight — a thick ring is a thick ring, not a hairline.
  • The rotary dock's Pop out button is now visible (it was hidden underneath Reset view).
0.1.231

Tumbler library: real sizes + share

  • The tumbler library now has correct real Yeti Rambler sizes (the old heights were wrong, so page sizes were off). Five sizes — 10oz Lowball, 14oz Mug, 16oz Pint, 20oz, 30oz — each with its taper, so opening one sets the right page size and pre-fills the cone correction.
  • New: Export a library package to a shareable .alpslib file (Library screen) — hand it to anyone and they can Import it.
0.1.230

Support ticket: reliable send + clears after submit

  • Support tickets no longer rely on the finicky 'open email' handoff. After you create one, pick how to send: Copy ticket details (paste into any email), Open in Gmail (pre-filled compose), or Open mail app — then attach the saved diagnostics zip.
  • The Support form now clears after you submit, with a New ticket button to start another.
0.1.229

White-screen safety net + rotary fixes

  • If ALPS ever hits an unexpected error, it now shows a recoverable screen with a Reload button instead of going blank white — and records what happened so a support ticket can pinpoint it.
  • Fixed: with two or more objects selected, the angle field now rotates them together as a group (it was disabled for multi-selection).
  • The Rotary dock's 3D mug has a Pop-out button to inspect it in a larger view.
0.1.228

Rotary dock refinements

  • The Rotary dock's 3D mug now stands upright the natural way — opening at the top, closed base at the bottom — and you rotate it by dragging instead of it spinning on its own.
  • Clearer labels: "Profile" is now "Type", and Bottom Ø / Top Ø have tooltips (Bottom = the closed base, Top = the opening / drive-wheel end).
  • The Hide-panels button is bigger and easier to hit.
0.1.227

Rotary dock — everything rotary in the editor

  • New: a Rotary dock, right in the Job Editor (Tools ▸ Rotary). Turn on rotary, pick the attachment and the object's size, set a taper, and watch your artwork wrapped on the 3D mug — updating as you edit — with links to your profiles and the Tumbler wizard.
  • Tapered mugs now engrave the correction, not just preview it: set a Top Ø different from the Bottom Ø and the artwork is pre-distorted so a straight logo reads straight on the cone — the same correction the 3D cup shows is the one that burns.
  • Fonts: single-line (stick/engraving) fonts now appear as their own "Single-line" group at the top of the font picker — pick one like any other font. The old single-line toggle (which just swapped your font and confused everyone) is gone.
0.1.226

Paragraph text areas + 3D mug taper

  • New: with the Text tool, DRAG to create a paragraph text box (text wraps inside it); a single CLICK still makes point text. In a paragraph, Enter starts a new line — press Esc or Ctrl+Enter to finish.
  • Rotary Simulator: the 3D mug taper is back. Set a Top Ø different from the Bottom Ø and the cup goes conical, with the artwork taper-corrected so a logo reads straight on the cone (a Straight button resets it).
0.1.225

Dogfood: text fit, fonts, focus offset

  • Fixed: text really fits its box now — the box was ignoring letter-spacing (Tracking), so tracked text spilled off the end. It now hugs exactly what burns.
  • Fonts: your recently-used fonts are pinned at the top of the font picker, before the full A–Z list.
  • Tracking moved into the Character section (where it belongs); kerning is automatic from the font.
  • Focus offset (defocus above/below the surface) is now available on every machine, not just the galvo.
  • The Rotary Mode toggle and the Tumbler-wizard button now use the rotary-axis icon (a tumbler on rollers), matching the Rotary Simulator.
  • Polish: a bolder, bigger X to leave Tag Builder, and the Hide-panels button now uses the same » collapse chevrons as the nav.
0.1.224

Dogfood fixes + Support section

  • Fixed: text now fits its box reliably — no more glyphs spilling past the edge after a font finishes loading.
  • Fixed: the font list no longer shows blank numbered 'fonts' that did nothing.
  • Layers: rename a layer with the pencil button (or double-click), and the Layers panel now starts collapsed.
  • New: a Support section under System — create a support ticket that auto-attaches your machine + diagnostics info and emails it in, plus the diagnostic tools (Bed Flatness, Camera Calibration, Home Offset, Network, PRN Inspector, Self Calibration) now live here.
  • Rotary Simulator now frames on your page (the tumbler surface), a clearer rotary icon, and the Defocus-offset unit sits next to the box.
0.1.223

Collapse the panel to icons

  • Hiding the right-hand panel now collapses it to a compact icon strip (Processes, Layers, Properties) instead of tucking it fully away — so you reclaim the space but the sections are still one click from reach, like the left navigation.
0.1.222

See your tumbler in 3D

  • New: the Rotary Simulator now has a 2D-flat / 3D-cup toggle — flip to 3D to see your artwork wrapped on the actual tumbler and spin it around, so you can check how the design and the rotary correction look on the real part before you burn.
  • The 3D cup is driven by the same math the machine uses, so what you see is what burns.
0.1.221

Auto-join now covers printing from AutoCAD

  • The import cleanup that joins line-soup into polylines now also runs when you PRINT to ALPS from AutoCAD (or any app) through the ALPS printer driver — not just when you open a .dxf file. Printed and PDF/SVG imports get the same clean polylines.
  • Same on/off toggle under Settings; colours are preserved so cut/score/engrave separation still works.
0.1.220

Smarter DXF import

  • New: DXF and CAD files that come in with every line as a separate object are now cleaned up automatically on import — touching lines are welded into single polylines, so a rectangle drawn as 4 lines becomes one closed cut. On by default.
  • You can turn it off (or adjust the gap tolerance) under Settings → Auto-join imported lines, for files that are meant to stay in separate segments.
  • Colours are preserved through the cleanup, so cut/score/engrave separation still works.
0.1.219

Layers

  • New: Layers — organize artwork into named layers you can show/hide, lock, and mark non-printable. Find it in the Layers panel (Blue tier and up).
  • A hidden or locked layer still stays in your file; marking a layer non-printable keeps it out of the burn — handy for alignment guides and fixtures that shouldn't be cut.
  • Your existing jobs open exactly as before — everything lands on a default 'Layer 1'.
0.1.218

Editor panels redesigned + text fixes

  • The text properties panel is now organized into collapsible sections — Character, a new Paragraph section (alignment, justify, and line spacing), Variable Data, and Appearance — so the controls are all in one place.
  • Toolbar buttons (Snap, Align, Distribute, and the text options) are now compact icons with hover tooltips, freeing up room.
  • Renaming a job now uses familiar pencil / confirm / cancel icons.
  • Fixed: paragraph text boxes hold their shape reliably now, and turning Paragraph off restores normal sizing.
  • Fixed: a canceled drag (pen lifted, window switched) no longer leaves the canvas stuck mid-gesture.
0.1.217

Design Builder — previews, and text fixes

  • New: every design type in the Design Builder now shows a live preview of what it makes, right on its tile — so you can see a house sign, a pet tag, an award plaque, etc. before you pick one.
  • Fixed: you can now type spaces in the Design Builder's text fields. They were being trimmed as you typed, so a name like "Maple Grove" lost its space — that's gone.
  • Fixed: on small tags and other designs with tightly-fitted text, the lettering could render far too large in the editor and spill off the piece (with a false "artwork extends beyond the bed" warning). The editor was mis-measuring condensed text; corrected — this helps any tightly-fit text across the app, not just the Design Builder.
  • Under the hood: text is now re-measured once your fonts finish loading, so auto-fit sizing is exact instead of occasionally sized against a fallback font.
0.1.216

Design Builder — tell us what you want to make

  • New: the Design Builder. Pick what you're making — a house sign, a wayfinding sign, a hanging shop sign, a safety/warning sign, an office or door nameplate, an industrial valve/equipment tag, a pet tag, a personalised cutting board, a garden plant marker, a tent place card, or an award plaque — answer a few plain questions, and ALPS builds about 90% of a finished, ready-to-burn design for you. Eleven types to start, across signs, nameplates, industrial tags, gifts and awards. It's the first card on the Home screen, and it's under Tools.
  • It's built for people who don't design. You're never asked an engrave-vs-cut or a speed/power question — ALPS chooses all of that. You answer plain things: the words on the piece, the size, how it mounts.
  • Before you open it in the editor, the Review step shows the design and lists exactly what was decided for you — the font, the layout, the border — so nothing is a surprise. The last 10% is yours to tweak.
  • Also new in Tools: the Rotary Simulator — see the open job wrapped on the cylinder, with the seam, over-wrap and the compensation the encoder applies, before you burn anything.
0.1.215

Bend text into a shape

  • New: Object > Envelope. Select text or artwork and bend it — Arch, Bulge, Pinch, Perspective or Wave. This is the classic carved-sign look where the letters themselves distort to fill a shape.
  • It is different from text on a path. Text on a path places letters along a curve and keeps their shape; an envelope squeezes the whole word into a shape and stretches the letters to fill it.
  • ⚠ It converts your text to paths, so the wording is no longer editable afterwards — keep a copy if it might change. That is deliberate: the editor cannot preview a bent live text object, and a design that previews flat and cuts bent is worse than one that asks you to convert first.
  • Select several words together and they bend as one piece, so a whole line arcs consistently instead of each word curving on its own.
0.1.214

Subtract now keeps its holes when you fill it

  • Fixed: a shape made with Object > Boolean > Subtract lost its holes as soon as you filled it or put it on an engrave colour. The hole would burn in solid, so a subtract looked as though nothing had been subtracted.
  • As a cut line it was always correct, which is why it went unnoticed — every ring was cut properly. Only filling or engraving revealed it.
  • Cutting is unchanged: a subtracted shape still gives you one cut contour per edge, inside and out.
0.1.213

A script face for name signs

  • Kaushan Script is now bundled. A flowing script over a big block surname is the most common layout on property and family-name signs, and ALPS had no script at all.
  • It was chosen over three other free scripts for a reason that matters if you cut your text rather than engrave it: in a truly joined-up script, each letter overlaps the next where they meet. Cut without welding, the laser draws a line straight through every join. Kaushan's letters do not touch, so it cuts cleanly as it comes.
  • If you do use a joined-up script from your own system fonts on a CUT process, weld it first with Object > Boolean > Union. On an engrave process it makes no difference.
0.1.212

The right tree for the coast

  • New in the Parts Library: Coastal conifer and Coastal treeline. The existing Fir tree is the stiff, symmetric cone everyone pictures — which is a spruce, and not what grows on the BC coast.
  • A western hemlock or red cedar is narrower, its branch ends turn down, and its top nods over instead of standing straight. That drooping leader is the field mark, and it is what makes a treeline read as coastal rainforest rather than as generic clipart.
  • If your sign is for anywhere on the Sea to Sky, the Island or the Sunshine Coast, the coastal shape is the tree that actually grows there. Nobody outside the region will notice. Everybody in it will.
  • The leader is deliberately kept above a minimum width rather than tapering to a point, so it survives being cut and handled.
0.1.211

Building signs in layers — locator marks and alignment pegs

  • New: Object ▸ Overlay Locator. Select a piece that gets glued on top of a backer and ALPS marks the backer with where it goes — either a thin scored outline tucked just under the piece, or a shallow engraved pocket it drops into. Glue-ups stop being done by eye.
  • The outline is deliberately hidden under the piece. A line drawn on the exact edge shows as a permanent halo wherever the glue-up lands a few thou off, and it always lands a few thou off.
  • Both marks are measured from the piece's finished edge rather than the line you drew, using the beam width on your cut process — a cut part is already about half a beam width smaller than its outline.
  • New part in the Parts Library: Alignment pegs. Registration holes for every layer plus the pegs to fill them, or holes only if you would rather use a bought dowel. The hole is cut smaller and the peg larger, because cutting both on the same line leaves two beam widths of slop and a peg that rattles.
0.1.210

Fit text to its box, three new fonts, and a Parts Library

  • Any text object can now fit itself to the box you draw. Pick Shrink, Condense, or both in the text properties: the size you set becomes a maximum rather than a target, so a heading stops running off the plate and a short line is never blown up to fill the frame. It stops at a legibility floor instead of shrinking into nothing. This used to work only inside name badges and variable data.
  • Three fonts added for signage — Arvo (a slab serif), Barlow Condensed (for long names on narrow plates), and Rye (a western display face). All three are licensed for commercial use and were checked for outlines that cut cleanly.
  • New tool: Tools ▸ Parts Library. Parametric sign parts you set numbers for instead of drawing — fir trees, treelines, mountain ridges, snow caps, plank courses, arched sign blanks with hanging holes, ribbon banners — and tab-and-slot joints sized to your material thickness and your laser's beam width.
  • The joints already account for the beam width, so leave the cut process's Kerf setting off for those parts. A slot cut on its nominal line comes out a full beam too wide, which is the usual reason a press fit falls apart.
0.1.209

Job time estimates now say how rough they are

  • We measured ALPS's job-time estimates against the real times Epilog's own software reports, and they are further out than the wording suggested. Engraving tall narrow artwork can read about three times too long, and a single-pass cut about four times too long. Large solid engraves are close.
  • Nothing about your jobs has changed — only what ALPS tells you about the estimate. The time shown in the Simulator and beside a running job now says plainly that it is rough, and which way it errs.
  • Use it to compare two jobs, not to promise a collection time. Time a new job the first time you run it and you will know.
0.1.208

Engraving jobs no longer sweep across empty space

  • ALPS now sends each engraving scan line trimmed to the artwork on that line, the way Epilog's own software does. Before, every line was sent at the full width of the design's bounding box, so the head travelled across blank areas on every pass.
  • Engraving anything that isn't a solid rectangle should now finish faster. On a triangle-shaped design the job was carrying about twice the data it needed. The engraving itself is unchanged — blank areas never fired the laser, they just took time to cross.
  • Precision Sync now does something. Switch it on to go back to full-width scan lines, which is what it was always meant to control.
0.1.207

Tabs can now be scored instead of left uncut

  • Tabs (bridges) have a Bridge power setting. Leave it at 0 — the default — and nothing changes: the tab is left completely uncut, exactly as before.
  • Set a low bridge power and the machine cuts the outline leaving the tabs, then goes back over just the tabs at that reduced power. The part is held during the job but snaps out by hand afterwards instead of needing a knife.
  • The bridges are always cut LAST, so the part stays fully attached until the final pass and cannot shift mid-job.
  • Find the right number with a test cut — too high and parts drop out during the job, too low and you are back to cutting them free. Start low.
0.1.206

The simulator now shows where the beam really goes

  • Kerf, tabs, lead-ins and lead-outs now appear in the Job Simulator. Until now it previewed the line you drew; it now previews the path the laser actually cuts, offset by your kerf setting, split by your tabs, and extended by your leads.
  • When the cut path differs from your artwork, the artwork is shown underneath as a dashed grey line — so you can see at a glance whether the kerf is being taken off the outside or the inside.
  • If you have a kerf side selected but the beam width is still 0.000 in, the simulator now says so. Nothing is being compensated in that case, and no preview can show it: a zero-width offset cuts in exactly the same place as kerf switched off.
  • The estimated time for jobs with lead-ins is slightly longer than before, and more accurate — a lead is real travel, and it was previously not counted.
0.1.205

Internal: diagnostics for camera sharing between computers

  • No change to how ALPS behaves. This build adds an internal diagnostic hook so our own tests can see which camera source ALPS chose — the laser, or another computer's share — when the two disagree. It exists because a sharing fault was previously only visible as "the bed camera went dark".
0.1.204

Sharing between computers works with machines that have no display name

  • Fixed before it reached anyone: 0.1.203's camera-sharing fix was slightly too strict and would have refused a genuine share coming from a machine whose display name was blank. Sharing now depends only on the machine's serial, which is what identifies it.
0.1.203

Fixed: the camera-in-use dialog could offer to watch a share that was not there

  • Fixed: when another computer had the bed camera, the options dialog could offer "watch their share" — and recommend it — when nobody was sharing anything. It was finding a leftover advertisement from this computer. Watching is now only offered when a share genuinely exists on another machine, so the honest option, asking them to switch sharing on, is the one you see.
0.1.202

Fixed: the bed camera could go dark with no way to see who had it

  • Fixed: on a network where any ALPS has ever shared a camera, this computer could end up watching a share it was advertising itself — including one left over from an earlier session with nothing behind it. The camera view went dark, and because ALPS never asked the laser who held the camera, it could not tell you who to ask. You were left with a take-over button that named nobody.
  • ALPS now refuses a share advertised by this machine and falls through to the laser, so when somebody else genuinely has the camera you get their name and the full choice: watch their share, ask them to switch sharing on, or take it over.
  • Sharing between different computers is unchanged, including the remembered-host route that keeps sharing working on networks where discovery is unreliable.
0.1.201

Every tool is on the Tools screen, and the app says what it means

  • The Tools screen now lists every tool ALPS has. Print & Cut, Badge Maker, Template Maker, Nesting, Image trace and Stamp used to be reachable only from the wrench in the Job Editor, so looking for them on the Tools screen and not finding them was easy to read as "ALPS cannot do this". They now appear under "In the Job Editor", and clicking one takes you to the editor with it open. The wrench is unchanged.
  • Fixed: two messages sent you to "Settings ▸ Machines", which does not exist — Machines is on the left-hand rail. Both now name the right place. They appear when nothing else is on screen to try, which is the worst moment to be pointed somewhere empty.
  • Job states now say what they mean when you hover them. QUEUED is the important one: it means the machine accepted the job, NOT that the job is running — somebody still has to start it at the machine. AWAITING ALIGN now says it is waiting for you.
  • The small "est." beside a running job explains itself: the laser does not report progress, so ALPS is predicting when the job finishes rather than being told. Check the machine before assuming it is done.
  • When another computer has the bed camera, the Job Editor's camera window now offers the same choice the Machines screen does — watch their share, ask them to share, or take over — instead of disconnecting them on the first click.
  • Fixed: the Tools menu's QR entry offered Wi-Fi content the Tag Builder cannot produce.
  • Stamp is now marked "not built yet" where it is listed, instead of announcing it only after you open it.
0.1.200

Seven ready-made project blanks — and updates now actually deliver new ones

  • New in the Library: seven starter blanks for the jobs people ask for most — acrylic keychain, wood ornament, anodised pet tag, leather patch, two-layer name badge, cork coaster and a 16oz pint glass. Press Use and you get an artboard already the right size with the engrave area marked, and the rotary already set up for the glass. Step-by-step walkthroughs for all seven are in the operator manual.
  • Their starting speed and power come straight from Epilog's own published settings table for a 60 watt CO2 source, and the Library says so. They are a starting point for that wattage — run a Material Test before committing good stock.
  • Fixed: bundled Library content only ever reached brand-new installations. If you already had ALPS, a package added in a later version would never appear. Updates now deliver new bundled packages, and anything you deleted stays deleted.
  • Fixed: the Tools menu described Dithering Comparison as six algorithms. It runs eight.
  • Fixed: PRN Inspector's description said it needed the Black skill level. It needs Expert — so switching to Black left you still unable to open it.
  • A failed settings save is now reported in the log instead of failing silently, so a machine that has quietly stopped saving your preferences can be diagnosed.
0.1.199

ALPS no longer waits forever on a laser that stops answering

  • Every command that talks to the machine \u2014 move, auto-focus, centering point, table height, screen capture \u2014 now gives up after 90 seconds and tells you, instead of waiting indefinitely. Measured on a real machine that accepted the connection and answered other requests while silently ignoring every movement command; the app simply hung. The message points at the likely cause: the laser's own touchscreen sitting in a jog or menu screen.
  • 90 seconds is about eight times the slowest real movement, so a machine that is merely busy is never cut off. It does NOT retry \u2014 re-sending a move because the first reply was slow is how a head ends up somewhere unexpected.
0.1.198

A camera that could not be reached no longer looks like a free camera

  • When ALPS asked a laser who was using its camera and the connection FAILED, it treated that as \u201cnobody is using it\u201d \u2014 so it reported the camera as opened, showed no warning, and never offered the \u201csomeone else is using this camera\u201d choice. A failure now surfaces as a failure.
0.1.197

Bed calibration photos now hold a fixed exposure

  • Calibration photos are taken with the camera's automatic exposure switched off, then switched back on afterwards. Without this the camera settles at one of two brightness levels between shots, and a measured part came out 0.86% larger in the brighter one \u2014 so two calibrations of the same untouched bed could disagree by more than the accuracy being chased. Locked, repeat measurements agree 31 times more closely.
  • Fixed a one-pixel error in how a part's edges are measured. It measured from the middle of the first pixel to the middle of the last, which is one pixel short of the part \u2014 about 0.36% at the bed camera's resolution. Every measurement this app has reported was affected.
0.1.196

Open Job File names itself

  • The Open Job File dialog now has a title. It said only \u201cOpen\u201d, while its partner said \u201cSave Job to File\u201d \u2014 easy to miss on screen, and confusing when two dialogs are open.
0.1.195

Saving and opening files works everywhere it should

  • Exporting a settings backup, exporting or importing a material library, importing an SVG or DXF, saving an Image Prep preset, and Export PDF all write and read where you tell them to. Several of these could not work at all, and one of them could only ever have saved into a hidden application folder.
  • Importing artwork from a USB stick or a network drive works. Reads had been limited to your user folder, so a file on D: was refused with no useful explanation.
  • Every file picker in the wizards — registration, bed calibration, fixtures, nesting, shape match, pass-through, print and cut — reads and writes through the same corrected path.
  • Nothing about where ALPS keeps its own data has changed. The rule is simply that when you pick a file in a dialog, ALPS uses the file you picked.
0.1.194

Jobs can be saved to a file and opened again

  • File ▸ Save Job to File… writes the open job to an .alpsjob file, and File ▸ Open Job File… opens one back up. A job can now be copied to a USB stick, emailed to your dealer, or moved to the PC beside the laser.
  • Everything comes back: the artwork, the processes with their speed and power, the material, and the page size. Previously the only way to read one of these files was My Library, which kept the artwork and dropped the settings.
  • Opening a job made on a different computer picks a machine you actually have, and tells you it did. Machines are identified differently on every install, so a job from elsewhere used to open pointing at nothing — quietly leaving you with the wrong bed size and no camera option while the machine list still looked normal.
  • Pass-through feeder authorisation is never written into a job file. It's tied to the person who acknowledged it in that session, so it stays with the session and has to be given again — it can't ride along in a file to another operator.
  • Text on a path is genuinely available now. The 0.1.193 note describing it was written for work that had not been fully connected — the drawing was there, the menu item that reaches it was not. It is connected in this build.
0.1.193

Text on a path, paragraph text and justify

  • Text can now follow a path. Select a text object and a line or shape, then Object ▸ Put Text on Path, and the letters run along the curve. The link stays live — retype the text or move the path and it re-flows — and Convert to Path freezes it into ordinary geometry when you're happy with it.
  • What you see on the canvas is the same geometry the machine will cut. There's no approximation step: on-path text is drawn from the identical calculation that produces the job, so the preview cannot drift from the burn.
  • Text can be set to Paragraph (the ¶ button), which wraps it to the width of its box instead of running on in one long line. Leave it off and text behaves exactly as it always has, which is what you want for a headline or a badge line.
  • Paragraph text can be justified (the J button), stretching the space between words so every line meets both edges. The last line of a paragraph is left ragged, the way it is in any typesetting program.
  • Line breaks on screen fall at the same words they will when the job runs, because the canvas and the machine share one wrapping calculation rather than each doing their own.
  • Paragraph and justify are switched off for single-line engraving fonts, where they have no meaning — the buttons stay visible and explain why rather than quietly doing nothing.
  • Convert to Path no longer loses your letter spacing, line spacing or condense settings. It was quietly rebuilding text without them, which moved the artwork slightly.
  • Bed calibration now reads more of the plate from the same photograph. It looks at the picture a second and third time with the contrast adjusted, which recovers marks that were there all along but too faint to read — about 7% more reference points for the fit, with no change at the machine.
0.1.192

Letter spacing for text

  • Text now has a Tracking control, next to the font and alignment buttons. It sets the space between letters, in the same thousandths-of-an-em units Illustrator and Corel use, so a number you already know carries straight over. Because it is measured in ems rather than inches, the spacing you choose survives resizing the text.
  • Tracking works on stroke (single-line) engraving fonts as well as normal outline fonts, and what you see on the canvas is what burns — the preview and the machine are driven by the same calculation rather than two that have to be kept in step.
  • Multi-line text can now use a custom line height as well.
0.1.191

A caliper test plate — the one measurement that can tell whether the machine or the software has the scale slightly off

  • Everything ALPS knows about your bed is measured against marks your own laser engraved. That means a small scale error — the head moving a fraction short of what it is told, or ALPS's pixel scale being a fraction off — is invisible to every camera check, because the reference carries the same error.
  • New: a caliper test plate. It engraves pairs of narrow bars at 10, 5 and 2 inches apart — sized to a 12in caliper, because a test is only as long as the tool that reads it. You measure across each pair with calipers, outer edge to outer edge, and that number is the first one in the whole chain that does not come from the machine itself.
  • Three separations rather than one, deliberately: with a single pair you cannot tell a scale error (which grows with distance) from the width of the cut itself (which does not). Three lets them be separated.
  • Measure outer edge to outer edge — the jaws sit naturally on the outside faces, and an inside measurement subtracts the cut width instead of adding it.
  • The mark-test plate now burns four target shapes rather than three: the existing checker, cross and notched designs plus a new circle void. A circle's centre is worked out from its whole edge, so the width of the cut averages out instead of landing on the exact point being measured — which is the weakness of every cornered target.
0.1.190

Placement accuracy is now measured on a straightened picture — the old numbers were about 3× too harsh at the bed edges

  • ⭐ Most of what ALPS reported as bad placement near the bed edges was ALPS reading the marks badly, not your machine putting them in the wrong place. Measured on a real Ascent: the same 576 marks read 113 thou at the edges from the raw camera picture and 33 thou from a straightened one. Same marks, same job, same day — the only thing that changed was the picture.
  • The bed camera is a fisheye, so it squashes the edges of the bed. A mark out there lands on far fewer pixels and its surroundings are skewed, and the routine that pinpoints marks assumes neither. ALPS now straightens the picture using its own calibration before measuring.
  • This is not "a bigger picture is better". Straightening to exactly the same number of pixels gives almost all of the improvement, which is how we know it is the shape of the picture and not the size.
  • What this means in practice: your accuracy figures across the bed are now far more even, and much closer to the truth. If you measured before, the corners will look dramatically better. Nothing about the machine changed.
  • It uses ALPS's own calibration, not the laser manufacturer's — the same principle as the rest of the camera work here.
  • ⚠ Still honest about the limit: our camera picture is 1152 pixels across your bed where the Epilog software gets 1920, and straightening cannot invent detail that was never captured. That gap is a camera-resolution difference, not a correction difference.
0.1.189

ALPS now says when it couldn't check for a shared calibration, instead of saying there isn't one

  • ⛔ If the shared folder can't be reached — share offline, VPN down, path changed — ALPS used to report exactly the same thing as "nobody has published a calibration for this machine". Those are different facts, and the reasonable response to the second one is to run a plate. That's about 30 minutes you may not have needed to spend.
  • It now tells you it could not look, and says the folder being unreachable is not the same as there being nothing there. It includes the actual reason from Windows, so "the network path was not found" is something you can act on.
  • Nothing is blocked by this. Calibrating on this PC is still perfectly valid and might be what you want anyway — the notice just stops you doing it by accident.
  • If you have not set up a shared folder at all, you will see nothing. That is not an error and never was.
  • The 3D Engraving tool tells you, after building a job, that ALPS will not focus the machine for you — every pass of a relief is cut against the one focus you set. It also now shows the focus offset the settings actually carry, which was missing from "Show the numbers".
0.1.188

Placement accuracy measured on a real machine — and ALPS no longer tells you to re-burn a plate that never moved

  • ⛔ IMPORTANT FIX. ALPS could tell you "the plate appears to have MOVED between passes — re-run both passes on a fresh plate" about a plate that had not moved, throw the measurement away, and cost you a 17-minute burn plus your reference plate. Measured on a real Ascent with the plate untouched on the bed: the old test said it had moved.
  • The reason is the same one behind the rest of this release: that test compared two averages, and a handful of far-out readings makes an average meaningless. It now asks whether there is a real shift AND whether that shift actually explains most of the miss. On the real machine: a 48 thou shift explaining none of it — so, not moved.
  • Your machine's placement was measured end to end for the first time. The typical target lands 34 thou from where it was told, and the middle of the bed does far better than that — 11 to 18 thou. Two opposite corners are much worse, around 147.
  • That spread is why accuracy is now reported by area of the bed rather than as one figure. A single number described neither the middle nor the corners.
  • ⚠ One honest limit: this measurement reads every position through the camera, so it is the laser's placement error and the camera calibration's error added together, and it cannot tell them apart. The corner figure is likely mostly calibration. The good middle figure is solid, because a small total means both parts are small.
  • The 3D Engraving tool now tells you what ALPS does not do: it will not focus the machine for you. Every pass of a relief is cut against one focal plane, so the focus you set is the one it uses — and on brass we measured a 256-level job come out shallower than a 39-level one at the same power, purely because the floor dropped out of focus. If a carve is too shallow, focus and power are the levers, not more levels.
  • "Show the numbers" in the 3D tool now includes the focus offset the job actually carries, which it had been leaving out.
0.1.187

Placement accuracy reports the typical target — and the camera stops asking you to take over from nobody

  • The headline number after pass 2 is now the TYPICAL target (the middle one of the set), not the average. On a real plate the average read 89 thou while the worst single target was 1194 — thirteen times higher. A handful of far-out targets were dragging an average that described none of the other 570, and the panel then told you your machine was placing badly when we had not established that at all.
  • Why the two numbers differ so much matters: a machine that places badly places badly everywhere, and a lens or scale problem grows smoothly toward the bed edges — both of those make the worst about DOUBLE the average, not thirteen times. So a big gap between them means a few bad readings, not a bad machine.
  • New: "Where the miss comes from". It separates the miss into a plate shift, a plate rotation, a scale error, and what is left over. Only the leftover is your machine. A plate nudged by a third of a degree is invisible to the eye and reads as about 63 thou at the corners — that is a plate to re-seat, not a machine to re-calibrate.
  • New: "By area of the bed". A heat grid showing the typical miss in each of nine areas, because placement error depends on where on the bed you are — one number for the whole bed describes neither the middle nor the corners.
  • The "where the miss comes from" breakdown is no longer skewed by a few bad readings. Working out how much of the miss is a shifted or rotated plate uses an average internally, and averages are what this whole change exists to distrust — so it now works that out from the bulk of the targets and ignores the wild ones. Your accuracy figures still count every single target; only the plate-versus-machine split ignores them.
  • ALPS now counts targets that missed by almost exactly one target spacing. That is the signature of the software reading the wrong mark of the nine in a square, rather than the laser placing one wrongly — a measurement fault, and it is now named as one instead of being averaged into your accuracy figure.
  • Nothing is filtered out. The worst target, the average and the 90th percentile are all still shown, because we cannot tell a badly-read target from a badly-placed one and hiding them would report a better machine than was measured.
  • The camera no longer offers to "take over" simply because no picture arrived. A stopped feed and another computer holding the camera looked identical to ALPS, and it assumed the second — sending you to hunt for a machine that was not there. The take-over button now appears only when the laser actually names who has it, and it still says which computer and which program.
  • Measuring the same thing several times in a row no longer reconnects the camera each time. It opens the feed once and takes the pictures it needs from that one connection, which is what was causing the camera to drop in and out during calibration.
  • "How repeatable is this calibration?" now refuses to answer if the video feed is frozen. ALPS deliberately keeps showing the last picture rather than going black when the feed stutters — which means a dead feed looks exactly like a live one. Five copies of one picture would have reported perfect repeatability, so it now tells you the feed is stuck instead.
  • When the camera cannot be reached, ALPS gives up in about six seconds instead of half a minute.
0.1.184

Pass-2 marks now go on the black squares — and 0.1.183's version of this fix was wrong

  • ⚠ CORRECTION TO 0.1.183. That release claimed to fix two-pass calibration on black anodised plates. Its fix was wrong: it stopped pass 1 engraving the reserved squares, which on that material leaves them dark — and since every white square on the board is either a marker or a reserved square, the result was a plate with no checkerboard left. If you burned a board on 0.1.183, discard it. Nobody outside Synergy had that build.
  • The real fix: pass-2 marks now go on the BLACK squares — the ones lasering never touched — and turn white when marked. Which squares are used follows the "light marking" setting, because that is the same question asked from the other end: which squares does the first pass leave bare?
  • This also means you do NOT need to burn a new plate. On an existing black anodised board the black squares were never lasered, so pass 2 can mark straight into them. Run pass 1 on the plate you already have, then pass 2, and you keep the reference plate you have been measuring against.
  • Because nothing needs reserving among the white squares any more, every white square now carries a marker — twice as many as before, which makes the camera solve a little better for free.
  • New: "How repeatable is this calibration?" in the calibration panel. It solves the same bed five times off the live camera and tells you how far apart the answers are IN THOU — not in pixels. Uses the camera only: no laser, no plate, no material, and it does not touch your saved calibration.
  • Why thou and not the pixel figure ALPS shows after a solve: that pixel number says how well the model fits the markers it was given. Two solves can both look equally good by that measure and still disagree about where a point on the bed actually is — and that disagreement is what puts a part in the wrong place.
0.1.183

Calibration on black anodised plates: pass 1 no longer burns away the squares pass 2 needs

  • ⚠ IMPORTANT IF YOU CALIBRATE ON BLACK ANODISED PLATE. Bed calibration is a two-pass job: pass 1 engraves the board, pass 2 burns fresh targets into squares deliberately left bare and measures where the laser actually put them. On material where lasering turns the surface WHITE, pass 1 was filling in every one of those reserved squares. Pass 2 then had nowhere to mark.
  • It never showed an error. The targets went onto already-white metal, had no contrast to measure, and pass 2 still produced an average — a confident-looking machine accuracy figure measured off nothing. Any pass-2 number you have from a black anodised plate should be treated as meaningless.
  • A plate already burned this way cannot be repaired: its reserved squares are white. Burn a fresh board with this version before running pass 2. Plates on material where lasering marks DARK were never affected.
  • Found by an operator looking at the plate and refusing to fire, not by the software — which had no way to detect it.
  • "Compare with Epilog's dewarp" works again. It needs the bed camera twice — once for the live picture and once for Epilog's own corrected tile — and your laser only lets one thing use its camera at a time, so it failed whichever way you set the Cam overlay. It now hands the camera back between the two, and puts your live view back afterwards.
0.1.182

A newer calibration on another computer is now offered, not ignored

  • If another computer has a NEWER calibration for one of your machines, ALPS now says so and lets you choose — showing both dates side by side. Your current one goes into the rollback list first, so putting it back is one click. Previously ALPS only ever filled a gap: if you already had a calibration, however old, there was no way to take a better one.
  • It only speaks up when theirs is genuinely newer. If yours is the same age or newer, or the other computer's calibration carries no date, ALPS stays quiet rather than prompting you to replace good data on a guess.
  • ALPS now saves a machine's serial number whenever it learns it, from any check — not only when you press Test ping. This was making machines invisible to calibration sharing: the Machines screen showed the serial the laser was reporting, so a machine could look correctly set up while ALPS had never stored the one thing that matches a calibration to a machine. Measured on a real second computer: a shared-calibration fetch found 1 of 2 machines before, and both after.
  • If a shared folder or another computer refuses your PIN, ALPS now says so instead of reporting that the other computer has no calibration for your machines — which sent you to check the wrong machine.
0.1.181

Pick up a calibration from another computer, even when ALPS cannot find it by itself

  • A second computer can now inherit a machine's camera calibration instead of spending half an hour on a plate. ALPS normally finds the other computer on its own; if it cannot, Settings ▸ Camera has a new “Get a calibration from another computer” where you type that computer's address. It only ever fills a gap — a calibration you measured here is never replaced.
  • Why the manual option exists, measured on a real office PC: it could open the other computer's calibration in a web browser perfectly well, while ALPS found nothing. Finding computers automatically uses network multicast, which is commonly dropped over Wi-Fi and on machines running a VPN. Fetching works fine on those machines; only the finding fails. Typing the address skips that step.
  • If the two computers have different Share PINs, ALPS now says so. It used to report that the other computer had no calibration for your machines — which sent you to check the wrong machine, because a refused PIN and a genuinely missing calibration looked identical.
  • ALPS now asks a laser for its serial number when it does not have one. Everything about sharing is matched on the serial, and a machine added by typing an IP address had none until somebody happened to press Test ping — so sharing silently did nothing, with no message, on both the sending and receiving side.
  • After a calibration, ALPS asks once whether you want to share it with the other computers on your network, and turns sharing on if you say yes. It does not ask again either way.
  • Every calibration now records where it came from — which PC solved it, when, which plate, how many markers it found, the camera resolution and how well it fitted. Previously only calibrations copied from another computer carried this, and even those lost it when ALPS restarted, so the original that every copy came from was the one you could learn nothing about.
  • The “ALPS Laser” printer now really does default to a 48× 36 inch page. It never did before: the commands it used to set the page size do not exist in Windows, and every call was hidden inside an error guard — so a large page was quietly cropped to Letter at print time with nothing reported. It now uses the printer driver's own ARCH E paper, which cannot be removed by a Windows update.
  • A shared folder that is read-only (a classroom or locked-down share) now says so instead of reporting “[object Object]”.
  • 3D Engraving is now in the editor's tool flyout. Camera Calibration has moved out of it — it is still in the Tools menu and on the Tools screen, where a setup task belongs.
  • The bed-camera view no longer tells you to “connect a camera-equipped laser” when a camera-equipped laser is already connected and simply has not sent a picture yet. It now says it is connecting.
  • In 3D Engraving, the “Make the job” button explains why it is greyed out — and tells you whether you need to add a picture or set up a fiber galvo, which need different answers.
0.1.180

The carriage camera can read calibration markers again

  • On the Fusion Ascent, the carriage (head-mounted) camera could not read a single calibration marker, while the overhead camera read 29 of them off the same plate. It can now.
  • The cause turned out to be lighting rather than the lens: across a single marker, the dark squares on one side were brighter than the dark squares on the other, so no single brightness cut could read the whole code. The reader was getting half a marker and discarding it. ALPS now evens out the lighting and tries again whenever a camera finds no markers at all.
  • This only happens when a camera finds nothing — a view that already works is left alone, because evening out the lighting costs a well-lit camera some of its markers. Nothing changes for the overhead camera.
  • Worth knowing at the machine: if the carriage view struggles, the thing to improve is even lighting on the part at that height, not the camera or its focus. This change lets the software cope with uneven light; it does not make the light even.
0.1.179

Calibration pass 2 no longer reports a fault when a step was skipped

  • If the pass-2 marks have not been engraved on your plate, ALPS now tells you that, instead of measuring the bare plate and reporting an average miss. Measured on a real machine: it read 288 of 288 targets and reported the laser as 119 thou out, on a plate with nothing engraved on it — the marks it was 'reading' were sensor noise. That reads exactly like a machine fault and it isn't one.
  • If you have ever been shown a large pass-2 miss on this machine, run it again after engraving the verify marks before drawing any conclusion from the old number.
  • Camera measurement accuracy, measured against the calibration plate's own geometry with ALPS's own optics: 5 thou average, 13 thou worst. Measuring the same plate through the laser's built-in correction instead gave 38 thou average and 63 worst. ALPS uses its own throughout, and the Compare button will show you the difference on your machine.
0.1.178

The three pass styles are named, and the shared calibration is offered again

  • 3D Engraving runs three kinds of pass — carving, cleaning, and a final smoothing pass — and the machine's screen called all of them "Relief pass". Mid-job you would see "Relief pass 1/2" while a cleaning pair ran, which reads as the job being stuck or having lost count. They are now named: "Clean after 40", "Finish". On a job that runs the better part of an hour, that screen is the only thing telling you the strategy is working.
  • Fixed, and it is the important one: ALPS was not offering you a calibration another computer had done, unless this computer had never been calibrated at all. So a shop where two people calibrate the same laser would silently keep using whichever calibration was here first. Any machine set up before this version should be re-checked — connect to it and ALPS will now offer the newer calibration if one exists.
  • ALPS now refuses to measure through a camera calibration that was made at a different picture size than the camera is currently sending, instead of quietly reporting positions that are inches out. This can happen after an update changes how much of the camera picture the laser sends. It tells you to run pass 1 again, which is all that is needed.
  • The time estimate for a 3D job now shows a range, rather than a single number, when a lot of the job is cleaning and smoothing. Those passes sweep the whole face at a finer line spacing than the carving does, and the estimate does not model them well. Worth knowing: cleaning more often adds real time even though the estimate barely moves.
  • The finish-pass description used to claim it "costs about a minute". Nothing measured that. It now says what was measured — it adds about as much cutting as four more levels.
0.1.177

Bed calibration now uses ALPS's own optics, not the laser's

  • Until now, calibrating the bed camera used a picture the laser had already straightened for us, and ALPS fitted its own maths on top. That is no longer the case: ALPS reads the camera's raw picture and works out the lens correction itself, end to end. Nothing the laser does to correct for lens distortion is used anywhere in a measurement.
  • The practical gain is at the edges of the bed. The machine's own side rails are visible in the raw picture but were cropped out of the laser's straightened one, and they act as a ruler for the parts of the lens the calibration plate never reaches — the corners, which is where measurements have always been least trustworthy.
  • Pass 1 now needs the Cam view switched on, because it reads the live picture. If it cannot find the board it now tells you which of those two things is missing rather than just failing.
  • New button, Compare with Epilog's dewarp: it measures the same plate both ways and tells you how far apart the two answers are, in thou. It saves nothing and changes nothing — it is there for when a number looks wrong and you want to know whether to suspect the camera or the machine.
  • Fixed: the “Flatten the live picture” calibration was being thrown away every time ALPS started. It was saved correctly and then quietly discarded while loading, so the picture would look flat when you set it up and curved again the next morning — which looks like the camera drifting rather than the setting being lost. Straightens saved from now on survive a restart. If you have one that seemed to stop working, run it once more.
  • Being straight about what is not yet proven: pass 2, which measures where the machine actually put its marks, now reads the raw picture too, and that has not been checked against a real engraved plate. If your pass-2 numbers look unlike what you are used to, tell us before trusting them.
0.1.176

Fixed: the app was reporting the wrong version of itself

  • ALPS was telling you it was version 0.1.151 no matter which build you were running — Help, the Home screen, and the version recorded inside exported settings backups were all stuck twenty-four releases behind. The installer's version was right; the application's own answer was not.
  • The cause: the version lives in three files and only two of them were being updated. The one nobody was updating happens to be the one the app reads to describe itself. All three now match, and a check has been added that fails the build if they ever disagree again.
  • If you exported a settings backup recently, it will say it came from 0.1.151. The backup itself is fine — only the version stamped on it was wrong.
0.1.175

See the 3D job on your part before you cut it

  • 3D Engraving can now show the job on the actual work piece. “Show it on the part” puts the machine's camera on screen with the outline of the carve drawn over it at true size, centred where the laser will actually start — so you can see whether it lands on the coin and fits, before twenty minutes of cutting.
  • If the machine's camera has not been calibrated, ALPS shows the picture but deliberately does NOT draw the outline, because a guessed position looks exactly as convincing as a correct one. Use Trace on the machine instead — it runs the head around the real extent on the real part.
  • The 3D dialog no longer forgets everything. Making a job used to leave “Cancel” as the only way out, and coming back gave you an empty form — the picture, size, detail and options all gone. Your setup is now kept, and after building a job you can open it in Jobs, make another, or go back and change something.
  • The lens is now set on the machine, not guessed from the settings row. A settings row records the lens ITS numbers were tuned on, which is not necessarily what is fitted to your laser — and lens focal length sets the beam's spot size, which decides whether a job marks a solid surface or a row of dots. Set it once under Machines, and ALPS says which lens it used rather than assuming.
0.1.174

3D Engraving: see it first, and a fix that mattered

  • Fixed: 3D Engraving could not build a job at all. The setting sent to the encoder had the wrong shape, so “Make the job” failed. It is corrected, and the whole path — picture in, job saved, still there after a restart — is now checked automatically against the real application before every release.
  • 3D Engraving now shows your picture before you start, with the round-part mask drawn on it. Ticking “It's a round part” leaves everything outside the circle uncarved, and until now you could not see whether that circle landed on your artwork or cropped it — you found out twenty minutes later.
  • A shared calibration now records the size of area it was measured on, and warns you if that does not match your machine. On a fiber galvo this usually means a different LENS was fitted — and a calibration from another lens looks perfectly right while getting every size wrong. It is a warning, not a block: both sizes are shown so you can tell a lens change from a typo.
  • Sharing a calibration from two computers at the same moment can no longer corrupt the file. Each computer now writes its own copy before swapping it in, so the worst case is that one overwrites the other — never a blend of both.
0.1.173

Who has the camera — and a warning before a job marks dots

  • When another computer is using a machine's camera, ALPS now tells you which one and gives you a choice, instead of a single “take over” button. If that computer is sharing its view, you can watch it with one click and nothing on their screen changes.
  • If they are not sharing, ALPS says so and gives the exact path to fix it — on their computer, Settings ▸ Camera ▸ Share Video Feed — so the next person does not have to interrupt anyone either.
  • Taking the camera is still there, and now says what it does before you do it: the other person's picture goes dark immediately, and if they are lining a job up they will lose it. It is never the preselected option.
  • 3D Engraving warns you before you start if the chosen settings would mark a row of dots instead of a solid surface. This happens when the head travels further between laser pulses than the beam is wide — the job runs to completion and the part comes out wrong, which on a coin is twenty minutes. ALPS now checks the speed, the pulse rate and your lens together and says so up front.
  • Under “Show the numbers”, the 3D tool now also shows what the percentages actually mean on your machine — millimetres per second, kilohertz, the pulse length, and how far apart the pulses land compared with the beam width.
0.1.172

3D Engraving, and a trace that follows your artwork

  • New tool — Tools ▸ 3D Engraving. Pick a photo-style depth map or an STL, set the size and how much detail you want, and ALPS builds the whole carve: many shallow passes, deepest first. Proven on the machine — a relief carved into a brass coin.
  • Cleaning is built into the carve, not a separate job you have to remember. Soot from earlier passes absorbs the pulses meant for the metal, so ALPS interleaves cleaning passes between the cutting ones and can finish with a light smoothing pass.
  • You do not need to know what a waveform index is. The tool leads with named starting points for the material; the underlying numbers are still there under “Show the numbers” if you want them.
  • Trace now follows your artwork on fiber galvo machines. Previously the machine traced a fixed box regardless of what you had drawn, which made lining work up on a small part guesswork. It now traces the actual extent of the job.
  • Calibrate once, use everywhere. A machine’s camera calibration can now be shared through your shared folder, and any other PC that connects to that machine offers to use it — “this machine was calibrated on BENCH-PC on 2 Aug”, with one button to accept.
  • Calibrations can be rolled back. ALPS keeps the last four, so a recalibration that turns out worse than the one it replaced is no longer a one-way door.
0.1.171

Overhead camera: the rest of the crop

  • The overhead camera's high-detail path was still being cropped — and cropped unevenly, losing more from the left of the bed than the right. Machines with a single overhead camera now use the whole sensor for both the live view and the high-detail capture.
  • Machines with two overhead cameras are unchanged, because their stitched bed view depends on those crops.
0.1.170

Bed Flatness Map: a readable heat map

  • The height map now fills the bed outline properly at any point spacing — on a coarse scan the squares used to float in white space and made a real scan look like a handful of stray dots.
  • Verified end to end on a machine: a 32-point scan agreed with a separate 136-point scan of the same bed to within a few thou.
0.1.169

Bed camera: the straighten now picks the right board

  • "Flatten the live picture" was identifying which calibration plate is on your bed by a method that misreads the live video feed. On our own machine it picked the wrong layout, then quietly saved a calibration built from it — and the live camera view turned to smeared nonsense.
  • It now identifies the plate by fitting each layout and keeping the one that actually matches. On the same frame that used to produce a 63.6-pixel error, it now produces 0.27.
  • It also refuses to save a bad result instead of storing it. If no plate layout fits, you get told what it found and nothing is changed.
  • The message now names which plate layout it matched, so you can see it chose the one you actually have.
  • Overhead camera: machines with a single overhead camera now stream the full picture instead of a crop, giving about a third more of the bed in view.
0.1.168

Bed Flatness Map — see how flat your bed really is

  • New ◆◆ tool: Bed Flatness Map. ALPS autofocuses a grid of points across the bed and draws a height map of what it found. No laser fires — it only moves the head and reads the machine's own focus value.
  • It answers the question that actually matters: how much of the unevenness the corner levelling screws can take out, and how much is shape they cannot. On our shop machine, 34 thou of variation was only 22% levellable — worth knowing before spending an hour on the corners.
  • You tell it whether the bed is bare or has a plate or sheet on it, and the result is worded accordingly — the probe touches whatever is lying there, so a plate's own shape is part of what you measure.
  • Points are automatically kept 3/4" clear of the rulers, and you can give the size of the sheet you're measuring so no point lands off the edge of it.
  • Export the raw points as CSV.
  • Bed Camera Calibration: the "Flatten the live picture" step no longer requires burning a calibration plate first — it never needed the laser.
0.1.167

Text preview now hugs the box like it engraves (no sideways jump on convert)

  • Fixed: text no longer appears to shift left in X when you convert it to a path (or send it). The live on-screen text now hugs the box edge exactly where it will engrave — the small gap it used to draw before the first letter (the font's side-bearing) was never going to be there in the burn. Vertical placement already worked this way; X now matches. Applied everywhere text is drawn: the editor, object previews, the tag-batch preview, and the simulator.
0.1.166

Sidebar polish

  • Shortened the sidebar collapse-arrow tooltip so it no longer sprawls across the toolbar — now just "Collapse to icons" / "Expand sidebar".
0.1.165

Edit each colour's settings right where you click it

  • Click a colour in the Processes list — or click its artwork on the canvas — and that colour's Speed, Power, Frequency and the rest now open INLINE, right under the row. No more scrolling up to pick a colour and back down to a separate panel to tune it; work straight down the list, colour by colour (the way LightBurn and CorelDRAW do it).
  • The 'Properties' panel now holds just the selected object's appearance and shape — its speed/power moved up onto the colour rows.
  • Job Editor tidy-up: the sidebar's collapse arrow now shares Home's line instead of taking a row of its own, and the 'Hide panels' button moved to the left so it no longer sits on top of the rotary button.
0.1.164

Material test — now speed, power, frequency & Z-offset

  • The Material Test grid can vary any TWO of speed, power, frequency, or Z-offset — pick what each axis sweeps, and the other two hold at a constant value you set. Frequency covers fibre marking and CO2 cutting; Z-offset is the focus offset (and can be negative). Engrave or Cut mode as before; each cell is still its own process at that exact setting combination.
0.1.163

Material test grid (speed × power)

  • New Tools ▸ Material Test: burn a grid of squares to dial in a new material. Give it a list of speeds (rows) and powers (columns) and it lays out one square per setting — each its own process at that exact speed and power — with row/column labels. Engrave mode fills each square (find the right darkness/depth); Cut mode outlines them (find what cuts through). Run it once and read the best cell off the plate.
0.1.162

Join Paths — weld open contours + close loops

  • New Object ▸ Join Paths: select two or more open paths whose ends meet and it welds the touching endpoints into continuous paths, closing loops into cuttable shapes. It's the fix for a DXF/SVG that imports as a pile of loose line segments — select them and join into one clean outline. One undo; tells you how many closed shapes it made.
0.1.161

Radial (circular) array

  • The Array tool now has a Radial mode alongside the grid: set the number of copies, a radius, a start angle and a sweep, and it arranges the selection around a circle. "Rotate copies" turns each one to face around the ring (great for clock faces, rosettes, tumbler wraps). The original stays put; it's one undo.
0.1.160

Smarter process Merge — with options and a type-change warning

  • The Processes list's Merge button is now a split button: one click still merges the selected process into its nearest colour, and the ▾ gives options — merge within the same type, merge close colours, or "Merge options…" for the full dialog.
  • The Merge dialog has three modes: By type (collapse everything that already runs the same way), By colour (tick which to fold + pick the winner), and Close colours (a similarity slider that groups the near-duplicate swatches an imported PDF/SVG leaves behind).
  • It now warns before a merge would change a process TYPE — a score quietly becoming a cut — which the old nearest-colour merge did silently.
0.1.159

Dashed lines that actually perforate

  • New line-style control next to the outline Weight (on both the tool bar and the Appearance panel): Solid, Dash, Dot, Dash-dot, or a custom dash length + gap. It's not just visual — a dashed cut or score PERFORATES: the laser cuts the dashes, so you get real perf lines for folding, tearing or tabs, just like Corel.
  • The canvas shows the dashes at any zoom, so what you see is what the laser cuts. Kerf compensation still applies to the dashes; tabs/lead-ins/overcut are left off a dashed cut (a perforation is already a run of short cuts).
0.1.158

Stroke weight on the tool bar, cutline-by-default, and cleaner colour names

  • Stroke thickness is now right on the line/rectangle/ellipse tool bar (the "Weight" control) — the same Corel-style picker (None / Cutline / presets / Custom) that's in the Appearance panel, now where you draw. Select a shape and set its outline weight without opening the side panel.
  • Drawn vector geometry now defaults to a cutline — lines, rectangles, ellipses, polygons and pen paths come in as a red hairline that routes to a CUT process, matching a cut-first workflow.
  • Colours picked from the right-edge palette strip now read by their name (Orange, Azure, Violet…) in the Processes list instead of "(custom · #hex)". The strip and the colour-namer now share one palette, so a picked Orange is just "Orange" — the "(custom)" tag is reserved for genuinely off-palette imported colours.
0.1.157

Tidier Job Editor: a Tools flyout and collapsible side panels

  • The left toolbar was getting crowded — the maker/production tools (Camera Calibration, Badge Maker, Template Maker, QR / barcode, Image Prep, Image Trace, Nesting, Stamp, Print & Cut) now live in one "Tools" flyout (the wrench icon). The rail is back to the drawing tools plus that flyout.
  • Collapsible side panels: a chevron on the left navigation sidebar rolls it down to icons only, and a › button on the right panel column tucks it away to give the canvas more room (click the tab to bring it back). Your choices stick as you move around.
  • The per-section headers (Processes / Properties) still collapse individually too.
0.1.156

Maker tools on the Job Editor's left toolbar

  • Camera Calibration, Badge Maker, and Template Maker now sit on the left tool rail in the Job Editor — right alongside Tag Builder (QR / barcode), Stamp, Nesting, and Print & Cut — so you can reach them without opening a menu or leaving your job. Same tools as the Tools menu, one click away where you're already working.
  • They follow your skill level: Camera Calibration and Badge Maker show from Green up; Template Maker (variable data) appears at Blue.
0.1.155

One-touch bed camera calibration for Green and Blue skill levels

  • At the Green and Blue skill levels, Bed Camera Calibration is now a single plain-language flow instead of the expert two-pass procedure. ALPS prints the test plate, and after you run it, it lines up the camera by itself, then a second quick print checks the accuracy — no ChArUco/pass-1/pass-2 jargon, no step list to work through.
  • If camera job-done detection is on, ALPS notices when each print finishes and moves ahead on its own; otherwise there's a clear "I ran it" button. Blue also shows the measured accuracy and a re-run button.
  • The full expert walkthrough is unchanged at the Black skill level.
0.1.154

Collapsible editor panels + a Tools menu

  • The right-side editor panels now roll up: click a section header (Processes, Properties) to collapse it to just its title, click again to expand — so you can clear room for the ones you're using. Your choices stick as you move around the app.
  • New Tools menu in the menu bar puts the makers one click away without leaving your job: Camera Calibration, Template Maker, Badge Maker, and QR / Barcode — plus "All Tools…" for the full tools screen.
0.1.153

Bed Camera Calibration walkthrough is clearer end to end

  • Each engrave step now spells out the hop that used to trip people up: ① send the plate and run it at the machine, ② come back and capture. There's a Send to Laser button right in the calibration panel now, so you don't have to hunt for it up in the toolbar.
  • The "Already calibrated" card shows your real measured accuracy from pass 2 (e.g. "28.0 thou") instead of the internal fit number, which read misleadingly tiny. If you haven't run pass 2 yet, it says so. It also tells you plainly: you only need to redo this if the overlay looks wrong or you moved the camera.
  • New line explains that the live camera view is naturally curved (that's the wide lens, not a fault) — your measurements are accurate regardless, and "Straighten" flattens the picture too.
  • Already have a calibration plate engraved? A note on the Plate step now tells you that you don't have to re-burn it — ALPS auto-detects a plate that's already on the bed.
  • Tidied the dense help text: the "don't move the plate" and per-target-noise caveats are now one tap away instead of filling the column, and the redundant confirmation on the Machine step is gone.
0.1.152

Bed-camera overlay now undistorts the live picture with a real camera calibration

  • The bed-camera "Straighten live feed" now fits a full camera calibration (a proper lens model) from the calibration board's markers, replacing the earlier approximate flatten. The live overhead picture comes out genuinely flat — straight rows, square corners, across the whole bed — so lining artwork up by eye is accurate everywhere, not just in the middle. It's ALPS's own calibration, computed on your machine (independent of the laser's built-in one). Turn Cam on, get the plate filling the view, and click Straighten.
  • Works from your existing engraved calibration board — no special mat needed. Still visual-only for the overlay; your measured pass-2 accuracy number is untouched.
0.1.151

Confirmation prompts actually ask again before destructive actions

  • Fixed a serious issue where confirmation prompts were being skipped: "Delete jobs", "Restore backup" (which replaces everything), and "Remove calibration" were going ahead without the confirmation dialog actually stopping to ask you. They now properly wait for your yes/no before doing anything.
  • Added a "Development debugging" switch in Settings for troubleshooting (off by default) — it records extra detail, like why a camera-detected "job complete" fired.
0.1.150

Experimental: straighten the live bed-camera picture, plus a verify-plan fix

  • New experimental "Straighten live feed" button in Bed Calibration (pass 1 step). The live camera picture is fisheye — it bows at the edges — and the normal calibration keeps your placement numbers accurate but doesn't un-bow the picture. This fits a lens-flatten on the live feed so the overlay looks straight, making it far easier to line artwork up by eye. It's visual only: your measured calibration and accuracy are untouched, and there's a Remove button to go back. Turn Cam on and get the plate in view, then click it. (This is new and wants your eyes — tell us how straight it gets.)
  • The straighten warp is faded out beyond the edge of the calibration plate, so it can't distort areas of the bed the plate never covered — it falls back to the plain picture out there.
  • Fixed: pass 2's verify marks are now laid out for the same board pass 1 actually detected, instead of always the default dense board. On a smaller plate that means far more of the marks land on real spots and get read, so the placement measurement is based on more data.
0.1.149

Bed calibration capture no longer fails when the live camera is on

  • Capturing during calibration now works even while the live Cam overlay is showing. Your laser only allows one camera connection at a time, so the live overlay was holding it and the capture got refused ("…:9091 refused"). Capture now briefly frees the camera for the moment it needs, then the overlay comes back on its own — you no longer have to turn Cam off first.
  • This was found live with Jon on 0.1.148, which is also where the clearer error text pointed straight at the cause.
0.1.148

Bed calibration: closes with your job, clearer errors, and an easy-to-find Remove

  • The Bed Camera Calibration panel now closes when you start a new job or open a different one — it no longer stays stuck open on the left of unrelated jobs (which was also pushing the Snap/Align toolbar out of place). It still stays put while you step away to Machines or Materials mid-calibration, so you don't lose your progress.
  • Calibration errors now show the actual reason instead of an unhelpful "[object Object]". For example, if the laser's camera service isn't answering you'll now see exactly that ("…:9091 refused") — usually a sign the laser needs a power-cycle — instead of a meaningless message.
  • Added a clear "Remove this calibration" button to the first (Machine) step, so you can wipe a bad calibration and start clean without hunting for it. It shows what's currently stored (date and accuracy) so you can judge whether to keep it.
  • Pass 2 no longer shows a green checkmark for an impossible result. If the measured miss is far too large to be real (e.g. many inches), the step is marked not-done and says the measurement is invalid, instead of ticking it as if it succeeded — that almost always means pass 1 didn't solve well or the camera wasn't reachable.
  • Board recognition is more trustworthy. When the plate isn't perfectly readable, ALPS now chooses the board layout that best matches what the camera actually sees (by proportion of markers read), instead of occasionally favouring a denser layout that isn't on the bed — which could quietly produce a bad calibration.
  • ALPS now opens to a fresh job when you restart, instead of reopening a calibration plate you'd been working on. Your normal jobs still reopen as before.
0.1.147

A "Shared view" tag shows when your camera picture is coming from another computer

  • When you're watching another ALPS computer's bed camera over the shop network (instead of your own machine's), a small "Shared view" tag now appears next to the Cam control. It's the flip side of the sharing dot added last update: one computer sees the dot (it's sharing), the others see the tag (they're watching a shared picture).
  • This means you always know whether the live bed image you're lining artwork up on is from the machine in front of you or from a teammate's screen. Hover the tag to see which computer it's coming from. It only shows while a shared feed is actually on screen.
0.1.146

A tiny indicator shows when you're sharing your camera to the shop

  • When this PC is re-publishing its bed camera to the shop (Share Video Feed), a small dot now appears next to the Cam control so you can see at a glance that it's live — no more wondering, or having to open Settings. Hover it for who's watching.
  • The dot is green when it's sharing and pictures are actually flowing (or no one's watching yet), and amber if viewers are connected but nothing is going out — so it tells you not just that sharing is on, but that it's actually working. Deliberately kept to a single small dot to stay out of your way.
0.1.145

Calibration auto-detects whichever board is on the bed

  • Bed calibration now figures out which calibration board is actually on the bed and reads it correctly — whether it's an older plate or a fresh dense one. It tries the known board layouts and uses the one whose markers actually match, so a plate you already have will calibrate properly instead of being misread against the wrong template (which was a hidden cause of bad calibrations). You can now check an existing plate before deciding to re-burn.
  • A fresh burn still uses the dense 16×8 board; this just means you're no longer forced to re-burn to calibrate.
0.1.144

Fusion Ascent machines are now in the model list

  • Added the Fusion Ascent series (12, 24 and 36) to the machine picker, with the correct work-area sizes and options from Epilog's spec sheet. Previously there was no Ascent option, so an Ascent had to be added under the wrong model name — which can quietly affect machine-specific behaviour. Pick the real model now and the bed size and options fill in correctly.
  • The Ascent 12 is a 24×12 bed with one overhead camera; the 24 and 36 have larger beds and two overhead cameras. ALPS still detects the actual camera count from the machine, so calibration adapts either way.
0.1.143

Bed calibration now reads a flat, high-resolution image — a big accuracy jump

  • Bed calibration now captures the DEWARPED full-bed image from the camera instead of the raw wide-angle stream. The raw image is a strong fisheye that our correction could fit at the board corners but not between them — which is why placement could be off by a third of an inch even when the calibration 'looked' solved. The flat image removes that: in testing the same board went from ~350 thou of predicted error to about 20.
  • The calibration board is now denser (105 points instead of 21), which the flat high-res image can resolve. More points across the whole bed pin the correction down so it holds up everywhere, not just where the markers happen to sit.
  • The board that gets burned and the board the software looks for are now guaranteed to be the same one — a mismatch between them was a hidden cause of bad calibrations when an older plate was reused.
  • First cut of this change — if your calibration behaves unexpectedly, re-burn a fresh board from the calibration screen so the plate matches.
0.1.142

Calibration board sized to the frame your camera actually sends

  • The calibration board now uses 40 corner points on a 24x12 bed instead of 21, at the same 17-minute burn. More points is what a strongly curved lens needs: the correction that models barrel distortion is only chosen when the measurements prove it is needed, and too few points cannot prove it — so the curve was being left uncorrected.
  • The board's square size is worked out from the frame size your camera actually delivers, which turns out to be smaller than assumed. Sized against a guess, the squares came out small enough that the markers would have been hard to read.
  • FIXED: pass 2 could report a hopelessly bad measurement and tell you the machine was 'placing well'. A third of an inch of average miss is not placement error, it is a broken measurement — and the reassuring wording stopped you investigating. It now says so plainly and names the likely causes.
0.1.140

Calibration reads plates engraved on anodised aluminium — including ones you already burned

  • FIXED: bed calibration could never read a plate engraved on anodised aluminium, which is what these plates are normally made from. Black anodising burns to WHITE, so the engraved plate is the photographic negative of the artwork and the identity markers end up inverted — and an inverted marker cannot be decoded at any resolution or contrast. Pass 1 reported 'no board markers found' on plates that looked perfect.
  • ALPS now tries the captured frame both ways round automatically. You do not need to know which way your material marks, and — importantly — a plate you have ALREADY engraved will now read without burning another one.
  • It hid because a checkerboard looks identical inverted. Swap black and white on a chessboard and you still have a chessboard, so the bulk of the plate looked right and only the markers, the one part that cares, were broken.
  • The Plate step also gains a 'Material engraves lighter than its surface' option (on by default) so newly generated plates come out looking the right way round to the eye as well.
0.1.139

Calibration plates work on anodised aluminium

  • FIXED: the calibration plate could never be read on anodised aluminium — which is what calibration plates are normally made from. Black anodising burns to white, so every mark ALPS sent came out the opposite colour, and the identity markers ended up as photographic negatives of themselves. An inverted marker cannot be decoded at any resolution or contrast, so pass 1 always reported 'no board markers found' on a plate that looked perfect.
  • It hid because a checkerboard looks exactly the same inverted — swap black and white on a chessboard and you still have a chessboard. Only the markers are sensitive to which way round it is, so the plate looked right and quietly wasn't.
  • The Plate step now has a 'Material engraves lighter than its surface' option, ON by default because anodised aluminium is the normal case. Turn it off only for material that marks darker than its surface.
0.1.138

Bed camera calibration actually works on a single-camera machine

  • FIXED, and this was the big one: on a machine with ONE overhead camera — the Fusion Ascent 12 — ALPS was running the Fusion Pro 48's two-camera bed stitcher over that single camera, projecting it onto a bed hardcoded to 48x36 inches whatever machine you actually had, and then shrinking the result to 480 pixels before anything looked at it. The camera view came out curved and folded, and the calibration could not find a single marker on a perfectly good engraved plate. A single overhead camera now passes straight through at full resolution, exactly like the carriage and galvo cameras always have.
  • Machines with two overhead cameras still stitch, but now against your real bed size instead of a fixed 48x36.
  • The calibration capture now runs at full camera resolution. The 480-pixel limit is right for live video and wrong for a one-off capture that has to read small printed markers.
  • The status message moved to the TOP of the calibration panel. It used to sit at the bottom, below everything, so when you pressed Capture and it told you what went wrong, the explanation was off the bottom of your screen and it looked like the button had done nothing.
  • A spinner now appears under the capture buttons while they work, so you can tell it is running.
  • The calibration steps now move you forward: picking a machine offers Continue, the Plate step loads the board onto the canvas, and a successful pass 1 takes you to pass 2 rather than leaving you on a finished step.
  • Plate time estimate corrected against a real run — a 24x12 board took 17 minutes on an Ascent 12 against a predicted 27. The old figure was extrapolated from a different machine at different settings.
0.1.137

Taking over the camera works on the first click

  • FIXED: taking the camera from someone else often needed two clicks. The first would say 'Taking over…', give up after 8 seconds and hand you the button back — even though it had actually worked. Two things made 8 seconds too short: the machine sometimes just takes longer, and if the other computer is running an older ALPS its watchdog grabs the camera back after about 5 seconds, so a request could be won and immediately lost. ALPS now asks a second time at 6 seconds and waits 20 before giving up.
  • Bed Camera Calibration now shows you what is actually stored — the date it was solved, which correction model it used, how accurate it was in thousandths, and the frame size it came from. Before, it could only tell you a calibration existed, which is no help at all when you are trying to work out whether to trust it.
  • NEW: a Remove this calibration button. There was previously no way to get rid of one. If a machine ends up with a calibration that doesn't belong to its camera the overlay looks wrong, and the only ways out were running the whole calibration again or editing a file by hand.
0.1.136

The material thickness box is gone — it was solving a problem you don't have

  • Removed the Material thickness box added in 0.1.135, and the camera height setting that went with it. They were built on a wrong assumption and would only have wasted your time.
  • The thinking was: the camera looks down, so a thick part shows its top face and should measure bigger than it really is. That's true of a camera over a fixed table. It is not true of your laser. The table moves DOWN for a thick part so the top of the material always ends up the same distance from the lens — so the camera-to-part distance never changes, whatever you put on the bed. And the calibration plate was engraved by the laser, so it was at that same height too. Nothing to correct.
  • No action needed from anyone who installed 0.1.135 — the correction never did anything unless you had entered a camera height, and now the box is simply gone.
  • Fixture Maker gains a 'How to position the part' guide instead, covering the things that genuinely do affect a fixture: lay the part flat, keep it away from the edges of the camera view where the lens correction is weakest, focus to the top of the part, leave a gap between parts, and check the camera is in focus.
  • A captured bed photo now also remembers which machine and which calibration it came from, and whether the lens correction was applied. Fixture Maker tells you before you cut — a corrected and an uncorrected photo look identical, so previously there was no way to know which one you were measuring.
0.1.135

Fixture Maker knows how thick your part is

  • NEW: a Material thickness box in Fixture Maker. This matters more than it sounds. The camera looks DOWN at your part, so it sees the top face — and a thick part's top face looks bigger than its footprint. A quarter-inch part measures about 2% too big, which is 0.067in on a 3.5in edge. That is larger than every other error in the camera put together, and it goes straight into the fixture you cut.
  • It also nudges the part back into the right PLACE, not just the right size. The apparent growth pushes outward from whatever is directly under the camera, so a part sitting near a corner of the bed is both too big and slightly too far out. Correcting only the size would leave it in the wrong place and look completely fine.
  • Before it can correct anything it needs to know how high your camera sits above the bed — there is a new Camera height above bed box on each camera-equipped machine under Machines. Leave it blank and nothing changes: ALPS measures every part as if it were flat, exactly as before. There is deliberately no default, because a wrong height would quietly mis-size every thick part while looking like it was working.
  • To get the number, put a part of known thickness and known size on the bed and compare what ALPS measures against what it really is. A thick block gives a much better answer than a thin shim.
0.1.134

Fixture Maker takes you to your cut path

  • Apply now drops you in the Job Editor with the new cut path selected, instead of leaving you on the Tools screen. Before this, Apply built the fixture correctly and then showed you a screen with nothing on it — so it looked like nothing had happened, and you had to go and find the result yourself.
  • The margin box no longer suggests 0. Measured: the fixture cut line is smoothed slightly, which pulls it in by about eight thousandths of an inch per side — invisible at a normal margin, but it means a fixture cut tight to the part comes out a touch undersize and won't accept the part it was cut for.
  • Verified on a real business card on the galvo: four clicks on the card's four tones took the measured part from 1.29 to 2.03 inches against a true 2.000, staying as ONE part the whole way, and the finished cut path measured 3.644 x 2.179 inches. Worth knowing that a printed card needs about four shift-clicks, not two — judge it by whether the outline sits on the part's edge, not by how many clicks you've made.
0.1.133

Fixture Maker handles printed and labelled parts

  • SHIFT-CLICK to add another area to the part you just clicked. You need this whenever a part isn't one solid colour — a printed card, a labelled tool, anything with a photo or a dark panel on it. ALPS finds a part by growing outwards from your click, and it stops at a colour change, so one click on a two-tone part only gets half of it. Before this, clicking the other half gave you two separate fixtures instead of one pocket.
  • Measured on a real business card: one click captured the white half and stopped 12% short. No sensitivity setting fixed it — turning it up one notch swallowed the whole bed instead. Shift-click is the answer.
  • FIXED: a captured bed photo could be squashed. If ALPS had to fall back to the uncorrected camera frame, it stretched that frame to fill the bed — which on a galvo squashes it by half again on one axis, so a 3.5 x 2 inch card measured 1.5 x 1.4. Anything you then cut from it inherited that. The photo now keeps its true shape.
0.1.132

Share PIN is now 604, and resets on update

  • The PIN that gates the shared video feed is now 604.
  • A PIN you've changed yourself is reset back to the standard one whenever you update ALPS. That's deliberate for now: while the standard PIN is still settling, two computers on different versions can end up disagreeing about it — and when that happens sharing just quietly stops, with nothing on screen to explain it. Resetting on update means every machine lands on the same value. Keeping a custom PIN across updates is a v0.9 job.
  • Both computers need this version for sharing to work between them — the one sharing and the one watching.
0.1.131

Sharing a galvo's calibration between computers

  • A computer that has never been calibrated for a machine can now pick the calibration up from another computer in the shop that has — including GALVO machines, which the first version of this quietly couldn't do. It would have reported 'no calibration for that machine' and looked perfectly healthy doing it.
  • It only ever fills a gap: a calibration you did yourself is never replaced, and a borrowed one records where it came from, so if one turns out to be bad you can tell which machine it spread from.
  • Both computers need this version or newer — the one sharing and the one receiving.
0.1.130

ALPS now tells you WHICH computer has the camera

  • When another machine is using a laser's camera, ALPS used to say only "another app or computer" — true, and no help at all. It now names it: "Camera in use by ALPS on DEMO-SERVER — take over", or "by the Epilog software on DEMO-SERVER". The laser has been telling us the name all along; ALPS was throwing it away.
  • It tells the two apps apart even when both are on the SAME computer, so you know whether to go and close ALPS there or the Epilog software.
  • This turned a real hour-long hunt for a "broken" camera into something you'd read off the screen in one second — the camera was fine, another computer simply had it.
0.1.129

Snapping to guidelines actually works now

  • FIXED: dragging an object only ever snapped its TOP-LEFT CORNER to a guideline. Nothing else — not the bottom, not the sides, not the centre. So sliding text down to sit on a guide, the one point ALPS was watching was a corner you weren't aiming with, and it slid straight past. It now snaps whichever edge or centre is nearest, the way CorelDRAW does. Applies to every object, not just text.
  • Select several objects and they snap as one box, so a group can't be pulled apart by two objects grabbing different guides.
  • FIXED: the selection box around text left a gap before the first letter — blank space that ALPS counted as part of the text (nearly a fifth of an inch on large type). Snapping to that box put the letters short of the line. The box now hugs the actual letters on both axes.
  • Note: text in existing jobs will shift slightly left, by the width of that gap. That's the correction — the box and the letters now agree.
0.1.128

The carriage camera works again

  • FIXED: on some machines — including the Fusion Ascent — the carriage camera would never show a picture. ALPS listed it, counted it on the machine card, and then said "No signal" when you opened it. The overhead camera on the same machine was fine.
  • Cause: lasers report their cameras using more than one identifying number per camera type, and the part of ALPS that starts a camera was only checking for one of them. Your machine's carriage camera used the other. Confirmed fixed against a real Ascent — the carriage feed is now steady.
  • The camera diagnostic tool also used to print the number it EXPECTED rather than the one the machine actually sent, which is why this took a while to find. It now reports what the machine says.
0.1.127

Share the bed camera with your whole shop

  • YOUR LASER ONLY SHOWS ITS CAMERA TO ONE COMPUTER AT A TIME. That limit is inside the machine and no software can change it — so until now, the second person to open the bed camera either got nothing or had to take it off the first person. ALPS can now share the picture instead.
  • Turn on Settings → Camera → "Share video feed on this network" on the PC that's at the machine. Everyone else in the shop who opens that laser's camera in ALPS just gets a picture — no take-over prompt, nobody interrupted. They find it automatically; there's no address to type.
  • It's OFF by default, because switching it on puts video of your workshop onto your network. There's a PIN so other apps can't connect by accident; every ALPS ships with the same one, so it normally just works, and you can change it on the same screen if people outside your shop can reach your network.
  • If the sharing computer is shut down or closed, everyone else quietly goes back to asking the laser directly — exactly as before.
  • A computer that's never been calibrated for that machine now picks the calibration up from whoever is sharing it, so its bed overlay lines up straight away. It never replaces a calibration you did yourself, and it records where a borrowed one came from.
  • FIXED: a bed camera calibration was being lost every time you closed ALPS. It saved correctly, looked right for the rest of the session, and was gone at the next launch — which made it look like the calibration itself was bad. Existing calibrations now survive restarts and travel with the machine.
  • The shared picture is sent smaller than the original so the computer at the machine doesn't slow down — measured, not assumed. Calibration always uses the machine's own full-resolution camera.
0.1.126

ALPS identifies itself to the laser, so it stops confusing itself with the Epilog Suite

  • ALPS NOW TELLS THE LASER WHO IT IS. It used to announce just your computer's name — the same name the Epilog Suite uses. So on a PC running both, when the Suite had the camera, ALPS would ask who had it, hear its own computer's name back, assume the camera was already its, and sit waiting for a picture that never came. It now identifies as <YOUR-PC>-ALPS.
  • The take-over message now says "another app or computer" instead of "another computer", because it may well be the Epilog Suite on the very same machine — the old wording sent people looking around the shop for a computer that wasn't involved.
0.1.125

Two computers no longer fight over the bed camera

  • TWO COPIES OF ALPS NO LONGER FIGHT OVER ONE CAMERA. If you opened the bed camera on a second computer, both machines would flicker in and out and neither would settle — because each one quietly grabbed the camera back every few seconds, thinking it had simply lost signal.
  • ALPS can now tell the difference between 'the laser dropped us' and 'someone took the camera on purpose'. A blip still recovers on its own. A deliberate take-over now makes the other computer stand down and show you the take-over button, instead of silently stealing it back.
  • Found by running two machines side by side against a real laser — the automated tests passed sixty hand-offs in a row and could never have caught this, because a test tool has no reason to grab a camera back.
0.1.124

Text now engraves where it looks, the camera feed stops dropping, and calibration runs without leaving the screen

  • TEXT NOW ENGRAVES WHERE IT LOOKS. Text was being burned roughly 0.14 inches BELOW where it appeared on screen at 144pt — and proportionally at every size, so small text was barely off and large text was visibly wrong. The editor positioned letters using real font measurements while the part that generates the job used a fixed rule-of-thumb instead, and nothing flagged the disagreement. Both now measure the same way. Convert to Path no longer appears to move your artwork either, because that was the same problem showing itself.
  • IF YOU HAVE OLD JOBS with text, they will shift slightly when reopened. That is the correction, not a new fault — the text is now where the box says it is.
  • CAMERA FEED STOPS DROPPING OUT. The live bed camera would die after a while for no visible reason. ALPS was letting its control connection to the laser go quiet, and the laser cleans up idle connections — taking the camera with it. It now keeps that connection alive for as long as the camera is open. Tested with a twenty-minute unbroken stream: 4,800 frames, worst hitch just over half a second.
  • TAKING THE CAMERA FROM ANOTHER COMPUTER now works reliably in both directions, and ALPS survives having it taken away. Verified over dozens of hand-offs between two PCs.
  • The Job Editor's camera panel can now take the feed when another computer is holding it, instead of sitting on "No signal" indefinitely.
  • BED CAMERA CALIBRATION now runs inside the Job Editor instead of a separate screen. The plate stays on the canvas while you read the step describing it, you send it with the normal Send to Laser button, and you can flick the camera on to check your work without closing anything. It used to make you leave and come back four times for one calibration, forgetting which machine you picked each time.
  • It also refuses, up front, to generate a calibration plate that cannot work — if a machine's bed size is wrong you are told before spending half an hour engraving, not after.
  • SELECT SEVERAL TEXT OBJECTS AND CONVERT THEM ALL to paths at once. It previously needed one at a time, and the menu simply vanished on a multiple selection with no explanation.
  • Default canvas colour is now a light grey work surface. Anchor menu lists Center Engraving first. The Direct Select tool icon now matches the Select tool. The simulator's bed rulers are legible rather than a black-and-white blur, and only the two edges a real machine is ruled on.
  • LAYOUT: the "Add job…" menu opened upward into space that was not there when the list was empty, so it appeared as an empty box you could not use.
0.1.123

Cut-out contours fixed, live preview, nesting that no longer freezes, and stock colour swatches

  • CUT-OUT CONTOUR FIXED: the cut line around a background-removed photo could wander into loops and throw huge spikes, sometimes warning that your artwork ran off the bed. It was tracing the outline and then pushing it outward, which makes edges cross each other wherever a gap in the subject is narrower than the margin. It now grows the cut-out itself and traces that, which cannot cross itself.
  • LIVE PREVIEW of the cut line as you drag the margin, so you can see what you will get before you apply it. Checked against the real thing: what you see and what gets cut agree to well under a screen pixel.
  • CUT-OUTS NOW SHRINK TO THE SUBJECT. Removing a background used to leave the object the size of the ORIGINAL photo, so its selection box, snapping and nesting all worked off a boundary that did not touch the artwork. It now trims to the subject.
  • NESTING NO LONGER FREEZES THE WINDOW. Packing runs in the background with a timer showing how long it has been working. Finer rotation steps give a tighter nest and take proportionally longer — now a wait you can watch rather than an app that looks hung.
  • LAYOUT: rotation steps down to 2°, sheet tabs moved below the canvas, and extra sheets are created automatically instead of prompting.
  • STOCK COLOUR SWATCHES when defining a sheet — black-on-white, white-on-black, brass, anodised aluminium, walnut and more — instead of mixing colours by hand. Each sets the surface AND engraved colour together, because that pair IS the material.
  • IMAGE PREP: the before/after wipe in Easy mode showed the two halves at different sizes, so it looked like a corrupted graphic. The margin control now also shows your chosen units instead of always inches.
  • BED CAMERA CALIBRATION (from 0.1.122) gains a mark test — burn a strip of targets at several sizes to see what your camera can actually read on your material before committing to a full plate.
0.1.122

Bed Camera Calibration — line the bed camera up with reality

  • BED CAMERA CALIBRATION (Tools): flatbed machines can now calibrate their bed camera. Until now the camera picture was simply stretched onto the bed rectangle and assumed to be perfectly square and distortion-free — so what you saw on screen could sit noticeably off from where things really were.
  • HOW IT WORKS: ALPS generates a calibration plate, you engrave it on a sheet, and ALPS photographs it and works out exactly how your camera sees the bed — including lens distortion. Accurate to a fraction of a camera pixel.
  • IT IS TWO JOBS, NOT ONE. Run the board job first, LEAVE THE SHEET WHERE IT IS, then run the verify job. The second pass marks the squares the first one left empty and measures where the laser actually put the beam, which the board alone cannot show.
  • PASS 2 NOW MEASURES, not just marks: after the verify job runs, Capture & measure reads all 72 targets back and reports how far the laser actually landed from where it was told. If the plate has been nudged between passes ALPS says so explicitly rather than blaming your machine — nearly every target being off in the same direction is a moved plate, not a placement fault.
  • Individual targets carry about ten thou of measurement noise, so ALPS reports the AVERAGE across many targets as the meaningful figure and labels the worst single target as read quality. Nothing is applied to your jobs — this measures, it does not silently change your output.
  • IMPORTANT: do not move the plate or re-home the table between the two passes. If it shifts, the result will not look wrong — it will look like a machine with a placement problem it does not have.
  • The plate engraves at 300 DPI / speed 100 rather than normal settings. That is deliberate: it is about half an hour instead of an hour and a half, and finer engraving would not improve the calibration because the camera cannot resolve it.
  • SIMULATOR: cuts now read as passing through the material, ISO view has a Reset view button, playback adds 8x and 16x and starts at 4x, the material has raised rulers in inches and centimetres around its edge, and passes now play in the order the machine actually runs them — engrave before cutting.
0.1.121

Camera vision suite — fixtures, shape match, registration, bed calibration, pass-through

  • FIXTURE MAKER (Tools): drop your parts on the bed, capture the camera view, click each part, and ALPS builds a cut path around them with the margin you choose — a jig that holds those parts for the next run. All the parts go in as one action, so a single undo takes it back. Click bare bed by mistake and it refuses rather than cutting a path around your whole sheet.
  • REGISTRATION WIZARD (Tools): three jobs in one screen. Double-sided — mark side one, flip the material, and the camera lands side two measured instead of eyeballed. Second pass — a part that came off to be painted or assembled goes back on and the camera restores its exact position, and it holds a tighter tolerance than a first cut because a bad second pass ruins finished work. Jig — a jig with permanent marks can be dropped anywhere and part positions follow it, so careful placement stops mattering. Before anything runs it tells you what moved, e.g. 0.31in right and 1.2 degrees rotated.
  • SHAPE MATCH (Tools): draw a shape of known proportions and ALPS finds the object with those proportions on a bed photo, then positions your artwork onto it. Batch mode peels off every matching part on the bed, not just the first. When it can't decide it shows the confidence of its best and second-best guess instead of flipping a coin on your material.
  • PASS-THROUGH WIZARD (Tools, Black): cut a piece longer than the bed. It tells you the number of slides and where the seams fall before you place anything, then each panel burns its own reference marks and the camera measures where the material really sits after every slide — so error stops piling up across panels instead of showing by the third one. Parts straddling a seam get flagged, not silently cut in half.
  • BED SELF-CALIBRATION (Tools, Black): burn a grid of marks, photograph or measure them, and see your machine's real accuracy drawn as an arrow at every point. The shape tells the story — corners bowing outward is pincushion, one row out of line is mechanical. You can type measurements in by hand, and for this job your calipers are usually more trustworthy than the camera. It measures only; it never quietly alters a job.
  • NESTING: a Find remnant from marks button sets the material boundary from a marked-up offcut, so nesting packs only the good material. Dragging the boundary by hand still works exactly as before.
  • 3D ENGRAVE: the encoder for Epilog's 3D grayscale mode is in and byte-for-byte identical to the machine's own output on a captured job.
0.1.120

DXF import, crop tool, camera bed-photo, richer cut leads + nesting

  • DXF IMPORT: open CAD files (SolidWorks/Fusion/AutoCAD all export DXF) — lines/arcs/circles/polylines come in as cut paths, and a HATCH-filled region comes in as a solid engrave (its colour becomes the fill, the pattern lines are dropped). Layers/colours split into separate passes; the drawing's units are honoured so it lands at true size.
  • CROP tool: select an image → Crop button (or Object → Crop Image) → drag the crop box → Apply. Corel-style. Pairs with the new Capture bed photo.
  • CAMERA: a Capture button on the live camera overlay drops a still of the bed onto the canvas at true size, so you can trace/position over a real photo of the table.
  • CUT QUALITY: the lead-out is now a draggable, steerable companion to the lead-in (drag either pierce point to set its angle). Engrave now defaults to Bottom-up. And node editing snaps to the grid/guides.
  • NESTING wizard: ask for an exact quantity (not just fill-the-material), pick a finer rotation step, and drag/resize the material boundary to nest onto a remnant or offcut anywhere on the bed.
0.1.119

Camera job-done detection (Beta)

  • NEW (Beta): ALPS can now tell when a job FINISHES by watching the bed camera. Turn on 'Detect job completion by camera' in Settings → Camera, and when you send a job to a camera-equipped machine, ALPS watches the head — when it stops moving and stays still, you get a 'Job complete' popup that also shows your next queued job. It's advisory (it never auto-starts the next job), off by default, and built so a camera glitch can't false-trigger it.
  • Under the hood: decoded Epilog's grayscale raster format (the groundwork for real 3D engraving and Stamp Mode), and added a headless camera frame-grabber used to verify the pipeline against live machines.
0.1.118

Multi-sheet Layout, cleaner toolbar, Image Prep never dead-ends

  • LAYOUT gets SHEETS: tabs above the toolbar, + Add sheet, and when a nest doesn't all fit, a 'Spill to next sheet' button moves the overflow onto the next sheet and nests it. Send THIS Sheet or Send ALL Sheets (in order, one job per sheet, named 'Sheet N of M').
  • Toolbar cleanup: the Plate chip is now MATERIAL, and the old right-panel Material Type section moved into a popover right beside it (same assign/preset/save flows, less scrolling). Import is off the top bar (File menu keeps it), Frame Job is a small picture-frame icon, and a Rotary button below Save Job jumps you to the rotary settings.
  • Image Prep can't dead-end anymore: Apply with nothing on the canvas simply CREATES the cut-out on the bed (blank job if needed) — same for One Click/Easy/Advanced, and deleting the source image mid-edit no longer silently pretends it applied.
  • Under the hood: Epilog's grayscale raster format (mode 7) is decoded and verified — the groundwork for real 3D engraving and Stamp Mode. Stamps need one more capture (text with a bigger shoulder) before the encoder ships.
0.1.117

Letters and traced shapes nest by their REAL outline

  • Converted text, traced art and imported paths were secretly nesting by their bounding box — TrueShape can now see their actual outlines, so letters genuinely interlock and rotate (a sheet of J's packs with pieces at angles instead of rigid rows).
0.1.116

Nesting rotation really rotates, honest overlap flags, one-action Break Apart, cutline auto-red

  • TrueShape rotation now actively competes for the tightest spot instead of only kicking in when a part couldn't fit upright — on an open sheet parts genuinely place rotated (your J test: 23 of 30 pieces rotated).
  • The red overlap warning understands interlocking: a part tucked into another part's whitespace with the gap honoured is no longer flagged — only real collisions (and closer-than-gap) show red. The packer also now guarantees the full Gap distance ink-to-ink (grid rounding could shave a hair off it).
  • Break Apart is one action: select TEXT and hit Ctrl+K — it converts to a path automatically, then splits into letters. And it never fails silently — if it can't split, it tells you why.
  • Picking a Cutline width now swaps the stroke to cut red when it has no colour of its own or matches the fill — so a cutline on a filled shape is visible and carries its own CUT process instead of colliding with the engrave colour.
0.1.115

Break Apart, TrueShape rotation steps, saved jobs in Layout, zoom marquee

  • BREAK APART (Object menu, Ctrl+K): split a converted word — or any compound path — into independent pieces, one per letter. Letters keep their holes (an O stays an O). Pair it with the new SPLIT button on a Layout job card (splits a multi-part job into one item per object) and each letter nests by its own true outline.
  • TrueShape nesting: when Rotate is on you now pick the rotation step — 90° (4 tries, fast) to 15° (24 tries, slowest) — finer steps let single shapes interlock tighter, and the labels tell you the compute cost. The TrueShape tooltip now also explains honestly: single-shape jobs nest by their real outline; multi-part jobs nest as one solid block (so nothing packs into the gaps between their pieces).
  • Layout: "Add job… → Saved job" now lists your saved jobs (newest first) and lays them straight onto the sheet — no more "coming soon".
  • Zoom tool: drag a box to zoom to exactly that region (Corel behaviour); click and Alt-click still step in/out.
  • Transform bar: X/Y/W/H fields are wider and show all three decimals (the spinner was clipping the last digit).
0.1.114

Center Engraving (jog + Set 0), smarter Image Trace, photo cut-out contour, two-tone materials

  • CENTER ENGRAVING: the Anchor dropdown now has Epilog's full Centering Point list — Center-Center, Left/Right-Center, Center-Top/Bottom, the four corners, Page-Center. Pick one, jog the laser head to the target point on your workpiece, press Set 0, and the job runs referenced from that point — the piece's position on the table doesn't matter. A crosshair on the canvas shows exactly where to jog; center jobs are marked with the Job Manager-style * in the Jobs list. Built byte-for-byte to the real Epilog wire format from your captured jobs. (Blue tier.)
  • Image Trace got an AUTO button — it analyses the image and sets threshold, colour count and despeckle for you (tuned for noisy JPEG logos), plus a Reset button, an exact Colours number field, and palette MERGING: click two or more traced tones and combine them into one engrave layer, with live preview and undo.
  • Remove Background can now add a CUT-OUT CONTOUR: a hairline cut path traced around the subject at a margin you choose (0 = tight). Engrave the photo, then cut it out — sticker-style. Works with hand-refined cutouts; interior holes stay uncut so nothing drops out of the artwork.
  • Materials can be TWO-TONE: give a sheet a top colour and an engraved (core) colour — Rowmark black/white, brushed steel, and the simulator + rotary preview show the reveal where you engrave.
  • Paste images straight from a web page (Ctrl+V) — copied bitmaps and SVGs land on the bed as objects. Plus fixes: the Outline width dropdown isn't cut off anymore, and the advanced-section tier markers show their real skill tier instead of always Black.
0.1.113

Node-editing menu, batches show real data, time stamps, colour settings, panel polish

  • Node editing (Direct Select) has a real right-click menu: on a node — Delete, Break path, Smooth, Set as cut start; on a segment — Add node here, To Line, To Curve; on the path — Close, Reverse direction, Simplify (with a node-count readout). CorelDRAW Shape-tool conventions.
  • Batches sent to the editor now show each tag's REAL row data (no more «Name» placeholders on every tag) — a sent page is finished, resolved artwork. Decorative art you draw on the tag (circles, logos, static text) now carries onto every laid-up tag too — in the step-3 preview AND the engraving. And the Simulator now renders tag TEXT alongside the QR.
  • Tag Builder Date element gained TIME: Time (24h), Time (12h) and Date+time presets — stamped at the moment the job is built/sent (shift stamping).
  • Distribute now spreads objects across the SELECTION's extent (Corel behaviour) — works predictably even when a large or invisible object spans the selection, and pressing it twice never drifts.
  • Settings → Colours: pick your own Canvas background (the dark area outside the page) and Page colour — display-only, never changes what engraves. The right panel also got tidier: laser Speed/Power/Frequency now sit on top, Appearance is tighter, and Convert to Path is one row. Picking a Cutline width on a shape now offers 'Convert to path? ◆' for node-level cut control (Black tier).
0.1.112

Tag Builder elements — add QR/Date/Serial blocks, multi-code tags, safer imports — plus a round of editor fixes

  • Tag Builder redesigned around ELEMENTS: a 'Tag Setup' section on top, then an Add bar — [QR/Barcode] [Text] [Date] [Serial] — each tap adds a block to the tag with its own settings card. A tag can now hold MULTIPLE codes (QR + Code 128 together), and Data Matrix joins the symbologies and the batch column types. Static text/logos/shapes are just normal editor work on the tag.
  • Date elements: pick a format — ISO, US, Julian (24205), year-week, month code — or type a custom one, and add day/month offsets for expiry / use-by dates (live preview on the card). Serial elements: type a sample like SN-00042 and ALPS learns the pattern; start/step control, or switch to piece count ('3 of 50'). In a batch these advance per row.
  • Safer batch imports: re-importing/pasting data no longer silently unbinds your tag fields — bindings follow the column NAME, or the column POSITION when names changed; anything genuinely broken shows an amber ⚠ on the card, the pickers, the previews and a footer count (no more quiet placeholder text). Plus a 'First row is headers' toggle so a headerless paste doesn't eat your first row.
  • Your saved tags and strategies load unchanged — old files render exactly as before (verified byte-for-byte), and artwork you drew on a tag with the normal tools now always survives panel edits.
  • Editor fixes from your feedback: Distribute is stable (no more drift on repeated presses, and it handles a frame containing items); the top-row FONT dropdown shows again; Transform X/Y/W/H/∠ arrows apply live; picking a Plate sizes the page to it; Preview data works for Tag Builder jobs (formulas included); My Library gained 'Save Selection to My Library…' (Object menu) and an 'Import file…' button (SVG/PDF/AI/images and .alpsjob); the Home import tile names the real formats.
0.1.111

Batch Data spreadsheet (formulas + column letters), editor fixes, Tag Builder polish

  • Tag Builder Batch Data is now a spreadsheet: column letters (A, B, C…) above every column, and FORMULAS — turn on the 'Formulas' switch, then start a cell with = to reference columns by letter: =A&" - "&C (join), =A+1, =B*2. Fill a formula down the column, a red ⚠ chip flags a bad formula (so a typo never burns a blank tag), and the computed value prints into the tag. With Formulas OFF (the default) every cell is plain text, so a literal "=PART123" prints as-is.
  • Tag Builder sheet preview: zoom (Ctrl+wheel / buttons / Fit) + pan, and a dashed non-marking border around each tag so you can see where tags sit and how the margins + gaps space them. The panel is also tighter — the 'Next: Batch data' button sits inline with Single/Multiple and fields are less spread out.
  • Fixed: the Snap / Align / Distribute dropdowns now open properly (they were being clipped by the toolbar).
  • Fixed: TrueShape 'Nest All' no longer overlaps multi-object jobs (a rectangle+shape job is now packed as one solid unit).
  • Editor: the right-hand panel's font Size now resizes selected text live as you scroll it (like the top toolbar); Align now works on a single object relative to the page; and the Text controls sit to the right of the Transform block when text is selected.
0.1.110

Layout v2 (nesting fixes + rulers/zoom/snap/anchor), align-to-page, smarter selection

  • Layout page v2: fixed TrueShape 'Nest All' overlapping parts (shapes with inset art like QR tags now pack cleanly — straight-rectangle output is unchanged). Added rulers, zoom (Ctrl+wheel / buttons / Fit) and scroll/pan so a big bed is easy to work. A 'Manual Snap' checkbox snaps a part into place as you drag it, holding your gap exactly (no eyeballing). And an 'Optimize' picker packs toward Top-Left / Top-Center / Top-Right / Left / Right / Bottom — or 'To Plate' to nest onto a saved plate (drag the plate anywhere on the bed).
  • Align/Distribute: a single selected object now aligns to the PAGE/bed (center, edges) — pick 'Align to: Selection or Page' in the dropdown. Multiple objects still align/distribute to each other, and the L/E/R/T/C/B shortcuts fire. Distribute shows a 'select 3+' hint instead of a dead button.
  • Object selection now follows the standard: clicking overlapping objects picks the TOP-MOST one and is edge/line aware (not whichever is biggest). Marquee is directional — drag left→right to select only fully-enclosed parts (solid box), right→left to grab anything you touch (dashed box).
  • The Tag Builder sheet preview now shows tags exactly where they land in the Job Editor (top-left of the sheet) — the preview's rulers were out of step with the drawing.
  • The bed-placement 'Align' dropdown is now labelled 'Anchor' (it centers/corners the whole job on the bed) to distinguish it from object align. And the import drop-zone text + icon are bolder for legibility across the app.
0.1.109

Multi-job Layout & Nesting, and multi-page documents

  • NEW Layout page (nav rail, at Blue): gang MULTIPLE different jobs onto one bed and cut them together. From the Job Editor, 'Send to Layout' adds the current job; a jobs rail on the right lets you set a quantity per job and toggle which to include.
  • Nesting: 'Nest All' packs the jobs onto the sheet — Bounding-box or TrueShape (fit by real outline), both available at Blue. Set a Margin (inset from the sheet edge) and a Gap (space between pieces), just like the tag layout. Drag any piece to nudge it, with overlaps flagged in red, an optional rotate-to-fit, and a live utilization %.
  • Output two ways: 'Send Sheet' builds ONE combined .prn that cuts every placed job in a single run; 'Send Job' sends each job individually (quantity honored). Both go through the same safety gates as the editor.
  • Multi-page documents: any job can now hold multiple sheets — use '+ Add sheet' below the canvas to add pages, switch between them with the tabs, and each sheet sends as its own job in order. (Previously only batch jobs could be multi-page.)
0.1.108

Single-line font & weld-for-cut, Define Plate materials, outline widths, galvo hatch types

  • Text for cutting: a new 'Single-Line (Hershey)' engraving font draws each stroke as ONE clean centerline (fast, no double-outlined stems), and a 'Weld for cut' action unions letter outlines into clean cut paths (counters kept as holes) — both in the top toolbar while you're editing text.
  • Define Plate: give a job a Plate — its size, thickness and material — from the Machine · Plate · Simulate bar. The editor bed tints to that material and the Job Simulator renders the engraving in the material's lasered shade. Saved plates live in Library ▸ Sheets and can be reused everywhere.
  • Tool rail: Pen and Line now share one flyout slot to save space, and a new Outline / stroke-width control — None / Cutline / preset widths (in or mm) / Custom — sets the outline on ANY selected object (Cutline routes a hairline to a cut, CorelDRAW-style).
  • Job Editor top bar: the Machine · Plate · Simulate cluster sits on the left; the bed Align dropdown moved to the right and now idles at 'None' so it can't accidentally re-centre your artwork.
  • Galvo: a first-class Hatch Type picker (Sweep, S-Sweep, Cross-hatch 0/90, Cross-hatch 45/135, Multi-angle) makes it clear what fill each object gets — the raw angle/spacing/pass controls are still there to fine-tune.
0.1.107

Dogfood fixes: Tag Builder flow, editor text size & align menus, sharper simulator

  • Tag Builder: clicking Multiple no longer jumps away and loses your tag — a new 'Next: Batch data' button moves you on when you're ready, and every step now has Back/Next (and the 1 · 2 · 3 strip works both ways). Editing one text line no longer shrinks the font on all the others.
  • Tag Builder batch data: each cell now shows its formatted result inline — real QR/barcode thumbnails and formatted dates/serials — and the text-lines section is more compact.
  • Tag Builder: the layup preview now shows each tag exactly where it lands in the Job Editor, and after Send to Job Editor you can re-open the batch to edit your data.
  • Job Editor: the Size (pt) field now actually resizes selected text (not just the drag handles); Snap options now snap; Align and Distribute are dropdown menus showing each action's name, shortcut and icon; and the Text controls sit to the left of the Transform controls.
  • Job Simulator: on a flatbed engrave the real artwork now fills in scanline-by-scanline instead of showing a big blank blue box, with a bounding box (and per-tag boxes on a laid-up sheet) so you can see where the job sits on the bed from the very start — and Flat and Isometric views now show the same thing.
0.1.106

Job Simulator — watch a job run before you cut it; Tag Builder layout refined

  • NEW Job Simulator: click ▶ Simulate in the Job Editor (or View → Simulate Job) to watch the job build itself in the laser's real cut order — engraves fill, cuts draw, in the exact sequence the machine will run. Play/Pause, Speed (0.5×/1×/4×/MAX), a timeline scrubber to jump anywhere, Restart/End, and a laser-head marker.
  • Flat (top-down) and Isometric (3D) views. Material-aware: pick a plate material and the engraving renders in that material's lasered shade; a job with multiple colours shows each pass in its own colour.
  • Simulate on the plate material, or on the Real World — overlay the job on your machine's live bed camera so you can see exactly where it will fire on the physical parts.
  • Big-job ready: a built-in Stress Test + an FPS readout so you can confirm smooth playback on your machine; large jobs are called out, never silently simplified.
  • Tag Builder layout now matches the design: the tag controls sit in a LEFT dock with the Processes panel on the right (colour an element and see its process at once), plus 1 · Tag / 2 · Batch / 3 · Layout steps and tighter spacing.
  • Known limits this version: the preview's run order approximates jobs that use cut tabs, and only the first engrave shows a raster fill in the preview.
0.1.105

Tag Builder — design a tag, feed it a spreadsheet, lay up sheets of tags

  • New Tag Builder: a mode of the Job Editor for QR/barcode tags. Start it from the Home tile or the QR/barcode tool. The tag page is your artboard — add the code, text lines, shapes and logos with the normal tools, and colour each element to give it its own laser process (e.g. QR annealed, name polished, serial deep-engraved).
  • Batch from a spreadsheet: switch to Multiple, type or paste (or import CSV) rows with typed columns — QR, Code 39, Code 128, Text, Date, Serial #, Number. Cells are plain text and render as real codes/dates in the preview and output.
  • Lay up sheets: choose Layup Multiple (a grid of tags per sheet — set rows × columns, margins and gaps) or one job per row. See it live on a ruled sheet preview with page tabs.
  • Two ways out: Send batch to Job Editor opens the whole run as one multi-page job to tweak before sending, or Send batch to laser queues a job per page named JobName-Page1, -Page2, …
  • Save your whole tag as a reusable Tag Strategy, and manage tag strategies, cut/engrave strategies, and reusable Sheets (size / thickness / material) from the new Library tabs.
  • Known limits in this first version: very long batch values aren't auto-shrunk to fit their box yet, and a Tag Strategy saves the layout but not per-element colours (coming next).
0.1.104

PDF export & print, tighter text-to-path, QR polish, drop folder by default

  • File → Export PDF… saves the current job as a true-size vector PDF (great for proofs and paper templates), and File → Print… prints it true-size to a regular printer.
  • Convert to Path on text now gives a selection box that hugs the letters exactly — including rotated text.
  • The QR / barcode generator: every option now has a hover tooltip explaining what it does, and the 'Invert (dark material)' option sits on one line.
  • The ~/Desktop/ALPS Drop folder is now created automatically when ALPS starts (and when the virtual printer installs) — no more digging into Settings to make it appear.
  • The tray button now says 'Open in Job Editor' (was 'Job Manager').
0.1.103

Arial default, position/size bar back, Bed off by default

  • New text now defaults to Arial, which gives cleaner outlines when you convert text to a path for cutting. Geist is still in the font list if you want it.
  • The position & size controls (X / Y / W / H / angle) are back on the Select tool's bar at the Blue skill level — they had been limited to the Black level. Type exact coordinates and dimensions for the selected object again.
  • The honeycomb 'Bed' overlay now starts OFF. Turn it on any time from the Bed chip on the canvas.
0.1.102

Text tool fix, polyline drawing & palette polish

  • Text tool works again: click in the work area and the caret lands so you can type right away. (A last-build change was closing the empty box before you could type — fixed.)
  • New polyline drawing: the Line tool now drops a point on each click and connects them with straight segments — keep clicking to add points, then double-click or click the first point to finish. The Pen tool (Bézier curves) is also back on the toolbar at the Blue skill level.
  • Polygon tool: you now see a live preview of the actual shape as you drag, and its selection box hugs the shape tightly for every side count (triangles and odd-sided shapes no longer float inside a loose box).
  • Colour palette: the 'no colour' swatch is now the standard white-box-with-a-red-diagonal mark instead of an ✕. Hover any swatch to see its name — greys read as their % black (e.g. 'Black 50%') and the colours show their names (Orange, Azure, Teal…).
0.1.98

Common-line cutting phase 2: any angle, kerf-aware, and visible on the canvas

  • Shared edges now merge at ANY angle — hexagon tilings, 45° diamonds, angled nests, and parts whose straight edges arrive subdivided all cut their shared border once. Curved borders still cut normally (each part keeps its own arc).
  • See it before you cut it: with 'Cut shared edges once' on, the canvas highlights every merged border in violet, live as you move parts around.
  • Kerf compensation (Black) now works WITH common-line: your parts' outer edges compensate by half the beam as usual while shared edges stay on the centerline. Pair it with the new 'Gap = kerf' button in the Array dialog — one click sets the array gap to your measured beam width, so the shared line cuts down the middle of the gap and parts come out exact size.
  • Still to come: tabs on shared edges and loose-scrap warnings — keep tabs on the outer boundary if freed parts are a concern.
0.1.97

Common-line cutting: shared edges cut once

  • New cut option (Blue and up): 'Cut shared edges once'. When cut parts touch — like a grid of boxes — the border they share is now cut a single time instead of twice, so jobs run faster and shared edges don't get double-burned. Works with parts drawn touching or arrayed with the grid tool at gap 0.
  • Shared edges cut first and each part's outer edge last, so the sheet stays rigid while the interior lines cut. The job build tells you how many shared edges were merged and how much double-cutting was removed.
  • Straight up-and-down/across shared edges merge in this release; angled or curved shared borders still cut normally (coming later). Parts freed by a shared cut aren't tabbed on that edge yet — keep tabs on the outer boundary if loose parts are a concern.
0.1.96

Reliability fixes: cut geometry, imports, tier gating, saved data

  • Cut quality: tabbed/bridged cuts no longer clip the part's corners, and kerf compensation no longer glitches at a repeated point on a shape.
  • Import: some minified SVGs (from Illustrator/CorelDRAW/SVGO) silently dropped curves or added a stray cut line — the preview showed them but the laser skipped or added them. Fixed both.
  • Expert (◆◆) tier: Network Diagnostics and the PRN Inspector are reachable again, and rotary + feeder controls work at Expert (they'd gone missing when the Expert tier was added above Black).
  • Robustness: a single corrupted settings file no longer boots the app empty (and could then overwrite your good data) — the bad piece is set aside and everything else loads. A job whose machine was renamed/deleted now asks you to re-pick instead of risking a send to the wrong laser. Cleaner error messages throughout (no more "[object Object]").
0.1.95

Automatic laser placement calibration for galvo cameras (Step 3)

  • New 'Step 3 — Laser final calibration' in the galvo camera calibration. After the camera is calibrated, ALPS lases a small grid of marks into the blank space on the same board, the camera measures where each one actually landed, and it computes and saves the correction itself — so where you place a graphic on screen is where it lasers, with no manual trimming. It does a sanity check and won't save a correction from a poor read (it tells you to refocus and read again instead).
  • Under the hood: the placement correction now also applies to raster engraves (not just fills and cuts), and it's guarded against baking a bad measurement. Run it at the machine to dial your G100 in.
0.1.101

CorelDRAW-style colour palette

  • A colour palette now runs down the right edge of the editor. Select an object, then LEFT-click a swatch to fill it and RIGHT-click a swatch to set its outline — the same one-click colouring you know from CorelDRAW. The ✕ at the top clears: left-click removes the fill, right-click removes the outline.
  • Picking a colour also assigns the matching laser process (fill → engrave, outline → cut/score), just like importing artwork by colour. Turn the palette on or off under View → Colour Palette.
  • Text tool: click where you want text and just start typing — the caret lands right there. No more 'Text' placeholder to clear, no double-click, no trip to the entry line. If you click and type nothing, the empty text is discarded.
0.1.100

Recolour anything — including text outlines and converted paths

  • You can now change the fill and outline colour of any object in the Appearance panel — including text turned into a path, welded shapes, polygons, and imported vector art. Before, those showed no colour controls (or the change did nothing), because their colour lives on the inner shapes; the panel now writes there so the change actually takes.
  • Text outlines are visible again: giving a text object an outline colour now shows the outline right on the canvas (and it cuts that outline when you send the job), instead of looking like nothing happened.
0.1.99

Editor polish: Save Strategy dialog + array direction

  • Save Strategy is now a proper ALPS panel instead of the plain browser pop-up. Name it, pick which machine it's for (or leave it as 'Any machine'), and add an optional setup note — jig, focus height, material lot — so the next person who loads it knows how you ran it. The name field is selected and ready to type the moment it opens, Enter saves, and it warns you if that name already exists.
  • Array / step-and-repeat now lets you choose which way the copies grow: right or left, and down or up. The original stays where it is and the grid fills outward in the direction you pick — handy when your artwork is near an edge of the sheet and you need the copies to go the other way.
  • Cut tabs now show their real size on the canvas — each bridge is drawn at its actual width along the cut line, with the measurement right there, so you can see exactly how much material is holding the part instead of guessing from a dot.
  • Fixed a stray grey box that appeared between Redo and Import in the editor toolbar (it was a separator line that had lost its styling), and gave the Stamp tool a proper rubber-stamp icon.
  • New 'Convert to Path' (Black), like Corel's Convert to Curves: turn a rectangle, ellipse, or a welded/combined shape into an editable path, then use Direct Select (F10) to drag its nodes. Right-click a shape or use the Path section in the properties panel. Straight-edged shapes convert exactly; curves become editable point paths.
  • Fixed text converted to a path: letter outlines are now properly closed. Some letters (like a lowercase 't' crossbar) previously came out as open shapes with a missing edge — they now form clean closed loops that both display and cut correctly.
  • 'Frame job' now works on flatbed lasers, not just galvo. Before sending or queueing, turn it on to trace the job outline at zero power so the head shows where the job will land on the material before it runs (it never marks). Choose Hull for one loop around everything or Objects for each shape's outline.
  • Right-click now offers Convert to Path on text too (not just shapes) — quick access to the same font-outline conversion that's in the properties panel.
  • Round rectangle corners by dragging, CorelDRAW-style: pick the Direct Select (node) tool, click a rectangle, and drag one of its corner nodes to set the corner radius live — no need to type a number. All four corners round together.
  • New Polygon tool: choose the number of sides (3 = triangle, 4 = square, 5 = pentagon, 6 = hexagon…) in the tool options, then drag to draw. Hold Shift for a regular polygon. You can change the side count afterward from the Polygon panel, and node-edit it like any path.
0.1.94

Fix the moved editor controls: Transform boxes, the 9-dot origin picker, Apply next to Save

  • Fixed the Transform (X/Y/W/H/angle) boxes on the Align & Distribute bar — they were stretching across the whole bar. They're now compact, and the 9-dot object-origin picker is back in front of X (its styling didn't come along when the controls moved bars in 0.1.93).
  • Apply Strategy now always sits next to Save Strategy at the bottom of the right panel (it's disabled until you've saved a strategy, instead of being hidden).
0.1.93

Corner-accurate galvo placement + editor layout tidy-up

  • Corner-accurate placement. The galvo camera calibration now adds a final 'marker-lock' pass: after fitting position/rotation/stretch/keystone/fisheye, it flexes the overlay to land dead-on every ArUco marker it read — so where you place a graphic on the screen matches where it lasers at the edges and corners, not just the middle. It only kicks in when it reads enough markers and it actually improves the fit.
  • Fixed the top-toolbar X readout not updating after you nudge an object with the arrow keys. The number now tracks the object live, matching the X/Y already shown in the bottom status bar.
  • New View → Scroll Bars option (off by default). Turn it on to pan the artboard with scroll bars along the edge of the canvas.
  • Apply/Save Strategy moved to a fixed spot at the bottom of the right-hand panel, so it stays put instead of crowding the top toolbar.
  • The X / Y / W / H / angle boxes now sit on the Align & Distribute bar, next to Distribute, keeping all the selection-geometry controls together.
0.1.92

Galvo speed + editor polish: skip blank raster lines, Waveform, laser-from-machine

  • Faster galvo engraving. The laser no longer scans blank lines it isn't marking on — big time savings on sparse jobs like text, logos, and the ArUco plate.
  • Waveform now appears on the galvo raster/engrave settings (it was only showing for MOPA flatbeds).
  • The ArUco calibration plate now fits the field and stops the false 'extends beyond the bed' warning (the white marker borders never burn, so they no longer count against the field).
  • The Laser field now reflects your machine: a fiber-only or CO₂-only laser shows just that one; a dual-source machine offers both and defaults to CO₂.
  • Editor tidy-up: removed the redundant 'Place' and 'Nodes — Direct Select' hints, and widened the value boxes so '100%' isn't clipped.
0.1.91

Galvo camera: fisheye/lens flatten + calibration workflow polish

  • Lens-flatten (fisheye) correction. The camera calibration now also solves and removes the camera's barrel/fisheye curvature from the 25 ArUco markers, on top of position/rotation/stretch/perspective — so the feed lines up edge-to-edge, not just in the middle. It only applies when the camera actually has curvature (it won't invent distortion on a flat lens).
  • Auto-detect grabs the camera itself. If another viewer is holding the galvo camera, Auto-detect & solve now takes over the feed and retries automatically — no more detouring to Job Manager to get a picture first.
  • Clearer finish. After Auto-detect solves and saves, the button now reads "Done — calibration saved" instead of a greyed-out "Save (0)" that looked like an unfinished step.
0.1.90

ArUco auto-detect now reads engraved/anodized boards (auto-inverts polarity)

  • Auto-detect & solve now reads a board lased on anodized aluminum. Engraving burns bright metal into a dark surface, so the markers come out light-on-dark — the photo-negative of what the reader expects — which is why it read 0 markers before. It now automatically tries the inverted image (the same way it already auto-handles a mirrored camera), so polarity no longer matters. Once it reads the board it also picks up stretch and perspective/rotation. Note: this corrects position, rotation, stretch and keystone; the camera's lens curvature (fisheye) is a separate correction still coming.
0.1.89

Fix: app wouldn't start (blank white window) + ArUco reader wired properly

  • Fixed the blank-window startup crash from 0.1.87. The way the ArUco vision library was loaded crashed the whole app at launch. It's now loaded in a way that can never take the app down — worst case the ArUco auto-calibration is unavailable, but the app always opens. ArUco marker reading is wired up correctly, so Auto-detect & solve should now read the lased board and calibrate (with the automatic stretch + perspective correction from the previous update).
0.1.88

Galvo camera calibration now corrects STRETCH + perspective (screen = laser)

  • The galvo camera calibration now fits the RIGHT amount of correction automatically. Before, it only corrected position, rotation, and one overall size — so the feed could be spot-on in the middle but drift toward the edges. Now, from the ArUco board's markers it also solves stretch (different scale side-to-side vs top-to-bottom) and perspective/keystone, and picks the simplest correction that actually fits. The goal: where you place a graphic on the screen is exactly where it lasers on the part — edge to edge, not just in the centre.
  • Auto-detect now tells you which correction it used and how tight the fit is (e.g. "stretch + position (sim ±0.031\" · stretch ±0.004\")") so you can see it working. Manual calibration gets the same upgrade when you mark enough points.
0.1.87

ArUco auto-detect: the reader now loads (marker detection works)

  • Fixed the last piece stopping ArUco auto-calibration: the marker-reading (computer-vision) module wasn't being loaded in the packaged app, so Auto-detect threw a "Cannot read Image" error. It now loads first. Laser the ArUco board, hit Auto-detect & solve, and it should read the markers and calibrate on its own (mirror auto-handled).
0.1.86

Hotfix: app wouldn't start (blank window) + ArUco restored

  • Fixed a crash that stopped 0.1.85 from starting — the window opened but stayed blank. A safety check for the ArUco calibration library was running at startup and, when that library didn't load in the packaged app, it took the whole app down before the UI could draw. The check now only affects the ArUco feature, never app startup, so ALPS launches normally.
  • Also fixed the underlying ArUco library-loading issue behind that crash (the library publishes itself to a global the packaged build wasn't reading), so ArUco auto-calibration should work now too — laser the board, hit Auto-detect, and it solves.
0.1.85

Galvo camera: resolution-independent calibration + fixes

  • Fixed the galvo camera overlay breaking after the resolution bump: a saved calibration is now resolution-independent, so it keeps mapping the feed to the artboard correctly no matter what resolution you calibrated at. (If a previously-saved calibration looks off, just re-run it once.)
  • Calibration frame zoom now pans the whole frame — you could zoom in but not scroll to the edges before.
  • The "Laser ArUco board" button now reports an error if it can't build the board instead of silently doing nothing, plus a performance fix that was likely causing it to freeze.
  • Coordinate and size readouts now show .001" precision (was .01").
0.1.84

Galvo camera: full-resolution feed + ArUco auto-handles a mirror

  • The single galvo camera feed now streams at the camera's full native resolution instead of a downscaled preview — the sharpest possible picture for lining up engraving, and the most precise calibration. (The camera runs at a low frame rate, so full resolution is easy on the connection; if you ever see it stutter, let us know.)
  • ArUco auto-calibration now handles a mirrored camera by itself: it reads the marker board in both orientations and uses whichever is valid, correcting a left-right-flipped camera automatically with no re-calibration or manual toggle.
0.1.83

Galvo camera: mirror fix, sharper feed + editor polish

  • Fixed the mirrored camera feed — lased text was reading backwards. The calibration now detects a horizontally-flipped camera automatically (from the same crosses you click), so re-calibrate once and the feed reads the right way round. Same fix applies to the ArUco auto-calibration.
  • Sharper galvo camera feed: the single-camera preview now streams at higher resolution (960px), and the calibrated overlay resamples at high quality — crisper picture and more precise cross-placement.
  • Editor: the X/Y position boxes now follow the 0,0 origin toggle (± from centre when it's on), and changing W/H resizes around the selected anchor point instead of always the top-left.
  • Discovery: the Fusion Ascent is now recognized (was "Unknown Epilog") and comes in with the correct bed size read from its broadcast.
  • Camera Calibration: zoom the frame to place crosses precisely; removed the confusing "+ Camera" (single field camera).
0.1.82

Galvo camera: automatic ArUco calibration (no clicking)

  • New one-click galvo camera calibration. In Camera Calibration → Automatic: laser the ArUco marker board, then hit Auto-detect. ALPS reads every marker off the captured frame, matches each to its known field position, and solves the calibration by itself — no clicking crosses, no typing coordinates. It's robust to a few blurry or missing markers and to the plate sitting at an angle.
  • The manual click-and-type calibration is still there as a fallback and a way to double-check the automatic result.
0.1.81

Galvo camera calibration + a field-centre ruler

  • The galvo camera feed is now locked to where the laser actually marks — not eyeballed to the page. New guided Camera Calibration: laser the coordinate plate, capture a frame straight from the camera, click each cross and type its coordinate, and ALPS anchors the feed on the laser's real 0,0 and true scale. Drop artwork on the feed and it marks exactly there. (Retired the old hand-align nudger — it wasn't tied to the laser.)
  • New "0,0" button in the ruler corner: toggles the rulers between top-left origin and field-centre origin (±), so a galvo reads ±3" for a 6" lens / ±2" for a 4" lens — the way a galvo operator thinks.
  • Galvo machines no longer show the honeycomb bed grid (a galvo marks a flat field — there's no bed to show).
0.1.80

Galvo camera: feed now covers the whole marking area

  • The galvo camera view now shows the full marking field instead of a cropped, shifted portion of it. The camera image is shown at its true proportions and covers the whole area, with the per-machine Camera align for final trim.
  • Camera align is now finer (0.001" nudges) and lives under Expert (◆◆) — it's a one-time calibration control, not something you touch day to day.
0.1.79

Galvo camera: pick the in-focus camera for your lens

  • Follow-up to the galvo camera fix: ALPS had the two cameras' fields labelled backwards, so it was showing the 4" camera on a 6" machine — soft focus and shifted off the page. Corrected: it now streams the camera that matches your installed lens (sharp), which also lines the feed up much closer to the page. Fine-tune the rest with Camera align.
0.1.78

Galvo camera: one sharp feed (no more double-image)

  • Fiber galvo camera fix: the G100 has two cameras — a 4" and a 6" field — looking at the same spot at different zooms. ALPS was showing both blended together, which put a sharp image and an out-of-focus one on top of each other (the ghosty double-vision) and made the feed flicker/drop. Now it uses only the camera that matches your installed lens field, so you get one clean, sharp picture, and the camera stops dropping.
  • The Camera align panel now shows a “✓ Saved” note so it's clear your alignment is stored as you nudge it.
0.1.77

Align the galvo camera overlay to your machine

  • Galvo camera alignment: when a fiber galvo's live camera is showing in the Job Editor, a small “Camera align” panel lets you nudge the camera image — position (X/Y), scale, and rotation — until the marks the laser made line up with your artwork on screen. It saves per machine, so you set it once. Every G100's cameras sit a little differently, so this is tuned to your machine, not baked in.
  • This corrects the overlay only — where the laser actually marks was already accurate. An automatic version that solves the alignment from a lasered calibration plate is coming next.
0.1.76

Calibration plate is now one click, inside the camera calibration

  • The galvo calibration plate now generates right from the “Calibrate camera field” screen — a “Generate plate” button as Step 1, so you don't have to hunt for it in the Fill process panel. Generate it, laser it, then load each camera's frame and map the crosses, all in one place.
0.1.75

Galvo camera field calibration + Variable-Data multi-page

  • Calibrate camera field (fiber galvo): Machines → your G100 → “Calibrate camera field”. Laser the calibration plate, then for each overhead camera load its frame, click the crosses you can see and type each one's printed coordinate — ALPS solves how that camera maps to the real marking field (its centre, scale and rotation) and shows the fit error. Each camera is calibrated on its own, so a misaligned stitch can't throw it off.
  • Variable Data → “Open in editor as pages”: instead of queuing a pile of separate sheet jobs, open the whole batch in the Job Editor as pages — one sheet per page. Review every sheet, then send them in succession (each named “… — Sheet k of N”).
  • Editor sheet tabs: multi-page jobs get a tab strip along the bottom to move between sheets, add a sheet, or remove one. Single-page jobs look exactly as before.
  • Font hover-preview now works in the text toolbar too, not just the properties panel — roll over a font and the selected text updates live.
0.1.74

Font hover-preview + galvo field-origin calibration

  • Font picker live preview: roll over a font in the list and the selected text updates on the canvas so you can see it before you pick — reverts if you don't choose one.
  • Galvo field-origin calibration: a fiber galvo marks relative to its field 0,0, and that 0,0 isn't always the exact field centre — so marks could land shifted. Each galvo machine now has a "Field origin offset (X/Y in)" you can dial in (Machines → edit) to line ALPS's 0,0 up with the machine's real origin.
  • Field calibration plate: on a galvo Fill panel, "Field calibration plate…" lays down a labelled grid of coordinate crosses with a marked origin and X/Y axes. Laser it on scrap anodized metal, and it shows you exactly how ALPS's coordinates map to the machine's field so you can set the origin offset precisely.
0.1.73

Badge mode + a full galvo (fiber) toolkit

  • New Badge: a guided "New Badge" flow on the Home screen builds a plate with auto-fit text frames, hands off to Variable Data for your spreadsheet, and nests the run onto sheets — all with the tools you already know.
  • Galvo material presets: on a fiber (G100) fill process, load an Epilog Appendix-B starting point for a material — anodized aluminium, stainless black-anneal, brass, Rowmark two-layer, CerMark — then fine-tune on a test plate.
  • Material test array: one click lays a grid of cells sweeping power × speed (or frequency) onto a single plate, so you dial in a new material in one run instead of guessing.
  • Position outline: on a fiber send, tick "Trace outline" to first run a zero-power outline (the red pointer diode, with the door open) so you can lay the part exactly where it will mark — a hull loop or each shape's real outline.
  • Fiber marks are now byte-accurate to Job Manager: sweep vs S-sweep fills, smooth (bézier) vs straight vectors, the defocus offset, and Cycles (repeat the fill to deepen or darken a mark) all match what the G100 expects. Cross-hatch angle lists and beam wobble are in too.
  • Cleaner fiber setup: cut controls that only apply to flatbed cutting (kerf, tabs, lead-in, cut-order) are now hidden on a galvo, where they have no meaning.
0.1.70

Snap menu, ruler guidelines, all your fonts + editor polish

  • Snap menu: the "Snap" chip now has a ▾ menu to choose WHAT you snap to — Grid, Guidelines, Objects, and Page (edges & centre) — like CorelDRAW's "Snap To".
  • Guidelines: drag out from either ruler to drop a guideline on the bed, grab one to move it, or drag it off the canvas to remove it. Objects snap to your guidelines.
  • The text font picker now lists ALL your installed system fonts (not just the built-in set) — it loads them the first time you click the font box.
  • Undo/redo buttons added to the editor toolbar; the object-origin control is a bit larger; "Save as Recipe" is now "Save Strategy"; and the "Send to Laser" button no longer clips.
  • Variable Data grid now shows row numbers.
0.1.69

Galvo bed camera: real two-camera stitch (lens-corrected)

  • The G100 galvo bed camera now shows one correct, combined view of the full field. Both field cameras are aligned to the bed and blended into a single picture (which also cancels the glare that was washing out one corner), replacing the old misaligned overlay. It's calibrated from a checkerboard target placed on the bed — the same way the Epilog software does it — including lens-distortion correction, so lines stay straight and placement is accurate right to the field edges.
0.1.67

Groundwork for the galvo camera stitch fix

  • Adds a behind-the-scenes calibration capture for the G100 galvo cameras — the step that lets us line up its two field cameras into one correct picture of the bed. No change to everyday use; the full galvo stitch fix follows.
0.1.72

Editor polish: font dropdown, snap on the toolbar, tidier bars

  • Font picker is now a proper browsable dropdown of all your installed fonts (each shown in its own typeface) — the old box filtered to whatever was typed, which is why it looked like only one font was available.
  • Send to Laser is always reachable — on a narrow window the top toolbar now scrolls instead of pushing the button off-screen.
  • Snap moved onto the Align/Distribute toolbar (a split button + ▾ menu to pick what you snap to: Grid, Guidelines, Objects, Page) — easier to find than the old floating chip.
  • Guidelines: double-click a guideline to type its exact X or Y position, on top of dragging it.
  • "Print at:" moved to the bottom-left corner just above the skill level, out of the crowded machine row.
  • The editor camera picture-in-picture window is now a setting under Settings → Camera (the on-canvas "Cam" background is unchanged).
0.1.71

Name badges that fit themselves — auto-fit variable text

  • Auto-fit to frame: bind a text box to a data column, then in its Variable-Data panel pick how it should fit — shrink the font, condense the width, or both — and every record's value is automatically sized to fit that box. No more names spilling over the edge or being hand-resized one at a time.
  • "Compress equally across all badges" makes the whole run share one size, so a batch of badges looks uniform (the way engraving shops expect) — long and short names alike.
  • The data grid flags any row whose value still won't fit at the smallest allowed size (a red "!") and shows a count, so you catch a too-long name before cutting metal — it's flagged, never silently clipped.
  • Under the hood: text now reliably engraves and cuts as true font outlines — including the correct hollow centres of letters like A, O and e — so what you see on screen is what burns.
  • The live preview and the Variable-Data preview both show the actual fitted/condensed result for each record.
0.1.66

Click the header to close a menu again

  • Fixed a regression from the single-title-bar change: with an app menu (File / Edit / …) open, clicking the title bar or an empty area now closes it again. The new draggable title bar had been swallowing that click.
0.1.65

One title bar + steadier galvo camera

  • The window now has a single title bar — the branded ALPS bar — instead of two stacked bars. The duplicate native Windows title bar is hidden; drag the ALPS bar to move the window, and Minimize / Maximize / Close live at its right edge as before.
  • Removed the galvo "⇄ Camera" swap button. On the G100 the two field cameras are a fixed left/right pair that combine into one view — not alternate lenses you switch between — and pressing swap was dropping the live feed with a "camera in use by another computer" message. It's gone, so the galvo camera stays up.
0.1.64

One ALPS at a time (fixes camera conflicts)

  • ALPS now runs as a single instance: if it's already open and you launch it again, it just brings the existing window to the front instead of starting a second copy. Two copies were quietly fighting over the laser's single camera connection, which could blank the bed camera or make it show only half the field. One window, one clean camera connection.
0.1.63

Galvo camera reliability + auto wattage on discovery

  • Galvo bed camera now shows the live camera as soon as it arrives again, instead of staying blank while waiting for both field cameras (which don't always stream together). It still combines both into the full field when both are up. The scale fix from the last build stays.
  • Scanning for lasers now auto-fills the wattage for fibre machines — it's read straight from what the laser broadcasts (e.g. a 60W JPT fibre fills in "60W"). CO2 machines don't advertise it, so those stay a manual pick.
0.1.62

Galvo bed camera: correct scale + full field

  • Fixed the G100 galvo bed-camera view: it was zoomed in ~2× and cut off, because the field cameras stream at full resolution but the view was scaling them like the flatbed's half-resolution cameras. It now projects at the right scale, so the field lines up to size (a 1" spacing reads as 1").
  • The galvo view now waits for BOTH field cameras and shows the complete stitched field, instead of flashing a partial half-view — matching how the flatbed overhead cameras behave.
0.1.61

Live dashboard + galvo camera diagnostics

  • Dashboard is now fully live: "Cut hours · today" is summed from your completed jobs' run times, and the placeholder trend graphs are gone — every figure comes from real data.
  • Galvo (G100) bed camera: added under-the-hood diagnostics so we can pin down the exact scale/centring of the field view against your machine. Open the galvo camera once and it records the calibration for tuning.
0.1.60

Editor polish: clicks, tabs, and image-trace colours

  • Fixed: clicks and drag-selections could land in the wrong spot if the app page got zoomed by accident (a stray Ctrl+scroll or trackpad pinch). The app page is now locked so only the canvas zooms — clicks always land exactly where you click.
  • Cut tabs (bridges) now default to the middles of edges instead of landing on a corner, so they're stronger and easier to snap off. Drag them anywhere as before.
  • Image trace: Ungroup (Ctrl+U, or right-click → Ungroup) now breaks a traced graphic into one shape per colour, so you can select, recolour, or delete a single colour on its own.
0.1.59

Smoother galvo camera stitch

  • Galvo (G100) bed camera: the two field cameras are now brightness-matched where they overlap, so the seam down the middle of the stitched view is smoothed out instead of showing a visible step where one camera's exposure differs from the other. The join reads as one continuous image.
0.1.58

Live machine serial/firmware + galvo camera stitch

  • Machines now auto-fill the real serial number and firmware version straight from the laser — no more typing them in. Scan or probe a machine and the card shows "fw <version> · SN <serial>" pulled live from the machine.
  • Galvo (G100) bed camera: both field cameras are now combined into one calibrated, bed-aligned view instead of a single camera you had to swap (which showed one upside-down). Each camera is projected onto the field by its own calibration and blended, so the view lines up and glare/occlusion from one camera is filled by the other.
0.1.57

Refine your background removal by hand

  • Remove Background now has a Refine step so an AI cut is no longer a dead end. Switch to the Refine tab and: Erase to paint away leftovers (like a stray ground shadow), Restore to paint back anything the AI removed by mistake (grass, ground), or use the Remove-area wand to click a region — like the sky — and drop just that out. Zoom, pan, Undo, and Reset are all there.
  • So the flow is: let the AI do the heavy lifting, clean it up in a few strokes, then Apply — and dither for your material as usual. Works on any photo, all on your machine, no extra download.
  • Fix: the transparent-background preview now shows a checkerboard behind the cut-out, so a removed background actually looks removed (it was showing the original photo through the transparent areas).
0.1.56

Remove Background as its own tool + editor fixes

  • Remove Background is now its own tool — select a photo and click "Remove Background…" (or the Remove Background tab in Image Prep). The before/after slider shows just the isolated subject (no dithering), so it's easy to see the cut-out. Apply, then dither the clean subject as a separate step. Standard / Advanced-AI / Premium-AI methods, transparent or solid background.
  • Fix: opening a saved job now keeps the Camera option (and correct bed size / send target). Before, if a laser had been re-added, an opened job lost its machine link and the camera controls disappeared.
  • Fix: you can now re-open Image Prep on a placed photo without re-importing it — a freshly-dropped image no longer shows an empty properties panel.
  • Fix: the bed-camera "Flow" panel opened hidden behind the toolbar buttons; it now sits clear below them.
  • The camera view now tells you how many cameras the laser reports while it waits for a feed — so you can tell "slow to start" from "not connected."
  • Image Trace can now trace a background-removed cut-out by its shape (silhouette), even when the subject is light — it auto-detects a transparent image.
  • Virtual printer: every bed size ALPS offers now has a matching Windows paper size, so large or unusual beds no longer get clamped/cropped on print.
  • When scanning for lasers, ALPS now shows the extra details a laser broadcasts about itself.
0.1.55

Premium background removal + a transparent/knock-out choice + Operator name

  • AI background removal now has a Premium model (IS-Net) — the cleanest cutout on photos of people and products. Pick "Premium" in Image Prep → Remove background and click Download once (~170 MB, checksum-verified); it installs locally and is used from then on. Advanced (built-in) and Standard remain.
  • Choose what goes behind the isolated subject: Transparent (the background simply doesn't burn — the safe default, and it survives a later colour-invert) or a Solid knock-out colour you pick.
  • Operator name: set your name in Settings → General and it's stamped on every job's "Operator" column, instead of the generic "ALPS".
  • The Premium model is optional and downloaded on demand, so the installer stays small; if a model ever isn't present, removal falls back to Advanced/Standard automatically.
0.1.54

AI background removal (Advanced) + intake fixes

  • AI background removal in Image Prep: turn on "Remove background" and choose Advanced — an AI model isolates your subject (people, products, logos) far more cleanly than the algorithmic Standard remover, then the result flows straight into the material dither/threshold as usual.
  • The Advanced model is built into ALPS — no download needed. A larger Premium model (even cleaner on photos) will be an optional install shortly.
  • Fix: opening an incoming/printed job now opens it on the laser you picked in the popup, instead of always the default laser.
  • The AI removal falls back to Standard automatically if a model isn't available.
0.1.53

Intake templates + a Desktop drop folder

  • New Desktop "ALPS Drop" folder — drop a file (or point CorelDRAW's Publish-to-PDF) into it and ALPS opens it automatically, at true 1:1 size, and jumps to the front. An exported PDF keeps its real page size, so artwork lands exactly where you drew it.
  • Intake Templates (Black tier): save a named import profile and pick it on the incoming-job popup so a print comes in already placed and configured. A template can hold: a registration FRAME colour, an X/Y offset, a recipe, and whether to open the editor or send straight to the laser.
  • Frame colour: draw a rectangle in a chosen colour around your artwork; ALPS snaps that box's top-left to the bed origin, sizes the work-area to it, and drops the colour so it never burns — exact placement no matter how your app positioned the print.
  • Offset: nudge imported artwork by an exact X/Y — also handy for placing onto a bed larger than your paper.
  • Manage templates in Settings → the intake section (per-machine or for any machine).
0.1.51

Last-laser default, object→process, origin picker, tighter tools

  • Printed jobs now default to the LAST laser you selected, instead of always Fusion Edge 24.
  • Selecting an object jumps the Processes panel to that object's colour/process and shows its speed & power.
  • New Object Origin picker: a 3×3 grid next to X/Y lets you choose which point of an object (a corner, an edge, or the centre) the coordinates refer to — like CorelDRAW.
  • Pen/curve objects: the selection box now hugs the actual curve instead of stretching out to the bezier handles.
  • Measure tool: hold Shift to snap the measurement to the nearest 45°.
  • Each machine now shows a "Print at" recommended paper size (e.g. ARCH E for a 48×36 bed) so a Corel print lands at true 1:1, plus a warning when a printed page doesn't match the bed.
0.1.52

Bed-size presets + one-click background removal

  • Add or edit a machine and pick its bed from a size list (4×4, 6×6, 16×12, 18×12, 24×12, 24×18, 24×24, 32×20, 36×24, 48×36) instead of typing the width and height — off-list sizes still show as "Custom".
  • Image Prep can now remove a photo's background: a "Remove background" toggle in Easy Mode (and a Background step in Advanced) drops a plain backdrop to transparent so only your subject engraves. Tolerance and Feather sliders tune how much it takes and how soft the edge is.
  • This is the fast, built-in "Standard" background remover — the smarter AI-based options are coming next.
0.1.50

Close-to-tray, smarter camera prompt, readable send errors

  • Closing the ALPS window now minimises it to the system tray and keeps running (like Job Manager). Click the tray icon to bring it back; use Tray → Quit ALPS or File → Exit to fully quit.
  • The camera "take over" prompt no longer appears when there's no laser on the network — it only shows when a real laser's camera is actually busy with another viewer.
  • Send-to-laser errors now show a readable message instead of "[object Object]".
0.1.49

Shapes with holes import correctly (no more solid black blobs)

  • A shape with a cut-out hole — a donut, a letter O, a logo with a gap — used to import as a solid filled blob. ALPS now honours the "even-odd" hole rule, so the hole stays a hole on the canvas.
  • Note: the on-screen artwork is correct; if you engrave a shape with multiple nested holes as a filled raster, the inner holes may still fill in — a deeper fix for that engrave case is noted and coming.
0.1.48

Placed photos (JPG/PNG) now import from print jobs

  • Place a JPG or PNG in your Corel/Illustrator design, print it to ALPS, and the photo now comes through — the engine pulls each embedded image out of the PDF and drops it on the bed at the right position and size, ready for Image Prep (engraving).
  • Covers standard JPEGs and RGB/grayscale images. Unusual encodings (LZW, CMYK, indexed-colour, JPEG-2000) are skipped with a note in the import warnings rather than coming in looking wrong — tell me if you hit one and I'll add it.
0.1.47

Cleaner artwork import — real colours, hairline cuts, kept groups, colour on/off

  • Imported artwork now comes in at its REAL colours. CorelDRAW writes colours in a way that used to make coloured cut/score lines import as black (and collapse into one process) — ALPS now reads them correctly, so your colours separate into the right processes again.
  • Hairlines import as CUT lines. The line-thickness threshold that decides which lines become vector cuts now catches CorelDRAW hairlines by default (0.004″), and you can dial it in Settings — thinner than the threshold = cut, thicker = score.
  • Groups are kept. Shapes that were grouped in your source file import as a group (they select and move together) instead of every shape coming in loose.
  • Turn a colour OFF. Click the eye on any colour row in the Processes panel to skip it — nothing is cut or engraved for that colour, and the row now clearly shows OFF.
0.1.46

Draggable cut tabs, cut start-point, and a smoother print-to-ALPS workflow

  • Cut tabs (bridges) are now visible AND draggable — grab a tab marker on a part's outline and slide it anywhere around the perimeter to keep tabs off corners and tight radii, so parts stay held in the sheet and snap free cleanly by hand.
  • Pick a cut start point: in node-edit mode, select any node on a path and "Set start point" so the laser begins the cut there — hide the lead-in mark on the edge you choose.
  • Print to ALPS is smoother: ALPS jumps to the foreground when a job comes in, every printed job is saved to your Jobs list (so it's never lost if the popup closes), the job takes its name from the source document instead of "_spool", and the incoming-job popup shows a real preview plus a machine picker.
  • Large-format printing: ALPS adds the laser bed sizes (up to 48×36) as paper sizes on the "ALPS Laser" printer and defaults the page to your machine's bed, so Corel pages aren't squashed to Letter.
  • Fixes: File → Exit now actually quits, Save Job always lands in the Jobs list (even before it can encode), the "Engrave Direction" label, Precision Sync available at the Blue tier, and the camera "No signal" note is a small badge instead of covering the bed.
0.1.45

Virtual printer installs by default + works with no setup

  • The "ALPS Laser" printer now installs automatically during setup (the installer runs as admin, so no extra clicks) and drops jobs into an ALPS-owned folder — you no longer need to set a Shared Folder first for it to work.
  • The manual Install / Remove buttons in Settings → Virtual Printer are still there as a repair path.
0.1.44

Virtual printer: install an "ALPS Laser" printer (Windows)

  • Settings → Virtual Printer can now register an "ALPS Laser" Windows printer so you can print to ALPS straight from CorelDRAW / Illustrator / Inkscape. It uses only built-in Windows components (Microsoft Print To PDF + a local port) — no extra software to install, no licensing strings.
  • Run ALPS as administrator to install it, and there's now a "Remove" button and a live status check. (New — please validate on your Windows machine: whether it captures the print silently or pops a Save dialog is the last thing to confirm.)
0.1.43

Big editor + workflow update (dogfood buildout)

  • Editor: the camera 'take over' button now floats above your artwork (it used to hide behind it), and the View menu works — Zoom, Fit to Bed, Show Grid, Show Rulers, Camera Overlay (in sync with the on-canvas chips).
  • Text: the selection box now hugs the actual letters, resizing text stays consistent from any handle, and double-click editing keeps your font size and lets text flow past the box.
  • Image Trace: open or drag an image straight into the tracer, watch a live side-by-side preview as you adjust the sliders, then break the result into editable shapes or one-click simplify the nodes.
  • Raster: quick None / Standard / Floyd–Steinberg dithering right in the Raster-image panel — no need to open Image Prep for the common case.
  • Colours: Settings → Colours lets you set how many swatches to show, add custom swatches, and see RGB/CMYK for each.
  • Materials: real per-material swatches (wood, metal, acrylic, leather…) plus your own photo upload; pick a machine at the top to see that laser's tuned settings.
  • My Library: a set of basic shapes to draw from, and you can create your own library categories.
  • Fonts: the 'use your fonts' permission popup is gone — ALPS reads your installed fonts directly.
  • Jobs: Save now asks for a name; set a custom page size in File → Document Setup; and there's a File → Exit.
  • Import: hairline strokes from your artwork are now recognised as cut lines.
0.1.42

CorelDRAW shortcuts + draw constraints

  • Keyboard shortcuts now match CorelDRAW. Alignment (with objects selected): L/R/T/B align left/right/top/bottom, C = align centers vertically, E = align centers horizontally, P = center on the bed. Drawing tools use Corel's F-keys: F6 Rectangle, F7 Ellipse, F8 Text, F5 Pen, F10 Shape (node edit); V = Select, M = Measure.
  • Hold Shift while drawing a Rectangle or Ellipse to constrain it to a perfect square / circle.
  • Frame-flow diagnostics now labels a galvo's single field camera 'output' instead of the flatbed 'stitch'.
0.1.41

Import keeps your work + tool shortcuts + fixes

  • Import no longer wipes your job — importing artwork now ADDS it to what you're working on (only a brand-new empty editor adopts the file wholesale).
  • Tool keyboard shortcuts now work: V Select, A Direct Select, P Pen, T Text, R Rectangle, E Ellipse, L Line, M Measure (they no longer fire while you're typing).
  • The rectangle Corner-radius box no longer crops its value.
  • New hidden Expert tier (◆◆): Ctrl+Shift+click the skill-level pill at the bottom of the rail to reach the development/diagnostic tools (raw PRN editor, network diagnostics, frame-flow HUD, galvo camera swap).
0.1.40

Skill-level symbols + camera take-over polish

  • Skill levels now show their ski-trail symbol in colour, same size, everywhere: 🟢 Green circle · 🟦 Blue square · ◆ Black diamond — on the bottom rail, in Settings, and in the setup wizard (which also spells out beginner / intermediate / advanced).
  • Camera take-over button is now centered and gives clear "Taking over…" feedback when clicked (it looked un-pressable before).
  • The Machines → Camera dialog now offers the same "take over" when the camera is held by another computer (the Epilog suite) — it was editor-only.
  • The bed camera now turns on automatically for a camera-equipped laser when you open the editor (you can still toggle it off).
0.1.39

Galvo camera: show the full field, not a zoomed crop

  • The G100 galvo camera was framing a magnified centre crop instead of the full 4"/6" field, because it was told to use the flatbed carriage camera's fixed image size. It now uses the galvo camera's own reported size, so the live feed should show the whole field like the Epilog suite does.
  • The flatbed (overhead/carriage) cameras are unchanged.
0.1.38

Place on bed + mark verification (Wave 6)

  • Place on bed (Blue): with the live bed camera on in the editor, click ‘Place’, then click the real blank in the image — your selected artwork snaps its centre onto that spot (kept on the bed). No jigs.
  • Mark Verification (Tools, Black): read an engraved serial/QR back and pass-fail it — check a single mark against an expected value, or a whole run against a spreadsheet column (reports verified / missing / unexpected).
  • Note: automatic ‘camera finds the blank’ detection and live carriage-camera QR reading need a laser on the network — those are turned on once we validate against a real machine.
0.1.37

Share material libraries + Epilog starter pack (Wave 5)

  • Epilog starter pack: one click on the Materials screen adds Epilog's published starting settings for 14 common materials (acrylic, birch, hardwood, leather, cork, glass, slate, and CO2/fiber metals). Re-clicking skips ones you already have.
  • Export your material library to a file to share tuned settings with another shop or classroom — and Import a colleague's file. Imports merge in safely: new materials are added, your existing tuned ones are never overwritten.
  • Starting values are calibration starting points, not guarantees — always test-cut and dial in per machine.
0.1.36

Variable data, right in the editor (Wave 4)

  • Bind any text or barcode/QR object to a spreadsheet column without leaving the design: select it and set the Field in the Properties panel (type a column name or pick from your loaded data).
  • Bound objects show a «Column» placeholder on the canvas so your layout clearly reads as variable — format the font, size and colour exactly as you would any text.
  • New 'Preview data' bar on the canvas: flip it on and step ◀ ▶ through your records to watch each badge fill in live, then send the whole run through Variable Data as before.
  • Note: variable logos (a different image per record) are still on the roadmap — static logos work today via image import.
0.1.35

Design tools: booleans, offset & array (Wave 3)

  • Weld / Union, Subtract and Intersect (Blue): select two or more shapes, right-click, and combine their outlines into one cut path — weld overlapping parts, punch one shape out of another, or keep just the overlap.
  • Array / step-and-repeat (Blue): right-click a selection and tile it into a grid — set columns, rows and the gap between copies. Great for filling a sheet with identical parts.
  • Offset / inset a shape's outline (Blue): grow or shrink a cut line by 0.1" from the right-click menu — handy for press-fit allowances.
  • These join the existing align, distribute and snap-to-grid tools to round out on-canvas layout.
0.1.34

Cut order & cut quality (Wave 2)

  • Cut inner shapes first (Blue): cuts holes and cutouts before the outer boundary so parts don't shift once the boundary is severed. Toggle on the cut process.
  • Cut quality (Black): Overcut (close the seam), Lead-in/out (pierce off the finished edge), and Tabs/bridges (leave small uncut gaps so parts stay attached to the sheet). All on the cut process, off by default.
0.1.33

Quick skill-level switch

  • The Skill Level indicator at the bottom of the left rail is now a button — click it to cycle Green → Blue → Black (● / ■ / ◆) without opening Settings. Handy for reaching Black-level controls like kerf.
0.1.32

Galvo camera switch + kerf now on Black

  • The G100 galvo camera view now has a "⇄ Camera" button to switch between its two field cameras (4" and 6") — pick whichever matches the lens you have installed, instead of the app guessing.
  • Kerf compensation moved to the Black skill level.
0.1.31

Kerf compensation — cut parts to size

  • New Kerf setting on cut processes (Black skill level): offsets closed cut lines by half the beam width so parts come out to the intended size — choose Outside (grow), Inside (shrink), or Off, and set your beam width (default 0.008"; tune it on a test cut).
  • First of the new production-accuracy features on the roadmap (kerf → cut-order → design tools → variable-data templates → materials library).
0.1.30

Imported art is now editable shape-by-shape

  • Importing a PDF/SVG (e.g. from CorelDRAW) now brings each shape in as its own object, so you can select and move them individually instead of the whole drawing moving as one blob.
  • Selecting with a drag-box now works the CorelDRAW/Illustrator way — a shape is selected only when your box completely surrounds it (click a shape to select just it, Shift-click to add more).
0.1.9

Canvas resize/rotate + editor polish

  • Resize and rotate items on the canvas by dragging the handles (this was broken for Blue/Black skill levels)
  • Frequency now appears directly under Power, for all skill levels
  • Settings panel is more compact so it fits without scrolling
  • The built-in sample jobs now open with real artwork
  • Bed camera holds the last frame with a "reconnecting" hint if it drops, instead of going blank
0.1.8

Steadier bed camera + laser scan in setup

  • Bed camera now recovers on its own if the feed drops, instead of going dark until you reopen it
  • First-run setup has a "Scan network for lasers" button to find your laser automatically
0.1.29

Galvo camera: show the camera that matches the installed lens

  • The galvo now shows the camera for the lens you actually have installed — with the 6" lens it shows the 6" field camera (0.1.28 showed the 4" one by mistake).
0.1.28

Galvo camera fixes: steady field view + working take-over

  • The G100 galvo camera now shows a single steady view of the installed lens's field (it was flipping between the 4×4 and 6×6 cameras).
  • The “Camera in use — take over” button now actually works when you click it (it was being swallowed by the canvas).
  • The Camera window on the Machines screen now shows the galvo's live feed instead of “no signal.”
0.1.27

Live camera on the G100 galvo + take over a busy camera

  • The Fusion G100 galvo now shows its live field camera in the Job Editor — the same overhead view the Epilog software gives, for lining up marks on the plate. Turn it on with the Camera toggle; it shows the lens-active field (4×4 or 6×6).
  • If another computer is already using a laser's camera, ALPS now offers a “take over” button so you can grab the live view — the same way the Epilog software asks to disconnect the other user.
0.1.26

Better defaults for a discovered laser

  • A laser found by the network scan now comes in as a Fusion Pro 48 (48×36, CO2) instead of a generic 24×24 dual-source — the machine can’t tell us its exact bed size or CO2-vs-fiber over the network, so pick your model under “Configure…” to set the right bed, laser and wattage (and Wi-Fi vs Ethernet)
0.1.25

Find lasers even when the scan is blocked

  • Network scan now has a fallback: if mDNS finds nothing (a firewall or wifi access point can block it), ALPS quietly scans the local network by IP for anything answering on the Epilog control port and lists it — so your laser shows up even when auto-discovery is blocked
  • Machine card: the Camera button no longer gets clipped when a machine has several actions
0.1.24

Cleaner camera view

  • Removed the “reconnecting…” overlay on the bed camera — a brief pause now just holds the last frame quietly instead of flashing a message (it still recovers on its own in the background)
  • The galvo (G100) no longer offers a bed-camera toggle or shows “no signal” — the overhead bed camera is a flatbed feature
0.1.23

See your bed cameras live (Black tier)

  • New camera Frame-Flow overlay (Black skill level): turn it on from the bed view or the camera window to see each overhead camera’s live frame rate, the stitched rate, and a green/amber/red indicator — so you can watch both cameras staying steady (and spot instantly if one is lagging on a weak connection)
0.1.22

Steadier bed camera + no font-permission popup

  • Bed camera: the heavy image work now runs off the network-receive path, so both overhead cameras keep flowing steadily instead of one (or both) stalling when the app gets busy — the picture is now limited only by your wifi/connection to the laser, not by ALPS
  • No more surprise “allow font access” popup — the font list works right away, and ALPS only asks for your installed fonts if you click into the Font box to pick one
0.1.21

Reliable laser discovery + editor colour + fill-a-sheet

  • Find your lasers reliably — network discovery now picks a routable address (some machines were showing only an unusable IPv6 link-local and couldn’t be added), and a failed probe shows the real reason instead of “[object Object]”
  • Editor colour: a fixed swatch palette with a proper “no fill” (white box + red diagonal), colours shown as name + percent (“Black 100%”, “Red 40%”) instead of hex codes, and the properties panel no longer scrolls sideways
  • Variable Data fill-a-sheet: choose how many sheets to run (it numbers whatever fits), or pack into a partial area of the bed — e.g. a 9×9 offcut → 27 tags
0.1.20

Variable Data: date/time coding + fill-a-sheet

  • Automatic date & time coding — stamp a formatted date/time on your parts (YYYY-MM-DD, “Jul 04, 2026”, time, day-of-year, weekday…), including best-before = today + N days
  • Array / auto-fill-sheet — pack many numbered badges onto one bed instead of one job per badge; each copy gets the next serial/record in order, so a run of tags cuts as a few full sheets
0.1.19

Tray actions that work + shared classroom settings

  • The tray “when a job arrives” action now behaves the way you set it — Send auto-sends, “Open in Job Manager” opens the job and brings ALPS up, and “Notify only” shows a reminder with Send Now / Open (nothing sends on its own)
  • Shared machines, materials & recipes for classrooms and multi-station shops — a lead/teacher station publishes them and every other station gets them read-only, alongside its own local ones (default machines from an admin config are applied on first run)
0.1.18

Measure, formulas, true-shape nesting & My Library

  • Measure tool — click-drag on the canvas to read distance, Δx/Δy and angle in your current unit (in/mm); it’s just a ruler, nothing is added to the job
  • Imported SVG text stays editable — text from Illustrator/Corel comes in as real text you can double-click and retype, not flattened
  • Variable Data now does spreadsheet formulas — start a cell with = for things like =ROW(), =A1*2, =UPPER(B1), =IF(...), =TEXT(A1,"000")
  • Nesting gained a True-Shape mode — parts nest by their real outline so concave shapes interlock and pack tighter
  • My Library — save any selection and reuse it in any job (right-click → Save selection to My Library), with starter shapes to get going
0.1.17

Image-trace (raster to vector)

  • Trace a logo or photo into vector cut lines — open Image Prep’s Image-Trace (or “Trace to Vector” on an image), pick outline or colour, and it becomes editable vector paths
0.1.16

Convert text to outlines

  • Convert text to vector outlines — Object → Convert Text to Path — so text cuts/engraves as true vector and you can node-edit the letters
0.1.15

Galvo (G100 fiber) job authoring

  • The G100 galvo fiber laser is now a full job target — pick it, author a job with Engrave, Hatch (fill), or Vector processes plus the fiber waveform (0–15), and send it
  • Galvo output is byte-matched to Epilog Job Manager; the first send asks you to confirm and test on scrap, since it hasn't been fired on a physical G100 yet
0.1.14

Vector node editing + legacy Epilog lasers

  • Edit vector points directly — Direct Select (drag/add/remove nodes + curve handles) and Pen tools (Black skill level)
  • Support for legacy Epilog lasers — Zing, Helix, and Mini (job encoding + send)
0.1.13

Edit text on the canvas + more fonts

  • Double-click a text part to edit it right on the canvas — no need to use the side field
  • Font picker now lists the fonts installed on your PC
  • Value boxes (Speed / Power and X / Y / W / H) no longer clip their numbers
0.1.12

Colour, resize/move upgrades + tidy panel

  • Set the fill and outline colour of any part (maps to engrave / cut automatically)
  • Resize: hold Shift to keep aspect, Ctrl to resize from centre; drag a text handle to scale the text; lock width↔height when typing a size
  • Hold Shift while dragging to constrain a move to horizontal or vertical
  • Settings panel now fits without a scrollbar (Job Mode / Material collapse when unused)
  • Bed camera only shows once both overhead cameras are in — you'll never see a half bed
0.1.11

Group & ungroup

  • Group and ungroup parts — Ctrl+G to group, Ctrl+U to ungroup, or right-click for the menu (also under the Object menu)
  • Grouped parts select, move, resize, and rotate together as one unit
0.1.10

Live bed background + import fixes

  • Live bed camera as the editor canvas background — turn on "Cam" and drop artwork straight onto a picture of the real bed
  • SVG import: outline-only shapes from CorelDRAW / Illustrator now come in as cut lines instead of solid black fills
  • PDF import: vector artwork from CorelDRAW / Illustrator now imports correctly (it was coming in blank)
0.1.7

Full-bed camera + serial numbering

  • Overhead camera now shows the whole bed by combining both overhead cameras into one view
  • Variable Data: persistent serial numbers that keep counting across jobs and days — draw the next number or a whole batch, with a preview that never uses up a number and roll-back for a scrapped part
  • Backups now include your serial counters, so moving to a new PC or setting up another station keeps your numbering (and never rolls a counter backward)
  • Settings → About now lists the third-party open-source licenses
0.1.6

Camera, machines & housekeeping

  • What's New now updates with every release, so this list always matches the version you're running
  • Delete a machine directly from its card
  • Network Diagnostics rebuilt with real per-machine ping / status / camera checks (Black tier)
0.1.5

Live camera stays connected

  • Bed-camera preview now holds a steady stream instead of dropping after a moment (keep-alive fix)
0.1.4

Laser & material settings

  • Frequency now appears for all Fiber engraving/cutting and CO2 cutting
  • Waveform control (0–15) for MOPA fiber lasers
  • Selecting a material preset fills in the speed / power / frequency below it
  • "Material Type" heading; a clear indicator while a new job opens
0.1.3

Live bed camera + machine list

  • Bed-camera preview streams live from the laser
  • Discovered lasers add by their real name; two machines can share an IP
  • Camera window shows the correct online status and can be dragged; sample machines removed
0.1.2

Editor, machines & image prep polish

  • Job Editor: left ruler fixed; a new job opens zoomed to fit the bed
  • Machines: prominent "Scan network for lasers"; cleaner Add-Machine dialog (wattage dropdown, dual-source)
  • Materials: create a material type and add multiple presets under it
  • Image Prep: a "Processing…" indicator and a tighter settings panel
  • "Print to ALPS Laser" PostScript intake wired (native Windows printer to follow)
0.1.1

Laser networking

  • Automatic discovery of Epilog lasers on the network (mDNS)
  • Live machine status, capabilities, and bed-camera support
  • Send jobs straight to the laser over the network
0.1.0

ALPS v1

  • Full job editor: import artwork, colour-split into processes, tune each
  • Byte-exact Epilog PRN encoder (matches Job Manager output)
  • Materials library, job queue & history, Image Prep photo engraving, and the rotary / variable-data / nesting workflows