Estlcam machine controller

I’m using Estlcam 9.22 and X-Carve.
My settings are as follows:

The results are very good now:

3 Likes

Hmm… People must be using pretty fine microstepping on their Z axes. I’m using 400 steps per revolution, 2.12mm distance per revolution, and 1200 mm/min max feedrate on my Z axis with an acme screw. Seems pretty close, I haven’t put the dial indicator on yet but it’s pretty good.

Question - I’m finding in Estlcam Version 10.039 that the maximum feedrate being used is half what I set in the “CNC controller settings” dialog. For example, my X and Y axes are currently set to 14,000 mm/min, but when I move the carriage with “X200” or “Y200”, the feed rate displayed in 7,000 mm/min. Am I missing something?

Try with 2.54mm/revolution and measure
Move 200 and measure if it corresponds !

Hi,

[quote=“BillWagstaff, post:231, topic:14660, full:true”] For example, my X and Y axes are currently set to 14,000 mm/min, but when I move the carriage with “X200” or “Y200”, the feed rate displayed in 7,000 mm/min. Am I missing something?
[/quote]

the commands entered in the command line are using the currently set feedrate of the “F” display - not the maximum machine feedrate. Just enter the desired value in “F” or include a F command in the command line e.g.:

X100 F14000.

Christian

Not sure where the 2.54mm/rev comes from, but using my current settings, a move of z-20 gives a dial indicator reading or 0.7875 inch - which is 19.99 mm. I’d say that’s close enough for an XCarve.

My Z axis only has 80mm of motion, so a move of 200 isn’t appropriate. Thanks for your suggestions, though.

Okay, I see. Does the maximum feedrate per axis only take effect in generated gcode?

Let me explain: Now that I understand, I find that my Y axis is capable of 14000 mm/min, but my X axis is only capable of 8000 mm/min. Probably because I have two motors and drivers on the Y axis and only one of each on the X axis. With these maximums programmed into the arduino, if I type “Y200 F14000”, the Y axis executes the expected move, and the feedrate in the CNC controller dialog now shows F: 14000. If I now type “X200”, the command is sent without setting to the max feedrate of the X axis, and the axis stalls.

I take it that this means that the command line is not being conditioned with the limits set per axis. What I type is being executed exactly as typed. Is this correct?

Should I expect that moves generated by Estlcam will respect the limits I’ve set?

Hi,

Estlcam should respect the max feedrate limits.
It will lower the feedrate accordingly - then change it back to the previous value after moving the slower axis.
(Just tried without machine - I’ll do a test with machine tomorrow)
Maybe 8000 is still a bit too much for the X-axis?

Christian

That’s what I expected, Christian. I’m not seeing the max feedrate being respected. If I explicitly issue a x200 F8000, the x axis moves as expected. If I’ve previously issues a Y200 F14000, and then issue an X200 without the F8000, the move is attempted at F14000 (carried over from the previous command) and the X axis stalls. I think I have a pretty conservative setting at F8000 - I can move the X axis at up to F12000, but I chose F8000 as a conservative value.

Phil,

Well, that’s awfully close to saying I’m incapable of writing down my observations correctly. What I wrote is what I’m seeing.

One thing to remember is that I’m running the Estlcam machine controller, not GRBL. They are different in many ways, and I’m trying to get some help from Christian regarding Estlcam, not GRBL.

Issuing your second sequence of commands (adjusted for metric)

G0 X200 F8000

G1 X-200 F2000
G0 X200
G0 X-200

results in a rapid move to the right, followed by a slow move to the left, to the right, and to the left again.

And that IS 100% accurate.

From GitHub:

grbl
An open source, embedded, high performance g-code-parser and CNC milling controller written in optimized C that will run on a straight Arduino

From Wikipedia:

G-code (also RS-274), which has many variants, is the common name for the most widely used numerical control (NC) programming language.

One’s a language, the other’s a specific open source implementation of an interpreter for the language. They are not the same thing, Phil.

Christian,

Here’s my settings for Shapeoko2->XCarve with Acme leadscrew. Seems to be working well for me, other than the maximum feedrate that we’re currently discussing.

Bill

Hi,

what Estlcam version are you using?
I’ve checked now on my machine with 10.039 and it respects the limits as expected.

Although my machine is different - I don’t have a X-Carve.
I’ve set X to 3000mm/min and Y to 500.
Entering X100 F3000 and then Y100 moved X fast and Y slow as it should.

Christian

I’m using 10.039 as well.

Oh, crap! I see the problem. I had the rates reversed in the settings dialog (see my settings above). With the maximum rates corrected, it’s behaving as expected. Thanks, Christian! Here’s my current settings:

Hi Christian, having difficulties with probing, Estlcam 10.039, shapeoko3, used preset for shapeoko3: after probing edges or for center of circle, the machine (spindle actually router) does not move up and over the new found zero point (up to clearance and over to zero or center of circle). Is the “invert stepper enable signal” check box on the setup controller screen what I need to check? Does that move the spindle after probing? Thank you, I post a lot about Estlcam on the Carbide3D forum because it works so great. Thank you

Hi,

Estlcam does not automatically move to clearance plane after edge or center finding because those functions only affect X and Y.
This is important because many people including me usually zero Z after X and Y. If previous Z was for a flat part and now you have a higher one the clearance plane would be too low and cause a crash into the workpiece.
Also I think a machine should not do any move without explicit command to do so.

You can move the axis up manually at any time - and Z may be anywhere before starting a CNC program - you don’t need to move to clearance plane manually.

Automatic edge finding with touch plate will stop 1mm above the thouch plate.

Christian

1 Like

Thank you Christian, Estlcam does tell me what the center coordinates are after probing for center, so I just input those x y coordinates in the command line after raising the z and that is how in your video it appears to move automatically, correct. I think I understand but also your confirmation may help explain it for others. But what is the “invert stepper enable signal” check box for ? Maybe the Shapeoko 3 does not use this feature, I don’t know. Estlcam has been a wonderful tool that all by itself has accelerated my growth in CNC. Great program, hope lots of success to you.

Christian,

I am using two toolchains:
DevCad .tap (= toolpath) > UGS > Grbl
LibreCAD .dxf > Estlcam > UGS > Arduino with Grbl

For the last toolchain I want to follow the Estlcam route so I can use .dxf > Estlcam > Arduino with Estlcam
However this blocks my first toolchain, Estlcam does not accept .tap files.
Replacement1.tap (18.0 KB)

Is there a possibility to execute this file with Estlcam,

That looks like perfectly ordinary G-code — probably you just need to rename the file to an extension which EstlCAM recognizes (.nc?)

Renaming the file extension to .nc does make it acceptable for Estlcam. Visually the result seems identical to UGS.

@ChristianKnull there are many post processors in DevFUS do you recognise one of them as Estlcam compatible? In that case I do not have to rename the extension.

PostProcessorDevFUS.zip (266.3 KB)