DON’T (only) PANIC! – The Case for Two Buttons
Having two levels of handling off-nominal situations is something I strongly support. Let me see if I can explain it well enough once and for all.
It’s plainly obvious that you MUST have a way of killing everything NOW! in an emergency. Nobody sane (and few even among the rest) would argue against that. That can be a convenient plug you can yank out of the wall, a big switch that physically cuts the power to the whole kit and kaboodle, or whatever. Invoking this option means the job is likely lost, but that’s as utterly irrelevant as worrying about the hassle of repacking your reserve chute when you’re falling to the ground under a fouled main. Let’s nickname this the “PANIC!” button.
What’s less obvious is that you SHOULD have another level of responding to situations that are not an emergency but still require urgent action. This is not instead of a “kill switch”, obviously, which seems all too often lost in the discussion. This is in addition to your emergency shutoff that kills everything. This option will pause everything, allowing you to deal with an impending situation and then continue. We’ll nickname this the “HOLD!” button.
In a way, the “HOLD!” option is universally acknowledged, as I’ve never seen a g-code sender without a pause button in the UI. That pause button is obviously for calling a hold in non-emergency situations, but it’s simply not effective in urgent, rapidly-developing (but non-emergency) situations. If it’s a button you have to click with a mouse, you most certainly cannot depend on that ability in an urgent (but non-emergency) situation, and while a keyboard shortcut is better (where supported by the UI, i.e. not Carbide Motion), if your hand isn’t on the keyboard, it’s still not a great option.
Where this comes into play from a safety perspective is in the space between noticing an impending issue and that issue turning into a true emergency. Without a “HOLD!” button, your options boil down to:
- Hit the “PANIC!” button.
- Attempt to get the job paused.
There is a strong disincentive to the first option, as the situation is not (yet) a true emergency. Nobody wants to blow up a job unnecessarily, and the second-guessing that follows tends to make the person less likely to hit the “PANIC!” button in future borderline situations. Human factors, then, mean people will tend to lean toward the second option, but while they’ve already made the choice to call “HOLD!”, there is a time lag before that can be executed (especially if they’re using something that can only be paused by clicking a button). During the time they’re trying to pause, the situation continues to develop and may even be descending toward a potential true emergency.
What you really want is to make calling “HOLD!” as easy to do as calling “PANIC!”, as that way you can stop an urgent situation from escalating into a potential emergency. If you add a physical “HOLD!” button, i.e. “FEED_HOLD” and cut router power, you’ve changed the calculus significantly. Your options are now:
- Hit the “PANIC!” button.
- Hit the “HOLD!” button.
If you see a situation developing that is at all concerning, you can immediately hit the “HOLD!” button. Where there was a disincentive to hit the “PANIC!” button in a questionable sitation, there is actually an incentive to hit the “HOLD!” button. It gives you time to evaluate the situation, and if it turns out to be justified, you’ve just saved the job. If it turns out you were simply being cautious, there’s no second-guessing or regret, and you’ve learned something to watch for next time so you can preclude a repeat of the situation. There’s no incentive to hit the “PANIC!” button prematurely, as you can hit “HOLD!” just as easily, so when you do hit the “PANIC!” button, relief is much more likely than regret.
In addition to the safety perspective, the addition of a “HOLD!” button provides a significant benefit in general work. If you see something becoming off nominal, you can hit the “HOLD!” button to get time to consider the sutation and address it as necessary. In this case, there may be no safety benefit whatsoever. Your job looks like it was heading toward a start at the wrong zeroes? “HOLD!” About to turn a wooden clamp into an art piece? “HOLD!” Getting a lot of chatter and want to double-check everything? “HOLD!” Just remembered that you left a Hot Pocket in the microwave? “HOLD!” Of course, being able to call “HOLD!” for non-urgent situations only gets you in better practice should something more pressing develop, so safety in general is enhanced.
As a scuba instructor (one of my many alter egos), I teach rescue skills to use in case of emergency, but I also teach my students to respond to a developing situation with “STOP. THINK. ACT.” When a diver starts to feel something off-nominal, they stop. They consider the situation to figure out what to do. Then they act on that. Having a “HOLD!” button allows you to do the same at any time and without delay. If something is starting to head downhill (or simply doesn’t feel quite right), you can hit the “HOLD!” button to stop, then think, then act, and that is certainly a good thing.