Snapmaker luban wishlist for lasering

Hello, I am enjoying lasering with the snapmaker.
I feel that the snapmaker luban software is somehow in development (updates are “wild”, etc…)
I’d like to share some of my ideas how to improve the luban with the developers.
I hope this could be the right place to do it.
I think that some suggestions could come handy.

Colored toolpath according to speed

Assume that you have a big project for lasering.
Then you have to set e.g. 20 tool-paths.
What about e.g. depth, you do not have to be very careful, because if you load generated gcode into the workspace, you can see individual depths and potential flaws.
On the other hand, you cannot see the speed set to the toolpath.
I think it could an easy task for developers, to make a simple “temperature scale”.
Blue colored the slowest, red-colored the fastest tool-paths.
This would be very handy for me because I am repeatedly making mistakes what about the speed.

Lasering offset

For several projects, it comes very handy to have a lasering offset per toolpath, e.g. I have a cnc’d picture, I want to “color” it with laser, and I would like to set laser offset for several layers.
Currently, I have to achieve that by separating those tool-paths into individual projects.
It would be easier for me if each tool-path would have also an offset settings.

Enable more than 50 passes

Assume that I want to cut 4mm plywood. I know that I can do it by 80mm/min, 40-laps, 0.1mm step.
But I also know that if I do 200 laps, 300mm/min, the cut would be very thin.
If I want to do that I simply 5-times duplicate the path in svg file, and then set 40-laps, 300mm/min settings.
It could save some time if it could be set in luban directly.

Enable per-path (per-element) oriented gcode generation for svg’s

Assume that you have an svg file with 10 squares in it and you want to do a laser-cut from 2mm plywood.
So, you set some settings (say 10 laps).
The snapmaker will be at one lap lasering first square, then move to second… and finally to the tenth and then it will be doing the second lap.
If you enable to do per-element gcode generation in the way that machine will be lasering all 10 laps at once for the first square, then move to another one, you will save all the unnecessary moves between squares.
This will bring a massive speedup.
Currently, if I want to reach such behavior (optimize lasering) I need to place each element into an individual svg file.
It is ok if I have up to 5 svg-elements. But usually, I have more…


It would be nice to have more decent alignment options in the luban editor.
An inspiration could be taken for instance from the Inkscape (free sw for svg editing).
They allow a user to set alignment in the way e.g. “align right-edges of these objects with the right-edge of the last selected object”.
Might be it sounds too complicated, but it is not and it is very useful.

Group operations

The editor is missing some functionality.
E.g. if you select an object, and if you press ctrl+c, ctrl+v you can get a copy.
If you select two objects (and press ctrl+c, ctrl+v), nothing happens.

Undo operation

I think it is obvious that this is an important feature.
E.g. while I am working with a text directly in the luban editor, I can do a lot of mess by accidentally clicking on objects.
It is annoying to set it (for example positioning) correctly back manually.

Add multiple svg’s at once

Sometimes my projects are composed of multiple svg’s (say 10).
It would be nice to add them at once instead of ten-times doing the routine add, select, submit…

Toolpath templates

Say, I have found some solutions for lasering.
E.g. optimal settings to cut 3mm plywood, to engrave one-millimeter deep slot into plywood or so…
I would love to save those settings and using them by selecting a saved template, instead of filling them manually.

Selecting object for toolpath (optimally having the object list)

(If I am not mistaken) In previous versions of luban, there was object list available even in toolpath settings (process mode).
So you could pick an object from the list and create a toolpath for it.
It is not anymore.
Currently, you have to pick an object from the workspace.
Imagine a situation that you have loaded 3 svg layers and all of them are 50mm x 50mm.
Selecting them from the workspace is not possible, because you can pick the first one or last one - not the middle one.
Now, I am solving this issue by clicking from the “process” mode back to the “edit” mode.
Then move the middle one (by say 10 mm), then back to the “process” mode, then creating toolpath, then back to edit mode, and move the layer back.
This workaround is crazy…
Also, the window of the dialog for filling up the toolpath settings makes problems for me because usually, I need to see what is selected. The dialog window cannot be moved.
I think the window could be movable or perhaps slightly transparent.


It would be also nice to have a set of shortcuts.
Might be they are present and just haven’t found out them yet.
For instance, creating a tool-path could have a special key or the aforementioned alignment functionality could be also under some shortcuts.

Remebering the toolpath settigns

When the dialog for creating a tool-path is triggered it is always filled with the default settings.
I would prefer if there would be filled the settings I filled in last time.

Human readable snaplzr file

Last but not least, probably the most important thing for me.
I would love to have the human-readable files, e.g. in xml.
A lot of stuff (I am doing), especially the calibration could be easily automated.
For instance, I have new material and I need to see what laser does for particular settings with speeds 100mm/min, 150, 200, 250, 300, etc…
It could be very easy to use any script processor (bash, octave, or whatever) and generate n-times a primitive and a tool-path according to my wish.


Thank you for your time to share the suggestions. We really appreciate that. @parachvte is responsible for Luban software. He will have a look at the suggestions and see how we can improve the performance of Luban. Thanks again.

1 Like