Losing home X50

Hi everyone, I’m hoping someone can help me figure this out. I’m cutting a bunch of the same thing, so I made jigs. A couple of times one will finish, I move the cutter x200 and y200 to look at it. then I remove and replace the stock with a fresh piece, then I hit the button to move to home and the spindle moves back to the bottom left corner, all looks well. However, when I hit play and it re-probes the z it jogs over ~100mm to the x and y, starting the carve not from 0,0 but ~100,100. Am I incorrect in assuming that I don’t need to rehome the machine to the material every time? It works most of the time, I’ve experienced the mystery new origin 100,100 a 2 times out of 15 so far.

Hey Richard,

first are you really mean homing and not zeroing? See also What is homing, what is zeroing?. If you have a fixed jig, against which you place each new workpiece, and run the same commands/program on it, then you need neither re-homing XY nor re-zeroing XY. That’s what the jig is for!

Regarding returning to the initial position for the next run, this should be done by the program. Usually it’s not the operator that has to return to home position manually. If you think of it: The program knows where it has to bigin, and it begins where it begins, and if it begins, this means it moves to where it has to begin by itself.

You say when you hit play it reprobes Z, but that is only necessary

  1. if your workpieces all have different heights (and at same time your workpiece zero in your 3D model is on top of workpiece)
  2. if you changed the bit so there is new tool length.

If neither is the case you can remove the probing Z part from your program. I assume the probing Z command is part of your program?

I have no idea why it should go to x=100,y=100 without being told. The only explanation I can easily image is if it lost its X,Y positions somehow inbetween.

Welcome to the forum!

This is the exact workflow. There is only one tool used, no tool change. All work pieces have the same rectangular dimensions and thickness.

  1. square jig to grid, and secure it
  2. place work piece in jig and secure it to the jig
  3. start gcode
  4. probe z
  5. remove probe, start spindle, hit go
  6. return to 0,0 with the center button on the 1f controll screen
  7. move tool to 500,400
  8. remove finished workpie from jig
  9. insert new workpiece
  10. use center button to return tool to 0,0
  11. start gcode
  12. z probe
    13+) repeat steps 5+ over and over

When I do those steps, 80% of the time it keeps to the original 0,0. 20% of the time it loses it’s place and thinks that the center is about 100,100, not actual 0,0. Is it possible to remove z probing from the workflow?

Hey Richard,

thanks for the workflow. What you don’t explain is what you mean with “start gcode”. Is it a program that you uploaded? If so, can you show it please? Or are you using single commands in the command entry field of the manual data interface (MDI) tab?

Regarding your question about when it is necessary to probe Z, I answered in my post above.

I created the gcode in Aspire. I upload it to the controller via USB, then hit play.
logo_aluminum_04.ngc (79.0 KB)

How do I run the same gcode without having to do a z probe every time?

“Start gocde” is literally the play button on the 1F interface.

See the edit above for the screenshot.

FYI, I was able to upgrade the FW successfully to 1.3.0 just now.

Hey Richard,

thanks for uploading and showing your g-code toolpath program. You have a M6 T1 at the beginning, which is a tool change command and always includes Z probing the new tool.

Usually this is added by the CAM program, if you want to get rid of it, you got to find the option to disable it. Alternatively you use a text editor and remove the “M6 T1” at the beginning. Then your workflow would be to probe Z once manually and repeat the program for the identical workpieces.

Again, the only reason to probe Z is if you have a different workpiece height and at same time your workpiece zero is on top of the workpiece, or if you changed the bit.

What I don’t understand is why you jog the machine around. It does not seem necessary to me. The only reason would be if you need to have the milling motor out of the way to replace the workpiece. In order to do this, either you find the option in your CAM program which tells the Z to raise or to return to home at the end of the program and enable it, or you enter such a command manually into the command entry field of MDI tab, like this:

G53 G0 X0Y0Z0

G53 means use machine coordinates, not workpiece coordinates, it will just go to machine home position. This command will preserve all your probed or manually entered workpiece zero coordinates for the next run. Pressing “home” instead will trigger stall homing, so it is not recommended. Pressing “home” is only usable for this purpose if you retrofit inductive proximity sensors to your machine.

1 Like

I jog the machine because i need to move the tool to secure the piece to the jig. I’ll jog the machine with G53 commands from now on, that makes better sense to me. I’ll remove the M6 command from my gcode manually and look for the automatic insertion in Aspire to remove. I have enough excess to cutoff so that I don’t have to be super precise on the x,y and z can be eyeballed close enough with 0.1 steps. I’m optimistic that I can do away with homing all together. I’ll give things a try today, MANY THANKS for helping my hone in my workflow. :slight_smile:

Is there a way to add a couple of buttons to the user interface, like I did in pronterface for 3d printing? I’d add 2, one for G53 G0 X0Y0Z0 and one for G53 G0 X500Y5000Z20

Hey Richard,

glad to hear that I was able to help.

Macro buttons are a feature requested, the original Buildbotics.com Controller (which evolved a bit further [1], [2]) has them since Buildbotics version 1.0.0 (see here their macros tab), but unfortunately not the Onefinity Controller.

What people do on the Onefinity controller is create a set of small G-code programs that are placed in the program folder with an intuitive program name each.

1 Like