Moving the origin point for probing

Here is one I can’t figure out. I have posted on a FaceBook user group as well and they are scratching my head along with me. I have the Journeyman and using VCarve Pro. For the purposes of this discussion, lower left of the work piece is at the front of the machine, left corner, same side to where the machine homes.

On 2 separate projects I have tried to move my origin point from the lower left, which is where my VCarve Pro program defaults, to the lower right because of the width of the piece of wood is too big for the length of the probe cord. I have my controller box mounted on the right side of the machine. I tried to then probe for XYZ using the probe block and moving it to the lower right side of the work piece. And had not so good results.
On a normal probe (lower left) you line up the bit in the circle, it moves down to touch for Z, then moves up and to the right, then down and back left to probe the right side of the probe block, then up and rearward to probe the rear side of the probe block. So, I set my origin in VCarve to the lower right (or front right), so that all moves and calculations are from this corner instead of the lower (front) left corner. I place the probe on the lower right corner the same as I do for the left side. I put the bit in the circle and probe for XYZ. The bit moves down, touches for Z, and does the same movement as before, up and to the right, then down to try to probe the right side of the probe block. Problem is now, that there is a solid probe block in the way and it runs the bit down into the top of the probe block, and makes an awful noise, as I scramble for the E-Stop button. If the origin is on the right side, the bit should move up and left to probe the left side of the block, but it doesn’t. I attached some pictures so show what I mean, and what happened to the probe block. I am sure I did something wrong, but don’t know what it is. Kinda stinks if I have a wide project, I have to eyeball the XY zero on the edge of the lower left side and then just probe for Z, rather then letting the probe block do its magic.

Thanks for any help in keeping my sanity.



@abwilliams16 the probe sequence is still going to use the upper right (as you look down on the probe) corner to find the x and y after taking z. If you start z above the circle the way you have it position, the probe sequence has no idea how you’ve oriented the probe block. So it will retract, move a little to the right, move down pas the top of the block, and then move left to find the left edge of your probe block.

Note, using the upper right corner of the probe block will not find the correct x for you either (but it will stop the 1F from trying to skewer you block!) because the offset in the probe software is from the inside edge of the stop that catches the wood when measuring the lower left corner of the stock. Probing from the lower right corner will now have an additional distance offset from true x zero that the probe sequence does not know about.

2 Likes

Hey Aaron,

fine, but the “Probe XYZ” routine is not something that is provided by your g-code program but by the Onefinity Controller firmware.

To me it sounds like you need a longer cable for the touch probe.

PS: Note that you are not forced to use the Onefinity Touch Probe for telling the machine where your zero point is. You may use any of several methods to position your machine’s X,Y and Z and finally “zero” each axis by clicking the zero buttons for individual axis on the control display.

2 Likes

Onefinity only allows probing x, y from the lower left corner. There is however a third party toolkit that allows probing from other corners. I have not tried it so I can’t vouch for how well it works. Triquetra Tool Box Companion for OneFinity and Triquetra Touch Plates

3 Likes

Thanks for all the replies. Looks like lower left is the only way to go, and if too much separation for the cable, I’ll just have to eyeball it for XY or get a longer cable.
If I would want to change the zero position for whatever reason to the center or a different corner, do I still just set the origin position in VCarve, and then set the zero on the 1F to the same position as the g code? Will that work?

Mitch, I don’t fully understand your second paragraph. Why will it not find the correct X using the position in my first picture, the lower left corner of the work piece. Isn’t that the way the probe block was designed to find XY and Z all in one? Have I just been lucky so far in that is has worked every time I was able to stretch the cable to the lower left?
Thanks

@abwilliams16 look at the underside of the probe block. There are two “fences” that catch the probe on the leftmost and front most parts of the work pieces. The probe routine knows the distance from inside the fence to the rightmost edge of the probe as well as the inside edge of the front fence and back edge of the probe.

When you rotated the probe 90°, the probe will touch the rightmost edge of the probe, which is the backside of the probe fence. It will then calculate the x0 point from this position which is only the fence thickness from the right edge of the stock, not the expected distance.

At the beach and trying to edit some pix on my phone so bear with me if this is not clear in the edits below.

First pic, probe on lower left corner and assuming distance from inside of fence to edge is 50mm (for the sake of discussion. It’s probably more like 54mm…)
image

It seeks the right edge of the probe and finds it is 150mm absolute. It then sets x0 to 150mm - 50mm or at 100mm absolute.

Imagine rotating the block 90° counter clockwise because my editing SW won’t let me do it.
image

so that the dot on the probe is on the back left corner like your photo. Now the x seek routing measures the location of the x at the short red line edge and it is the same 150mm absolute (it’s a tiny board!) does the same math and puts the x0 at 100mm…essentially where the blue line is in the picture(not exactly true, it’s x0=measured - offset + fence thickness, but the actual formula matters not at all since it is nowhere near the edge of your workpiece). the real x0 is only about 7mm from the measured right edge, where the green line is.

1 Like

I had the same problem recently when upgrading to the journeyman, controller on the right - As Aiph5u already mentioned, the 8 foot cable length works great.

Edit: My controller is mostly on the right, but there is plenty of extra probe cord:

2 Likes

I feel your pain. I wonder how many of us (and our probe blocks) bear the scars from having the mistaken notion that the controller can sense what corner you are using for origin.
I cut out a lot of weird shapes for my clocks. Here’s a method that I use when the probe block is not practical, or out of range. Let’s say we want to use the lower right corner.:
1: Unplug router and home machine. Install a straight bit (Let’s assume a 1/4 " end mill)
2: Jog to right side of material Lower bit below material surface plane.
3: Jog ver*y slowly to the left until side of bit just kisses edge of material. You can feel this as you rotate the spindle by hand.
4: Zero x-axis on touch pad.
5: Move spindle as needed and repeat process for y-axis.
6: LIFT THE BIT ABOVE THE MATERIAL! Don’t ask how I know this is important. It is to weep.
7: From the MDI page issue a command like G20 G90 G0 X-.125 Y.125. (Assumes 1/4 inch end mill and lower right corner. .125 is the bit radius.) The bit will move over the exact position of the corner of your material.
8: Re-zero x and y axis
9:: Move the bit within range of your block and zero z-axis as you normally would.
You’re ready to rock and roll! It sounds complicated, but it’s a LOT faster to do than to read about, especially after you’ve done it a few times. It’s fast, it’s cheap, and it’s easy. Hope this helps y’all.

3 Likes

Hey Michael,

thats’ what I meant with:

Maybe explaining what the g-codes mean helps inexperienced users and takes away the (unnecessary) fear of using G-code:

:drum: :white_check_mark:

Thanks Mitch! I understand what you mean now. Pictures helped great. Although you could have waited until after the beach vacation!! Hope you had a good one

Michael,

That sounds straight forward and makes sense, and more accurate than trying to eyeball the center of the bit to the edge of the material.
Thanks!

@abwilliams16 I totally forgot about how I actually set x-y to lower right!

I set a 123 block next to the stock. Lleft edge is tight to the stock’s right and the front edges are flush with each other. Then I zero off the 123 block’s lower left corner. manually move the bit over the stock, and set z0 off the top (or remove the 123 block, jog to a clear area, and z0 on the waste board)

I set my center point, 16.125 X and Y, then I pick the lowest point of my piece to set ‘Z’ zero. I use center for layout and point of origin. To do this I draw center lines on the work piece, align the center point to a 1/16" TBN for accuracy, then move the bit along the longest axis to make sure the travel on that axis is aligned. I then plane the entire piece to the lowest point on my wood. I plane .0312 each pass, repeating until the entire surface is planed. Zero center is automatically found at the end of the plane. This also helps if you have a job that you run out of time and need to pick up the next day. After I have planed the piece i set ‘Z’ zero to the center then move off the work piece and set my machinist gauges to the zero of the center. I do this by lowering the bit to read zero on the readout then feed gauges in there until i have a match. I always use the same spot off my work piece to zero my bit change. If my gauges don’t give me a perfect zero or the readout won’t, i set the gauges as close as possible under zero, which usually ends up .-001.


I haven’t tried it so I can’t speak for it, but the vendor for the Probe block on their website has a “program” you can buy from the that supposed to allow you to use the Probe on other corners. Again haven’t tried it but…

1 Like

After reading a number of threads I think people are too focused on running something automated and they forget they can do plenty of things manually. For example, zeroing. I do like Mike says but I just use the joypad to move over 1/8" in both the X and Y directions then rezero them. The same goes for surfacing the spoilboard. It’s extremely easy to do manually. You never have to worry about being outside the machine’s limits.

People also focus on numbers without understanding what they mean. For example when trying to move over 1/8" (.125). If you move to .126 and when trying to get to .125 you go to .124, for 99% of us it doesn’t matter. If you can find one feel how thick a .001" feeler gauge is. Stop over thinking it and try learning what you can do manually.

2 Likes

How do you like your fien vac? Is it actually quitter than a shop vac?
Thanks

Yes, I feel it was worth the extra I paid for it. It’s about the same noise level as the Makita, which bothers me more and is next on my list to replace with a spindle. The Oneida is a must-have, it captures all the chips. Dust, not so much.

I learned the hard way (shattered 1/8" Jenny bit) that the controller is only setup to probe the lower left corner of your work piece. I am not a G-code expert, but after a little research I put together the following three pieces of code that let me use my OneFinity touch probe in whichever corner I choose.

Copy/paste/save the following three blocks of G-code into separate G-code files (I used Windows Notepad). Load them just like you were loading a carving file. Put your probe in the desired corner and run the matching file you created above. All of these are specific to a 1/4" bit, but you can modify the code for any diameter bit by changing the radius used in the lines that begin with G92 in the X and Y axis sections. For example, for a 1/2" radius bit you would use .25 instead of the .125 shown in the code below. One other note, I used my CNC machine to determine the actual x, y and z thickness of my probe block. The “thickness” number I use in the x, y and z lines of G92 code are the specific measurements from my block. I do not know what kind of tolerances are maintained in the manufacture of the probe blocks, so if you are concerned about measuring things to the nearest .0001" you might want to measure your specific block and use those numbers in place of mine. Hope this helps!

(Lower right corner probe routine for 1/4" bit)
G20 (Units inches)
G91 (set incremental distance mode)
G92 X0 Y0 Z0 (Set offset to 0 and make the current location 0,0,0)
M0 (MSG, ENSURE MAGNET IS ATTACHED!)

(Probe Z axis)
G38.2 Z -1 F3 (Probe Z down 1" at 3"/min)
G1 Z 0.0625 F20 (Move up 1/16" at 20"/min)
G38.2 Z -1 F1.5 (Probe Z down 1" at 1.5"/min)
G92 Z 0.615 (Set Z offset to CNC measured thickness of plate)
G1 Z 0.25 F40 (Move up 0.25" at 40"/min)

(Move and Probe X axis)
G1 X -0.75 F40 (Move left 3/4")
G1 Z -0.6 (Move down 0.6")
G38.2 X 1 F3 (Probe X right 1" at 3"/min)
G1 X -0.0625 F20 (Move left 1/16" at 20"/min)
G38.2 X 1 F1.5 (Probe X right 1" at 1.5"/min)
G92 X -2.253 (Set X offset. CNC Measured x + bit radius = 2.1277 + 0.125)
G1 X -0.25 F40 (Move left 1/4" at 40"/min)

(Move and Probe Y axis)
G1 Y 0.75 (Move backward 3/4")
G1 X 0.75 (Move right 3/4")
G38.2 Y -1 F3 (Probe Y forward 1" at 3"/min)
G1 Y 0.0625 F20 (Move backward 1/16" at 20"/min)
G38.2 Y -1 F1.5 (Probe Y forward 1" at 1.5"/min)
G92 Y 2.253 (Set Y offset. CNC Measured x + bit radius = 2.1277 + 0.125)
G1 Y 0.25 F40 (Move backward 1/4")

(Move to XY Zero)
G1 Z 1 (Raise bit 1")
M0 (MSG, REMOVE TOUCH PLATE AND MAGNET.)
G90 G1 X 0 Y 0 F80 (Move to X Y ZERO at 80"/min)
M2 (End Program)


(Upper left corner probe routine for 1/4" bit)
G20 (Units inches)
G91 (set incremental distance mode)
G92 X0 Y0 Z0 (Set offset to 0 and make the current location 0,0,0)
M0 (MSG, ENSURE MAGNET IS ATTACHED!)

(Probe Z axis)
G38.2 Z -1 F3 (Probe Z down 1" at 3"/min)
G1 Z 0.0625 F20 (Move up 1/16" at 20"/min)
G38.2 Z -1 F1.5 (Probe Z down 1" at 1.5"/min)
G92 Z 0.615 (Set Z offset to CNC measured thickness of plate)
G1 Z 0.25 F40 (Move up 0.25" at 40"/min)

(Move and Probe X axis)
G1 X 0.75 F40 (Move right 3/4")
G1 Z -0.6 (Move down 0.6")
G38.2 X -1 F3 (Probe X left 1" at 3"/min)
G1 X 0.0625 F20 (Move right 1/16" at 20"/min)
G38.2 X -1 F1.5 (Probe X left 1" at 1.5"/min)
G92 X 2.253 (Set X offset. CNC Measured x + bit radius = 2.1277 + 0.125)
G1 X 0.25 F40 (Move right 1/4" at 40"/min)

(Move and Probe Y axis)
G1 Y -0.75 (Move forward 3/4")
G1 X -0.75 (Move to left 3/4")
G38.2 Y 1 F3 (Probe Y backward 1" at 3"/min)
G1 Y -0.0625 F20 (Move forward 1/16" at 20"/min)
G38.2 Y 1 F1.5 (Probe Y backward 1" at 1.5"/min)
G92 Y -2.253 (Set Y offset. CNC Measured x + bit radius = 2.1277 + 0.125)
G1 Y -0.25 F40 (Move forward 1/4")

(Move to XY Zero)
G1 Z 1 (Raise bit 1")
M0 (MSG, REMOVE TOUCH PLATE AND MAGNET.)
G90 G1 X 0 Y 0 F80 (Move to X Y ZERO at 80"/min)
M2 (End Program)


(Upper right corner probe routine for 1/4" bit)
G20 (Units inches)
G91 (set incremental distance mode)
G92 X0 Y0 Z0 (Set offset to 0 and make the current location 0,0,0)
M0 (MSG, ENSURE MAGNET IS ATTACHED!)

(Probe Z axis)
G38.2 Z -1 F3 (Probe Z down 1" at 3"/min)
G1 Z 0.0625 F20 (Move up 1/16" at 20"/min)
G38.2 Z -1 F1.5 (Probe Z down 1" at 1.5"/min)
G92 Z 0.615 (Set Z offset to CNC measured thickness of plate)
G1 Z 0.25 F40 (Move up 0.25" at 40"/min)

(Move and Probe X axis)
G1 X -0.75 (Move left 3/4")
G1 Z -0.6 (Move down 0.6")
G38.2 X 1 F3 (Probe X right 1" at 3"/min)
G1 X -0.0625 F20 (Move left 1/16" at 20"/min)
G38.2 X 1 F1.5 (Probe X right 1" at 1.5"/min)
G92 X -2.253 (Set X offset. CNC Measured x + bit radius = 2.1277 + 0.125)
G1 X -0.25 F40 (Move left 1/4" at 40"/min)

(Move and Probe Y axis)
G1 Y -0.75 (Move foreward 3/4")
G1 X 0.75 (Move right 3/4")
G38.2 Y 1 F3 (Probe Y backward 1" at 3"/min)
G1 Y -0.0625 F20 (Move forward 1/16" at 20"/min)
G38.2 Y 1 F1.5 (Probe Y backward 1" at 1.5"/min)
G92 Y -2.253 (Set Y offset. CNC Measured x + bit radius = 2.1277 + 0.125)
G1 Y -0.25 F40 (Move forward 1/4")

(Move to XY Zero)
G1 Z 1 (Raise bit 1")
M0 (MSG, REMOVE TOUCH PLATE AND MAGNET.)
G90 G1 X 0 Y 0 F80 (Move to X Y ZERO at 80"/min)
M2 (End Program)

8 Likes

Thanks for the code(s), I’ve been wanting to probe from the “opposite sides” of the probe and with the code you provided I should be able to figure it out

1 Like

I was able to figure out how to change the probing procedure for Onefinity to use the top right corner.
WARNING: PROCEED AT YOUR OWN RISK

SSH into your BlackBox Controller

I was able to find the G38(Homing commands) by searching the folder structure for the string “G38”.

grep -rnw /usr/local/lib

which provided a few options, but the result in index.html file worked for me. Note: Look at the line number for knowing where to edit. For Build version 1.1.1 the code started around line 24572

Now navigate to the folder where the file is and make the changes. nano +[Line Number] takes you strait to the line that we found earlier.

cd /usr/local/lib/python3.5/dist-packages/bbctrl-1.1.1-py3.5.egg/bbctrl/http
sudo nano +24572 index.html

See picture below for changes to make for probing the top right corner of the piece

Onfinity Probe Top Right

The final part is to change the size of your touch plate in the menu settings. Since I changed both axis, I put negative signs in front of both the x and the y sizes and it works.

1 Like