LightBurn 0.9.00 - Simulation preview, Trocen USB support, Beginner Mode, and lots more.

This release has taken significantly longer than any other to date, but it contains more new stuff than any other release too, so hopefully it's been worth the wait.

First, the big new features:

Full simulation preview window

The preview window now includes a complete motion simulator that includes acceleration and cornering speeds, a cross-hair to show the laser position, real-time playback, and playback speed control.  The device settings has a new window to let you tune the parameters to match your system. In the next release we want to pull the settings directly from your machine.

USB support for Trocen / AWC devices

This means that the TL-3120 is now supported, along with USB connections for the AWC 708c and AWC 608 controllers.

Beginner Mode

In the settings, you can now enable "Beginner Mode" to hide the more advanced cut settings and controls. It makes the software a little less scary for new users, and harder to accidentally set things - great for classroom setups and beginners alike.

Camera System Improvements

Much of the camera capture code has been rewritten. The camera lens calibration now has a special setting for fish-eye lenses which improves both ease of capture and the resulting calibration accuracy. It also gives you more usable camera area in the output. We've also added a "Capture" button to the main toolbar, and fixed a number of bugs in the alignment capture process.

Find my Laser - Automatic device setup

A common question from new users is "What kind of laser do I have?", followed by "Does LightBurn support it?" The new Find my Laser feature will automatically identify and partially configure LightBurn for use with any USB connected laser that it recognizes.

Dual Tube Support for Ruida

This is still a bit of a work in progress, but the first pass of dual tube support for Ruida controllers is included in this release.

Everything Else

We've listed the biggest changes above, but there's plenty more listed below, broken into relevant sections.

New editor features:
- Full simulation preview (with new motion planner)
- Added "Beginner mode" (simplified UI & cut settings)
- Auto device select / configure (Find my laser)
- Better crash reporting with function tracing on Windows
- Added hotkey for "Position Laser" tool (Alt-L)
- Added "Copy Along Path" function
- Ctrl + "Move Selection To" buttons will now move the laser to the indicated corner of the selection
- Added Rotate 90 CW and CCW, and connected them to , and . keys (comma and period, typically under < and > on north american keyboards)
- Added a setting to enable / disable the "Rotary Enable" control on the main window
- Brightness and Contrast properties for images
- Image Gamma control now affects bitmaps interactively
- Numpad arrows now jog machine (including diagonals)
- Added "Break line" (B) in node editing (breaks continuity at a node)
- Added "Select Contained Shapes" (WIP - needs changes to handle curves)
- Added support for ' and " markers for feet and inches in equations (5' + 2")

General usability & bug fixes:
- Changed Cut/Scan to Line/Fill - easier to understand for beginners
- Selection marquee now moves in cut direction
- Double-click a library entry to edit it
- Cut layer names show in the tool-tips for color palette entries
- Save & restore "Show Laser Position" & "Start From" setting
- Added slider to change tool button size in the settings, for high DPI displays
- Fixed font scaling / offset differences (may cause text spacing shifts in saved projects, initially)
- Moved Pass Count into the main cut settings (replaces "Priority" value)
- Offsets / Booleans now keep the most used source object color
- Added equation / units support to font entry boxes
- Added warning for missing fonts when loading a project
- Remember / restore maximized state of the main window, pre-maximized size
- Increased allowed precision for Jog Distance to 2 decimals (metric)
- Fixed a bug in the cut planner that didn't optimize shapes with a forced start point
- Fixed "break apart" crashing on grouped objects
- Fixed text being incorrectly selected by "select open shapes"
- Auto-delete empty text (or text with only spaces or newline characters)
- Images now flash when right-clicking an image layer
- Fixed translations of files, move, library, and other docked windows
- Fixed a rare bug where "remove overlaps" could confuse the preview into not showing anything
- Fixed an issue where it was hard to enter decimal places in Min/Max power on the main cut list
- AutoSave automatically deferred when pop-up dialogs are display (like Offset, Grid Array, Preview, etc)
- Fixed a bug where "Pass Through" and "Negative Image" options could be left on when loading a file with them off
- Fixed a bug that prevented joining some paths
- Hide / Disable rotary setting for Emblasers (no more accidentally setting it)

Camera System Updates:
- Added camera capture button to main toolbar
- Added new "fisheye camera" option for camera calibration, better fit for fisheye lenses
- Better handling of fisheye distortion (larger usable camera area)
- Now forcing "Cut Selected Graphics" off, and Optimize on when running camera alignment cut
- Closing the current file will now reset the camera capture background
- Fixed: "Frame" in the Camera Alignment wizard would fail if "Cut Selected" was checked in the main window

Import / Export improvements:
- Added DXF export (polyline only for now)
- Remember last export path and file type
- Fixed an import bug in PDF files using named instances
- Added support for TIFF images
- Auto convert text to paths when exporting to SVG
- Fixed an SVG importer issue with rotated arc segments
- Fixed AI import of odd sized 1-bit images
- Fixed a bug that created a dummy node at the origin when importing RD files for further editing
- Zero length lines and zero radius circles are now discarded if encountered during DXF import
- Fixed: importing SVG circles with no specified center point would crash
- Fixed importing of custom RGB color entries in AI files
- Fixed a bug in SVG importing paths with both style and class properties

DSP Controllers:
- Trocen USB support
- Relative Z handling for Ruida
- Support for dual-tube Ruida systems (work in progress)- [Oz] Added X & Y backlash values to Ruida machine settings
- Added "Wireless Panel" settings for RDWorks user settings
- Better handling of "is connected" and "Enable Rotary" states for Ruida
- Added Ruida min/max tube power to vendor settings
- Fixed rare crash when finished sending a job to Ruida
- Fixed "Process Offset" bug for Ruida

GCode Controllers:
- Added support for DefaultPrefs.ini, to override prefs.ini for shared use spaces
- GRBL can now pause at start/end of a cut (cut-through mode)
- Exposed S-Value max scale for Marlin devices
- Wait for GRBL/Smoothie to respond on startup before issuing home command
- Fixed a bug in GCode systems when using the square Frame button in User Origin mode
- Fixed some erronious "might be out of bounds" warnings in User Origin mode with GCode systems
- Fixed GCode generation ignoring the Min Power setting for grayscale
- Added a toggle to disable the "out of bounds" check for GCode systems
- Added ability to disable "return to finish position" at end of gcode job
- Machine settings now work correctly for older versions of GRBL (like 0.9)
- Annotated GRBL settings with $ numbers for clarity
- Added homing direction invert mask values to GRBL machine settings