This section is used for control inputs. These are typically used with switches.
- safety_door_pin:
- Type: Pin (input)
- Range: gpio
- Default: NO_PIN
- Details: This is typically used with an enclosure door. If the machine is running, it will quickly stop and enter a
Door
mode (see available modes). It is often used with the parking feature. You must deactivate the switch to use the machine. If the door opening pauses a running job, after the door is closed again the job can be resumed by a cycle_start. cycle_start can be done via a play/resume button in the sender user interface (which sends the cycle start/resume realtime character ~
), or by pressing a switch connected to a cycle_start_pin.
- reset_pin:
- Type: Pin (input)
- Range: gpio
- Default: NO_PIN
- Details: Performs a "soft reset", the same as sending the Ctrl-X realtime character via the user interface.
- feed_hold_pin:
- Type: Pin (input)
- Range: gpio
- Default: NO_PIN
- Details: Pauses a job that is running, the same as sending the '!' realtime character via the user interface. Paired with "cycle_start_pin" it will allow a machine to be paused and resumed with physical buttons.
- cycle_start_pin:
- Type: Pin (input)
- Range: gpio
- Default: NO_PIN
- Details: Resumes a job that is paused, the same as sending the '~' realtime character via the user interface. Paired with "feed_hold_pin" it will allow a machine to be paused and resumed with physical buttons.
- macro0_pin:
- Type: Pin (input)
- Range: gpio
- Default: NO_PIN
- Details: Runs macro0 configured in this section, the same as sending the 0x87 realtime character via the user interface.
- macro1_pin:
- Type: Pin (input)
- Range: gpio
- Default: NO_PIN
- Details: Runs macro1 configured in this section, the same as sending the 0x88 realtime character via the user interface.
- macro2_pin:
- Type: Pin (input)
- Range: gpio
- Default: NO_PIN
- Details: Runs macro2 configured in this section, the same as sending the 0x89 realtime character via the user interface.
- macro3_pin:
- Type: Pin (input)
- Range: gpio
- Default: NO_PIN
- Details: Runs macro3 configured in this section, the same as sending the 0x8a realtime character via the user interface.
- fault_pin:
- Type: Pin (input)
- Range: gpio
- Default: NO_PIN
- Details: Performs a hard stop, causing all motion to cease immediately without deceleration, thus possibly losing position accuracy. Stops the spindle if off_on_alarm is true in the active spindle configuration. Enters critical alarm state, which can only be exited via a soft reset.
- (since v3.7.5) This can be used with an e-stop. A true e-stop should also cut the power.
- Since (v3.9.3) Critical alarm state blocks homing and unlock.
- The actions of fault_pin and estop_pin are identical. fault_pin is intended to be used for machine-detected faults like stepper driver alarm signals.
- estop_pin:
- Type: Pin (input)
- Range: gpio
- Default: NO_PIN
- Details: Performs a hard stop, causing all motion to cease immediately without deceleration, thus possibly losing position accuracy. Stops the spindle if off_on_alarm is true in the active spindle configuration. Enters critical alarm state, which can only be exited via a soft reset.
- (since v3.7.5) This can be used with an e-stop. A true e-stop should also cut the power.
- Since (v3.9.3) Critical alarm state blocks homing and unlock.
- The actions of fault_pin and estop_pin are identical. estop_pin is intended to be used for user-activated switches.
The all control inputs must be in the non active state at turn on. This is to prevent you from using a machine with a stuck switch. The active state can be changed using the high/low attributes.
The status of the pins are available via the '?' status command.
The first 4 pins shown below are the same as standard Grbl (v1.1) pins. They trigger the same actions as realtime characters as defined here.
Standard Grbl only supports Door, Reset, Feed Hold and Cycle start pins. If you use the other pins, Grbl gcode senders will probably not be very helpful with the reporting or use of these pins.
control:
safety_door_pin: NO_PIN
reset_pin: NO_PIN
feed_hold_pin: NO_PIN
cycle_start_pin: NO_PIN
macro0_pin: NO_PIN
macro1_pin: NO_PIN
macro2_pin: NO_PIN
macro3_pin: NO_PIN
fault_pin: gpio.34
estop_pin: gpio.2