Best practice for fitting a kill switch

I am about to put a kill switch on my new controller build, and wondered which is the best method, kill everything and loose everything or kill just the motion and possibly loose the program position because the code will run on.
I have had occasion where the machine will have a fault and the program will stop part way and I have simply written down the positions and the line number and then restarted the computer and put all that recorded information in Estlcam and continued without too much fuss.
A kill switch would change that if I do it the wrong way, so maybe someone has better ideas and what works best for them?

I have the router and controller connected to a single kill switch.

If you just kill the controller, the router bit is going to spin in the material in a single place and possibly start on fire. You would still loose the position anyways.

If you just kill the router, the bit is going to drag against the material, possibly break the bit or the machine. You still mess up your material anyways.

In my opinion the safest way is to kill everything and then figure out how to save the project if applicable.

2 Likes

I am just using a simple power bar, as my kill everything.

An emergency stop wired to an Input pin set to Fault signal is basically the same as pause/ESC (machine and spindle stop), but you need to press F11 (configurable in v12) to release it/resume. i.e. nothing lost.

My opinion is that an emergency stop should kill all power to the device. It is for what it is described as- there’s an emergency.

A pause button, or a feed hold, or a spindle stop, is also a suitable thing to have, but my opinion is that all are a piss poor substitute for a real emergency stop button that takes down the whole machine.

3 Likes

I’d agree if this was a big moving machine that is going to suck in school children if it doesn’t come to an immediate halt. But the board itself is no danger to anyone, so something that stops movement and the powers down the spindle is what’s generally needed. I have mine set to kill everything, and really all I ever want it to do is stop the moving parts so I can make adjustments on the non-moving. Killing it, re-starting it, connecting wifi, resetting everything to zero just to start the program and let it run all the way through again is a pain in the butt. That’s 1 thing the machine I’ve been running at the makerspace is better, E stop kills all the moving parts, stops the Gcode so I can see what it’s supposed to be doing, and then I can adjust and pick the exact line I want the gcode to start back up again is 100x better.

I’m just finishing my build now and learning the new system and I’ve had to kill more times than I like to think about. If I can just stop the moving and the program using the jackpot controller, point me in the right direction and I’m re-wiring tonight.

If it’s big, red, and meant to be hit fast and hard, it should kill power to everything. If you have the know-how and capability, it should engage any passive (i.e., non-powered) brakes on any moving parts, although that’s really not a requirement. Much like a SawStop, the important thing is that the fast spinning thing stops spinning near the flammable fibrous (or meaty bulbous) bits. Once that is done, and safety is reestablished, then you can evaluate what can be saved/repurposed/enshrined as a lesson learned. Or more importantly, you can tidy up, shut down, and go hug your loved ones with the digits you still have.

Okay, thanks guys, I am waiting on a EMI filter to come and it appears to me that when I am adding that I should insert the kill switch in that power line. That way it will kill the power to both the steppers and also the spindle, but the computer being a laptop will still be running, so the code will most likely continue running also.
I should be able to start the code again and start from the beginning if I can still use a reference point for the tool length. If I can guess the last line number of a little before, I should be able to read the gode in that area and set the position in Estlcam controller and also the line number and with luck it should just continue again, even if it is redoing a little bit

I don’t know anything about using Estlcam controller, so can’t help there.

Since the topic of Jackpot (FluidNC) came up:

FluidNC provides for pin definitions for the following:

feed_hold_pin:
safety_door_pin:
fault_pin:
estop_pin:

There are also multiple macro pins that can be assigned.

You might find that the feed hold pin provides you with an option for a button that is less severe than a big red E-STOP.

When in feed hold, FluidNC can also do a spindle override stop if you have a spindle with NC control (or, of course, you could manually power off the spindle or router while in feed hold)

There’s also a pause button in the FluidNC Web GUI under the tablet section.

Estlcam has relative and absolute coordinates. If you home your CNC, then zero your workpiece you can switch to absolute coordinates (Write ABS in the command line). Write those down, switch to relative (REL) again.

If anything fails and you also lost the relative coordinates, just re-home and drive it to the absolute coordinates you started from, zero again and run the job from the line it crashed/needed to be killed.

I have grbl running on a Teensy board. I use the breakout board’s DOOR signal on my Big Red Button. This

  1. Stops spindle in 1 sec (brake resistor installed. BRB actually cuts power to VFD which triggers braking)
  2. Stops feed instantly.
  3. Pulls the cutter up to its highest position, in about 3 sec.
    All steppers stay energized, no steps lost.
    Resetting the button, restarting spindle, and hitting Cycle Start resumes the job where it left off.
    I also have a total power kill switch which is the big red TEST/OFF button on my RCD (gfci, for Americans). That would get used if there is arcing, fire or other emergency where ruining the job is a minor consequence.
2 Likes

Can that setup be used with a Nano running Estlcam 12 and a YL-620-A VFD?

VFD: yes, that is the one I have. It takes a lot of configuring of its menus, braking params and power out params.
Not sure about the Nano (what is that, an Arduino?) or Estlcam. Maybe others know?

If he uses a killall power switch (when there is no need to) all coordinate and G-code position information will be lost. Using an Estlcam Fault signal to pause the G-code and stop everything (steppers, spindle, relays, etc.) connected to the controller will result in zero lost information, allow for fixing any recoverable issue (machine or CAM) and resuming machining.

Probably not the Bellingham Makerspace, but that describes what I did there - installed the Estlcam firmware on a Shapeoko and wired the emergency stop to a Fault Input pin.

The Estlcam pause/Esc/Fault is similar and what I use w/ the same hardware… The breaking resistor is a VFD hardware option. While Z retraction and resistor (VS my 5sec) breaking would be nice, neither is needed w/ the steppers stopped.

I know, which does not matter if you homed the machine and wrote down the absolute coordinates. :smiley: Ask me how I know.

I will check that out and hope I can understand what to do as I work through it. Thanks

I have a question about these inputs. On the Nano the pause I can setup as input pin 10 and 11 as signal override and as I am already using 8 and 9 for probing and limits.
In the physical situation, these would be button switches that are taking the signal to ground I would imagine, correct me if I am wrong please.

I don’t understand, ABS = machine coordinates, REL = workspace coordinates. All Estlcam controller G-code coordinates are absolute distances from the project/workspace origin and (re)setting the project origin typically? has nothing to do w/ machine coordinates or require recorded coordinates - which ones, when and how does it help?.

I see that v12 has both a Fault and a Pause/stop Input option and that Fault now says step losses are likely. I’m real curious how much difference in stopping speed there is and would be inclined to use the Pause/stop option. I’m currently using v11 and the pause icon or Esc key and my reaction time is the biggest issue. Yes, Inputs are momentary make or break (Invert option) switches with one wire to the Input pin and the other to a ground pin.

If you are using Estlam as the controller and home the machine inside Estlcam, the bottom left corner is 0/0/0, absolute as well as relative. Jog the machine to 100/100/0, absolute and relative are still the same. Now you Zero the workpiece: Absolute is still 100/100/0, relative is 0/0/0. So after a complete shutdown, home your machine, drive the machine to 100/100/0 absolute, zero the relative and you have exactly the starting point you had before.