Originally Posted by
109jb
Hold will not stop the spindle!!!
What you need to do is kill power AND reset Grbl AND signal the interface to stop streaming. All of these things need to happen. Many streaming programs are poorly written and will just sit there happily waiting for the next ok response from Grbl. Once they get that its off to the races again.
The reset of Grbl will immediately stop any motion as it will interrupt the step/direction signals and PWM.
The killing of power insures everything is really off.
The signal to the interface is to break and halt sending of any more commands.
As for reset you need to close the circuit between the reset pin and ground which will keep the Arduino in a reset loop until the circuit is opened.. For an e-stop you should use a latching switch