Carving, ESTLCAM, Bit changes and Repetier Host

So I’ve got bit changes figured out using Some Old Guy’s YouTube video, a facebook post, and some experimenting…when running two separate Gcodes. I use the 'draw a dot here, use ESTLCAM with some gcode to move to 0,0,0, raise it manually, change, reset 0, and play next gcode). The GCode came from Chris on facebook, and looks like this:

G0 Z10 // Raises Z to 10
G0 X0 Y0 F600 // Move X & Y back to Zero.
G0 Z0 //Z back to Zero
M84 S999 //Lock motors.
M18 Z //Release Z
M00 // Wait for operator.

(I removed the comments, as they are there for understanding, not actual gcode comments :slight_smile: )

Now I’m trying to move onto a 3D carving…ESTLCAM has been awesome in letting me select a roughing and finishing bit. I have the Gcode into ESTLCAM’s ‘tool change’ section. When I do the print, I see the roughing pass, then the tool went to ‘home’ as if the prints done…and I never got to do the tool change. I’m wondering if Repetier doesn’t understand the tool change code from ESTLCAM.

Anyone have advice for how to do this? I am SO close to having 3D carving with a finishing pass working, and I can already see in the foam I’m testing with how awesome this is going to be. I just feel like I’m stuck on this one part.

Perhaps I need to use ESTLCAM to do the milling vs. saving it out…I dunno.

Thanks in advance,


You can have Estlcam make the roughing and finish passe as two separate files. Just uncheck the box at the top of roughing and finish and do a manual tool change between files.

You can try M0, or M25 instead. There are a few ways to do this, two separate files are actually easier. If you need ultra precision the dual endstop firmware was made for this. In betwean jobs it is possible to start in a different (or skewed) home position without the dual endstops.

Thanks guys! I pulled off the dual files which is an awesome tip! I’ll look at the dual end stops…I got the full Rambo board in hopes of using them at some point but wasn’t sure what they’d be good for. Guess I know now :slight_smile:

I’m going to try the 2 files approach. That’s a really cool suggestion. Somehow I never noticed those checkboxes.

I 3d printed a little jig to set the new bit to the same depth as the old one (it’s a cylinder with a hole set into it, but not all the way through). This would only work for bits with similar sizes, but that’s what I’m using.

Joe, since you tried it, do you need to move back to 0,0,0 or is it good enough that you don’t reset it?

I had to move back to my origin point, then I disconnect in Repetier and reconnect to get things back to 0,0,0. The origin point I marked with a pen, though when changing bit sizes that’s tough. I like the idea of 3d printing something, that may work better. It did seem to work fairly well, but I’m still learning some stuff. For instance, I want really fine carving detail…I started with 1/4" bit and went down to 1/8" for the finishing pass, which did OK, but not quite what I want. I’m wondering if I should try a 1/4" paired with a 1/16", or maybe use a 1/8" Vbit for finishing…I’m still working through when to use what bits to get the best pairing and such.


This is how I do it. I’ll use a part that doesn’t get milled off as a reference for the bit change. I have a separate script that just zeros out the z, so I do x and y first, then move over to an uncut part, and then do z. Usually the steppers will hold everything tight while you swap out end mills, but sometimes it moves on you, or you come back to it the next day.



Barry thankyou! That’s an awesome post. I’m going to have to research the end stop setup…I imagine I’ll need new cables as from what I understand, the opposite motors are run separately (Serial vs. Parallel?). Also I’d have to investigate how/where to run the end stop wires and such. That setup you have looks really clean, and I like your PVC tube for vacuuming . Very well done video. I guess while I’m at it I may look at the fancy metal plates people are using for Z axis homing :smiley:

My machine’s steppers are wired in series, and I only have a single end stop for the x and y. I do have hard stops on the opposite sides to the end stops though. I have them set so when I home the machine the other ends just touch the hard stops, if they hit first, then they skip steps until the other side catch up. If there’s a space I can force them into position by turning the gear by hand. It’s usually only off by a step or two. My Z touch off plate is just a piece of sheet metal bolted to the wire. The other wire is attached to an alligator clip. It’s thin enough that I don’t worry about adjusting for the thickness. Nothing I make is that size critical.

1 Like

Thanks Barry that’s super useful info. I’ll take a look at this when I’m ready. I like the idea of just adding single end stops for now, and with your hard stops, it seems like you still get the squaring benefit, plus you get a true ‘home’ which is super cool


Just don’t hit the actual home button! Z has no limit switches, so it will do evil things when it tries to home. I just hit x home then y home separately.

1 Like

So I’m back working on this again…the two pass methods and zeroing strategy is great, however I realized there are some things where I want to switch the tool, and expect repetier to ask me to change the bit…but it’s not. I tried the M25 suggestion, and didn’t get any love with that.

The times I’m looking to change bits are for vbit letter carving, where I’m going thicker and ESTLCAM gives me the option of changing to a flat end mill to smooth the middle. Also, I’d like to use a 1/16" bit for a finishing bit to see what that’s like, so when I setup my finishing passes in ESTLCAM for carves, I’d like to try that out.

I ordered the display/sd card system and adapter for Rambo…maybe my best bet is to move to that system vs. Repetier. I did notice someone mention that the screen is required and didn’t understand…maybe repetier doesn’t like the change bit commands? Or (more likely) I’m still screwing stuff up. Thanks in advance for any help!


Ok, got things figured out…I want to share it here so others that find this thread have an ‘end to end’ solution…

  1. If you select a tool change for things like a 'flat bit' when doing letters/wide doesn't necessarily mean that ESTLCAM will do a tool change. You can choose a bit, but have the paths screwed up (not wide enough or whatnot) and it'll happily ignore the bit change since it's not needed. To find out if you have a bit change, check the gcode.
  2. M0 (M zero) is the way to go with the default Marlin FW. It'll stop the bit won't know what happened though unless you have 'ack' selected for the log...then you'll see 'paused for user'
  3. Here's the kicker...I haven't found a way to continue from Repetier. Which is fine....The screen doesn't cost that much, and provides you with the 'click to continue' button on the jog dial. I didn't understand why the screen was required or preferred for tool changes, now I get it.
  4. Neat trick that I need to document can use M300 to play a tone/tune. And you can put this in ESTLCAM for tool change and 'finished cut' and it'll insert the gcode for you. This should mean that we could play one tune for 'hey bit change needed' and another for 'done cutting'. I'm going to try to do a fun video game tune or something happy. Here's some gcode for guns and roses songs:

Thanks all for helping me through this, I can’t wait to do some carves tomorrow and have my bit changing gcode all setup…I’m hoping I can get down to my 1/16" bits I got from this site for cleaning up cuts and really start honing things in


Or you could even play a tune using just your CNC’s stepper motors to make the music:


1 Like