LightBurn v2.0.00-RC2 Release Candidate

We’re excited to announce the public release of our LightBurn 2.0.00 Release Candidate! Avid users will notice that we bumped the major version number (2 :tada:), and we skipped two minor versions (sorry 8 and 9, we had things to do).

The reason for the jump is mostly to do with some significant under the hood changes — we updated the development framework that much of LightBurn is built on. This update greatly expands the range of features and UI changes that our developers can implement. While most of that work is invisible, you’ll notice our entire interface has a (subtle) new look — don’t worry, everything is still right where you left it.

Of course, 2.0 also has lots of exciting new features that you can use right now, including Dark Mode, additional Shape Creation tools, an Edit Nodes submenu, an improved Camera Calibration option, and more. Read on for additional information, and our full changelog.

Download the 2.0.00 Release Candidate here. For full instructions on installing and using a Release Candidate, see this post.

As always, if you encounter a bug, please let us know by sending an email to betasupport@lightburnsoftware.com with as much information as you can recall about what you were doing, so we can try to reproduce it and fix it.

Dark Mode

You can now select from three Application Themes in the Display tab of the Settings window: System Theme, Classic Dark, and Classic Light. Important note: switching themes requires a restart.

New Built-in Shapes

You can now select and create Triangles, Pentagons, Octagons, Stars, and Dual Stars from a stacked menu of shape creation tools.

Click the arrow in the corner of the shape creation icon, or click anywhere on the icon and hold, to open the Draw Shapes submenu and select the shape you’d like to create.

Edit Nodes Submenu

Activating the Edit Nodes tool now expands a submenu with buttons for each node editing option. Click a button to activate an option, then click over a node or path to perform that action.

Keyboard shortcuts still work just as they did in previous versions.

Experimental Camera Calibration

We’ve implemented a new Camera Calibration wizard with an improved — and easier! — flow. This wizard uses live tracking of an AprilTags pattern to calibrate your camera’s lens.

To access it, right-click in the Camera Control Window and select Calibrate Camera Lens (experimental). This is one of the features we’re most eager for feedback on — please try it out and let us know what you think of the new process, or which instructions can be made more clear.

Stacked Boolean Operations Buttons

All Boolean operations are now stacked into a single button. The Boolean Assistant is now the default option, and clicking once will open it.

Click the arrow in the bottom left, or click anywhere on the icon and hold, to open a submenu with individual operations. Selecting an option will perform that operation, and will also make it the button’s active operation, meaning you can subsequently click the button once to perform that operation again.

Cuts / Layers Window: New Icons and Context Menus

We’ve updated the icons in the Cuts / Layers Window so they better indicate the actions each button performs.

You can now right-click any layer to open a context menu with options to disable, hide, flash, or select objects on that layer (or objects not on that layer in the case of disable and hide).

Right-clicking anywhere over the column headers opens a context menu with options for enabling, showing, and sorting layers.

Independent Design and Machine Units

Design Units and Machine Units are now independently adjustable settings.

  • Design Units are used in your Workspace, where you create and edit graphics. You can change Design Units in the Settings window or by pressing the mm/in toggle in the Numeric Edits Toolbar.

  • Machine Units are used when entering layer settings through the Cuts/Layers Window or Cut Settings Editor. You can change Machine Units in the Device Settings window.

Other Notable Changes

  • The Camera Control Window has been updated with new tabs separating tools to Capture and Adjust overlays. Windows users will see additional tabs to control Exposure, Brightness, Contrast, White Balance, Hue, and Focus.
  • Enable Switch to Select mode after drawing a shape in the Editor Settings tab of your Settings to immediately exit the Draw Shapes tool after creating a shape and enable Selection instead, allowing you to adjust the shape using the handles to Move, Size, Rotate, or Shear.
  • The Copy Along Path window now has a Select Results toggle.
  • The Galvo Rotary Marking window now allows you to visually adjust Output Center.
  • Head mounted camera alignment has a new wizard and option to use an AprilTags pattern.
  • Macro functions have been moved from the Console Window to a new Macros Window.
  • The Create Barcode tool now supports AprilTag and and ArUCo barcode types.

Change Log for LightBurn-v2.0.00-RC-2

Changes Since LightBurn-v2.0.00-RC-1

Infrastructure

  • Fix changelog generation for new tags in type

Existing Feature Updates

  • minor compilation speedup
  • Re-ordered windows in the “Window” menu to make more sense
  • EZCad device isn’t “busy” if not connected.
  • Material test speed limit upped to 15k for galvos
  • Add support for 2nd laser source to JCZ device
  • Changed “set laser source” command to streamed version
  • Detect support for dual-source JCZ auto-switch
  • Sort material test swatches by “heat” output (#750)

Bug Fixes

  • Prevent download from crashing on DNS fail
  • Pause resume checks were overzealous and causing issues.
  • Fixing late night bugfix that introduced another bug on pause/resume for GRBL.
  • FillCameraFPS was crashing, possibly when unusual cameras had no valid modes
  • Remove unused icon theme system from Qt5 builds of LightBurn and MillMage to prevent application crash on MacOS.
  • Theming and Icon Recolor bug fixes
  • Allow device size mismatch to work correctly when imperial dev units are selected (#754)

Miscellaneous

  • minor tweak to self check
  • Save Cylinder Correction and Rotary configs to project (#745)
  • Remove Grbl M3 and LPC as options from Find My Laser (#757)
  • Remove the Emblaser specific first run popup (#755)

Other Changes Since LightBurn-v1.7.06

Bug Fixes

  • ENG.Tool.pos was set to WPOS instead of MPOS (#606)
  • missing LB_LASER definition
  • ArtLibrary replace and rename were swapped
  • XTool gcode output in mm only (#621)
  • Galvo rotary / continuous marking would freeze because of an incomplete state setting
  • ToolState (jog speed, dist, etc) weren’t being restored properly
  • Spelling & Grammar fix for Messagebox when attempting to adjust image with pass-through enabled.
  • Jogging from move/control panel now works in relative and absolute mode (#630)
  • Prevented Use Selectoion Origin setting being shown when in beginner mode.
  • Converting float to String missing in Protocol_Gcode_Base::JogStart.
  • Grouped masks when grouped with the masked image didn’t save correctly (#640)
  • Tabs in grouped shapes were not immediately generated
  • BSL corfile wasn’t being correctly loaded
  • Make sure Move panel always shows up by default (#643)
  • Changed the way Message boxes determine which option was selected so the correct result is returned in both Qt5 and Qt6.
  • Ensure settings dialog always opens on first tab
  • Virtual Camera on MacOS were crashing DEV-824
  • Jogging checks for gcode devices
  • ShowTwoChoices was configured only for Qt5 responses
  • Barcode shape was leaking memory
  • Extreme perspective overhead cameras were breaking new overlay reprojection (#662)
  • Fixed crash from UCCNC not having a comms thread
  • Preload sound effects and just trigger them when needed
  • Live font update while selecting in combo box for Qt6
  • Parse GRBL position correctly when reporting in inches.
  • When parsing a DXF, handle CR/LF in either order, BUT properly handle blank lines (2nd instance is not skipped)
  • prevent crash when setting freq > 1000kHz on BSL cards
  • Don’t try to remove overlapping lines on offset fills
  • XTool’s parser is broken, so always emit X & Y values when cutting
  • Ctrl+Click for node edit is more consistent, double-click no longer deselects all, removed some debug output
  • Fixed settings and cut settings layouts
  • Multi-action button timer-popup would leave button un-checked if the user cancelled out of the menu
  • Call ENG.Initialize() after construction to connect signals
  • Fixed some spacing issues with Device Settings window
  • fill core_machinecontrol for spindle, coolant, and vacuum (#682)
  • Lazy fix backup text path orientation so sharing works (#681)
  • Fixed column spacing for frame dialog
  • reverted New Device Wizard style setting back to Aero
  • Added support for AI / PDF files with null objects
  • Don’t allow Trim (scissors) on locked shapes
  • DXF inline MTEXT height was not applying unit scaling (wrong font height sometimes)
  • Using cylinder correction with global passes could cause part of the path to be skipped
  • Dev units were not always getting properly set on first app launch
  • incorrect jogging behavior in head camera wizard
  • Enable word-wrap in evaluated label of barcode text, so dialog doesn’t widen
  • extra camera streams were being started unnecessarily
  • App was crashing when trying to manage saved positions (#703)
  • App was crashing when trying to manage saved positions without being connected
  • emblaser was not returning to correct Z-height for head camera scan
  • Necessary imageformats module was not installed for Qt6 (#716)
  • lbcli was not using --qt-version option for depends or pre-build (#717)
  • custom gcode framing was not in constant power mode
  • framing was sometimes turning off the laser afterwards even though Fire button is pressed
  • Material Test center value was not saving (#715)
  • Fixed crash in BSL protocol during Find My Laser
  • Force galvo grayscale to output per-pixel commands
  • Emblaser Pro was not reporting position status correctly (#723)
  • Emblaser Pro protocol was not reporting position status correctly
  • Show “System Theme” if user has not set a theme.
  • Optimize shapes was wrapping around on open shapes
  • Cut Builder path clustering was crashing (fixed / reported on forum)
  • pressing enter in some camera dialog distance spinboxes would activate nearby buttons
  • Fix switching between metric and imperial in EasyFloatWidget (#726)
  • Fix edgecase crash in prim/vert cache loading
  • UI Style change for; New Device Wizard, USB Device Wizard, Bridge Discovery Wizard to ensure they respect application theme and all text is readable.
  • Better detection of shared nodes in Trim / Scissor tool (now handles intersections at nodes correctly)
  • Fixing GRBL error 24 on pause/resume. (#743)

Miscellaneous

  • Added bundle text to Import Preferences button in devices dialog
  • Fix zstd license typo
  • Emblaser Pro changes
  • Filter out system default serial ports on Mac OS (#616)
  • Added forced EULA acceptance on application start (#619)
  • Tool changes will be emitted if tool hash is different if not ATC
  • Temporarily disable dark theme until UI fixes are implemented.
  • Fixed typo
  • Title case consistency (#673)
  • cleanup Qt lupdate warnings
  • Display warning to user when configured machine size doesn’t match reported machine size
  • Wrong app name used in crash message
  • Change Log now automatically downloaded and displayed to the user (#706)
  • Change Log now automatically downloaded and displayed to the user when a new version is available
  • Keep track of Imperial vs Metric mode internally (#711)
  • BSL Config page said EZCad
  • Allow full GS1 barcode support (#735)
  • Only allow exporting bundles from devices dialog (#730)
  • Allow importing bundles from devices dialog
  • Prevent update notification popup from showing until after new project dialog (#742)

Infrastructure

  • Separate files names for each Qt version
  • Split change log for each app and updated versions (#615)
  • memory diagnostics
  • memory diagnostic changes
  • Cancellables, camera async fixes, driver fixes
  • Various updates and fixes to language tooling
  • Added option to fix title case translations in lupdate
  • adding a few analysis tools for languages
  • Add retry logic for stupid stupid Apple notarization (#701)
  • Add language comment analysis command
  • trying to fix webp format loading for MM (#720)
  • Only build qt 6.5 except for dev
  • Fixing job Qt version setup

User Interface Updates

  • Move devices management tools under Laser/CNC Tools menus (#617)

Code Refactors

  • Added Shape->GetLayerPriority() function, so less code needs #ifdefs
  • Use new GetLayerPriority() function to avoid crashes in MM with shared code
  • QSVector adapted for Qt 6.5 and 6.8
  • msvc linker and qt deprecation project options
  • remove pQCam reference
  • updated .pro files with Qt6 compatible MacOS build options
  • patched up ModelShape::GetScene for Qt6
  • enabled Qt backfill camera drivers instead of WinRT
  • cleanup comments prior to push
  • Using optionals in toolstate instead of float
  • sync up vision classes from QtCameraTest
  • add /bigobj to cmake flags to fix C1128
  • initial hack at cameracap to support new Vision classes
  • deviceChange event
  • added L8 and RGBA frametypes to both WinRT and AVF drivers
  • HTTP Cameras and mode selection
  • AV Video driver L8 frame type fixes
  • QLBFontComboBox::highlighted
  • compatibility and fixes for Qt5 and MM
  • reference to AVVisionDeviceSource
  • initial head mounted camera alignment wizard update
  • reintegration of QtCameraTest changes
  • explicit shutdown of camera sources
  • Formalizes ToolModel, ToolSettings, ToolState. Adds OriginType.
  • Use OriginType as part of the protocol and correct behavior of jog widgets.
  • Resume button wasn’t always sending the resume command for gcode devices.
  • Migrated update checker to use Core_Download
  • framing now goes clockwise
  • all framing goes through TraceTightFrame now
  • remove deprecated ShowFrame methods
  • Material Test classes were still named for galvo even though they are now generic

Existing Feature Updates

  • Added Groupbox, RadioButton and Spinbox Widgets to ProtocolSettings.
  • Auto-init sim parameters for galvos, allow “Read from controller” (faked, but good settings)
  • Tweaked DXF spline simplifier to do less damage to small shapes
  • added variable power / constant power to XTool protocol
  • Restore file load was no longer happening at the right time (#659)
  • Restore file load was no longer happening at the right time. Consolidated code between apps
  • Improved performance of Warp / Deform by not rebuilding Cuts/Layers with every update
  • Faster Taper Warp tool update (don’t redraw Cuts/Layers constantly)
  • Don’t auto-revert to select mode for Text, add auto-switch to select mode to MM
  • Cleaned up a bunch of compiler warnings
  • Cleaned up a bunch of compiler warnings
  • Allow up to 5000 mm/sec for reverse interval speeds
  • BSL SDK update, freq limit fix (#699)
  • Added BSL connection message
  • typo fix in BSL update
  • BSL libraries update to stop crash on disconnect
  • Changes for Emblaser3
  • BSL libraries update to fix unplug crash on Mac
  • Allow decimals in firmware filename for E3 upload
  • Removed old API call from BSL proto
  • Added missing translation context to backup browser
  • Added missing translation context to backup browser
  • tweaks to EmblaserPro menu options
  • Updates to initial EmblaserPro settings
  • EmblaserPro WIFI connect now functional
  • Tweaks for Emblaser3 gcode output & menu
  • Added support for CO2 analog output to BSL protocol
  • Minor Emblaser wording tweak

New Features

  • Qt6 Dark Mode and Cameras (#620)
  • Dark Mode
  • dark mode splash screen
  • Add Has ATC option
  • Add Has Tool Probe option
  • Added new expanding (accordion) container widget to allow for UI design with less clutter.
  • Automatically load the most recent prefs backup if failed to load prefs.ini on startup
  • Camera Preview and Capture FPS
  • new CameraPreferencesChanged event
  • case-insensitive camera ID matching
  • shut down active cameras when monitor is asleep
  • display Core or Pro in window title
  • decouple design units from machine units (#663)
  • allow setting of units during device creation (#672)
  • Added support for dragging between Art Libraries (#674)
  • Added ‘Focus Light’ button for BSL lasers to enable 2nd focus dot
  • Force Light Color Scheme for Windows Qt6 and MacOS Qt5 & Qt6 versions
  • Allow temporary undo/redo in Warp/Deform for movements (#679)
  • Added a setting to specify you have an RF tube, to disable the “min power == 0” warning.
  • Setting to revert back to Select mode after drawing a shape (#683)
  • expanded camera controls
  • “Choose Camera First” requirement for camera wizards
  • head camera alignment scaling allowed down to 1% to support microscopes over large beds
  • apriltag pattern generator for head camera alignment wizard
  • AprilTag automated head-mounted camera alignment
  • Reconnect the device after updating machine settings (#705)
  • new camera calibration process with live apriltag tracking
  • Application UI theme framework. Enables proper support for dark mode with white icons.
  • add Send to Laser option for Material Test (#738)
  • Allow the user to select whether a gcode device should be regularly polled for the tool position

Language Updates

  • fixing title case translations
  • Fix translations that should not have been marked as unfinished
  • reconcile some mismatched translations
  • update all languages
  • Fix wording for rubber band outline DEV-821
  • Fix wording in bundle dialogs DEV-861
  • Remove incorrect tool tip DEV-870
  • Fix capitalization in center finder DEV-942
  • Start on adding Ukrainian language
  • Update translations
7 Likes

Linux? :fireworks:

This changelog update was written back when we were still making Linux builds. There is no Linux version of LightBurn from 2.0 onward.

1 Like

Updated, corrected and removed reference.

1 Like

I noticed a discrepency in the change log above and RC-2 for the Camera Controls.

I’m on Windows and I’m not seeing a tab in my Camera Controls for editing brightness, contrast, exposure, etc…

image

What a complicated and long-term job, congratulations to all the staff.

7 Likes

The None camera lacks those adjustments. :grin:

2 Likes

Well I’m an idiot. But to be fair, all the other options are there when selected NONE. But you are right I hooked up to a machine with a camera and sure enough they are there.

4 Likes

lol, I feel your pain…

2 Likes

Are you going to roll the fixes identified in " Other Changes Since LightBurn-v1.7.06" into a version 1.7.07 so that us linux users can have at least bug fixes that exist in 1.7.06. The list shown seem rather extensive.

1 Like

Have a MAC Mini M1 with a Longer Ray5 10W, The 2.0 pre-release will inmediately freeze when I try to select the connection to my device.

I tried the new node selction tool, and once I put an object there, and hit the node selection tool, no nodes are indivudally shown.

first pic slected object:

pic after clicking node tool:

No matter if you click the seleciton tool on the new node tool bar, and try to selct the object, the nodes do not appear:

The star is now a native shape. Click on EDIT menu and click on CHANGE TO PATH. Presto, you now have nodes. Used to only be an issue for ellipses, rectangles and polygons. Now the star and double star have been added to the native shapes.

1 Like

Thank you for the addional step needed

1 Like

We would like to, yes. The timing of that is up in the air.

1 Like

Found it. Ok.

They promised to add auto-rotation to the 3D Slice. there is no such thing in RC… unfortunately. and this feature is very lacking!

I installed 2.0 and now I can’t resize the window top to bottom. I am using a Mac. The arrows for resizing appear on the sides, but no arrows for top and bottom adjustment. Problem is I can’t see the color bar at the bottom, so I can’t assign settings.

Some things to try. Make sure color palette is enabled in the window menu. Try clicking reset default layout. Try double click on the title bar. Try drag the window down from the top, then using the size arrows from the top of the window stretch it until it hits the top of the screem, it should fill the space properly.

1 Like

As @thelmuth points out,

I moved your post to keep the comments about this Release Candidate together. :slight_smile: