Finding Edges

Hello, I check some posts in this forum about automated Edge Findings, read many comments that is really not the case for MPCNC, but I want to carve some panels and after make the appropriate painting carve the letters in the exact position for each button. So I found that ESTLcam is able to do this according to Christian videos, but I don’t want to change my firmware.
I have MPCNC, MKS GenL 1.4 Ramps and dual end firmware, the normal Z probe check is working.
I already have the square plate 100x100 and connections, so how can I make this to work in my machine?
can I run via Repetier?
Where can I find the Code for this?
Thanks in advance.

Since you have dual endstops, just put something on your spoil board so you can take you panel off and put it back in the same place. If your panel is rectangular, a thin strip of scrap on two sides of a corner should do.

Some of us keep something like that at the 0,0 or at a known offset for all the jobs. Mine used to be the entire corner, but I cut a chunk out for…actually I’m not sure why anymore, lol. Memory IS the second thing to go!

1 Like

Hi Tony, thanks for the hint, I still did not realize where to place the material in the bed. I have homing working for XY & Z, so the corner 000 is set, because of the placement of my wasteboard I have to place the material a position other than the 0.
1-How can I tell the machine that my block is at some position?
2-There will be a second work in the same block, it is a panel which has to be cut and after that, I have to paint and check all the measures for the buttons, and after that, I have to carve the letters for the buttons. so how can I precisely place the same cut material for the second part of the job?
Maybe it is a dummy question but I really can’t figure out how to do it.
That is the reason I was looking for the edge find so I can set all zeros to the corner of the material without care of the location in the bed.

Couple ways I can think of, and perhaps somebody will have simpler /easier /faster ideas shortly.

Edge finding (corner finding) seems like probably the best way to do it, but I think you at least need to make sure that one edge is square to your machine because I don’t think marlin will let you use rotated work planes. Somebody correct me if I don’t understand that correctly. That means at least one jig, then finding the corner. You can probe sideways, but you have to edit the firmware. There are a couple good threads here, but I don’t have them handy. Search for G38 and you should get to them. The one with a lot of comments from Jamie helped me a ton.

Without side probing, you’d only have to add one more jig. If I had to pick a place OTHER than 0,0, I’d make some holes in the wasteboard with the router (so I’d know EXACTLY where they are) and use some wood dowels in them to locate the piece. Cut the top of the dowel so it looked like a semicircle from the end, however far it sticks up above the spoilboard. So it would kinda look like those tabs that hold shelves in cabinets or entertainment centers. If that’s not clear, I can draw a sketch. You could also just add half the diameter to whatever coordinates you choose to make holes, or make the holes a half diameter outside your chosen coordinates depending on how you are constrained in CHOOSING the workpiece location. That will make sure the edge of the board locates to the center of the endmill. Pick two sides and you’re done. Since you had to drive the router there, you know exactly how far to set the NEW zero, which you do with G92. So if you put the work origin at 20,30, you send G92 X20 Y30. Handle Z the way you usually do.

The other option I have is the way I set up my original square in that picture. I put in the smallest endmill I had (1mm) and used the router to push it into square. My reasoning was that I’d be off by 1/2mm and that was acceptible. You could do the same thing for your workpiece, and as long as you did it the same way before each mounting, you might be ok, but this sounds tedious to me and I wouldn’t want to do this for more than one workpiece especially if the precision was critical. Maybe not even once. Actually, I think that would be a last resort. Probably, I should go back and delete that whole suggestion, lol.

1 Like

don’t delete, it is a lot of good information, I still would like to have the edge find in the MPCNC I am almost sure is possible. But seems no-one in this forum use it :frowning:

It’s possible to find the corner by probing. I set it up and tested it. You just have to make sure that one side is parallel to that side on your machine because marlin can’t compensate for rotation. I haven’t had to use it is all.

1 Like

Do you know where can I find a guide for that?

I don’t know about any guides yet, but have a read through these. Pay special attention to the ‘gotcha’ about using the z min endstop. You can use it, but you have to tell marlin to define a pin, then set that pin to the z endstop. If you just tell it to use the z endstop, it doesn’t work for xy probing. At least that’s how it was 3 months ago or so. Not sure if that’s a bug or a feature. It should make more sense by the time you’re done reading.

1 Like

I went through some of this posts, did you see the video from Christian the Estlcam programmer? he does this smoothly:

both videos are very short explain a little but now I am intrigued if would work in marlin, I don’t know if Ryan @vicious1 ever talk to Christian from Estlcam about MPCNC.

Anyway hope someone can help us.

1 Like

So this is what I’m saying. The corner finding definitely works, which is the first operation in the first video. I’m certain. You’ll have to write your own script to make it automated like in the video, but it’s doable.

The second op in the first video is the part that I don’t think Marlin will handle, the angle correction. I’m still willing to be corrected on that, though. There have been a few updates since the last time I heard anyone talk about it.
Honestly, Marlin does a great job for just about everything just about all of us do. Like I said above, popping a fixture into the spoil board is easy.
Interruption : the other method came back to me. Fix your work on the table, set the g92, THEN put a couple strips down to mark the alignment.
Anyway, I’m not familiar with the features of estlcam fw, but I think it REQUIRES a computer to drive, which is a non starter for MPCNC. I also think Christian has a working configuration for MPCNC, so why not just try it out? If you’re worried about flashing Ryan’s firmware back to the board I doubt digging in to add the probe function won’t be comfortable at all, so that much is moot and you’re back to my first suggestion anyway.

1 Like

Christian dropped support for Mega Ramps hardware support in version 9 I think. The cam is great but no firm any more

1 Like

Well, that’s a pretty good reason. :grin:

1 Like

There is gcode to do this but I don’t know it I’ve seen it posted. CNCjs may have it as a shortcut or such not.sure

It does have a probe widget in CNCjs


If you’ve enabled G38.X codes already you can use the snippets from this post to get you going:

I have those assigned to the 1-5 numbered macros in repetier host so that I can quickly call them before running a job.

Depending on how accurate you need your probing to be you could use a drill blank for your probing and then swap a cutter back into the collet prior to starting the job. If you don’t do this you might have issues with repeatability since you’ll hit different parts of the flute on successive probes. I use a 1/8" carbide blank as my touch probe. After probing zeros I swap an endmill back into the machine and start the job. Especially if I have to run multiple programs on the same part.


First time you break a mill, BANG, instant carbide blank :rofl:


I have a few mostly 1/8 inch but 1 6mm too


Either works as long as you’re compensating correctly. I use the 1/8" to probe regardless of whether or not I’m cutting with a 1/8" or 1/4" endmill. As long as the prob offsets are correct you’re good to go.


@bruh, Hi I was away from home, and just read your post with your macros for the center finding Code for Marlin, right now I am using Ray firmware “Marlin-MPCNC_Ramps_T8_16T_LCD_32step_DualEndstop”, I have the Z Probe wired and working, after I enable G38 in Configuration ADV.h, does your macro will work in this firmware? do I have to to eliminate the stop ends first? Cheers,

Provided you have enabled g38 support, the codes from my post should work just fine.

You shouldn’t have to disable anything related to dual end stops, no. I still used the dual end stops to pull the machine square prior to probing anything.

Good luck!