Seperate X and Y spacing

Want something added to the software or web-site?
Post Reply
Posts: 1
Joined: Wed Apr 16, 2014 5:23 am

Seperate X and Y spacing

Post by QuantumRipple » Wed Apr 16, 2014 6:17 am

I'd like to have an option for separate X and Y axis spacing for probing.

A bit of background on why this is useful to me:

I built my machine with a fixed gantry Y axis and a moving table X axis. The table is made of a base layer of plywood and a top layer of pressed wood and framed with angle aluminum which keeps the edges stiff. The table slides along linear rails at the edges and the movement is controlled by the nut of a leadscrew in the center of the table. My (cheap) 10TPI leadscrew isn't perfectly straight, and the stress pulls/pushes on the nut bracket in the center of the table vertically, causing the whole table to bow in and out from the center with a magnitude of about 0.002" (roughly approximated) from highest to lowest at the worst when the leadscrew is rotated. The effect is less near the edges of the table where the aluminum frame resists the flexing more.
My Y axis that moves the spindle carriage is perfectly straight.

The result is that my circuit board needs to be probed on the Y axis fairly infrequently (3/8" is fine), but I need to probe the X axis every 0.025" to get nice results when cutting thin traces with a V bit.

As is, lines that traverse any significant distance along the X axis exhibit noticeable sinusoidal changes in thickness, and if I wish to only barely etch through the copper, then there will be sections of incomplete etch every 0.1" from the height variation.

Since even with infrequent probing along the Y axis, this means around 960 (!) probe points for a 3"x3" board, it would be nice to be able to do a high resolution X probe at the Ymax and Ymin of the board and use that linearly interpolated profile to calculate full resolution X probes in the interior while only taking actual probes every 3/8". This, however, seems like a very specific feature that wouldn't add much utility for other users, which is why I ask only for the ability to specify different X and Y probe resolution instead.

Finally, this leads to the question of how the probe points are used, and if probing the X axis very frequently would even help. I assume that a Z compensation value for any point in X/Y space is done with linear interpolation between the four nearest probed points. What I don't know is when Z compensation values are used. If I were to probe every 0.025" along the X axis and then try to level a single "G01 X1" from X0Y0Z0, would it break up the 1" line into forty 0.025" long segments to match the compensation profile or would it only adjust the destination point? If AutoLeveler doesn't break up lines, I'll have to figure out another solution to this problem.

I've contemplated mechanical solutions; the way I built the machine, I can't relocate the X-axis (table) screw along the Y axis to be nearer to the linear bearing sides, and were I to relocate the nut nearer to the aluminum frame at X+ and X-, then it would greatly restrict the table movement. I could potentially mount the nut to a layer that isn't vertically coupled with the milling surface, allowing that layer to flex without having the whole table flex. In any case, for the short term, I think a software solution would be the easiest way to fix this. I can already route acceptable circuit boards with larger trace thicknesses (and cut depths) using autoleveler, so it would be great if I could use my current board routing process to get higher quality results.


Site Admin
Posts: 377
Joined: Tue Oct 01, 2013 1:41 pm
Location: London, UK

Re: Seperate X and Y spacing

Post by daedelus » Fri Apr 18, 2014 9:32 am

Thanks Quantum, I understand and is duly noted. When I first published the Autoleveller I never thought anyone would need separate X and Y spacing and made probe spacing roughly equal in both directions, but I see from your post that this could be useful in some cases.

To answer a couple of other questions the Z compensation value does indeed use linear interpolation (bi-linear, to be pedantic) by taking the 4 nearest probed points. And yes, lines are broken down into 5mm segments (roughly 3/16") but this value is fixed and cannot be changed from the GUI interface currently. This is true for lines, but for arcs this is a bit hit and miss currently. Keep arcs small if you have to use them or try to break arcs into many small straight line segments if possible. Software to probe and adjust a GCode file for PCB's or any probe-able surface. A short guide to setting up the probe.


Post Reply