Suggestion for new z axis capability for thicker hardwood

I would like to be able to raise the height of the z axis base a set number of inches in order to do deeper cuts ultimately. My plan is to be able to rough out a guitar neck and head on the Maslow. So I could see in software a setting for raising the height of the router platform (which would be braced on either side of the router base with vertical or horizontal filler strips. These strips would allow me to get above the rough material against the normal CNC backer board. In the software you would specify the height above the base, if that makes sense. Don’t know what router would have the Z axis range to completely cut the neck in the Z axis dimension. Maybe not possible, but that would expand the capability for not only guitars, but things like chair legs and mouldings, for example.

I don’t understand what change you think would be needed. The current system
doesn’t care what the height is, it just follows the instructions in the g-code.

just checkthat you have enough Z axis travel to match your model.

So there is no “safeguard” or configuration to prevent G-code from going straight thru the back of your router backing material? I don’t have CNC background, just assumed their would be some basic configuration settings that would prevent gross mistakes on X,Y, and Z axis. Like configuring the physical size of your CNC router, for instance, or the ability to “zero out” your depth. I guess I have seen these kind of features on big CNC machines that define the actual machine physical space/limitations and location of material. I think a reference zero point cutter is usually installed for this. Don’t really know where that resides in the software chain here.

For thick materal (thicker then he max depth of the tool) it may be an option to turn the wood around and do another run from the backside, (mirrored)
This does not leave much room for calibration errors, and needs an accurate origin marker. But that may be just enough to cut thick materials

Your z-travel down into the material is only limited by the amount the router can travel and the length of your cutting bit. In theory, if I had a cutter with a total length of 70mm, assuming 10mm in the collet, I could cut down to 60mm depth. My router travels 60mm until the collet touches the material.

There are safeguards in the x and y directions to keep the sled from moving off the sides, but there is no safeguard on the z-axis to allow exactly the type of thing you are talking about :grinning:

even the big professional machines tend to lack such protection. I’ve
drilledthrough the bed of a shopbot before due to giving it bad g-code

machines have you set the zero for the Z axis at the top of the material, they
don’t know how thick it is, so they don’t know how far you can go.

There’s usually machine coordinates and workspace coordinates, so the drill to New Zealand (pretty much the other side of the globe from the swamp, and where we just left) protection could be done in machine space. It should be configurable for different routers and z axis devices.

Mine thought it had moved to +35 (not -35) inches after a restart and drilled a nice hole trying to get to zero. Might be a good place for a glob of bondo

1 Like

That explains a bit of FreeCAD’s machine settings as well, THANKS!

Would be cool if there could be some kind of standard machine file protocol, so that one machine file can be used in different softwares.

How are the z cordinates dealt with?
bit touching the wood 0
lift bit 5 mm. Z 0.5 (Positive)
drill 1cm into the wood Z -1 (Negative)

Or is machine space 0?

When drilling trough the wood it stops at 0
so when you place a sheet of 22mm on the machine then Z 2.2 is (workpiece 0)
lift 5mm. would then make Z 2.7 (positive)
drill 1cm deep would then Z 1.7 (positive)

The first scenario looks less confusing, but i guess the second would be more logical to protect the machine. What is the kind of logic i need to engrave into my neurons?

Maslow treats z=0 as the outer (upper?) surface of the wood, negative values into the wood.

1 Like

Ok, thank you @blurfl ,

That’s clear, but leaves me with one thought, how to protect ‘machine space’ when cutting different thickness sheets?

Would it be an idea to give GC a box where you must enter the work piece thickness as a kind of limit?
In a way it would make sense to me to have such protection. How is this done on high-end machines?

One typically puts the material thickness in as a parameter when generating the gcode file. In practice, since material thickness varies from sheet to sheet, the gcode gets re-generated for each new sheet used. It’s practical to keep a sheet of sacrificial material on the workarea under the sheet stock to protect the bit from fasteners in the underlying frame. I use some cheap 5mm ply, others use foam sheet.

hmmm ok.

But the Gcode is generated in CAD so it’s not possible to alter the thickness from GC or is it?
I try to figure out if i can keep the design computer away from the machine somehow. Since my main desktop works far more convienent for CAD then any Laptop. And my desktop is in a little room upstairs… :slight_smile:
Don’t have a machine yet, but try to figure out what i need to do to have a flow that works for me and for the machine…

Just dump the files over the network to the netbook that controls the machine, but i don’t want to fiddle on the netbook in CAD software.

It might be cool to see a few workflow video’s how others work. I have the feeling that there are many way’s to do all this. But don’t yet know what way will best fit my needs.

what you can do in GC is adjust where Z=0 is to allow for the difference in
material thickness.

That’s the bunny. It’s complicated by the fact that you need to measure the sheet thickness, and that’s in the shop (and can vary a bit with humidity, if you’re looking for very high accuracy…) but keeping the .nc files on a network share that the Maslow host can reach does it for me.

GC can’t alter .nc files, but a text editor that can do a search/replace for ‘Z -.74’ to ‘Z -.76’ could take care of making the final pass cut through the sheet that swelled when the weather changed last night :wink:. Another reason to have a sacrificial something under the work piece, I guess.

Lets catch that bunny before it dives into the hole then.

It would be cool if this was more stand-alone. I hope the future will give more freedoms in this regard.

I’m just sharing my thoughts so that maybe someone one day will have a brilliant solution for this.

As material thickness will always be an important value that you might want to change as material might differ from various sources, and also depending on the weather as you stated. Having a simple way to set this independent of the file could make a big difference, but i sure see the implications of this since all depends on the gcode…

I’ll leave it at this for now, so that the original topic can be further explored by others.


Never seen variable thickness adjustment without regenerating the gcode, if you don’t count LinuxCNC style variables and subroutines, but that way be dragons :dragon_face:. Doesn’t mean it doesn’t exist. Spoil sheet and a bit of extra cut depth is easier

Wonder if that dragon emoji really works

g-code does have the concept of variables that can be set and then used, but
very few CAM programs make use of this.

One problem with the idea of just changing the depth in the g-code is that if
the depth changes too much you change the number of passes that you want to run.

As I said before, the easiest thing to do is to tell the CAD/CAM that you have
thicker stock than you normally use and use shims to set the Z Zero a variable
distance above your workpiece, so that the bottom of the cut is in the right

the other common thing to do is to have a spoilboard under the workpice and plan
on cutting into it (just make sure your tabs are tall enough)


Variables in gcode are/were intended for the dying art of manual programming, complicated by being non-standard and implemented differently in different interpreters - if implemented at all. They’re from the days when memories were small and expensive, and multi hundred K line CAM gcode didn’t exist.

It’s a moot point since they’re not in the Maslow implementation (or they’re hiding very well). Marlin, grbl, tinyg don’t implement them either and I can’t find them for Smoothieware. Mach and LinuxCNC have them, done differently, and I read that there’s more different versions for Fanuc and Siemens.

These days regenerating gcode is pretty quick, not even long enough to refill the coffee cup in most cases. In the olden days you could go and have dinner while waiting. That’s when we walked uphill 2 miles in a blizzard to get to school, and then back home the same way

1 Like

Thanks. New to this, former software developer and “manual” woodworker. Kind of surprised there aren’t these safeguards which would translate limiting parameters in the “real world” to the software prior to the g-code being generated. Seems like an obvious feature to me, for lots of reasons, safety being one. Are there downsides to this that I might be missing, outside of portability to different machines without similar limitations?

1 Like