Haven’t found a good guide, so after some extensive testing and finally managing some good results, I figured I’d make a guide on how to do multiple passes using Luban. Please read the entire guide before starting, it seems daunting, but once you get through it once or twice, it’s quite simple.
Disclaimer: I am in no way responsible for any possible damage to your machine or materials, although risk is very minimal if you follow along exactly as I am going to include images of my settings, setup, and results as I’ll be carving this. Also keep in mind, Luban is VERY limited compared to say, Fusion360, Microvellum, or other CAD/CAM. If you’re familiar with getting materials loaded, origin set, models loaded, etc. you can skip to section III for the roughing pass setup.
Materials and Machinery in this tutorial:
Snapmaker A350 + Rotary Module + Enclosure
Tools: 1/8"|3.175mm double-flute down-spiral for roughing; Snapmaker Straight Groove V-Bit for finishing.
Material: Solid Cherry Wood - L:90mm, D:45mm
Model to be machined: Scary Pumpkin Head by ideaform3d found here: Scary Pumpkin Head by ideaform3d - Thingiverse
Software: Luban v4.0.4 (latest beta on github as of writing this)
1: Measure stock and write down the length/diameter to put into Luban later.
2: Choose an appropriate roughing bit, usually an 1/8" flat mill, though a bullnose should give less cusps and a better end result.
3: Follow Snapmaker’s quick-start guide to get the bit put in, stock loaded into the rotary module, and use Origin Assist to get your start origin setup. (I suggest at this point to try making one of the jaws straight up for identification)
4: Download the model from above and Luban 4+ and install it.
II: Loading and Centering the Model
1: Load the 4-axis CNC workspace in Luban and input the length/diameter you wrote down earlier.
2: Either click the folder icon, or drag-and-drop the STL into the workspace to have Luban map it.
3: Position and size the model properly.
3a: Always keep X at 0 to keep it centered in the stock.
3b: To use maximum of the stock, for “W” multiply your diameter by 3.14 (I suggest downsizing by about 0.5mm to ensure you carve the entire circumference)
3c: Set Y at half the model height (H size directly under it) to put it directly at the end of the stock, or if you plan to use the tailstock, add about 3mm for a safety buffer.
4: Double check the small preview window to verify if that’s how you want the model.
III: Generating Roughing Gcode
1: After clicking next to process the model, click on the model, then create toolpath.
2: Fill out the roughing settings. I’ve provided an image of the settings I used, one of the most important settings is “Allowance” as it should leave material to be cleared away with the finish pass.
3: Modify the settings to match your needs. The wood I’m using is fairly soft, so I can do quick cutting moves, and a good stepdown/stepover.
3a: Stepdown is how deep the bit takes with each pass (0.5-1mm is good here).
3b: Stepover is how wide the bit cuts as it moves across the surface (a good number is 30-40% of the bit diameter)
3c: While I’m using 800mm work speed in my example, for woods like oak or maple, 400-600 would be better. Woods like poplar can be run faster.
4: Check the preview, the lines will be spread out and the simulation will look a bit blurry and rough.
5: Generate and export to file, not to workspace, we have optional modifications to do.
IV: Generating Finishing Gcode
1: Close the preview window, and click delete on the toolpath we just made.
2: Click create toolpath and select the straight groove v-bit for epoxy tooling. Leave the settings at the default as seen in the image.
3: Check the preview, it should look like a single pass along the surface, and the simulation will be clean.
4: Generate and export to file as before.
V: GCode Optimization (Optional, but recommended)
1: Download a text editor that’s more powerful than notepad (I use Notepad++, and will be referencing it and its functions in this section. Also note in editing sections I will be using _ as a SPACE, THIS IS NOT AN UNDERSCORE)
2: Open the roughing gcode file in N++ and stare at the Gcode-ness and take in the glory of what you’re doing.
2a: Specifically what this section is for, is making the carve quieter and higher quality.
2b: In most CNC milling, a climb cut produces less noise, chatter, heat, and tool wear with giving a better surface finish. However, Luban defaults to traditional milling, so we’re going to reverse the rotation direction.
3: In the header section, look for “max_b” and “min_b”, reverse these two, making max<>min and vice versa, then remove the - and add it to other number.
3a: This shouldn’t be necessary and only for the run boundary, but it’s worth mentioning.
4: Time for mass change of the B direction, remember _ is a space here. Using the Ctrl-H shortcut to bring up the replace popup.
4a: In the find box start with “_-B” and in the replace with box “_-C” this is a placeholder for now. Click “replace all”
4b: Find box “_B” Replace box “_-B” Replace all.
4c: Find box “_-C” Replace box “_B” Replace all.
4d: This changes the B rotations with B- rotations, since the snapmaker actually reverses these on the rotary module. In the GCode, B makes the rotary spin clockwise, however in the snapmaker, clockwise is B- direction. Annoying to any CNC machinist.
5: Save the file, then open workspace in Luban, connect to your snapmaker, and send the file via wifi.
6: Repeat the above steps for the finishing gcode, do note it will take SIGNIFICANTLY longer and may appear to freeze. Leave it alone, it’s replacing thousands of lines. Go to the restroom, get a drink, etc.
VI: Begin Carving/Rough Pass
1: Since we’ve already loaded the roughing bit, loaded the material, and set the origin, just select the roughing file and hit start.
1a: You can install the tailstock before starting if you wish to help reduce vibration, run boundary, etc.
1b: Note the napkin underneath, I just use this to catch dust, so I can reverse-parachute it into the trash instead of vacuuming it up.
2: WATCH THE FIRST ROW. Just like any machining or 3D Printing, watch the first pass to ensure it goes smooth.
3: Go entertain yourself while it’s running, although roughing passes do not take too long. Mine took a total of 55 minutes.
4: After it’s complete and you click finish go into the Control section on the touchscreen. Note the B axis, it should be around B90. (This is important and VERY annoying about the snapmaker, keep this number in mind)
VII: Finish Carving/Finish Pass
1: On the touchscreen, click on the Bit Assist that’s bundled next to the Origin Assist. Follow the prompts to get the bit changed to the v-bit.
1a: Do NOT move X, since these are generated in Rotation mode, there’s no X movement in the GCode and it will simply start wherever you leave X.
2: Go back to the control on the touchscreen… Notice for SOME REASON snapmaker has gone thousands of degrees out. Why? I don’t know yet. However it’s easy enough to get back to, and set the B origin.
2a: While it’s not strictly NECESSARY to do the following steps, it saves a ton of time. It WILL rotate back to the origin before it actually carves, but my last test took over an hour to spin back to B0 uselessly.
3: Set the B origin back to 0.
3a: For this, take the number on the control screen for B (Mine was B70249.00)
3b: Divide it by 360 (Mine was 195.4138).
3c: Remove the decimals and multiply the whole number by 360. (195x360=70,200)
3d: Use the touchscreen controls to rotate to what you got in the equation (Mine: B70200.00) It should be back on the exact B origin you set (if you set a jaw clamp straight up, it should be straight up again, your model should also be pointing directly up)
3e: Tap the set origin tab, set B origin. Do not tap on any other axis.
4: Run your finish pass gcode.
4a: If you’re unsure if you moved any other axis during the setup above, unless you tapped set origin, MAKE SURE X = 0. Remember, it will carve at whatever X it’s currently at, as rotation mode has no X moves.
6: Profit! Your model should run through the finishing pass and total time is but a fraction of just doing the entire thing with the v-bit. Example; Using the default for the straight groove v-bit default material, Luban estimates 57 Hours, and 45 minutes. Using the roughing pass, Luban estimates 1 hour, 8 minutes for the rough, and 4 hours, 24 minutes for the finish pass. Do keep in mind these ETAs are usually not accurate, and the time will actually be a bit less. You can use this guide to make multiple passes, just remember to set your allowance appropriately as you move down in bit size.
Any other questions, feel free to ask.