LightBurn 2.2.00 Early Access: True Nesting! Center Line Trace! Multi Page Projects! More!

Our first LightBurn 2.2 Early Access release is available now! We know what you’re thinking. Didn’t you just launch MillMage Pro last week? Do you ever sleep?

Yes, we did. And yes, though not enough. But that’s ok because our users reap the rewards of our exhaustion, like the shiny new features coming in 2.2!

Here’s what’s on deck: True Nesting, Center Line Trace, Multi Page Projects, 3D Model Import, and more! Read on for additional information.

Download 2.2.00 RC-1

As a reminder, you can install Early Access releases side-by-side with the latest official release. That means trying it out won’t overwrite any of your settings, and if you encounter any show-stopping bugs, you can immediately switch back to the live version and keep working.

LightBurn 2.2 is our first release to have a design/layout feature (True Nest) limited to Pro licenses only (read more below). If you have a Core license, head to Help → License Management and click the Trial Pro button to get access to LightBurn Pro for two weeks.

Be sure to report issues or give us feedback by email or here on our forum!

True Nest (Pro-Only)

It’s here — a full nesting solution, built into LightBurn. In 2.1 we added Quick Nest, a blazing-fast option that nests objects based on their bounding boxes.

Now we’ve upped our game with True Nest, which nests objects based on their actual contours. You can choose from four Optimization levels that determine how long it spends generating the best layout, but all of them are shockingly fast — especially compared to doing it by hand.

An important note: True Nest is the first LightBurn design/layout feature that is limited to Pro licenses only. We made that choice because premium features like True Nest are really hard to write, and the only way we can develop features like this and still keep the lights on is to charge a bit more. We also recognize that not all users need it, so rather than raise prices across the board, we chose to make it Pro-only as the fairest option.

If you’re a Core user, upgrade to Pro if you think True Nest will help you work faster and save money on material. It shouldn’t take more than a few sheets-worth of savings to pay for itself.

Learn More

True Nest

Center Line Trace

We’ve added a new option to the Trace Image tool — Center Line Trace. Unlike a standard trace, this option produces lines running along the medial axis of shapes identified in your image. It’s a great option for tracing logos, sketches, and text.

While “medial axis” is sort of a fancy way of saying “center line”, it also carries an important distinction — this is cold, hard math, and the result might not be quite what you think it should be by eyeball. Especially if you feed in a low resolution image, you’ll get a result with lots of offshoots where the pixel-to-path equation says the medial axis is. Stick to high-res images with clear outlines for best results.

Learn More

Center Line Trace

Multi Page Projects

We see you out there with your graphics all spread around the margins of your Workspace. Please stop doing that, it makes us nervous (we’ve seen the devastation when a file like that gets lost or corrupted).

With Multi Page Projects, you can get more organized. It’s still not a great idea to load up a project with tons of unrelated graphics in different tabs, but Pages let you sort related graphics into separate spaces.

You can Add, Remove, Copy, and Rename Pages from the interface at the top of Workspace, or in the new Pages Window.

Learn More

Multi Page Projects

3D Model Import

We’ve added a new way to source depth maps for your 3D engravings — you can now import 3D models in .stl, .3mf, .amf, .obj, .off, .ply formats.

Adjust the model’s Orientation, Size, Bit Depth, Resolution, and other settings, then add it to your Workspace. It will appear in red while it remains an adjustable 3D model. Right-click and select Convert to Bitmap to make it a true grayscale image (note that you’ll lose the ability to adjust the model’s properties after converting).

Learn More

3D Model Import

REST API

We’ve added a REST API to LightBurn, providing a way to communicate between LightBurn and other applications. The API is intended to allow users and developers to create integrations and improve interoperability with other software for advanced workflows, automate processes, monitor status, and exchange data between LightBurn and third-party applications. The API is intended for use on a single computer or within your local network.

Public documentation for the LightBurn REST API is available now here: GitHub - LightBurnSoftware/LightBurn-REST: LightBurn Software REST API documentation · GitHub

More detailed documentation is coming soon.

As a reminder, LightBurn does not endorse, recommend, support, or encourage unattended use of lasers or other machinery. LightBurn’s API is not a replacement for direct operator supervision.

ARM Builds for macOS

We now have macOS builds natively compatible with ARM-based CPUs (sometimes referred to as “Apple silicon” or “M series” chips).

That means you won’t have to wait a minute or two for LightBurn to open on your Mac the first time you run 2.2!

Apple has announced that with the release macOS 28 (anticipated fall 2027), they will no longer support apps that are not specifically built for ARM. Any user that has a Mac with an “M series” chip and updates to macOS 28 will be required to update to LightBurn 2.2.00 (or later). Previous versions of LightBurn will not run on macOS 28. This will also affect any user who purchases a new Mac after the release of macOS 28.

Other Notable Additions

  • We’ve added support for ACCELaser hybrid gantry/galvo motion machines, including support for LiDAR scanning to map and compensate for curved surfaces.
  • A Duet/RRF HTTP flavor is now available in the Custom GCode Editor.

Changelog

Click to Read our Full Changelog

Change Log for LightBurn-v2.2.00-RC-1

New Features

  • Center Line Trace
  • Adding a local & network-available REST API.
  • Adding DragonDrop support per device profile.
  • Adding target buffer override for gcode devices in case the firmware doesn’t or incorrectly reports the buffer size.
  • Added 3D model import feature.
  • Added depth map creation from imported 3D models.
  • Adding extra controls to Custom GCode (similar to GRBL)
  • Add filtering for FluidNC flavor to clean [MSG] spam in the Console
  • New Creality Falcon HTTP flavor for Custom GCode
  • New Duet/RRF HTTP flavor for Custom GCode
  • Added AcceLaser hybrid Gantry + Galvo device support.
  • Added LiDAR surface scanning with height-compensated engraving.
  • Enable rotary setup on Emblaser Pro
  • Accelaser Lidar ranging dialog Improvements
  • Adding default gcode file extensions for custom gcode flavors
  • Added Revert to Manual Alignment button on Overhead Auto Alignment Page
  • Adding a new WeCreat_http flavor for Custom GCode to allow sending the job files to the WeCreat lasers.
  • Accelaser feat 0820 requests
  • Added Device Classification (Model and Source) to Device Settings to allow full offline design for adaptive protocols
  • Adding REST API for inter-application communication
  • Adding support for TopWisom rotary

Bug Fixes

  • Fixed typos in Quick Nest messages
  • Some Custom Gcode values were getting unit conversions when they shouldn’t
  • Removing SSL certificate generation and usage for the API to be HTTPS
  • Launching and immediately closing could cause a crash in the webtool loader
  • Make virtual keyboard show when using tablet and touching a spin box or custom num editor (Windows only)
  • Fixed issue causing viewport of 3D import dialog not rendering.
  • Min tabs was not always being respected
  • Fix numeric entry equation parsing issue with comma vs period
  • Updated dogbone tool to use double-precision math to reduce failure cases
  • Handle new text width properly after a copy paste to prevent font position changes.
  • Renderbuffer being rebuilt constantly due to incorrect comparison.
  • Crash on SAVE
  • Fix title case across all entries in the right click menus.
  • Fix to trim tool not working for some cases.
  • Select all shapes for an operation accidentally included shapes from other pages.
  • Select all shapes for an operation accidentally grabbed shapes from other pages.
  • Toggle Panel visibility was missing toggling the Pages panel.
  • Ensure that 3D depthmaps are imported with an image cut setting
  • CutSetting editor memory leak fix
  • Fixed issue causing device settings dialog to cutoff custom gcode options.
  • Fixed issue where framing could use the wrong origin offset
  • Custom GCode was not using custom header when framing
  • Fixed RestoreDefaultLayout to work in Qt 6.11
  • Add network permissions to plist for Mac OS 27
  • Fix 3 instances where device def was deleted but accessed later
  • Re-Exported images would sometimes be rotated 180 degrees from expected
  • Device settings dialog minimum size and stretch policy now set correctly to prevent widgets from being cut off of squashed.
  • Newer Qt was no longer resolving host names in some cases
  • Incorrect warning when cross-app file opening
  • SVG Importer Improvements to fix “missing content” caused by newer SVG 2.0 features
  • SVG Importer Improvements to fix text sizing bugs, enable skew, and implement SVG 2.0 / CSS unit types (%, em, ex, ch, q…)
  • Uninitialized vars in QNumEntry cause erratic value changes randomly
  • Fixing the pause/resume sending double pause commands during a g-code command stream.
  • Shape Properties Panel needed to use QNumEdit to support flexible number input, units conversion, and formulas.
  • Refresh position readout after discrete jog / work-offset change
  • Fixed incorrect 3D model rotation when switching between rotating with mouse and manually setting rotation fields.
  • Fixed tab order of controls in 3D import dialog.
  • Connection buffers could block in rare circumstances on flakey grblHAL controllers
  • Open LB or MM file from the other app should preserve pages just like the import does
  • Open file from other app should preserve pages just like the import does.
  • Stop reallocating the edit window render buffer on every repaint"
  • Stop reallocating the edit window render buffer on every repaint
  • Handle PDF files with # # obj entries split across lines
  • Print and Cut label icons now route through QIcon at runtime to color to theme
  • Fixed multiple checkable menu options not showing check mark icons.
  • Emit separate laser enable flags for Thunder Titan controller.
  • Increased PWM frequency limit to 4000 kHz
  • Using MM or IN units (upper case) didn’t convert
  • Prevent crash on Preview after importing or opening a MillMage File.
  • Prevent crash on Preview after importing MillMage File.
  • AppVersion never reported an unparseable version
  • Shape Alt-Drag was not snapping properly to vertical positions
  • Harden the cubiio protocol
  • Edit camera page overwrite mount type fix
  • Add missing Sparrow and jagua-rs license details

Existing Feature Updates

  • Changed QNumEntry to allow comma or dot for the decimal place and ignore previous commas and dots, show thousands separator as thin space.
  • Show ‘Cmd/Ctrl-Arrow:’ instead of ‘Ctrl-Arrow:’ in settings to indicate Mac command.
  • Filter path & weird chars out of the document title in exported AI files
  • Update to latest VC Redist and remove unneeded version from installer
  • Break apart and Auto-join now preserve tabs
  • Added custom shortcut keys for user defined macros.
  • Add app version number to prefs
  • Enabled split marking for BSL galvos
  • Double-click in node edit to convert to path
  • Show a warning when importing a Galvo or DSP device with a Core License.
  • Improve theme so selected items and progress bars retain part of their original blue color instead of turning white for light theme and black for dark theme.
  • NewDeviceWizard shows a message that user does not need to edit comms settings except when resolving problems
  • Ensure consistent G-code in messages and gui, capitalize Error: in console.
  • If user runs probe wizard after run start, show a warning before starting the job to remove the probe and wires.
  • New comm status of Not Responding so error message can distinguish between disconnected and not responding.
  • Changes to License dialog to be more clear and have links to web pages for help
  • Faster bitmap loads for large projects
  • Allow ESC key to close measure tool
  • Exclude guide lines when generating thumbnail bounds
  • Add support for Ruida UDP file retransmit
  • Added vector troubleshooter
  • Added better multi mesh support for 3D Import and depth map conversion.

Miscellaneous

  • Allow trialing Pro mode with a valid Core license
  • Update Buy and Upgrade links to be ready for MM Pro
  • Allow pasting of valid URLs into Web Tool browser
  • Added legal warning that must be accepted before SVGNest can be used
  • Added ‘Paste in Place’ to right click context menu

Code Refactors

  • Cleaning out some warnings
  • Initial import of WebApi library and creation of connection type
  • Modified device shutdown logic to cleanly release device resources
  • Disallow LaserEvents after mainwindow has already closed
  • Added GCodeDisplayFlavors and UserGCodeBlockManager::FillFlavorComboBox
  • Split or reassign protocol destructors to Release methods

User Interface Updates

  • Improved visibility of toolbar drag handles and overflow arrows.
  • Added padding between items in the main toolbar.
  • Changed style of buttons in 3D import and depth map settings dialog to better show when a button has focus.
9 Likes

Impressive development, congratulations. :+1:

I’m “working” my way through the changelog but can’t find a note about “Generate Path from Cut”. I’ve found that it works a bit like tracing, but the result/purpose/use, is unclear to me.

PS. double-clicking to make shapes editable (convert to path) in edit mode is a small but very welcome shortcut to the workflow.

4 Likes

Generate Path from Cut is useful if you want to export your design from LightBurn while retaining a property you added through the Cut Settings Editor, like Tabs or a Kerf Offset.

1 Like

If your current license has expired can you still download a trial version?

You can deactivate your license and see if you have a trial extension available. If not, you can email us at Support@LightBurnSoftware.com with your trial ID and we can take a look.

Thanks, I’ll have to test a little more to see the “thread stone” :wink:

I could not find this feature. Any hints as to where it is?

I’m not right next to my LB computers, but I think it’s under the edit menu.

1 Like

It is if you open the correct version of Lightburn! DOH!!! :rofl:

1 Like

I’ve tried using this new feature to realign shapes with kerf settings to test if I could use “remove overlapping lines” later in the process. It doesn’t work (for what I tried the feature for), and the original shapes are accidentally changed in the process, i.e. radius is added and lines are broken.

It’s past bedtime here, I’ll try again tomorrow.

I should be able to import .svg files, right? I used a test generator for the attached
test-grid-xtool-d1-pro-10w-cardboard|0x0

and got this error:

Same behavior in the current (Intel) Lightburn.

The file did load OK into Growly Draw, a simple graphics program, and into XTool Studio.

Was the generator Ai-based? It looks like the SVG parser doesn’t accpet mdash’s, which Ai tools are somewhat famous for. Could you give us a file sample to investigate?

That’s really great! I expect many great additions to come :slight_smile: I can already think of a few, but I currently won’t have time to create them. Maybe next year :slight_smile:

4 Likes

So far, I couldn’t reproduce this. The generated paths are created as a group on the same layer, and never changed the original shapes for me.

Not sure, what you meant by “remove overlapping lines”. Can you elaborate, and maybe share the file you’re working on?

I know, you know this much already:
“Edit > Generate Path from Cut” generates shapes based on the Cut Settings, basically what the preview shows.
For example, this is with an outward Kerf Offset, and Perforation Mode enabled

“Generate Path From Cut” results in this:

I’ve created an internal request to get the new feature documented :slight_smile:

2 Likes

Absolutely!
I’m excited to see what people do with the REST API!

I think what I’m seeing here is that you’ve got Kerf Offset and Remove Overlapping Lines enabled before using Generate Path from Cut. In the converted shapes, the Kerf Offset creates the radius, and the only place where the lines are overlapping enough to be removed are toward the bottom (probably also top) where the curves meet.

@JTR @Aaron, thanks for the feedback.

The “meaning” of my experiment was to find a way to nest shapes with kerf more efficiently, i.e. to be able to use “remove overlapping lines” from the optimization settings. (This function does not work when kerf is assigned)
I want to see if the new generated shapes from “Generate Path from Cut”, which are a copy of the original plus kerf addition, (the new dimensions containing kerf are correctly displayed), could be used for that.

The solution is actually simple, it just took me a little longer to get out of the rabbit hole.
By putting the new generated shapes on another layer without kerf settings, ungrouping and unlocking the shapes, I can realign and optimize with “remove overlapping lines”.
It looks promising and will be worth the little detour.
I’ll be testing it out in real life soon.

PS. after the new shapes are generated ( “Generate Path from Cut”), the original shape is selected, the new shapes should be selected automatically in my opinion.

In the picture is a nice example where I often want to use what I have described.

1 Like

I attached the .svg file in my previous note. It’s not AI-generated. It comes from here: Free Material Test Grid Generator for Diode Lasers — SVG + G-code | Laser Tinkerer

The file didn’t upload correctly. I can reproduce this by downloading an SVG from that site with just the defaults.

I tried opening that SVG file with three browsers, and every one throws this error
error on line 1 at column 480: Unexpected entity: mdash

Looks like AI still played a role here.

Did you successfully use this site before?