1
0
mirror of https://github.com/bdring/Grbl_Esp32.git synced 2025-09-01 10:23:19 +02:00

Deleted dead settings

This commit is contained in:
Mitch Bradley
2021-05-20 12:21:40 -10:00
parent ac6c94e1a6
commit f1892f5e48
9 changed files with 21 additions and 1413 deletions

View File

@@ -439,15 +439,13 @@ const double ARC_ANGULAR_TRAVEL_EPSILON = 5E-7; // Float (radians)
const int DWELL_TIME_STEP = 50; // Integer (1-255) (milliseconds)
// For test use only. This uses the ESP32's RMT peripheral to generate step pulses
// It allows the use of the STEP_PULSE_DELAY (see below) and it automatically ends the
// It allows the use of a delay and it automatically ends the
// pulse in one operation.
// Dir Pin ____|--------------------
// Step Pin _______|--|____________
// While this is experimental, it is intended to be the future default method after testing
//#define USE_RMT_STEPS
// STEP_PULSE_DELAY is now a setting...$Stepper/Direction/Delay
// The number of linear motions in the planner buffer to be planned at any give time. The vast
// majority of RAM that Grbl uses is based on this buffer size. Only increase if there is extra
// available RAM, like when re-compiling for a Mega2560. Or decrease if the Arduino begins to

View File

@@ -38,42 +38,10 @@
*/
// Grbl generic default settings. Should work across different machines.
#ifndef DEFAULT_STEP_PULSE_MICROSECONDS
# define DEFAULT_STEP_PULSE_MICROSECONDS 3 // $0
#endif
#ifndef DEFAULT_STEP_ENABLE_DELAY
# define DEFAULT_STEP_ENABLE_DELAY 0
#endif
#ifndef STEP_PULSE_DELAY
# define STEP_PULSE_DELAY 0
#endif
#ifndef DEFAULT_STEPPER_IDLE_LOCK_TIME
# define DEFAULT_STEPPER_IDLE_LOCK_TIME 250 // $1 msec (0-254, 255 keeps steppers enabled)
#endif
#ifndef DEFAULT_STEPPING_INVERT_MASK
# define DEFAULT_STEPPING_INVERT_MASK 0 // $2 uint8_t
#endif
#ifndef DEFAULT_DIRECTION_INVERT_MASK
# define DEFAULT_DIRECTION_INVERT_MASK 0 // $3 uint8_
#endif
#ifndef DEFAULT_INVERT_ST_ENABLE
# define DEFAULT_INVERT_ST_ENABLE 0 // $4 boolean
#endif
#ifndef DEFAULT_INVERT_LIMIT_PINS
# define DEFAULT_INVERT_LIMIT_PINS 1 // $5 boolean
#endif
#ifndef DEFAULT_INVERT_PROBE_PIN
# define DEFAULT_INVERT_PROBE_PIN 0 // $6 boolean
#endif
#ifndef DEFAULT_STATUS_REPORT_MASK
# define DEFAULT_STATUS_REPORT_MASK 1 // $10
#endif
@@ -82,26 +50,10 @@
# define DEFAULT_VERBOSE_ERRORS 0
#endif
#ifndef DEFAULT_JUNCTION_DEVIATION
# define DEFAULT_JUNCTION_DEVIATION 0.01 // $11 mm
#endif
#ifndef DEFAULT_ARC_TOLERANCE
# define DEFAULT_ARC_TOLERANCE 0.002 // $12 mm
#endif
#ifndef DEFAULT_REPORT_INCHES
# define DEFAULT_REPORT_INCHES 0 // $13 false
#endif
#ifndef DEFAULT_SOFT_LIMIT_ENABLE
# define DEFAULT_SOFT_LIMIT_ENABLE 0 // $20 false
#endif
#ifndef DEFAULT_HARD_LIMIT_ENABLE
# define DEFAULT_HARD_LIMIT_ENABLE 0 // $21 false
#endif
#ifndef DEFAULT_HOMING_ENABLE
# define DEFAULT_HOMING_ENABLE 0 // $22 false
#endif
@@ -163,10 +115,6 @@
# define DEFAULT_SPINDLE_RPM_MIN 0.0 // rpm
#endif
#ifndef DEFAULT_LASER_MODE // $32
# define DEFAULT_LASER_MODE 0 // false
#endif
#ifndef DEFAULT_LASER_FULL_POWER
# define DEFAULT_LASER_FULL_POWER 1000
#endif
@@ -258,214 +206,8 @@
// =========== AXIS RESOLUTION ======
#ifndef DEFAULT_X_STEPS_PER_MM
# define DEFAULT_X_STEPS_PER_MM 100.0
#endif
#ifndef DEFAULT_Y_STEPS_PER_MM
# define DEFAULT_Y_STEPS_PER_MM 100.0
#endif
#ifndef DEFAULT_Z_STEPS_PER_MM
# define DEFAULT_Z_STEPS_PER_MM 100.0
#endif
#ifndef DEFAULT_A_STEPS_PER_MM
# define DEFAULT_A_STEPS_PER_MM 100.0
#endif
#ifndef DEFAULT_B_STEPS_PER_MM
# define DEFAULT_B_STEPS_PER_MM 100.0
#endif
#ifndef DEFAULT_C_STEPS_PER_MM
# define DEFAULT_C_STEPS_PER_MM 100.0
#endif
// ============ AXIS MAX SPPED =========
#ifndef DEFAULT_X_MAX_RATE
# define DEFAULT_X_MAX_RATE 1000.0 // mm/min
#endif
#ifndef DEFAULT_Y_MAX_RATE
# define DEFAULT_Y_MAX_RATE 1000.0 // mm/min
#endif
#ifndef DEFAULT_Z_MAX_RATE
# define DEFAULT_Z_MAX_RATE 1000.0 // mm/min
#endif
#ifndef DEFAULT_A_MAX_RATE
# define DEFAULT_A_MAX_RATE 1000.0 // mm/min
#endif
#ifndef DEFAULT_B_MAX_RATE
# define DEFAULT_B_MAX_RATE 1000.0 // mm/min
#endif
#ifndef DEFAULT_C_MAX_RATE
# define DEFAULT_C_MAX_RATE 1000.0 // mm/min
#endif
// ============== Axis Acceleration =========
#define SEC_PER_MIN_SQ (60.0 * 60.0) // Seconds Per Minute Squared, for acceleration conversion
// Default accelerations are expressed in mm/sec^2
#ifndef DEFAULT_X_ACCELERATION
# define DEFAULT_X_ACCELERATION 200.0
#endif
#ifndef DEFAULT_Y_ACCELERATION
# define DEFAULT_Y_ACCELERATION 200.0
#endif
#ifndef DEFAULT_Z_ACCELERATION
# define DEFAULT_Z_ACCELERATION 200.0
#endif
#ifndef DEFAULT_A_ACCELERATION
# define DEFAULT_A_ACCELERATION 200.0
#endif
#ifndef DEFAULT_B_ACCELERATION
# define DEFAULT_B_ACCELERATION 200.0
#endif
#ifndef DEFAULT_C_ACCELERATION
# define DEFAULT_C_ACCELERATION 200.0
#endif
// ========= AXIS MAX TRAVEL ============
#ifndef DEFAULT_X_MAX_TRAVEL
# define DEFAULT_X_MAX_TRAVEL 300.0 // $130 mm NOTE: Must be a positive value.
#endif
#ifndef DEFAULT_Y_MAX_TRAVEL
# define DEFAULT_Y_MAX_TRAVEL 300.0 // mm NOTE: Must be a positive value.
#endif
#ifndef DEFAULT_Z_MAX_TRAVEL
# define DEFAULT_Z_MAX_TRAVEL 300.0 // mm NOTE: Must be a positive value.
#endif
#ifndef DEFAULT_A_MAX_TRAVEL
# define DEFAULT_A_MAX_TRAVEL 300.0 // mm NOTE: Must be a positive value.
#endif
#ifndef DEFAULT_B_MAX_TRAVEL
# define DEFAULT_B_MAX_TRAVEL 300.0 // mm NOTE: Must be a positive value.
#endif
#ifndef DEFAULT_C_MAX_TRAVEL
# define DEFAULT_C_MAX_TRAVEL 300.0 // mm NOTE: Must be a positive value.
#endif
#ifndef DEFAULT_X_HOMING_MPOS
# define DEFAULT_X_HOMING_MPOS 0.0
#endif
#ifndef DEFAULT_Y_HOMING_MPOS
# define DEFAULT_Y_HOMING_MPOS 0.0
#endif
#ifndef DEFAULT_Z_HOMING_MPOS
# define DEFAULT_Z_HOMING_MPOS 0.0
#endif
#ifndef DEFAULT_A_HOMING_MPOS
# define DEFAULT_A_HOMING_MPOS 0.0
#endif
#ifndef DEFAULT_B_HOMING_MPOS
# define DEFAULT_B_HOMING_MPOS 0.0
#endif
#ifndef DEFAULT_C_HOMING_MPOS
# define DEFAULT_C_HOMING_MPOS 0.0
#endif
#ifndef DEFAULT_HOMING_CYCLE_0
# define DEFAULT_HOMING_CYCLE_0 bit(Z_AXIS)
#endif
#ifndef DEFAULT_HOMING_CYCLE_1
# define DEFAULT_HOMING_CYCLE_1 (bit(X_AXIS) | bit(Y_AXIS))
#endif
#ifndef DEFAULT_HOMING_CYCLE_2
# define DEFAULT_HOMING_CYCLE_2 0
#endif
#ifndef DEFAULT_HOMING_CYCLE_3
# define DEFAULT_HOMING_CYCLE_3 0
#endif
#ifndef DEFAULT_HOMING_CYCLE_4
# define DEFAULT_HOMING_CYCLE_4 0
#endif
#ifndef DEFAULT_HOMING_CYCLE_5
# define DEFAULT_HOMING_CYCLE_5 0
#endif
// ========== Motor current (SPI Drivers ) =============
#ifndef DEFAULT_X_CURRENT
# define DEFAULT_X_CURRENT 0.25 // $140 current in amps (extended set)
#endif
#ifndef DEFAULT_Y_CURRENT
# define DEFAULT_Y_CURRENT 0.25 // $141 current in amps (extended set)
#endif
#ifndef DEFAULT_Z_CURRENT
# define DEFAULT_Z_CURRENT 0.25 // $142 current in amps (extended set)
#endif
#ifndef DEFAULT_A_CURRENT
# define DEFAULT_A_CURRENT 0.25 // $143 current in amps (extended set)
#endif
#ifndef DEFAULT_B_CURRENT
# define DEFAULT_B_CURRENT 0.25 // $144 current in amps (extended set)
#endif
#ifndef DEFAULT_C_CURRENT
# define DEFAULT_C_CURRENT 0.25 // $145 current in amps (extended set)
#endif
// ========== Motor hold current (SPI Drivers ) =============
#ifndef DEFAULT_X_HOLD_CURRENT
# define DEFAULT_X_HOLD_CURRENT 0.125 // $150 current in amps (extended set)
#endif
#ifndef DEFAULT_Y_HOLD_CURRENT
# define DEFAULT_Y_HOLD_CURRENT 0.125 // $151 current in amps (extended set)
#endif
#ifndef DEFAULT_Z_HOLD_CURRENT
# define DEFAULT_Z_HOLD_CURRENT 0.125 // $152 current in amps (extended set)
#endif
#ifndef DEFAULT_A_HOLD_CURRENT
# define DEFAULT_A_HOLD_CURRENT 0.125 // $153 current in amps (extended set)
#endif
#ifndef DEFAULT_B_HOLD_CURRENT
# define DEFAULT_B_HOLD_CURRENT 0.125 // $154 current in amps (extended set)
#endif
#ifndef DEFAULT_C_HOLD_CURRENT
# define DEFAULT_C_HOLD_CURRENT 0.125 // $154 current in amps (extended set)
#endif
// ========== Microsteps (SPI Drivers ) ================
#ifndef DEFAULT_X_MICROSTEPS
# define DEFAULT_X_MICROSTEPS 16 // $160 micro steps (extended set)
#endif
#ifndef DEFAULT_Y_MICROSTEPS
# define DEFAULT_Y_MICROSTEPS 16 // $161 micro steps (extended set)
#endif
#ifndef DEFAULT_Z_MICROSTEPS
# define DEFAULT_Z_MICROSTEPS 16 // $162 micro steps (extended set)
#endif
#ifndef DEFAULT_A_MICROSTEPS
# define DEFAULT_A_MICROSTEPS 16 // $163 micro steps (extended set)
#endif
#ifndef DEFAULT_B_MICROSTEPS
# define DEFAULT_B_MICROSTEPS 16 // $164 micro steps (extended set)
#endif
#ifndef DEFAULT_C_MICROSTEPS
# define DEFAULT_C_MICROSTEPS 16 // $165 micro steps (extended set)
#endif
// ========== Stallguard (SPI Drivers ) ================
#ifndef DEFAULT_X_STALLGUARD
# define DEFAULT_X_STALLGUARD 16 // $170 stallguard (extended set)
#endif
#ifndef DEFAULT_Y_STALLGUARD
# define DEFAULT_Y_STALLGUARD 16 // $171 stallguard (extended set)
#endif
#ifndef DEFAULT_Z_STALLGUARD
# define DEFAULT_Z_STALLGUARD 16 // $172 stallguard (extended set)
#endif
#ifndef DEFAULT_A_STALLGUARD
# define DEFAULT_A_STALLGUARD 16 // $173 stallguard (extended set)
#endif
#ifndef DEFAULT_B_STALLGUARD
# define DEFAULT_B_STALLGUARD 16 // $174 stallguard (extended set)
#endif
#ifndef DEFAULT_C_STALLGUARD
# define DEFAULT_C_STALLGUARD 16 // $175 stallguard (extended set)
#endif
// ================== pin defaults ========================
@@ -477,124 +219,6 @@
# define SDCARD_DET_PIN UNDEFINED_PIN
#endif
#ifndef STEPPERS_DISABLE_PIN
# define STEPPERS_DISABLE_PIN UNDEFINED_PIN
#endif
#ifndef X_DISABLE_PIN
# define X_DISABLE_PIN UNDEFINED_PIN
#endif
#ifndef Y_DISABLE_PIN
# define Y_DISABLE_PIN UNDEFINED_PIN
#endif
#ifndef Z_DISABLE_PIN
# define Z_DISABLE_PIN UNDEFINED_PIN
#endif
#ifndef A_DISABLE_PIN
# define A_DISABLE_PIN UNDEFINED_PIN
#endif
#ifndef B_DISABLE_PIN
# define B_DISABLE_PIN UNDEFINED_PIN
#endif
#ifndef C_DISABLE_PIN
# define C_DISABLE_PIN UNDEFINED_PIN
#endif
#ifndef X2_DISABLE_PIN
# define X2_DISABLE_PIN UNDEFINED_PIN
#endif
#ifndef Y2_DISABLE_PIN
# define Y2_DISABLE_PIN UNDEFINED_PIN
#endif
#ifndef Z2_DISABLE_PIN
# define Z2_DISABLE_PIN UNDEFINED_PIN
#endif
#ifndef A2_DISABLE_PIN
# define A2_DISABLE_PIN UNDEFINED_PIN
#endif
#ifndef B2_DISABLE_PIN
# define B2_DISABLE_PIN UNDEFINED_PIN
#endif
#ifndef C2_DISABLE_PIN
# define C2_DISABLE_PIN UNDEFINED_PIN
#endif
#ifndef X_LIMIT_PIN
# define X_LIMIT_PIN UNDEFINED_PIN
#endif
#ifndef Y_LIMIT_PIN
# define Y_LIMIT_PIN UNDEFINED_PIN
#endif
#ifndef Z_LIMIT_PIN
# define Z_LIMIT_PIN UNDEFINED_PIN
#endif
#ifndef A_LIMIT_PIN
# define A_LIMIT_PIN UNDEFINED_PIN
#endif
#ifndef B_LIMIT_PIN
# define B_LIMIT_PIN UNDEFINED_PIN
#endif
#ifndef C_LIMIT_PIN
# define C_LIMIT_PIN UNDEFINED_PIN
#endif
#ifndef X2_LIMIT_PIN
# define X2_LIMIT_PIN UNDEFINED_PIN
#endif
#ifndef Y2_LIMIT_PIN
# define Y2_LIMIT_PIN UNDEFINED_PIN
#endif
#ifndef Z2_LIMIT_PIN
# define Z2_LIMIT_PIN UNDEFINED_PIN
#endif
#ifndef A2_LIMIT_PIN
# define A2_LIMIT_PIN UNDEFINED_PIN
#endif
#ifndef B2_LIMIT_PIN
# define B2_LIMIT_PIN UNDEFINED_PIN
#endif
#ifndef C2_LIMIT_PIN
# define C2_LIMIT_PIN UNDEFINED_PIN
#endif
// assigned all MS3 (microstep pin 3) to UNDEFINED_PIN
#ifndef X_STEPPER_MS3
# define X_STEPPER_MS3 UNDEFINED_PIN
#endif
#ifndef Y_STEPPER_MS3
# define Y_STEPPER_MS3 UNDEFINED_PIN
#endif
#ifndef Z_STEPPER_MS3
# define Z_STEPPER_MS3 UNDEFINED_PIN
#endif
#ifndef A_STEPPER_MS3
# define A_STEPPER_MS3 UNDEFINED_PIN
#endif
#ifndef B_STEPPER_MS3
# define B_STEPPER_MS3 UNDEFINED_PIN
#endif
#ifndef C_STEPPER_MS3
# define C_STEPPER_MS3 UNDEFINED_PIN
#endif
#ifndef X2_STEPPER_MS3
# define X2_STEPPER_MS3 UNDEFINED_PIN
#endif
#ifndef Y2_STEPPER_MS3
# define Y2_STEPPER_MS3 UNDEFINED_PIN
#endif
#ifndef Z2_STEPPER_MS3
# define Z2_STEPPER_MS3 UNDEFINED_PIN
#endif
#ifndef A2_STEPPER_MS3
# define A2_STEPPER_MS3 UNDEFINED_PIN
#endif
#ifndef B2_STEPPER_MS3
# define B2_STEPPER_MS3 UNDEFINED_PIN
#endif
#ifndef C2_STEPPER_MS3
# define C2_STEPPER_MS3 UNDEFINED_PIN
#endif
#ifndef SERVO_TIMER_INTERVAL
# define SERVO_TIMER_INTERVAL 75.0 // Hz This is the update inveral in milliseconds
#endif
@@ -647,10 +271,6 @@
# define USER_ANALOG_PIN_3 UNDEFINED_PIN
#endif
#ifndef PROBE_PIN
# define PROBE_PIN UNDEFINED_PIN
#endif
#ifndef USER_ANALOG_PIN_0_FREQ
# define USER_ANALOG_PIN_0_FREQ 5000
#endif

View File

@@ -28,30 +28,10 @@
#include "Defaults.h"
// Set defaults to all the macro's:
#ifndef COOLANT_FLOOD_PIN
# define COOLANT_FLOOD_PIN UNDEFINED_PIN
#endif
const char* COOLANT_FLOOD_PIN_DEFAULT = COOLANT_FLOOD_PIN;
#ifndef COOLANT_MIST_PIN
# define COOLANT_MIST_PIN UNDEFINED_PIN
#endif
const char* COOLANT_MIST_PIN_DEFAULT = COOLANT_MIST_PIN;
#ifndef PROBE_PIN
# define PROBE_PIN UNDEFINED_PIN
#endif
const char* PROBE_PIN_DEFAULT = PROBE_PIN;
#ifndef SDCARD_DET_PIN
# define SDCARD_DET_PIN UNDEFINED_PIN
#endif
const char* SDCARD_DET_PIN_DEFAULT = SDCARD_DET_PIN;
#ifndef STEPPERS_DISABLE_PIN
# define STEPPERS_DISABLE_PIN UNDEFINED_PIN
#endif
const char* STEPPERS_DISABLE_PIN_DEFAULT = STEPPERS_DISABLE_PIN;
#ifndef STEPPER_RESET
# define STEPPER_RESET UNDEFINED_PIN
#endif
const char* STEPPER_RESET_DEFAULT = STEPPER_RESET;
#ifndef CONTROL_SAFETY_DOOR_PIN
# define CONTROL_SAFETY_DOOR_PIN UNDEFINED_PIN
#endif
@@ -187,545 +167,6 @@ const char* VFD_RS485_RXD_PIN_DEFAULT = VFD_RS485_RXD_PIN;
#endif
const char* VFD_RS485_RTS_PIN_DEFAULT = VFD_RS485_RTS_PIN;
#ifndef X_LIMIT_PIN
# define X_LIMIT_PIN UNDEFINED_PIN
#endif
const char* X_LIMIT_PIN_DEFAULT = X_LIMIT_PIN;
#ifndef X2_LIMIT_PIN
# define X2_LIMIT_PIN UNDEFINED_PIN
#endif
const char* X2_LIMIT_PIN_DEFAULT = X2_LIMIT_PIN;
#ifndef Y_LIMIT_PIN
# define Y_LIMIT_PIN UNDEFINED_PIN
#endif
const char* Y_LIMIT_PIN_DEFAULT = Y_LIMIT_PIN;
#ifndef Y2_LIMIT_PIN
# define Y2_LIMIT_PIN UNDEFINED_PIN
#endif
const char* Y2_LIMIT_PIN_DEFAULT = Y2_LIMIT_PIN;
#ifndef Z_LIMIT_PIN
# define Z_LIMIT_PIN UNDEFINED_PIN
#endif
const char* Z_LIMIT_PIN_DEFAULT = Z_LIMIT_PIN;
#ifndef Z2_LIMIT_PIN
# define Z2_LIMIT_PIN UNDEFINED_PIN
#endif
const char* Z2_LIMIT_PIN_DEFAULT = Z2_LIMIT_PIN;
#ifndef A_LIMIT_PIN
# define A_LIMIT_PIN UNDEFINED_PIN
#endif
const char* A_LIMIT_PIN_DEFAULT = A_LIMIT_PIN;
#ifndef A2_LIMIT_PIN
# define A2_LIMIT_PIN UNDEFINED_PIN
#endif
const char* A2_LIMIT_PIN_DEFAULT = A2_LIMIT_PIN;
#ifndef B_LIMIT_PIN
# define B_LIMIT_PIN UNDEFINED_PIN
#endif
const char* B_LIMIT_PIN_DEFAULT = B_LIMIT_PIN;
#ifndef B2_LIMIT_PIN
# define B2_LIMIT_PIN UNDEFINED_PIN
#endif
const char* B2_LIMIT_PIN_DEFAULT = B2_LIMIT_PIN;
#ifndef C_LIMIT_PIN
# define C_LIMIT_PIN UNDEFINED_PIN
#endif
const char* C_LIMIT_PIN_DEFAULT = C_LIMIT_PIN;
#ifndef C2_LIMIT_PIN
# define C2_LIMIT_PIN UNDEFINED_PIN
#endif
const char* C2_LIMIT_PIN_DEFAULT = C2_LIMIT_PIN;
#ifndef X_STEP_PIN
# define X_STEP_PIN UNDEFINED_PIN
#endif
const char* X_STEP_PIN_DEFAULT = X_STEP_PIN;
#ifndef X2_STEP_PIN
# define X2_STEP_PIN UNDEFINED_PIN
#endif
const char* X2_STEP_PIN_DEFAULT = X2_STEP_PIN;
#ifndef Y_STEP_PIN
# define Y_STEP_PIN UNDEFINED_PIN
#endif
const char* Y_STEP_PIN_DEFAULT = Y_STEP_PIN;
#ifndef Y2_STEP_PIN
# define Y2_STEP_PIN UNDEFINED_PIN
#endif
const char* Y2_STEP_PIN_DEFAULT = Y2_STEP_PIN;
#ifndef Z_STEP_PIN
# define Z_STEP_PIN UNDEFINED_PIN
#endif
const char* Z_STEP_PIN_DEFAULT = Z_STEP_PIN;
#ifndef Z2_STEP_PIN
# define Z2_STEP_PIN UNDEFINED_PIN
#endif
const char* Z2_STEP_PIN_DEFAULT = Z2_STEP_PIN;
#ifndef A_STEP_PIN
# define A_STEP_PIN UNDEFINED_PIN
#endif
const char* A_STEP_PIN_DEFAULT = A_STEP_PIN;
#ifndef A2_STEP_PIN
# define A2_STEP_PIN UNDEFINED_PIN
#endif
const char* A2_STEP_PIN_DEFAULT = A2_STEP_PIN;
#ifndef B_STEP_PIN
# define B_STEP_PIN UNDEFINED_PIN
#endif
const char* B_STEP_PIN_DEFAULT = B_STEP_PIN;
#ifndef B2_STEP_PIN
# define B2_STEP_PIN UNDEFINED_PIN
#endif
const char* B2_STEP_PIN_DEFAULT = B2_STEP_PIN;
#ifndef C_STEP_PIN
# define C_STEP_PIN UNDEFINED_PIN
#endif
const char* C_STEP_PIN_DEFAULT = C_STEP_PIN;
#ifndef C2_STEP_PIN
# define C2_STEP_PIN UNDEFINED_PIN
#endif
const char* C2_STEP_PIN_DEFAULT = C2_STEP_PIN;
#ifndef X_DIRECTION_PIN
# define X_DIRECTION_PIN UNDEFINED_PIN
#endif
const char* X_DIRECTION_PIN_DEFAULT = X_DIRECTION_PIN;
#ifndef X2_DIRECTION_PIN
# define X2_DIRECTION_PIN UNDEFINED_PIN
#endif
const char* X2_DIRECTION_PIN_DEFAULT = X2_DIRECTION_PIN;
#ifndef Y_DIRECTION_PIN
# define Y_DIRECTION_PIN UNDEFINED_PIN
#endif
const char* Y_DIRECTION_PIN_DEFAULT = Y_DIRECTION_PIN;
#ifndef Y2_DIRECTION_PIN
# define Y2_DIRECTION_PIN UNDEFINED_PIN
#endif
const char* Y2_DIRECTION_PIN_DEFAULT = Y2_DIRECTION_PIN;
#ifndef Z_DIRECTION_PIN
# define Z_DIRECTION_PIN UNDEFINED_PIN
#endif
const char* Z_DIRECTION_PIN_DEFAULT = Z_DIRECTION_PIN;
#ifndef Z2_DIRECTION_PIN
# define Z2_DIRECTION_PIN UNDEFINED_PIN
#endif
const char* Z2_DIRECTION_PIN_DEFAULT = Z2_DIRECTION_PIN;
#ifndef A_DIRECTION_PIN
# define A_DIRECTION_PIN UNDEFINED_PIN
#endif
const char* A_DIRECTION_PIN_DEFAULT = A_DIRECTION_PIN;
#ifndef A2_DIRECTION_PIN
# define A2_DIRECTION_PIN UNDEFINED_PIN
#endif
const char* A2_DIRECTION_PIN_DEFAULT = A2_DIRECTION_PIN;
#ifndef B_DIRECTION_PIN
# define B_DIRECTION_PIN UNDEFINED_PIN
#endif
const char* B_DIRECTION_PIN_DEFAULT = B_DIRECTION_PIN;
#ifndef B2_DIRECTION_PIN
# define B2_DIRECTION_PIN UNDEFINED_PIN
#endif
const char* B2_DIRECTION_PIN_DEFAULT = B2_DIRECTION_PIN;
#ifndef C_DIRECTION_PIN
# define C_DIRECTION_PIN UNDEFINED_PIN
#endif
const char* C_DIRECTION_PIN_DEFAULT = C_DIRECTION_PIN;
#ifndef C2_DIRECTION_PIN
# define C2_DIRECTION_PIN UNDEFINED_PIN
#endif
const char* C2_DIRECTION_PIN_DEFAULT = C2_DIRECTION_PIN;
#ifndef X_DISABLE_PIN
# define X_DISABLE_PIN UNDEFINED_PIN
#endif
const char* X_DISABLE_PIN_DEFAULT = X_DISABLE_PIN;
#ifndef X2_DISABLE_PIN
# define X2_DISABLE_PIN UNDEFINED_PIN
#endif
const char* X2_DISABLE_PIN_DEFAULT = X2_DISABLE_PIN;
#ifndef Y_DISABLE_PIN
# define Y_DISABLE_PIN UNDEFINED_PIN
#endif
const char* Y_DISABLE_PIN_DEFAULT = Y_DISABLE_PIN;
#ifndef Y2_DISABLE_PIN
# define Y2_DISABLE_PIN UNDEFINED_PIN
#endif
const char* Y2_DISABLE_PIN_DEFAULT = Y2_DISABLE_PIN;
#ifndef Z_DISABLE_PIN
# define Z_DISABLE_PIN UNDEFINED_PIN
#endif
const char* Z_DISABLE_PIN_DEFAULT = Z_DISABLE_PIN;
#ifndef Z2_DISABLE_PIN
# define Z2_DISABLE_PIN UNDEFINED_PIN
#endif
const char* Z2_DISABLE_PIN_DEFAULT = Z2_DISABLE_PIN;
#ifndef A_DISABLE_PIN
# define A_DISABLE_PIN UNDEFINED_PIN
#endif
const char* A_DISABLE_PIN_DEFAULT = A_DISABLE_PIN;
#ifndef A2_DISABLE_PIN
# define A2_DISABLE_PIN UNDEFINED_PIN
#endif
const char* A2_DISABLE_PIN_DEFAULT = A2_DISABLE_PIN;
#ifndef B_DISABLE_PIN
# define B_DISABLE_PIN UNDEFINED_PIN
#endif
const char* B_DISABLE_PIN_DEFAULT = B_DISABLE_PIN;
#ifndef B2_DISABLE_PIN
# define B2_DISABLE_PIN UNDEFINED_PIN
#endif
const char* B2_DISABLE_PIN_DEFAULT = B2_DISABLE_PIN;
#ifndef C_DISABLE_PIN
# define C_DISABLE_PIN UNDEFINED_PIN
#endif
const char* C_DISABLE_PIN_DEFAULT = C_DISABLE_PIN;
#ifndef C2_DISABLE_PIN
# define C2_DISABLE_PIN UNDEFINED_PIN
#endif
const char* C2_DISABLE_PIN_DEFAULT = C2_DISABLE_PIN;
#ifndef X_CS_PIN
# define X_CS_PIN UNDEFINED_PIN
#endif
const char* X_CS_PIN_DEFAULT = X_CS_PIN;
#ifndef X2_CS_PIN
# define X2_CS_PIN UNDEFINED_PIN
#endif
const char* X2_CS_PIN_DEFAULT = X2_CS_PIN;
#ifndef Y_CS_PIN
# define Y_CS_PIN UNDEFINED_PIN
#endif
const char* Y_CS_PIN_DEFAULT = Y_CS_PIN;
#ifndef Y2_CS_PIN
# define Y2_CS_PIN UNDEFINED_PIN
#endif
const char* Y2_CS_PIN_DEFAULT = Y2_CS_PIN;
#ifndef Z_CS_PIN
# define Z_CS_PIN UNDEFINED_PIN
#endif
const char* Z_CS_PIN_DEFAULT = Z_CS_PIN;
#ifndef Z2_CS_PIN
# define Z2_CS_PIN UNDEFINED_PIN
#endif
const char* Z2_CS_PIN_DEFAULT = Z2_CS_PIN;
#ifndef A_CS_PIN
# define A_CS_PIN UNDEFINED_PIN
#endif
const char* A_CS_PIN_DEFAULT = A_CS_PIN;
#ifndef A2_CS_PIN
# define A2_CS_PIN UNDEFINED_PIN
#endif
const char* A2_CS_PIN_DEFAULT = A2_CS_PIN;
#ifndef B_CS_PIN
# define B_CS_PIN UNDEFINED_PIN
#endif
const char* B_CS_PIN_DEFAULT = B_CS_PIN;
#ifndef B2_CS_PIN
# define B2_CS_PIN UNDEFINED_PIN
#endif
const char* B2_CS_PIN_DEFAULT = B2_CS_PIN;
#ifndef C_CS_PIN
# define C_CS_PIN UNDEFINED_PIN
#endif
const char* C_CS_PIN_DEFAULT = C_CS_PIN;
#ifndef C2_CS_PIN
# define C2_CS_PIN UNDEFINED_PIN
#endif
const char* C2_CS_PIN_DEFAULT = C2_CS_PIN;
#ifndef X_SERVO_PIN
# define X_SERVO_PIN UNDEFINED_PIN
#endif
const char* X_SERVO_PIN_DEFAULT = X_SERVO_PIN;
#ifndef X2_SERVO_PIN
# define X2_SERVO_PIN UNDEFINED_PIN
#endif
const char* X2_SERVO_PIN_DEFAULT = X2_SERVO_PIN;
#ifndef Y_SERVO_PIN
# define Y_SERVO_PIN UNDEFINED_PIN
#endif
const char* Y_SERVO_PIN_DEFAULT = Y_SERVO_PIN;
#ifndef Y2_SERVO_PIN
# define Y2_SERVO_PIN UNDEFINED_PIN
#endif
const char* Y2_SERVO_PIN_DEFAULT = Y2_SERVO_PIN;
#ifndef Z_SERVO_PIN
# define Z_SERVO_PIN UNDEFINED_PIN
#endif
const char* Z_SERVO_PIN_DEFAULT = Z_SERVO_PIN;
#ifndef Z2_SERVO_PIN
# define Z2_SERVO_PIN UNDEFINED_PIN
#endif
const char* Z2_SERVO_PIN_DEFAULT = Z2_SERVO_PIN;
#ifndef A_SERVO_PIN
# define A_SERVO_PIN UNDEFINED_PIN
#endif
const char* A_SERVO_PIN_DEFAULT = A_SERVO_PIN;
#ifndef A2_SERVO_PIN
# define A2_SERVO_PIN UNDEFINED_PIN
#endif
const char* A2_SERVO_PIN_DEFAULT = A2_SERVO_PIN;
#ifndef B_SERVO_PIN
# define B_SERVO_PIN UNDEFINED_PIN
#endif
const char* B_SERVO_PIN_DEFAULT = B_SERVO_PIN;
#ifndef B2_SERVO_PIN
# define B2_SERVO_PIN UNDEFINED_PIN
#endif
const char* B2_SERVO_PIN_DEFAULT = B2_SERVO_PIN;
#ifndef C_SERVO_PIN
# define C_SERVO_PIN UNDEFINED_PIN
#endif
const char* C_SERVO_PIN_DEFAULT = C_SERVO_PIN;
#ifndef C2_SERVO_PIN
# define C2_SERVO_PIN UNDEFINED_PIN
#endif
const char* C2_SERVO_PIN_DEFAULT = C2_SERVO_PIN;
#ifndef X_STEPPER_MS3
# define X_STEPPER_MS3 UNDEFINED_PIN
#endif
const char* X_STEPPER_MS3_DEFAULT = X_STEPPER_MS3;
#ifndef X2_STEPPER_MS3
# define X2_STEPPER_MS3 UNDEFINED_PIN
#endif
const char* X2_STEPPER_MS3_DEFAULT = X2_STEPPER_MS3;
#ifndef Y_STEPPER_MS3
# define Y_STEPPER_MS3 UNDEFINED_PIN
#endif
const char* Y_STEPPER_MS3_DEFAULT = Y_STEPPER_MS3;
#ifndef Y2_STEPPER_MS3
# define Y2_STEPPER_MS3 UNDEFINED_PIN
#endif
const char* Y2_STEPPER_MS3_DEFAULT = Y2_STEPPER_MS3;
#ifndef Z_STEPPER_MS3
# define Z_STEPPER_MS3 UNDEFINED_PIN
#endif
const char* Z_STEPPER_MS3_DEFAULT = Z_STEPPER_MS3;
#ifndef Z2_STEPPER_MS3
# define Z2_STEPPER_MS3 UNDEFINED_PIN
#endif
const char* Z2_STEPPER_MS3_DEFAULT = Z2_STEPPER_MS3;
#ifndef A_STEPPER_MS3
# define A_STEPPER_MS3 UNDEFINED_PIN
#endif
const char* A_STEPPER_MS3_DEFAULT = A_STEPPER_MS3;
#ifndef A2_STEPPER_MS3
# define A2_STEPPER_MS3 UNDEFINED_PIN
#endif
const char* A2_STEPPER_MS3_DEFAULT = A2_STEPPER_MS3;
#ifndef B_STEPPER_MS3
# define B_STEPPER_MS3 UNDEFINED_PIN
#endif
const char* B_STEPPER_MS3_DEFAULT = B_STEPPER_MS3;
#ifndef B2_STEPPER_MS3
# define B2_STEPPER_MS3 UNDEFINED_PIN
#endif
const char* B2_STEPPER_MS3_DEFAULT = B2_STEPPER_MS3;
#ifndef C_STEPPER_MS3
# define C_STEPPER_MS3 UNDEFINED_PIN
#endif
const char* C_STEPPER_MS3_DEFAULT = C_STEPPER_MS3;
#ifndef C2_STEPPER_MS3
# define C2_STEPPER_MS3 UNDEFINED_PIN
#endif
const char* C2_STEPPER_MS3_DEFAULT = C2_STEPPER_MS3;
#ifndef X_PIN_PHASE_0
# define X_PIN_PHASE_0 UNDEFINED_PIN
#endif
const char* X_PIN_PHASE_0_DEFAULT = X_PIN_PHASE_0;
#ifndef X2_PIN_PHASE_0
# define X2_PIN_PHASE_0 UNDEFINED_PIN
#endif
const char* X2_PIN_PHASE_0_DEFAULT = X2_PIN_PHASE_0;
#ifndef Y_PIN_PHASE_0
# define Y_PIN_PHASE_0 UNDEFINED_PIN
#endif
const char* Y_PIN_PHASE_0_DEFAULT = Y_PIN_PHASE_0;
#ifndef Y2_PIN_PHASE_0
# define Y2_PIN_PHASE_0 UNDEFINED_PIN
#endif
const char* Y2_PIN_PHASE_0_DEFAULT = Y2_PIN_PHASE_0;
#ifndef Z_PIN_PHASE_0
# define Z_PIN_PHASE_0 UNDEFINED_PIN
#endif
const char* Z_PIN_PHASE_0_DEFAULT = Z_PIN_PHASE_0;
#ifndef Z2_PIN_PHASE_0
# define Z2_PIN_PHASE_0 UNDEFINED_PIN
#endif
const char* Z2_PIN_PHASE_0_DEFAULT = Z2_PIN_PHASE_0;
#ifndef A_PIN_PHASE_0
# define A_PIN_PHASE_0 UNDEFINED_PIN
#endif
const char* A_PIN_PHASE_0_DEFAULT = A_PIN_PHASE_0;
#ifndef A2_PIN_PHASE_0
# define A2_PIN_PHASE_0 UNDEFINED_PIN
#endif
const char* A2_PIN_PHASE_0_DEFAULT = A2_PIN_PHASE_0;
#ifndef B_PIN_PHASE_0
# define B_PIN_PHASE_0 UNDEFINED_PIN
#endif
const char* B_PIN_PHASE_0_DEFAULT = B_PIN_PHASE_0;
#ifndef B2_PIN_PHASE_0
# define B2_PIN_PHASE_0 UNDEFINED_PIN
#endif
const char* B2_PIN_PHASE_0_DEFAULT = B2_PIN_PHASE_0;
#ifndef C_PIN_PHASE_0
# define C_PIN_PHASE_0 UNDEFINED_PIN
#endif
const char* C_PIN_PHASE_0_DEFAULT = C_PIN_PHASE_0;
#ifndef C2_PIN_PHASE_0
# define C2_PIN_PHASE_0 UNDEFINED_PIN
#endif
const char* C2_PIN_PHASE_0_DEFAULT = C2_PIN_PHASE_0;
#ifndef X_PIN_PHASE_1
# define X_PIN_PHASE_1 UNDEFINED_PIN
#endif
const char* X_PIN_PHASE_1_DEFAULT = X_PIN_PHASE_1;
#ifndef X2_PIN_PHASE_1
# define X2_PIN_PHASE_1 UNDEFINED_PIN
#endif
const char* X2_PIN_PHASE_1_DEFAULT = X2_PIN_PHASE_1;
#ifndef Y_PIN_PHASE_1
# define Y_PIN_PHASE_1 UNDEFINED_PIN
#endif
const char* Y_PIN_PHASE_1_DEFAULT = Y_PIN_PHASE_1;
#ifndef Y2_PIN_PHASE_1
# define Y2_PIN_PHASE_1 UNDEFINED_PIN
#endif
const char* Y2_PIN_PHASE_1_DEFAULT = Y2_PIN_PHASE_1;
#ifndef Z_PIN_PHASE_1
# define Z_PIN_PHASE_1 UNDEFINED_PIN
#endif
const char* Z_PIN_PHASE_1_DEFAULT = Z_PIN_PHASE_1;
#ifndef Z2_PIN_PHASE_1
# define Z2_PIN_PHASE_1 UNDEFINED_PIN
#endif
const char* Z2_PIN_PHASE_1_DEFAULT = Z2_PIN_PHASE_1;
#ifndef A_PIN_PHASE_1
# define A_PIN_PHASE_1 UNDEFINED_PIN
#endif
const char* A_PIN_PHASE_1_DEFAULT = A_PIN_PHASE_1;
#ifndef A2_PIN_PHASE_1
# define A2_PIN_PHASE_1 UNDEFINED_PIN
#endif
const char* A2_PIN_PHASE_1_DEFAULT = A2_PIN_PHASE_1;
#ifndef B_PIN_PHASE_1
# define B_PIN_PHASE_1 UNDEFINED_PIN
#endif
const char* B_PIN_PHASE_1_DEFAULT = B_PIN_PHASE_1;
#ifndef B2_PIN_PHASE_1
# define B2_PIN_PHASE_1 UNDEFINED_PIN
#endif
const char* B2_PIN_PHASE_1_DEFAULT = B2_PIN_PHASE_1;
#ifndef C_PIN_PHASE_1
# define C_PIN_PHASE_1 UNDEFINED_PIN
#endif
const char* C_PIN_PHASE_1_DEFAULT = C_PIN_PHASE_1;
#ifndef C2_PIN_PHASE_1
# define C2_PIN_PHASE_1 UNDEFINED_PIN
#endif
const char* C2_PIN_PHASE_1_DEFAULT = C2_PIN_PHASE_1;
#ifndef X_PIN_PHASE_2
# define X_PIN_PHASE_2 UNDEFINED_PIN
#endif
const char* X_PIN_PHASE_2_DEFAULT = X_PIN_PHASE_2;
#ifndef X2_PIN_PHASE_2
# define X2_PIN_PHASE_2 UNDEFINED_PIN
#endif
const char* X2_PIN_PHASE_2_DEFAULT = X2_PIN_PHASE_2;
#ifndef Y_PIN_PHASE_2
# define Y_PIN_PHASE_2 UNDEFINED_PIN
#endif
const char* Y_PIN_PHASE_2_DEFAULT = Y_PIN_PHASE_2;
#ifndef Y2_PIN_PHASE_2
# define Y2_PIN_PHASE_2 UNDEFINED_PIN
#endif
const char* Y2_PIN_PHASE_2_DEFAULT = Y2_PIN_PHASE_2;
#ifndef Z_PIN_PHASE_2
# define Z_PIN_PHASE_2 UNDEFINED_PIN
#endif
const char* Z_PIN_PHASE_2_DEFAULT = Z_PIN_PHASE_2;
#ifndef Z2_PIN_PHASE_2
# define Z2_PIN_PHASE_2 UNDEFINED_PIN
#endif
const char* Z2_PIN_PHASE_2_DEFAULT = Z2_PIN_PHASE_2;
#ifndef A_PIN_PHASE_2
# define A_PIN_PHASE_2 UNDEFINED_PIN
#endif
const char* A_PIN_PHASE_2_DEFAULT = A_PIN_PHASE_2;
#ifndef A2_PIN_PHASE_2
# define A2_PIN_PHASE_2 UNDEFINED_PIN
#endif
const char* A2_PIN_PHASE_2_DEFAULT = A2_PIN_PHASE_2;
#ifndef B_PIN_PHASE_2
# define B_PIN_PHASE_2 UNDEFINED_PIN
#endif
const char* B_PIN_PHASE_2_DEFAULT = B_PIN_PHASE_2;
#ifndef B2_PIN_PHASE_2
# define B2_PIN_PHASE_2 UNDEFINED_PIN
#endif
const char* B2_PIN_PHASE_2_DEFAULT = B2_PIN_PHASE_2;
#ifndef C_PIN_PHASE_2
# define C_PIN_PHASE_2 UNDEFINED_PIN
#endif
const char* C_PIN_PHASE_2_DEFAULT = C_PIN_PHASE_2;
#ifndef C2_PIN_PHASE_2
# define C2_PIN_PHASE_2 UNDEFINED_PIN
#endif
const char* C2_PIN_PHASE_2_DEFAULT = C2_PIN_PHASE_2;
#ifndef X_PIN_PHASE_3
# define X_PIN_PHASE_3 UNDEFINED_PIN
#endif
const char* X_PIN_PHASE_3_DEFAULT = X_PIN_PHASE_3;
#ifndef X2_PIN_PHASE_3
# define X2_PIN_PHASE_3 UNDEFINED_PIN
#endif
const char* X2_PIN_PHASE_3_DEFAULT = X2_PIN_PHASE_3;
#ifndef Y_PIN_PHASE_3
# define Y_PIN_PHASE_3 UNDEFINED_PIN
#endif
const char* Y_PIN_PHASE_3_DEFAULT = Y_PIN_PHASE_3;
#ifndef Y2_PIN_PHASE_3
# define Y2_PIN_PHASE_3 UNDEFINED_PIN
#endif
const char* Y2_PIN_PHASE_3_DEFAULT = Y2_PIN_PHASE_3;
#ifndef Z_PIN_PHASE_3
# define Z_PIN_PHASE_3 UNDEFINED_PIN
#endif
const char* Z_PIN_PHASE_3_DEFAULT = Z_PIN_PHASE_3;
#ifndef Z2_PIN_PHASE_3
# define Z2_PIN_PHASE_3 UNDEFINED_PIN
#endif
const char* Z2_PIN_PHASE_3_DEFAULT = Z2_PIN_PHASE_3;
#ifndef A_PIN_PHASE_3
# define A_PIN_PHASE_3 UNDEFINED_PIN
#endif
const char* A_PIN_PHASE_3_DEFAULT = A_PIN_PHASE_3;
#ifndef A2_PIN_PHASE_3
# define A2_PIN_PHASE_3 UNDEFINED_PIN
#endif
const char* A2_PIN_PHASE_3_DEFAULT = A2_PIN_PHASE_3;
#ifndef B_PIN_PHASE_3
# define B_PIN_PHASE_3 UNDEFINED_PIN
#endif
const char* B_PIN_PHASE_3_DEFAULT = B_PIN_PHASE_3;
#ifndef B2_PIN_PHASE_3
# define B2_PIN_PHASE_3 UNDEFINED_PIN
#endif
const char* B2_PIN_PHASE_3_DEFAULT = B2_PIN_PHASE_3;
#ifndef C_PIN_PHASE_3
# define C_PIN_PHASE_3 UNDEFINED_PIN
#endif
const char* C_PIN_PHASE_3_DEFAULT = C_PIN_PHASE_3;
#ifndef C2_PIN_PHASE_3
# define C2_PIN_PHASE_3 UNDEFINED_PIN
#endif
const char* C2_PIN_PHASE_3_DEFAULT = C2_PIN_PHASE_3;
// We need settings.h for the settings classes
#include "Grbl.h"
#include "Settings.h"
@@ -733,12 +174,6 @@ const char* C2_PIN_PHASE_3_DEFAULT = C2_PIN_PHASE_3;
// Define the pins:
PinSetting* CoolantFloodPin; // COOLANT_FLOOD_PIN
PinSetting* CoolantMistPin; // COOLANT_MIST_PIN
PinSetting* ProbePin; // PROBE_PIN
PinSetting* SDCardDetPin; // SDCARD_DET_PIN
PinSetting* SteppersDisablePin; // STEPPERS_DISABLE_PIN
PinSetting* StepperResetPin; // STEPPER_RESET
PinSetting* ControlSafetyDoorPin; // CONTROL_SAFETY_DOOR_PIN
PinSetting* ControlResetPin; // CONTROL_RESET_PIN
PinSetting* ControlFeedHoldPin; // CONTROL_FEED_HOLD_PIN
@@ -748,27 +183,16 @@ PinSetting* MacroButton1Pin; // MACRO_BUTTON_1_PIN
PinSetting* MacroButton2Pin; // MACRO_BUTTON_2_PIN
PinSetting* MacroButton3Pin; // MACRO_BUTTON_3_PIN
PinSetting* DynamixelTXDPin; // DYNAMIXEL_TXD
PinSetting* DynamixelRXDPin; // DYNAMIXEL_RXD
PinSetting* DynamixelRTSPin; // DYNAMIXEL_RTS
PinSetting* UserDigitalPin[4];
PinSetting* UserAnalogPin[4];
PinSetting* SPISSPin; // SS
PinSetting* SPISCKPin; // SCK
PinSetting* SPIMISOPin; // MISO
PinSetting* SPIMOSIPin; // MOSI
PinSetting* I2SOBCK;
PinSetting* I2SOWS;
PinSetting* I2SOData;
PinSetting* SDCardDetPin; // SDCARD_DET_PIN
PinSetting* SpindleForwardPin;
PinSetting* SpindleReversePin;
PinSetting* SpindleOutputPin;
PinSetting* SpindleEnablePin;
PinSetting* SpindleDirectionPin;
PinSetting* SpindleForwardPin;
PinSetting* SpindleReversePin;
PinSetting* LaserOutputPin;
PinSetting* LaserEnablePin;
@@ -777,25 +201,10 @@ PinSetting* VFDRS485TXDPin;
PinSetting* VFDRS485RXDPin;
PinSetting* VFDRS485RTSPin;
PinSetting* LimitPins[MAX_N_AXIS][2];
PinSetting* StepPins[MAX_N_AXIS][2];
PinSetting* DirectionPins[MAX_N_AXIS][2];
PinSetting* DisablePins[MAX_N_AXIS][2];
PinSetting* ClearToSendPins[MAX_N_AXIS][2];
PinSetting* ServoPins[MAX_N_AXIS][2];
PinSetting* StepStickMS3[MAX_N_AXIS][2];
PinSetting* PhasePins[4][MAX_N_AXIS][2];
#include "Pin.h"
// Initialize the pin settings
void make_pin_settings() {
CoolantFloodPin = new PinSetting("Coolant/Flood/Pin", COOLANT_FLOOD_PIN_DEFAULT);
CoolantMistPin = new PinSetting("Coolant/Mist/Pin", COOLANT_MIST_PIN_DEFAULT);
ProbePin = new PinSetting("Probe/Pin", PROBE_PIN_DEFAULT);
SDCardDetPin = new PinSetting("SDCardDet/Pin", SDCARD_DET_PIN_DEFAULT);
SteppersDisablePin = new PinSetting("Steppers/Disable/Pin", STEPPERS_DISABLE_PIN_DEFAULT);
StepperResetPin = new PinSetting("Steppers/Reset/Pin", STEPPER_RESET_DEFAULT);
ControlSafetyDoorPin = new PinSetting("Control/SafetyDoor/Pin", CONTROL_SAFETY_DOOR_PIN_DEFAULT);
ControlResetPin = new PinSetting("Control/Reset/Pin", CONTROL_RESET_PIN_DEFAULT);
ControlFeedHoldPin = new PinSetting("Control/FeedHold/Pin", CONTROL_FEED_HOLD_PIN_DEFAULT);
@@ -805,11 +214,6 @@ void make_pin_settings() {
MacroButton2Pin = new PinSetting("Macro/2/Pin", MACRO_BUTTON_2_PIN_DEFAULT);
MacroButton3Pin = new PinSetting("Macro/3/Pin", MACRO_BUTTON_3_PIN_DEFAULT);
// XXX Move to Dynamixel class
DynamixelTXDPin = new PinSetting("Dynamixel/TXD/Pin", DYNAMIXEL_TXD_DEFAULT);
DynamixelRXDPin = new PinSetting("Dynamixel/RXD/Pin", DYNAMIXEL_RXD_DEFAULT);
DynamixelRTSPin = new PinSetting("Dynamixel/RTS/Pin", DYNAMIXEL_RTS_DEFAULT);
// User pins:
UserDigitalPin[0] = new PinSetting("UserDigital/0/Pin", USER_DIGITAL_PIN_0_DEFAULT);
UserAnalogPin[0] = new PinSetting("UserAnalog/0/Pin", USER_ANALOG_PIN_0_DEFAULT);
@@ -820,176 +224,21 @@ void make_pin_settings() {
UserDigitalPin[3] = new PinSetting("UserDigital/3/Pin", USER_DIGITAL_PIN_3_DEFAULT);
UserAnalogPin[3] = new PinSetting("UserAnalog/3/Pin", USER_ANALOG_PIN_3_DEFAULT);
// SPI pins:
SPISSPin = new PinSetting("SPI/SS/Pin", "GPIO.5");
SPISCKPin = new PinSetting("SPI/SCK/Pin", "GPIO.18");
SPIMISOPin = new PinSetting("SPI/MISO/Pin", "GPIO.19");
SPIMOSIPin = new PinSetting("SPI/MOSI/Pin", "GPIO.23");
SDCardDetPin = new PinSetting("SDCardDet/Pin", SDCARD_DET_PIN_DEFAULT);
I2SOBCK = new PinSetting("I2SO/BCK/Pin", "GPIO.22");
I2SOWS = new PinSetting("I2SO/WS/Pin", "GPIO.17");
I2SOData = new PinSetting("I2SO/DATA/Pin", "GPIO.21");
SpindleForwardPin = new PinSetting("Spindle/Forward/Pin", SPINDLE_FORWARD_PIN_DEFAULT);
SpindleReversePin = new PinSetting("Spindle/Reverse/Pin", SPINDLE_REVERSE_PIN_DEFAULT);
// Spindles:
SpindleOutputPin = new PinSetting("Spindle/Output/Pin", SPINDLE_OUTPUT_PIN_DEFAULT);
SpindleEnablePin = new PinSetting("Spindle/Enable/Pin", SPINDLE_ENABLE_PIN_DEFAULT);
SpindleDirectionPin = new PinSetting("Spindle/Direction/Pin", SPINDLE_DIRECTION_PIN_DEFAULT);
SpindleForwardPin = new PinSetting("Spindle/Forward/Pin", SPINDLE_FORWARD_PIN_DEFAULT);
SpindleReversePin = new PinSetting("Spindle/Reverse/Pin", SPINDLE_REVERSE_PIN_DEFAULT);
LaserOutputPin = new PinSetting("Spindle/Laser/Output/Pin", LASER_OUTPUT_PIN_DEFAULT);
LaserEnablePin = new PinSetting("Spindle/Laser/Enable/Pin", LASER_ENABLE_PIN_DEFAULT);
// XXX Move to VFD class
VFDRS485TXDPin = new PinSetting("Spindle/VFD/TxD/Pin", VFD_RS485_TXD_PIN_DEFAULT); // VFD_RS485_TXD_PIN
VFDRS485RXDPin = new PinSetting("Spindle/VFD/RxD/Pin", VFD_RS485_RXD_PIN_DEFAULT); // VFD_RS485_RXD_PIN
VFDRS485RTSPin = new PinSetting("Spindle/VFD/RTS/Pin", VFD_RS485_RTS_PIN_DEFAULT); // VFD_RS485_RTS_PIN
// Axis:
LimitPins[X_AXIS][0] = new PinSetting("X/Limit/Pin", X_LIMIT_PIN_DEFAULT);
LimitPins[X_AXIS][1] = new PinSetting("X2/Limit/Pin", X2_LIMIT_PIN_DEFAULT);
LimitPins[Y_AXIS][0] = new PinSetting("Y/Limit/Pin", Y_LIMIT_PIN_DEFAULT);
LimitPins[Y_AXIS][1] = new PinSetting("Y2/Limit/Pin", Y2_LIMIT_PIN_DEFAULT);
LimitPins[Z_AXIS][0] = new PinSetting("Z/Limit/Pin", Z_LIMIT_PIN_DEFAULT);
LimitPins[Z_AXIS][1] = new PinSetting("Z2/Limit/Pin", Z2_LIMIT_PIN_DEFAULT);
LimitPins[A_AXIS][0] = new PinSetting("A/Limit/Pin", A_LIMIT_PIN_DEFAULT);
LimitPins[A_AXIS][1] = new PinSetting("A2/Limit/Pin", A2_LIMIT_PIN_DEFAULT);
LimitPins[B_AXIS][0] = new PinSetting("B/Limit/Pin", B_LIMIT_PIN_DEFAULT);
LimitPins[B_AXIS][1] = new PinSetting("B2/Limit/Pin", B2_LIMIT_PIN_DEFAULT);
LimitPins[C_AXIS][0] = new PinSetting("C/Limit/Pin", C_LIMIT_PIN_DEFAULT);
LimitPins[C_AXIS][1] = new PinSetting("C2/Limit/Pin", C2_LIMIT_PIN_DEFAULT);
// Move to Standard Stepper Class
StepPins[X_AXIS][0] = new PinSetting("X/Step/Pin", X_STEP_PIN_DEFAULT);
StepPins[X_AXIS][1] = new PinSetting("X2/Step/Pin", X2_STEP_PIN_DEFAULT);
StepPins[Y_AXIS][0] = new PinSetting("Y/Step/Pin", Y_STEP_PIN_DEFAULT);
StepPins[Y_AXIS][1] = new PinSetting("Y2/Step/Pin", Y2_STEP_PIN_DEFAULT);
StepPins[Z_AXIS][0] = new PinSetting("Z/Step/Pin", Z_STEP_PIN_DEFAULT);
StepPins[Z_AXIS][1] = new PinSetting("Z2/Step/Pin", Z2_STEP_PIN_DEFAULT);
StepPins[A_AXIS][0] = new PinSetting("A/Step/Pin", A_STEP_PIN_DEFAULT);
StepPins[A_AXIS][1] = new PinSetting("A2/Step/Pin", A2_STEP_PIN_DEFAULT);
StepPins[B_AXIS][0] = new PinSetting("B/Step/Pin", B_STEP_PIN_DEFAULT);
StepPins[B_AXIS][1] = new PinSetting("B2/Step/Pin", B2_STEP_PIN_DEFAULT);
StepPins[C_AXIS][0] = new PinSetting("C/Step/Pin", C_STEP_PIN_DEFAULT);
StepPins[C_AXIS][1] = new PinSetting("C2/Step/Pin", C2_STEP_PIN_DEFAULT);
DirectionPins[X_AXIS][0] = new PinSetting("X/Direction/Pin", X_DIRECTION_PIN_DEFAULT);
DirectionPins[X_AXIS][1] = new PinSetting("X2/Direction/Pin", X2_DIRECTION_PIN_DEFAULT);
DirectionPins[Y_AXIS][0] = new PinSetting("Y/Direction/Pin", Y_DIRECTION_PIN_DEFAULT);
DirectionPins[Y_AXIS][1] = new PinSetting("Y2/Direction/Pin", Y2_DIRECTION_PIN_DEFAULT);
DirectionPins[Z_AXIS][0] = new PinSetting("Z/Direction/Pin", Z_DIRECTION_PIN_DEFAULT);
DirectionPins[Z_AXIS][1] = new PinSetting("Z2/Direction/Pin", Z2_DIRECTION_PIN_DEFAULT);
DirectionPins[A_AXIS][0] = new PinSetting("A/Direction/Pin", A_DIRECTION_PIN_DEFAULT);
DirectionPins[A_AXIS][1] = new PinSetting("A2/Direction/Pin", A2_DIRECTION_PIN_DEFAULT);
DirectionPins[B_AXIS][0] = new PinSetting("B/Direction/Pin", B_DIRECTION_PIN_DEFAULT);
DirectionPins[B_AXIS][1] = new PinSetting("B2/Direction/Pin", B2_DIRECTION_PIN_DEFAULT);
DirectionPins[C_AXIS][0] = new PinSetting("C/Direction/Pin", C_DIRECTION_PIN_DEFAULT);
DirectionPins[C_AXIS][1] = new PinSetting("C2/Direction/Pin", C2_DIRECTION_PIN_DEFAULT);
DisablePins[X_AXIS][0] = new PinSetting("X/Disable/Pin", X_DISABLE_PIN_DEFAULT);
DisablePins[X_AXIS][1] = new PinSetting("X2/Disable/Pin", X2_DISABLE_PIN_DEFAULT);
DisablePins[Y_AXIS][0] = new PinSetting("Y/Disable/Pin", Y_DISABLE_PIN_DEFAULT);
DisablePins[Y_AXIS][1] = new PinSetting("Y2/Disable/Pin", Y2_DISABLE_PIN_DEFAULT);
DisablePins[Z_AXIS][0] = new PinSetting("Z/Disable/Pin", Z_DISABLE_PIN_DEFAULT);
DisablePins[Z_AXIS][1] = new PinSetting("Z2/Disable/Pin", Z2_DISABLE_PIN_DEFAULT);
DisablePins[A_AXIS][0] = new PinSetting("A/Disable/Pin", A_DISABLE_PIN_DEFAULT);
DisablePins[A_AXIS][1] = new PinSetting("A2/Disable/Pin", A2_DISABLE_PIN_DEFAULT);
DisablePins[B_AXIS][0] = new PinSetting("B/Disable/Pin", B_DISABLE_PIN_DEFAULT);
DisablePins[B_AXIS][1] = new PinSetting("B2/Disable/Pin", B2_DISABLE_PIN_DEFAULT);
DisablePins[C_AXIS][0] = new PinSetting("C/Disable/Pin", C_DISABLE_PIN_DEFAULT);
DisablePins[C_AXIS][1] = new PinSetting("C2/Disable/Pin", C2_DISABLE_PIN_DEFAULT);
// XXX Move to Trinamic class
ClearToSendPins[X_AXIS][0] = new PinSetting("X/Trinamic/CTS/Pin", X_CS_PIN_DEFAULT);
ClearToSendPins[X_AXIS][1] = new PinSetting("X2/Trinamic/CTS/Pin", X2_CS_PIN_DEFAULT);
ClearToSendPins[Y_AXIS][0] = new PinSetting("Y/Trinamic/CTS/Pin", Y_CS_PIN_DEFAULT);
ClearToSendPins[Y_AXIS][1] = new PinSetting("Y2/Trinamic/CTS/Pin", Y2_CS_PIN_DEFAULT);
ClearToSendPins[Z_AXIS][0] = new PinSetting("Z/Trinamic/CTS/Pin", Z_CS_PIN_DEFAULT);
ClearToSendPins[Z_AXIS][1] = new PinSetting("Z2/Trinamic/CTS/Pin", Z2_CS_PIN_DEFAULT);
ClearToSendPins[A_AXIS][0] = new PinSetting("A/Trinamic/CTS/Pin", A_CS_PIN_DEFAULT);
ClearToSendPins[A_AXIS][1] = new PinSetting("A2/Trinamic/CTS/Pin", A2_CS_PIN_DEFAULT);
ClearToSendPins[B_AXIS][0] = new PinSetting("B/Trinamic/CTS/Pin", B_CS_PIN_DEFAULT);
ClearToSendPins[B_AXIS][1] = new PinSetting("B2/Trinamic/CTS/Pin", B2_CS_PIN_DEFAULT);
ClearToSendPins[C_AXIS][0] = new PinSetting("C/Trinamic/CTS/Pin", C_CS_PIN_DEFAULT);
ClearToSendPins[C_AXIS][1] = new PinSetting("C2/Trinamic/CTS/Pin", C2_CS_PIN_DEFAULT);
// XXX Move to Servo class
ServoPins[X_AXIS][0] = new PinSetting("X/Servo/Pin", X_SERVO_PIN_DEFAULT);
ServoPins[X_AXIS][1] = new PinSetting("X2/Servo/Pin", X2_SERVO_PIN_DEFAULT);
ServoPins[Y_AXIS][0] = new PinSetting("Y/Servo/Pin", Y_SERVO_PIN_DEFAULT);
ServoPins[Y_AXIS][1] = new PinSetting("Y2/Servo/Pin", Y2_SERVO_PIN_DEFAULT);
ServoPins[Z_AXIS][0] = new PinSetting("Z/Servo/Pin", Z_SERVO_PIN_DEFAULT);
ServoPins[Z_AXIS][1] = new PinSetting("Z2/Servo/Pin", Z2_SERVO_PIN_DEFAULT);
ServoPins[A_AXIS][0] = new PinSetting("A/Servo/Pin", A_SERVO_PIN_DEFAULT);
ServoPins[A_AXIS][1] = new PinSetting("A2/Servo/Pin", A2_SERVO_PIN_DEFAULT);
ServoPins[B_AXIS][0] = new PinSetting("B/Servo/Pin", B_SERVO_PIN_DEFAULT);
ServoPins[B_AXIS][1] = new PinSetting("B2/Servo/Pin", B2_SERVO_PIN_DEFAULT);
ServoPins[C_AXIS][0] = new PinSetting("C/Servo/Pin", C_SERVO_PIN_DEFAULT);
ServoPins[C_AXIS][1] = new PinSetting("C2/Servo/Pin", C2_SERVO_PIN_DEFAULT);
// XXX Move to StandardStepper class or StepStick class when it appears
StepStickMS3[X_AXIS][0] = new PinSetting("X/StepStick/MS3/Pin", X_STEPPER_MS3_DEFAULT);
StepStickMS3[X_AXIS][1] = new PinSetting("X2/StepStick/MS3/Pin", X2_STEPPER_MS3_DEFAULT);
StepStickMS3[Y_AXIS][0] = new PinSetting("Y/StepStick/MS3/Pin", Y_STEPPER_MS3_DEFAULT);
StepStickMS3[Y_AXIS][1] = new PinSetting("Y2/StepStick/MS3/Pin", Y2_STEPPER_MS3_DEFAULT);
StepStickMS3[Z_AXIS][0] = new PinSetting("Z/StepStick/MS3/Pin", Z_STEPPER_MS3_DEFAULT);
StepStickMS3[Z_AXIS][1] = new PinSetting("Z2/StepStick/MS3/Pin", Z2_STEPPER_MS3_DEFAULT);
StepStickMS3[A_AXIS][0] = new PinSetting("A/StepStick/MS3/Pin", A_STEPPER_MS3_DEFAULT);
StepStickMS3[A_AXIS][1] = new PinSetting("A2/StepStick/MS3/Pin", A2_STEPPER_MS3_DEFAULT);
StepStickMS3[B_AXIS][0] = new PinSetting("B/StepStick/MS3/Pin", B_STEPPER_MS3_DEFAULT);
StepStickMS3[B_AXIS][1] = new PinSetting("B2/StepStick/MS3/Pin", B2_STEPPER_MS3_DEFAULT);
StepStickMS3[C_AXIS][0] = new PinSetting("C/StepStick/MS3/Pin", C_STEPPER_MS3_DEFAULT);
StepStickMS3[C_AXIS][1] = new PinSetting("C2/StepStick/MS3/Pin", C2_STEPPER_MS3_DEFAULT);
// XXX Move to Unipolar Motor class
PhasePins[0][X_AXIS][0] = new PinSetting("X/Unipolar/P0/Pin", X_PIN_PHASE_0_DEFAULT);
PhasePins[0][X_AXIS][1] = new PinSetting("X2/Unipolar/P0/Pin", X2_PIN_PHASE_0_DEFAULT);
PhasePins[0][Y_AXIS][0] = new PinSetting("Y/Unipolar/P0/Pin", Y_PIN_PHASE_0_DEFAULT);
PhasePins[0][Y_AXIS][1] = new PinSetting("Y2/Unipolar/P0/Pin", Y2_PIN_PHASE_0_DEFAULT);
PhasePins[0][Z_AXIS][0] = new PinSetting("Z/Unipolar/P0/Pin", Z_PIN_PHASE_0_DEFAULT);
PhasePins[0][Z_AXIS][1] = new PinSetting("Z2/Unipolar/P0/Pin", Z2_PIN_PHASE_0_DEFAULT);
PhasePins[0][A_AXIS][0] = new PinSetting("A/Unipolar/P0/Pin", A_PIN_PHASE_0_DEFAULT);
PhasePins[0][A_AXIS][1] = new PinSetting("A2/Unipolar/P0/Pin", A2_PIN_PHASE_0_DEFAULT);
PhasePins[0][B_AXIS][0] = new PinSetting("B/Unipolar/P0/Pin", B_PIN_PHASE_0_DEFAULT);
PhasePins[0][B_AXIS][1] = new PinSetting("B2/Unipolar/P0/Pin", B2_PIN_PHASE_0_DEFAULT);
PhasePins[0][C_AXIS][0] = new PinSetting("C/Unipolar/P0/Pin", C_PIN_PHASE_0_DEFAULT);
PhasePins[0][C_AXIS][1] = new PinSetting("C2/Unipolar/P0/Pin", C2_PIN_PHASE_0_DEFAULT);
PhasePins[1][X_AXIS][0] = new PinSetting("X/Unipolar/P1/Pin", X_PIN_PHASE_1_DEFAULT);
PhasePins[1][X_AXIS][1] = new PinSetting("X2/Unipolar/P1/Pin", X2_PIN_PHASE_1_DEFAULT);
PhasePins[1][Y_AXIS][0] = new PinSetting("Y/Unipolar/P1/Pin", Y_PIN_PHASE_1_DEFAULT);
PhasePins[1][Y_AXIS][1] = new PinSetting("Y2/Unipolar/P1/Pin", Y2_PIN_PHASE_1_DEFAULT);
PhasePins[1][Z_AXIS][0] = new PinSetting("Z/Unipolar/P1/Pin", Z_PIN_PHASE_1_DEFAULT);
PhasePins[1][Z_AXIS][1] = new PinSetting("Z2/Unipolar/P1/Pin", Z2_PIN_PHASE_1_DEFAULT);
PhasePins[1][A_AXIS][0] = new PinSetting("A/Unipolar/P1/Pin", A_PIN_PHASE_1_DEFAULT);
PhasePins[1][A_AXIS][1] = new PinSetting("A2/Unipolar/P1/Pin", A2_PIN_PHASE_1_DEFAULT);
PhasePins[1][B_AXIS][0] = new PinSetting("B/Unipolar/P1/Pin", B_PIN_PHASE_1_DEFAULT);
PhasePins[1][B_AXIS][1] = new PinSetting("B2/Unipolar/P1/Pin", B2_PIN_PHASE_1_DEFAULT);
PhasePins[1][C_AXIS][0] = new PinSetting("C/Unipolar/P1/Pin", C_PIN_PHASE_1_DEFAULT);
PhasePins[1][C_AXIS][1] = new PinSetting("C2/Unipolar/P1/Pin", C2_PIN_PHASE_1_DEFAULT);
PhasePins[2][X_AXIS][0] = new PinSetting("X/Unipolar/P2/Pin", X_PIN_PHASE_2_DEFAULT);
PhasePins[2][X_AXIS][1] = new PinSetting("X2/Unipolar/P2/Pin", X2_PIN_PHASE_2_DEFAULT);
PhasePins[2][Y_AXIS][0] = new PinSetting("Y/Unipolar/P2/Pin", Y_PIN_PHASE_2_DEFAULT);
PhasePins[2][Y_AXIS][1] = new PinSetting("Y2/Unipolar/P2/Pin", Y2_PIN_PHASE_2_DEFAULT);
PhasePins[2][Z_AXIS][0] = new PinSetting("Z/Unipolar/P2/Pin", Z_PIN_PHASE_2_DEFAULT);
PhasePins[2][Z_AXIS][1] = new PinSetting("Z2/Unipolar/P2/Pin", Z2_PIN_PHASE_2_DEFAULT);
PhasePins[2][A_AXIS][0] = new PinSetting("A/Unipolar/P2/Pin", A_PIN_PHASE_2_DEFAULT);
PhasePins[2][A_AXIS][1] = new PinSetting("A2/Unipolar/P2/Pin", A2_PIN_PHASE_2_DEFAULT);
PhasePins[2][B_AXIS][0] = new PinSetting("B/Unipolar/P2/Pin", B_PIN_PHASE_2_DEFAULT);
PhasePins[2][B_AXIS][1] = new PinSetting("B2/Unipolar/P2/Pin", B2_PIN_PHASE_2_DEFAULT);
PhasePins[2][C_AXIS][0] = new PinSetting("C/Unipolar/P2/Pin", C_PIN_PHASE_2_DEFAULT);
PhasePins[2][C_AXIS][1] = new PinSetting("C2/Unipolar/P2/Pin", C2_PIN_PHASE_2_DEFAULT);
PhasePins[3][X_AXIS][0] = new PinSetting("X/Unipolar/P3/Pin", X_PIN_PHASE_3_DEFAULT);
PhasePins[3][X_AXIS][1] = new PinSetting("X2/Unipolar/P3/Pin", X2_PIN_PHASE_3_DEFAULT);
PhasePins[3][Y_AXIS][0] = new PinSetting("Y/Unipolar/P3/Pin", Y_PIN_PHASE_3_DEFAULT);
PhasePins[3][Y_AXIS][1] = new PinSetting("Y2/Unipolar/P3/Pin", Y2_PIN_PHASE_3_DEFAULT);
PhasePins[3][Z_AXIS][0] = new PinSetting("Z/Unipolar/P3/Pin", Z_PIN_PHASE_3_DEFAULT);
PhasePins[3][Z_AXIS][1] = new PinSetting("Z2/Unipolar/P3/Pin", Z2_PIN_PHASE_3_DEFAULT);
PhasePins[3][A_AXIS][0] = new PinSetting("A/Unipolar/P3/Pin", A_PIN_PHASE_3_DEFAULT);
PhasePins[3][A_AXIS][1] = new PinSetting("A2/Unipolar/P3/Pin", A2_PIN_PHASE_3_DEFAULT);
PhasePins[3][B_AXIS][0] = new PinSetting("B/Unipolar/P3/Pin", B_PIN_PHASE_3_DEFAULT);
PhasePins[3][B_AXIS][1] = new PinSetting("B2/Unipolar/P3/Pin", B2_PIN_PHASE_3_DEFAULT);
PhasePins[3][C_AXIS][0] = new PinSetting("C/Unipolar/P3/Pin", C_PIN_PHASE_3_DEFAULT);
PhasePins[3][C_AXIS][1] = new PinSetting("C2/Unipolar/P3/Pin", C2_PIN_PHASE_3_DEFAULT);
}

View File

@@ -592,7 +592,7 @@ static void protocol_exec_rt_suspend() {
#else
// Get current position and store restore location and spindle retract waypoint.
if (!sys.suspend.bit.restartRetract) {
memcpy(restore_target, parking_target, sizeof(restore_target[0]) * number_axis->get());
memcpy(restore_target, parking_target, sizeof(restore_target[0]) * MachineConfig::instance()->_axes->_numberAxis);
retract_waypoint += restore_target[PARKING_AXIS];
retract_waypoint = MIN(retract_waypoint, PARKING_TARGET);
}

View File

@@ -940,7 +940,7 @@ void reportTaskStackSize(UBaseType_t& saved) {
void mpos_to_wpos(float* position) {
float* wco = get_wco();
auto n_axis = number_axis->get();
auto n_axis = MachineConfig::instance()->_axes->_numberAxis;
for (int idx = 0; idx < n_axis; idx++) {
position[idx] -= wco[idx];
}
@@ -948,7 +948,7 @@ void mpos_to_wpos(float* position) {
float* get_wco() {
static float wco[MAX_N_AXIS];
auto n_axis = number_axis->get();
auto n_axis = MachineConfig::instance()->_axes->_numberAxis;
for (int idx = 0; idx < n_axis; idx++) {
// Apply work coordinate offsets and tool length offset to current position.
wco[idx] = gc_state.coord_system[idx] + gc_state.coord_offset[idx];

View File

@@ -5,7 +5,7 @@
#include <nvs.h>
#include "WebUI/ESPResponse.h"
#include "Eeprom.h" // For CoordIndex
#include "Eeprom.h" // For CoordIndex
// Initialize the configuration subsystem
void settings_init();
@@ -522,14 +522,3 @@ public:
GrblCommand(grblName, name, action, cmdChecker, WG) {}
Error action(char* value, WebUI::AuthenticationLevel auth_level, WebUI::ESPResponseStream* response);
};
template <typename T>
class FakeSetting {
private:
T _value;
public:
FakeSetting(T value) : _value(value) {}
T get() { return _value; }
};

View File

@@ -2,41 +2,24 @@
FlagSetting* verbose_errors;
FakeSetting<int>* number_axis;
StringSetting* startup_line_0;
StringSetting* startup_line_1;
StringSetting* build_info;
IntSetting* pulse_microseconds;
IntSetting* stepper_idle_lock_time;
IntSetting* direction_delay_microseconds;
IntSetting* enable_delay_microseconds;
AxisMaskSetting* step_invert_mask;
AxisMaskSetting* dir_invert_mask;
// TODO Settings - need to call st_generate_step_invert_masks;
AxisMaskSetting* homing_dir_mask;
AxisMaskSetting* homing_squared_axes;
AxisMaskSetting* stallguard_debug_mask;
FlagSetting* step_enable_invert;
FlagSetting* limit_invert;
FlagSetting* probe_invert;
FlagSetting* report_inches;
FlagSetting* soft_limits;
// TODO Settings - need to check for HOMING_ENABLE
FlagSetting* hard_limits;
// TODO Settings - need to call limits_init;
FlagSetting* homing_enable;
// TODO Settings - also need to clear, but not set, soft_limits
FlagSetting* laser_mode;
// TODO Settings - also need to call my_spindle->init;
IntSetting* laser_full_power;
IntSetting* status_mask;
FloatSetting* junction_deviation;
FloatSetting* arc_tolerance;
IntSetting* status_mask;
FloatSetting* homing_feed_rate;
FloatSetting* homing_seek_rate;
@@ -87,93 +70,11 @@ enum_opt_t messageLevels = {
// clang-format on
};
AxisSettings* x_axis_settings;
AxisSettings* y_axis_settings;
AxisSettings* z_axis_settings;
AxisSettings* a_axis_settings;
AxisSettings* b_axis_settings;
AxisSettings* c_axis_settings;
AxisSettings* axis_settings[MAX_N_AXIS];
StringSetting* user_macro0;
StringSetting* user_macro1;
StringSetting* user_macro2;
StringSetting* user_macro3;
typedef struct {
const char* name;
float steps_per_mm;
float max_rate;
float acceleration;
float max_travel;
float home_mpos;
float run_current;
float hold_current;
uint16_t microsteps;
uint16_t stallguard;
} axis_defaults_t;
axis_defaults_t axis_defaults[] = { { "X",
DEFAULT_X_STEPS_PER_MM,
DEFAULT_X_MAX_RATE,
DEFAULT_X_ACCELERATION,
DEFAULT_X_MAX_TRAVEL,
DEFAULT_X_HOMING_MPOS,
DEFAULT_X_CURRENT,
DEFAULT_X_HOLD_CURRENT,
DEFAULT_X_MICROSTEPS,
DEFAULT_X_STALLGUARD },
{ "Y",
DEFAULT_Y_STEPS_PER_MM,
DEFAULT_Y_MAX_RATE,
DEFAULT_Y_ACCELERATION,
DEFAULT_Y_MAX_TRAVEL,
DEFAULT_Y_HOMING_MPOS,
DEFAULT_Y_CURRENT,
DEFAULT_Y_HOLD_CURRENT,
DEFAULT_Y_MICROSTEPS,
DEFAULT_Y_STALLGUARD },
{ "Z",
DEFAULT_Z_STEPS_PER_MM,
DEFAULT_Z_MAX_RATE,
DEFAULT_Z_ACCELERATION,
DEFAULT_Z_MAX_TRAVEL,
DEFAULT_Z_HOMING_MPOS,
DEFAULT_Z_CURRENT,
DEFAULT_Z_HOLD_CURRENT,
DEFAULT_Z_MICROSTEPS,
DEFAULT_Z_STALLGUARD },
{ "A",
DEFAULT_A_STEPS_PER_MM,
DEFAULT_A_MAX_RATE,
DEFAULT_A_ACCELERATION,
DEFAULT_A_MAX_TRAVEL,
DEFAULT_A_HOMING_MPOS,
DEFAULT_A_CURRENT,
DEFAULT_A_HOLD_CURRENT,
DEFAULT_A_MICROSTEPS,
DEFAULT_A_STALLGUARD },
{ "B",
DEFAULT_B_STEPS_PER_MM,
DEFAULT_B_MAX_RATE,
DEFAULT_B_ACCELERATION,
DEFAULT_B_MAX_TRAVEL,
DEFAULT_B_HOMING_MPOS,
DEFAULT_B_CURRENT,
DEFAULT_B_HOLD_CURRENT,
DEFAULT_B_MICROSTEPS,
DEFAULT_B_STALLGUARD },
{ "C",
DEFAULT_C_STEPS_PER_MM,
DEFAULT_C_MAX_RATE,
DEFAULT_C_ACCELERATION,
DEFAULT_C_MAX_TRAVEL,
DEFAULT_C_HOMING_MPOS,
DEFAULT_C_CURRENT,
DEFAULT_C_HOLD_CURRENT,
DEFAULT_C_MICROSTEPS,
DEFAULT_C_STALLGUARD } };
// Construct e.g. X_MAX_RATE from axisName "X" and tail "_MAX_RATE"
// in dynamically allocated memory that will not be freed.
@@ -258,86 +159,6 @@ void make_settings() {
verbose_errors = new FlagSetting(EXTENDED, WG, NULL, "Errors/Verbose", DEFAULT_VERBOSE_ERRORS);
// number_axis = new IntSetting(EXTENDED, WG, NULL, "NumberAxis", N_AXIS, 0, 6, NULL, true);
number_axis = new FakeSetting<int>(N_AXIS);
// Create the axis settings in the order that people are
// accustomed to seeing.
int axis;
axis_defaults_t* def;
for (axis = 0; axis < MAX_N_AXIS; axis++) {
def = &axis_defaults[axis];
axis_settings[axis] = new AxisSettings(def->name);
}
x_axis_settings = axis_settings[X_AXIS];
y_axis_settings = axis_settings[Y_AXIS];
z_axis_settings = axis_settings[Z_AXIS];
a_axis_settings = axis_settings[A_AXIS];
b_axis_settings = axis_settings[B_AXIS];
c_axis_settings = axis_settings[C_AXIS];
for (axis = MAX_N_AXIS - 1; axis >= 0; axis--) {
def = &axis_defaults[axis];
auto setting = new IntSetting(
EXTENDED, WG, makeGrblName(axis, 170), makename(def->name, "StallGuard"), def->stallguard, -64, 255, postMotorSetting);
setting->setAxis(axis);
axis_settings[axis]->stallguard = setting;
}
for (axis = MAX_N_AXIS - 1; axis >= 0; axis--) {
def = &axis_defaults[axis];
auto setting = new IntSetting(
EXTENDED, WG, makeGrblName(axis, 160), makename(def->name, "Microsteps"), def->microsteps, 0, 256, postMotorSetting);
setting->setAxis(axis);
axis_settings[axis]->microsteps = setting;
}
for (axis = MAX_N_AXIS - 1; axis >= 0; axis--) {
def = &axis_defaults[axis];
auto setting = new FloatSetting(
EXTENDED, WG, makeGrblName(axis, 150), makename(def->name, "Current/Hold"), def->hold_current, 0.05, 20.0, postMotorSetting); // Amps
setting->setAxis(axis);
axis_settings[axis]->hold_current = setting;
}
for (axis = MAX_N_AXIS - 1; axis >= 0; axis--) {
def = &axis_defaults[axis];
auto setting = new FloatSetting(
EXTENDED, WG, makeGrblName(axis, 140), makename(def->name, "Current/Run"), def->run_current, 0.0, 20.0, postMotorSetting); // Amps
setting->setAxis(axis);
axis_settings[axis]->run_current = setting;
}
for (axis = MAX_N_AXIS - 1; axis >= 0; axis--) {
def = &axis_defaults[axis];
auto setting = new FloatSetting(GRBL, WG, makeGrblName(axis, 130), makename(def->name, "MaxTravel"), def->max_travel, 0, 100000.0);
setting->setAxis(axis);
axis_settings[axis]->max_travel = setting;
}
for (axis = MAX_N_AXIS - 1; axis >= 0; axis--) {
def = &axis_defaults[axis];
auto setting = new FloatSetting(EXTENDED, WG, NULL, makename(def->name, "Home/Mpos"), def->home_mpos, -100000.0, 100000.0);
setting->setAxis(axis);
axis_settings[axis]->home_mpos = setting;
}
for (axis = MAX_N_AXIS - 1; axis >= 0; axis--) {
def = &axis_defaults[axis];
auto setting =
new FloatSetting(GRBL, WG, makeGrblName(axis, 120), makename(def->name, "Acceleration"), def->acceleration, 1.0, 100000.0);
setting->setAxis(axis);
axis_settings[axis]->acceleration = setting;
}
for (axis = MAX_N_AXIS - 1; axis >= 0; axis--) {
def = &axis_defaults[axis];
auto setting = new FloatSetting(GRBL, WG, makeGrblName(axis, 110), makename(def->name, "MaxRate"), def->max_rate, 1.0, 100000.0);
setting->setAxis(axis);
axis_settings[axis]->max_rate = setting;
}
for (axis = MAX_N_AXIS - 1; axis >= 0; axis--) {
def = &axis_defaults[axis];
auto setting =
new FloatSetting(GRBL, WG, makeGrblName(axis, 100), makename(def->name, "StepsPerMm"), def->steps_per_mm, 1.0, 100000.0);
setting->setAxis(axis);
axis_settings[axis]->steps_per_mm = setting;
}
// Spindle Settings
spindle_type =
new EnumSetting(NULL, EXTENDED, WG, NULL, "Spindle/Type", static_cast<int8_t>(SPINDLE_TYPE), &spindleTypes, checkSpindleChange);
@@ -368,7 +189,6 @@ void make_settings() {
startup_line_1 = new StringSetting(EXTENDED, WG, "N1", "GCode/Line1", "", checkStartupLine);
// GRBL Numbered Settings
laser_mode = new FlagSetting(GRBL, WG, "32", "GCode/LaserMode", DEFAULT_LASER_MODE);
laser_full_power = new IntSetting(EXTENDED, WG, NULL, "Laser/FullPower", DEFAULT_LASER_FULL_POWER, 0, 10000, checkSpindleChange);
// TODO Settings - also need to call my_spindle->init();
@@ -387,27 +207,13 @@ void make_settings() {
// TODO Settings - need to call limits_init();
homing_enable = new FlagSetting(GRBL, WG, "22", "Homing/Enable", DEFAULT_HOMING_ENABLE);
// TODO Settings - need to check for HOMING_ENABLE
hard_limits = new FlagSetting(GRBL, WG, "21", "Limits/Hard", DEFAULT_HARD_LIMIT_ENABLE);
soft_limits = new FlagSetting(GRBL, WG, "20", "Limits/Soft", DEFAULT_SOFT_LIMIT_ENABLE, NULL);
build_info = new StringSetting(EXTENDED, WG, NULL, "Firmware/Build", "");
report_inches = new FlagSetting(GRBL, WG, "13", "Report/Inches", DEFAULT_REPORT_INCHES);
// TODO Settings - also need to clear, but not set, soft_limits
arc_tolerance = new FloatSetting(GRBL, WG, "12", "GCode/ArcTolerance", DEFAULT_ARC_TOLERANCE, 0, 1);
junction_deviation = new FloatSetting(GRBL, WG, "11", "GCode/JunctionDeviation", DEFAULT_JUNCTION_DEVIATION, 0, 10);
status_mask = new IntSetting(GRBL, WG, "10", "Report/Status", DEFAULT_STATUS_REPORT_MASK, 0, 3);
probe_invert = new FlagSetting(GRBL, WG, "6", "Probe/Invert", DEFAULT_INVERT_PROBE_PIN);
limit_invert = new FlagSetting(GRBL, WG, "5", "Limits/Invert", DEFAULT_INVERT_LIMIT_PINS);
step_enable_invert = new FlagSetting(GRBL, WG, "4", "Stepper/EnableInvert", DEFAULT_INVERT_ST_ENABLE);
dir_invert_mask = new AxisMaskSetting(GRBL, WG, "3", "Stepper/DirInvert", DEFAULT_DIRECTION_INVERT_MASK, postMotorSetting);
step_invert_mask = new AxisMaskSetting(GRBL, WG, "2", "Stepper/StepInvert", DEFAULT_STEPPING_INVERT_MASK, postMotorSetting);
stepper_idle_lock_time = new IntSetting(GRBL, WG, "1", "Stepper/IdleTime", DEFAULT_STEPPER_IDLE_LOCK_TIME, 0, 255);
pulse_microseconds = new IntSetting(GRBL, WG, "0", "Stepper/Pulse", DEFAULT_STEP_PULSE_MICROSECONDS, 3, 1000);
direction_delay_microseconds = new IntSetting(EXTENDED, WG, NULL, "Stepper/Direction/Delay", STEP_PULSE_DELAY, 0, 1000);
enable_delay_microseconds = new IntSetting(EXTENDED, WG, NULL, "Stepper/Enable/Delay", DEFAULT_STEP_ENABLE_DELAY, 0, 1000); // microseconds
status_mask = new IntSetting(GRBL, WG, "10", "Report/Status", DEFAULT_STATUS_REPORT_MASK, 0, 3);
stallguard_debug_mask = new AxisMaskSetting(EXTENDED, WG, NULL, "Report/StallGuard", 0, postMotorSetting);
stepper_idle_lock_time = new IntSetting(GRBL, WG, "1", "Stepper/IdleTime", DEFAULT_STEPPER_IDLE_LOCK_TIME, 0, 255);
homing_cycle[5] = new AxisMaskSetting(EXTENDED, WG, NULL, "Homing/Cycle5", DEFAULT_HOMING_CYCLE_5);
homing_cycle[4] = new AxisMaskSetting(EXTENDED, WG, NULL, "Homing/Cycle4", DEFAULT_HOMING_CYCLE_4);

View File

@@ -2,44 +2,21 @@
extern FlagSetting* verbose_errors;
extern FakeSetting<int>* number_axis;
extern AxisSettings* x_axis_settings;
extern AxisSettings* y_axis_settings;
extern AxisSettings* z_axis_settings;
extern AxisSettings* a_axis_settings;
extern AxisSettings* b_axis_settings;
extern AxisSettings* c_axis_settings;
extern AxisSettings* axis_settings[];
extern StringSetting* startup_line_0;
extern StringSetting* startup_line_1;
extern StringSetting* build_info;
extern IntSetting* pulse_microseconds;
extern IntSetting* stepper_idle_lock_time;
extern IntSetting* direction_delay_microseconds;
extern IntSetting* enable_delay_microseconds;
extern AxisMaskSetting* step_invert_mask;
extern AxisMaskSetting* dir_invert_mask;
extern AxisMaskSetting* homing_dir_mask;
extern AxisMaskSetting* homing_squared_axes;
extern AxisMaskSetting* homing_cycle[MAX_N_AXIS];
extern FlagSetting* step_enable_invert;
extern FlagSetting* limit_invert;
extern FlagSetting* probe_invert;
extern FlagSetting* report_inches;
extern FlagSetting* soft_limits;
extern FlagSetting* hard_limits;
extern FlagSetting* homing_enable;
extern FlagSetting* laser_mode;
extern IntSetting* laser_full_power;
extern IntSetting* status_mask;
extern FloatSetting* junction_deviation;
extern FloatSetting* arc_tolerance;
extern IntSetting* status_mask;
extern FloatSetting* homing_feed_rate;
extern FloatSetting* homing_seek_rate;
@@ -69,16 +46,7 @@ extern StringSetting* user_macro3;
extern EnumSetting* message_level;
extern AxisMaskSetting* stallguard_debug_mask;
// Pins:
extern PinSetting* CoolantFloodPin; // COOLANT_FLOOD_PIN
extern PinSetting* CoolantMistPin; // COOLANT_MIST_PIN
extern PinSetting* ProbePin; // PROBE_PIN
extern PinSetting* SDCardDetPin; // SDCARD_DET_PIN
extern PinSetting* SteppersDisablePin; // STEPPERS_DISABLE_PIN
extern PinSetting* StepperResetPin; // STEPPER_RESET
extern PinSetting* ControlSafetyDoorPin; // CONTROL_SAFETY_DOOR_PIN
extern PinSetting* ControlResetPin; // CONTROL_RESET_PIN
extern PinSetting* ControlFeedHoldPin; // CONTROL_FEED_HOLD_PIN
@@ -88,22 +56,10 @@ extern PinSetting* MacroButton1Pin; // MACRO_BUTTON_1_PIN
extern PinSetting* MacroButton2Pin; // MACRO_BUTTON_2_PIN
extern PinSetting* MacroButton3Pin; // MACRO_BUTTON_3_PIN
extern PinSetting* DynamixelTXDPin; // DYNAMIXEL_TXD
extern PinSetting* DynamixelRXDPin; // DYNAMIXEL_RXD
extern PinSetting* DynamixelRTSPin; // DYNAMIXEL_RTS
extern PinSetting* UserDigitalPin[4];
extern PinSetting* UserAnalogPin[4];
// SPI pins:
extern PinSetting* SPISSPin; // SS
extern PinSetting* SPISCKPin; // SCK
extern PinSetting* SPIMISOPin; // MISO
extern PinSetting* SPIMOSIPin; // MOSI
extern PinSetting* I2SOBCK;
extern PinSetting* I2SOWS;
extern PinSetting* I2SOData;
extern PinSetting* SDCardDetPin; // SDCARD_DET_PIN
// Spindle pins:
extern PinSetting* SpindleOutputPin;
@@ -118,13 +74,3 @@ extern PinSetting* LaserEnablePin;
extern PinSetting* VFDRS485TXDPin; // VFD_RS485_TXD_PIN
extern PinSetting* VFDRS485RXDPin; // VFD_RS485_RXD_PIN
extern PinSetting* VFDRS485RTSPin; // VFD_RS485_RTS_PIN
// TODO FIXME: Add motor type (enum) setting! That way we can properly hide a lot of settings, and make Motors.cpp proper!
extern PinSetting* LimitPins[MAX_N_AXIS][2];
extern PinSetting* StepPins[MAX_N_AXIS][2];
extern PinSetting* DirectionPins[MAX_N_AXIS][2];
extern PinSetting* DisablePins[MAX_N_AXIS][2];
extern PinSetting* ClearToSendPins[MAX_N_AXIS][2];
extern PinSetting* ServoPins[MAX_N_AXIS][2];
extern PinSetting* PhasePins[4][MAX_N_AXIS][2];
extern PinSetting* StepStickMS3[MAX_N_AXIS][2];

View File

@@ -214,16 +214,16 @@ void system_flag_wco_change() {
float system_convert_axis_steps_to_mpos(int32_t* steps, uint8_t idx) {
float pos;
float steps_per_mm = axis_settings[idx]->steps_per_mm->get();
float steps_per_mm = MachineConfig::instance()->_axes->_axis[idx]->_stepsPerMm;
pos = steps[idx] / steps_per_mm;
return pos;
}
void system_convert_array_steps_to_mpos(float* position, int32_t* steps) {
auto n_axis = number_axis->get();
auto n_axis = MachineConfig::instance()->_axes->_numberAxis;
float motors[n_axis];
for (int idx = 0; idx < n_axis; idx++) {
motors[idx] = (float)steps[idx] / axis_settings[idx]->steps_per_mm->get();
motors[idx] = (float)steps[idx] / MachineConfig::instance()->_axes->_axis[idx]->_stepsPerMm;
}
motors_to_cartesian(position, motors, n_axis);
}