Smoothie Kill Button

There are two solutions for implementing a kill button on the Smoothieboard:

LED Tactile Button

Solder an LED Tactile Button on the Smoothieboard.

Led Tactile Button

Simple Button

Wire a simple button on two pins.

Simple Button

The button may be configured as a kill switch, which will halt all operations, turn off heaters, and pause the host. It can be cleared with a M999 command or by resetting the board. To enable a kill button, the following configuration is added:

kill_button_enable                        true             # set to true to enable a kill button
kill_button_pin                           2.12             # kill button pin. default is same as pause button 2.12 (Add ^ for external buttons)

When in the halted state (after the kill button is pressed), the play LED will flash rapidly. The kill state can be cleared by holding down the kill button for 2 seconds or more.

Alternatively, a latching E-Stop button can be hooked up to the kill button header (usually normally open). Then use this config:

kill_button_toggle_enable        true                # allows for latching estop button

When the E-Stop button is hit and latched on, it will halt the system. When it is unlatched and released, the system will exit the halt condition.

If you do not want the halt to exit when it is released, then set this:

unkill_enable     false                # do not unkill when button held or released

Note: If your kill button is “Normally Closed” (NC), it will be pressed at boot time. By default, the bootloader reads the 2.12 pin at boot time and if it is closed, will enter DFU mode. This means that you cannot use pin 2.12 for a normally closed kill button as it will prevent the board from booting normally. The solution is very simple: just use any other pin and edit the configuration accordingly.

[!INFO] Stopping Smoothie

These are the different ways of stopping Smoothie:

Command G-code Movement Heaters File playing Recoverable Documentation Explanation
abort M26 Stops an SDCARD print immediately Not affected Aborts Position maintained, but file must be restarted Player Stops the execution of a file being played from SDCARD, it will complete the current gcode, but stop immediately after that, the rest of the queued commands are discarded. It attempts to maintain the correct position after the abort.
suspend M600 Stops once queue is empty Turned off if option enabled (default) Paused, can be resumed Yes, with resume or M601, position maintained Player Suspends the execution of a file being played from SDCARD or being streamed from a host (upstream support required currently pronterface and octoprint support it, otherwise host needs to be manually paused), all state is saved and jogging and extruding is allowed. Mainly used for mid print filament change, or filament out detection. M601 resumes the print or the resume command
No command, but there is a configurable «kill» button M112 Stops instantly if kill button pressed, if issued from host has to wait for the receive buffer to have room. Turned off aborted No, position is lost, home will be required supported-g-codes Instantly stops all operations, printer fully halts until M999 is sent. Position is lost.
Sending Control-X to smoothie over the serial port or USB serial port   should work at any time even when streaming, does the same as the kill button Turned off aborted No, position is lost, home will be required   Instantly stops all operations, printer fully halts until M999 is sent (or $X). Position is lost.

If the kill button is pressed (or there is a temperature fault, M112 is issued, a limit switch is hit or other error) the system enters the Halt state, in this state the play led flashes, and the state can be cleared by issuing M999 or holding the flashing kill button for 2 seconds (it can also be cleared from the LCD panel). While in the Halt state any command issued from the host will get a !! response (with a few exceptions). The PSU may be turned off when Halt is entered if there is a psu Switch defined.

All commands can be triggered by a button or a sensor if a Switch module is configured to do so.

You can read more about the kill button at Smoothie kill button