mirror of
https://github.com/bdring/Grbl_Esp32.git
synced 2025-08-31 10:01:48 +02:00
Cleanup machine defs (#602)
This commit is contained in:
128
Grbl_Esp32/src/Machines/6_pack_Lowrider_stepstick_v1.h
Normal file
128
Grbl_Esp32/src/Machines/6_pack_Lowrider_stepstick_v1.h
Normal file
@@ -0,0 +1,128 @@
|
||||
#pragma once
|
||||
// clang-format off
|
||||
|
||||
/*
|
||||
6_pack_Lowrider_stepstick_v1.h
|
||||
|
||||
Covers all V1 versions V1p0, V1p1, etc
|
||||
|
||||
Part of Grbl_ESP32
|
||||
Pin assignments for the ESP32 I2S 6-axis board
|
||||
|
||||
2020 B. Dring
|
||||
|
||||
Grbl_ESP32 is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
Grbl is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with Grbl_ESP32. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
#define MACHINE_NAME "6 Pack Lowrider XYYZZ V1 (StepStick)"
|
||||
|
||||
#define N_AXIS 3
|
||||
|
||||
// === Special Features
|
||||
|
||||
// I2S (steppers & other output-only pins)
|
||||
#define USE_I2S_OUT
|
||||
#define USE_I2S_STEPS
|
||||
//#define DEFAULT_STEPPER ST_I2S_STATIC
|
||||
|
||||
#define USE_STEPSTICK // makes sure MS1,2,3 !reset and !sleep are set
|
||||
|
||||
#define I2S_OUT_BCK GPIO_NUM_22
|
||||
#define I2S_OUT_WS GPIO_NUM_17
|
||||
#define I2S_OUT_DATA GPIO_NUM_21
|
||||
|
||||
#define X_STEPPER_MS3 I2SO(3) // Labeled X_CS
|
||||
#define Y_STEPPER_MS3 I2SO(6) // Y_CS
|
||||
#define Z_STEPPER_MS3 I2SO(11) // Z_CS
|
||||
#define X2_STEPPER_MS3 I2SO(14) // A_CS
|
||||
#define Y2_STEPPER_MS3 I2SO(19) // B_CS
|
||||
|
||||
#define STEPPER_RESET GPIO_NUM_19
|
||||
|
||||
// Mosor Socket #1
|
||||
#define X_DISABLE_PIN I2SO(0)
|
||||
#define X_DIRECTION_PIN I2SO(1)
|
||||
#define X_STEP_PIN I2SO(2)
|
||||
#define X_AXIS_SQUARING
|
||||
|
||||
// Mosor Socket #2
|
||||
#define Y_DIRECTION_PIN I2SO(4)
|
||||
#define Y_STEP_PIN I2SO(5)
|
||||
#define Y_DISABLE_PIN I2SO(7)
|
||||
#define Y_AXIS_SQUARING
|
||||
|
||||
// Mosor Socket #3
|
||||
#define Y2_DISABLE_PIN I2SO(8)
|
||||
#define Y2_DIRECTION_PIN I2SO(9)
|
||||
#define Y2_STEP_PIN I2SO(10)
|
||||
|
||||
// Mosor Socket #4
|
||||
#define Z_DIRECTION_PIN I2SO(12)
|
||||
#define Z_STEP_PIN I2SO(13)
|
||||
#define Z_DISABLE_PIN I2SO(15)
|
||||
|
||||
// Mosor Socket #5
|
||||
#define Z2_DISABLE_PIN I2SO(16)
|
||||
#define Z2_DIRECTION_PIN I2SO(17)
|
||||
#define Z2_STEP_PIN I2SO(18)
|
||||
|
||||
|
||||
/*
|
||||
Socket I/O reference
|
||||
The list of modules is here...
|
||||
https://github.com/bdring/6-Pack_CNC_Controller/wiki/CNC-I-O-Module-List
|
||||
Click on each module to get example for using the modules in the sockets
|
||||
|
||||
Socket #1
|
||||
#1 GPIO_NUM_33
|
||||
#2 GPIO_NUM_32
|
||||
#3 GPIO_NUM_35 (input only)
|
||||
#4 GPIO_NUM_34 (input only)
|
||||
|
||||
Socket #2
|
||||
#1 GPIO_NUM_2
|
||||
#2 GPIO_NUM_25
|
||||
#3 GPIO_NUM_39 (input only)
|
||||
#4 GPIO_NUM_36 (input only)
|
||||
|
||||
Socket #3
|
||||
#1 GPIO_NUM_26
|
||||
#2 GPIO_NUM_4
|
||||
#3 GPIO_NUM_16
|
||||
#4 GPIO_NUM_27
|
||||
|
||||
Socket #4
|
||||
#1 GPIO_NUM_14
|
||||
#2 GPIO_NUM_13
|
||||
#3 GPIO_NUM_15
|
||||
#4 GPIO_NUM_12
|
||||
|
||||
Socket #5
|
||||
#1 I2SO(24) (output only)
|
||||
#2 I2SO(25) (output only)
|
||||
#3 I2SO26) (output only)
|
||||
|
||||
*/
|
||||
|
||||
// 4x Input Module in Socket #1
|
||||
// https://github.com/bdring/6-Pack_CNC_Controller/wiki/4x-Switch-Input-module
|
||||
#define X_LIMIT_PIN GPIO_NUM_33
|
||||
#define Y_LIMIT_PIN GPIO_NUM_32
|
||||
#define Y2_LIMIT_PIN GPIO_NUM_35
|
||||
#define Z_LIMIT_PIN GPIO_NUM_34
|
||||
|
||||
// 4x Input Module in Socket #2
|
||||
// https://github.com/bdring/6-Pack_CNC_Controller/wiki/4x-Switch-Input-module
|
||||
#define Z2_LIMIT_PIN GPIO_NUM_2
|
||||
|
||||
|
||||
// === Default settings
|
||||
#define DEFAULT_STEP_PULSE_MICROSECONDS I2S_OUT_USEC_PER_PULSE
|
@@ -24,15 +24,8 @@
|
||||
*/
|
||||
#define MACHINE_NAME "6 Pack MPCNC XYZXY V1 (StepStick)"
|
||||
|
||||
#ifdef N_AXIS
|
||||
#undef N_AXIS
|
||||
#endif
|
||||
#define N_AXIS 3
|
||||
|
||||
#ifdef ENABLE_SD_CARD
|
||||
#undef ENABLE_SD_CARD
|
||||
#endif
|
||||
|
||||
// === Special Features
|
||||
|
||||
// I2S (steppers & other output-only pins)
|
||||
@@ -46,7 +39,6 @@
|
||||
#define I2S_OUT_WS GPIO_NUM_17
|
||||
#define I2S_OUT_DATA GPIO_NUM_21
|
||||
|
||||
|
||||
#define X_STEPPER_MS3 I2SO(3) // Labeled X_CS
|
||||
#define Y_STEPPER_MS3 I2SO(6) // Y_CS
|
||||
#define Z_STEPPER_MS3 I2SO(11) // Z_CS
|
||||
@@ -55,38 +47,81 @@
|
||||
|
||||
#define STEPPER_RESET GPIO_NUM_19
|
||||
|
||||
// Mosor Socket #1
|
||||
#define X_DISABLE_PIN I2SO(0)
|
||||
#define X_DIRECTION_PIN I2SO(1)
|
||||
#define X_STEP_PIN I2SO(2)
|
||||
#define X_AXIS_SQUARING
|
||||
|
||||
// Mosor Socket #2
|
||||
#define Y_DIRECTION_PIN I2SO(4)
|
||||
#define Y_STEP_PIN I2SO(5)
|
||||
#define Y_DISABLE_PIN I2SO(7)
|
||||
#define Y_AXIS_SQUARING
|
||||
|
||||
// Mosor Socket #3
|
||||
#define Z_DISABLE_PIN I2SO(8)
|
||||
#define Z_DIRECTION_PIN I2SO(9)
|
||||
#define Z_STEP_PIN I2SO(10)
|
||||
|
||||
// labeled A on controller
|
||||
// Mosor Socket #4
|
||||
#define X2_DIRECTION_PIN I2SO(12)
|
||||
#define X2_STEP_PIN I2SO(13)
|
||||
#define X2_DISABLE_PIN I2SO(15)
|
||||
|
||||
// labeled B on controller
|
||||
// Mosor Socket #5
|
||||
#define Y2_DISABLE_PIN I2SO(16)
|
||||
#define Y2_DIRECTION_PIN I2SO(17)
|
||||
#define Y2_STEP_PIN I2SO(18)
|
||||
|
||||
// stepper C unused
|
||||
|
||||
/*
|
||||
Socket I/O reference
|
||||
The list of modules is here...
|
||||
https://github.com/bdring/6-Pack_CNC_Controller/wiki/CNC-I-O-Module-List
|
||||
Click on each module to get example for using the modules in the sockets
|
||||
|
||||
Socket #1
|
||||
#1 GPIO_NUM_33
|
||||
#2 GPIO_NUM_32
|
||||
#3 GPIO_NUM_35 (input only)
|
||||
#4 GPIO_NUM_34 (input only)
|
||||
|
||||
Socket #2
|
||||
#1 GPIO_NUM_2
|
||||
#2 GPIO_NUM_25
|
||||
#3 GPIO_NUM_39 (input only)
|
||||
#4 GPIO_NUM_36 (input only)
|
||||
|
||||
Socket #3
|
||||
#1 GPIO_NUM_26
|
||||
#2 GPIO_NUM_4
|
||||
#3 GPIO_NUM_16
|
||||
#4 GPIO_NUM_27
|
||||
|
||||
Socket #4
|
||||
#1 GPIO_NUM_14
|
||||
#2 GPIO_NUM_13
|
||||
#3 GPIO_NUM_15
|
||||
#4 GPIO_NUM_12
|
||||
|
||||
Socket #5
|
||||
#1 I2SO(24) (output only)
|
||||
#2 I2SO(25) (output only)
|
||||
#3 I2SO26) (output only)
|
||||
|
||||
*/
|
||||
|
||||
// 4x Input Module in Socket #1
|
||||
// https://github.com/bdring/6-Pack_CNC_Controller/wiki/4x-Switch-Input-module
|
||||
#define X_LIMIT_PIN GPIO_NUM_33
|
||||
#define Y_LIMIT_PIN GPIO_NUM_32
|
||||
#define Z_LIMIT_PIN GPIO_NUM_35
|
||||
#define X2_LIMIT_PIN GPIO_NUM_34 // labeled A
|
||||
#define Y2_LIMIT_PIN GPIO_NUM_39 // labeled B
|
||||
#define X2_LIMIT_PIN GPIO_NUM_34
|
||||
|
||||
// 4x Input Module in Socket #2
|
||||
// https://github.com/bdring/6-Pack_CNC_Controller/wiki/4x-Switch-Input-module
|
||||
#define Y2_LIMIT_PIN GPIO_NUM_2
|
||||
|
||||
|
||||
// === Default settings
|
||||
|
@@ -1,140 +0,0 @@
|
||||
#pragma once
|
||||
// clang-format off
|
||||
|
||||
/*
|
||||
6_pack_stepstick_XYZ_3_5V_IO_v1.h
|
||||
|
||||
Covers all V1 versions V1p0, V1p1, etc
|
||||
|
||||
Part of Grbl_ESP32
|
||||
Pin assignments for the ESP32 I2S 6-axis board
|
||||
2018 - Bart Dring
|
||||
2020 - Mitch Bradley
|
||||
2020 - Michiyasu Odaki
|
||||
Grbl_ESP32 is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
Grbl is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with Grbl_ESP32. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
#define MACHINE_NAME "6 Pack Controller StepStick XYZ"
|
||||
|
||||
#ifdef N_AXIS
|
||||
#undef N_AXIS
|
||||
#endif
|
||||
|
||||
#ifdef ENABLE_SD_CARD
|
||||
#undef ENABLE_SD_CARD
|
||||
#endif
|
||||
|
||||
#ifdef HOMING_CYCLE_0
|
||||
#undef HOMING_CYCLE_0
|
||||
#endif
|
||||
#define HOMING_CYCLE_0 bit(Z_AXIS) // Z first
|
||||
|
||||
#ifdef HOMING_CYCLE_1
|
||||
#undef HOMING_CYCLE_1
|
||||
#endif
|
||||
#define HOMING_CYCLE_1 (bit(X_AXIS)|bit(Y_AXIS))
|
||||
|
||||
// === Special Features
|
||||
|
||||
// I2S (steppers & other output-only pins)
|
||||
#define USE_I2S_OUT
|
||||
#define USE_I2S_STEPS
|
||||
//#define DEFAULT_STEPPER ST_I2S_STATIC
|
||||
// === Default settings
|
||||
#define DEFAULT_STEP_PULSE_MICROSECONDS I2S_OUT_USEC_PER_PULSE
|
||||
|
||||
#define USE_STEPSTICK // makes sure MS1,2,3 !reset and !sleep are set
|
||||
|
||||
#define I2S_OUT_BCK GPIO_NUM_22
|
||||
#define I2S_OUT_WS GPIO_NUM_17
|
||||
#define I2S_OUT_DATA GPIO_NUM_21
|
||||
|
||||
#define X_STEPPER_MS3 I2SO(3) // X_CS
|
||||
#define Y_STEPPER_MS3 I2SO(6) // Y_CS
|
||||
#define Z_STEPPER_MS3 I2SO(11) // Z_CS
|
||||
#define A_STEPPER_MS3 I2SO(14) // A_CS
|
||||
#define B_STEPPER_MS3 I2SO(19) // B_CS
|
||||
#define C_STEPPER_MS3 I2SO(22) // C_CS
|
||||
|
||||
#define STEPPER_RESET GPIO_NUM_19
|
||||
|
||||
#define X_DISABLE_PIN I2SO(0)
|
||||
#define X_DIRECTION_PIN I2SO(1)
|
||||
#define X_STEP_PIN I2SO(2)
|
||||
|
||||
#define Y_DIRECTION_PIN I2SO(4)
|
||||
#define Y_STEP_PIN I2SO(5)
|
||||
#define Y_DISABLE_PIN I2SO(7)
|
||||
|
||||
#define Z_DISABLE_PIN I2SO(8)
|
||||
#define Z_DIRECTION_PIN I2SO(9)
|
||||
#define Z_STEP_PIN I2SO(10)
|
||||
|
||||
/*
|
||||
Socket I/O reference
|
||||
The list of modules is here...
|
||||
https://github.com/bdring/6-Pack_CNC_Controller/wiki/CNC-I-O-Module-List
|
||||
Click on each module to get example for using the modules in the sockets
|
||||
*/
|
||||
|
||||
|
||||
// Socket #1
|
||||
// #1 GPIO_NUM_33
|
||||
// #2 GPIO_NUM_32
|
||||
// #3 GPIO_NUM_35 (input only)
|
||||
// #4 GPIO_NUM_34 (input only)
|
||||
|
||||
|
||||
// Socket #2
|
||||
// #1 GPIO_NUM_2
|
||||
// #2 GPIO_NUM_25
|
||||
// #3 GPIO_NUM_39 (input only)
|
||||
// #4 GPIO_NUM_36 (input only)
|
||||
|
||||
// Socket #3
|
||||
// #1 GPIO_NUM_26
|
||||
// #2 GPIO_NUM_4
|
||||
// #3 GPIO_NUM_16
|
||||
// #4 GPIO_NUM_27
|
||||
|
||||
|
||||
// Socket #4
|
||||
// #1 GPIO_NUM_14
|
||||
// #2 GPIO_NUM_13
|
||||
// #3 GPIO_NUM_15
|
||||
// #4 GPIO_NUM_12
|
||||
|
||||
|
||||
// Socket #5
|
||||
// #1 GPIO_NUM_24 (output only)
|
||||
// #2 GPIO_NUM_25 (output only)
|
||||
// #3 GPIO_NUM_26 (output only)
|
||||
// #4 GPIO_NUM_27 (output only)
|
||||
|
||||
// 5V Output Module in Socket #4
|
||||
#define USER_DIGITAL_PIN_0 GPIO_NUM_14
|
||||
#define USER_DIGITAL_PIN_1 GPIO_NUM_13
|
||||
#define USER_ANALOG_PIN_0 GPIO_NUM_15
|
||||
#define USER_ANALOG_PIN_1 GPIO_NUM_12
|
||||
|
||||
#define USER_ANALOG_PIN_0_FREQ 5000
|
||||
#define USER_ANALOG_PIN_1_FREQ 5000
|
||||
|
||||
#define X_LIMIT_PIN GPIO_NUM_33
|
||||
#define Y_LIMIT_PIN GPIO_NUM_32
|
||||
#define Z_LIMIT_PIN GPIO_NUM_35
|
||||
|
||||
#define DEFAULT_X_STEPS_PER_MM 800
|
||||
#define DEFAULT_Y_STEPS_PER_MM 800
|
||||
#define DEFAULT_Z_STEPS_PER_MM 800
|
||||
|
||||
#define REPORT_SEMICOLON_COMMENTS
|
||||
|
@@ -26,10 +26,6 @@
|
||||
|
||||
#define N_AXIS 3
|
||||
|
||||
#ifdef ENABLE_SD_CARD
|
||||
#undef ENABLE_SD_CARD
|
||||
#endif
|
||||
|
||||
#ifdef HOMING_CYCLE_0
|
||||
#undef HOMING_CYCLE_0
|
||||
#endif
|
||||
@@ -61,14 +57,17 @@
|
||||
|
||||
#define STEPPER_RESET GPIO_NUM_19
|
||||
|
||||
// Motor Socket #1
|
||||
#define X_DISABLE_PIN I2SO(0)
|
||||
#define X_DIRECTION_PIN I2SO(1)
|
||||
#define X_STEP_PIN I2SO(2)
|
||||
|
||||
// Motor Socket #2
|
||||
#define Y_DIRECTION_PIN I2SO(4)
|
||||
#define Y_STEP_PIN I2SO(5)
|
||||
#define Y_DISABLE_PIN I2SO(7)
|
||||
|
||||
// Motor Socket #3
|
||||
#define Z_DISABLE_PIN I2SO(8)
|
||||
#define Z_DIRECTION_PIN I2SO(9)
|
||||
#define Z_STEP_PIN I2SO(10)
|
||||
@@ -78,46 +77,47 @@
|
||||
The list of modules is here...
|
||||
https://github.com/bdring/6-Pack_CNC_Controller/wiki/CNC-I-O-Module-List
|
||||
Click on each module to get example for using the modules in the sockets
|
||||
|
||||
|
||||
Socket #1
|
||||
#1 GPIO_NUM_33
|
||||
#2 GPIO_NUM_32
|
||||
#3 GPIO_NUM_35 (input only)
|
||||
#4 GPIO_NUM_34 (input only)
|
||||
|
||||
Socket #2
|
||||
#1 GPIO_NUM_2
|
||||
#2 GPIO_NUM_25
|
||||
#3 GPIO_NUM_39 (input only)
|
||||
#4 GPIO_NUM_36 (input only)
|
||||
|
||||
Socket #3
|
||||
#1 GPIO_NUM_26
|
||||
#2 GPIO_NUM_4
|
||||
#3 GPIO_NUM_16
|
||||
#4 GPIO_NUM_27
|
||||
|
||||
Socket #4
|
||||
#1 GPIO_NUM_14
|
||||
#2 GPIO_NUM_13
|
||||
#3 GPIO_NUM_15
|
||||
#4 GPIO_NUM_12
|
||||
|
||||
Socket #5
|
||||
#1 I2SO(24) (output only)
|
||||
#2 I2SO(25) (output only)
|
||||
#3 I2SO26) (output only)
|
||||
|
||||
*/
|
||||
|
||||
|
||||
// Socket #1
|
||||
// #1 GPIO_NUM_33
|
||||
// #2 GPIO_NUM_32
|
||||
// #3 GPIO_NUM_35 (input only)
|
||||
// #4 GPIO_NUM_34 (input only)
|
||||
|
||||
|
||||
// Socket #2
|
||||
// #1 GPIO_NUM_2
|
||||
// #2 GPIO_NUM_25
|
||||
// #3 GPIO_NUM_39 (input only)
|
||||
// #4 GPIO_NUM_36 (input only)
|
||||
|
||||
// Socket #3
|
||||
// #1 GPIO_NUM_26
|
||||
// #2 GPIO_NUM_4
|
||||
// #3 GPIO_NUM_16
|
||||
// #4 GPIO_NUM_27
|
||||
|
||||
|
||||
// Socket #4
|
||||
// #1 GPIO_NUM_14
|
||||
// #2 GPIO_NUM_13
|
||||
// #3 GPIO_NUM_15
|
||||
// #4 GPIO_NUM_12
|
||||
|
||||
|
||||
// Socket #5
|
||||
// #1 GPIO_NUM_24 (output only)
|
||||
// #2 GPIO_NUM_25 (output only)
|
||||
// #3 GPIO_NUM_26 (output only)
|
||||
// #4 GPIO_NUM_27 (output only)
|
||||
|
||||
// 4x Input Module in Socket #1
|
||||
// https://github.com/bdring/6-Pack_CNC_Controller/wiki/4x-Switch-Input-module
|
||||
#define X_LIMIT_PIN GPIO_NUM_33
|
||||
#define Y_LIMIT_PIN GPIO_NUM_32
|
||||
#define Z_LIMIT_PIN GPIO_NUM_35
|
||||
|
||||
|
||||
// ================= Setting Defaults ==========================
|
||||
#define DEFAULT_X_STEPS_PER_MM 800
|
||||
#define DEFAULT_Y_STEPS_PER_MM 800
|
||||
#define DEFAULT_Z_STEPS_PER_MM 800
|
||||
|
@@ -24,15 +24,8 @@
|
||||
*/
|
||||
#define MACHINE_NAME "6 Pack Controller V1 (StepStick)"
|
||||
|
||||
#ifdef N_AXIS
|
||||
#undef N_AXIS
|
||||
#endif
|
||||
#define N_AXIS 6
|
||||
|
||||
#ifdef ENABLE_SD_CARD
|
||||
#undef ENABLE_SD_CARD
|
||||
#endif
|
||||
|
||||
// === Special Features
|
||||
|
||||
// I2S (steppers & other output-only pins)
|
||||
@@ -56,26 +49,32 @@
|
||||
|
||||
#define STEPPER_RESET GPIO_NUM_19
|
||||
|
||||
// Motor Socket #1
|
||||
#define X_DISABLE_PIN I2SO(0)
|
||||
#define X_DIRECTION_PIN I2SO(1)
|
||||
#define X_STEP_PIN I2SO(2)
|
||||
|
||||
// Motor Socket #2
|
||||
#define Y_DIRECTION_PIN I2SO(4)
|
||||
#define Y_STEP_PIN I2SO(5)
|
||||
#define Y_DISABLE_PIN I2SO(7)
|
||||
|
||||
// Motor Socket #3
|
||||
#define Z_DISABLE_PIN I2SO(8)
|
||||
#define Z_DIRECTION_PIN I2SO(9)
|
||||
#define Z_STEP_PIN I2SO(10)
|
||||
|
||||
// Motor Socket #4
|
||||
#define A_DIRECTION_PIN I2SO(12)
|
||||
#define A_STEP_PIN I2SO(13)
|
||||
#define A_DISABLE_PIN I2SO(15)
|
||||
|
||||
// Motor Socket #5
|
||||
#define B_DISABLE_PIN I2SO(16)
|
||||
#define B_DIRECTION_PIN I2SO(17)
|
||||
#define B_STEP_PIN I2SO(18)
|
||||
|
||||
// Motor Socket #5
|
||||
#define C_DIRECTION_PIN I2SO(20)
|
||||
#define C_STEP_PIN I2SO(21)
|
||||
#define C_DISABLE_PIN I2SO(23)
|
||||
@@ -86,55 +85,49 @@
|
||||
The list of modules is here...
|
||||
https://github.com/bdring/6-Pack_CNC_Controller/wiki/CNC-I-O-Module-List
|
||||
Click on each module to get example for using the modules in the sockets
|
||||
|
||||
|
||||
Socket #1
|
||||
#1 GPIO_NUM_33
|
||||
#2 GPIO_NUM_32
|
||||
#3 GPIO_NUM_35 (input only)
|
||||
#4 GPIO_NUM_34 (input only)
|
||||
|
||||
Socket #2
|
||||
#1 GPIO_NUM_2
|
||||
#2 GPIO_NUM_25
|
||||
#3 GPIO_NUM_39 (input only)
|
||||
#4 GPIO_NUM_36 (input only)
|
||||
|
||||
Socket #3
|
||||
#1 GPIO_NUM_26
|
||||
#2 GPIO_NUM_4
|
||||
#3 GPIO_NUM_16
|
||||
#4 GPIO_NUM_27
|
||||
|
||||
Socket #4
|
||||
#1 GPIO_NUM_14
|
||||
#2 GPIO_NUM_13
|
||||
#3 GPIO_NUM_15
|
||||
#4 GPIO_NUM_12
|
||||
|
||||
Socket #5
|
||||
#1 I2SO(24) (output only)
|
||||
#2 I2SO(25) (output only)
|
||||
#3 I2SO26) (output only)
|
||||
|
||||
*/
|
||||
|
||||
|
||||
// Socket #1
|
||||
// #1 GPIO_NUM_33
|
||||
// #2 GPIO_NUM_32
|
||||
// #3 GPIO_NUM_35 (input only)
|
||||
// #4 GPIO_NUM_34 (input only)
|
||||
|
||||
|
||||
// Socket #2
|
||||
// #1 GPIO_NUM_2
|
||||
// #2 GPIO_NUM_25
|
||||
// #3 GPIO_NUM_39 (input only)
|
||||
// #4 GPIO_NUM_36 (input only)
|
||||
|
||||
// Socket #3
|
||||
// #1 GPIO_NUM_26
|
||||
// #2 GPIO_NUM_4
|
||||
// #3 GPIO_NUM_16
|
||||
// #4 GPIO_NUM_27
|
||||
|
||||
|
||||
// Socket #4
|
||||
// #1 GPIO_NUM_14
|
||||
// #2 GPIO_NUM_13
|
||||
// #3 GPIO_NUM_15
|
||||
// #4 GPIO_NUM_12
|
||||
|
||||
|
||||
// Socket #5
|
||||
// #1 GPIO_NUM_24 (output only)
|
||||
// #2 GPIO_NUM_25 (output only)
|
||||
// #3 GPIO_NUM_26 (output only)
|
||||
// #4 GPIO_NUM_27 (output only)
|
||||
|
||||
// 4x Input Module in Socket #1
|
||||
// https://github.com/bdring/6-Pack_CNC_Controller/wiki/4x-Switch-Input-module
|
||||
#define X_LIMIT_PIN GPIO_NUM_33
|
||||
#define Y_LIMIT_PIN GPIO_NUM_32
|
||||
#define Z_LIMIT_PIN GPIO_NUM_35
|
||||
//#define A_LIMIT_PIN GPIO_NUM_34
|
||||
//#define B_LIMIT_PIN GPIO_NUM_39
|
||||
//#define C_LIMIT_PIN GPIO_NUM_36
|
||||
|
||||
#define PROBE_PIN GPIO_NUM_34
|
||||
|
||||
|
||||
|
||||
|
||||
// 5V output CNC module in socket #3
|
||||
// https://github.com/bdring/6-Pack_CNC_Controller/wiki/4x-5V-Buffered-Output-Module
|
||||
#define SPINDLE_TYPE SpindleType::PWM
|
||||
#define SPINDLE_OUTPUT_PIN GPIO_NUM_26
|
||||
#define SPINDLE_ENABLE_PIN GPIO_NUM_4
|
||||
|
@@ -21,13 +21,8 @@
|
||||
*/
|
||||
#define MACHINE_NAME "6 Pack Controller V1 (Trinamic)"
|
||||
|
||||
#ifdef N_AXIS
|
||||
#undef N_AXIS
|
||||
#endif
|
||||
#define N_AXIS 6
|
||||
|
||||
// === Special Features
|
||||
|
||||
// I2S (steppers & other output-only pins)
|
||||
#define USE_I2S_OUT
|
||||
#define USE_I2S_STEPS
|
||||
@@ -49,58 +44,97 @@
|
||||
#define X_CS_PIN I2SO(3)
|
||||
#define X_RSENSE TMC2130_RSENSE_DEFAULT
|
||||
|
||||
#define Y_TRINAMIC_DRIVER 2130
|
||||
#define Y_TRINAMIC_DRIVER X_TRINAMIC_DRIVER
|
||||
#define Y_DIRECTION_PIN I2SO(4)
|
||||
#define Y_STEP_PIN I2SO(5)
|
||||
#define Y_DISABLE_PIN I2SO(7)
|
||||
#define Y_CS_PIN I2SO(6)
|
||||
#define Y_RSENSE X_RSENSE
|
||||
|
||||
#define Z_TRINAMIC_DRIVER 2130
|
||||
#define Z_TRINAMIC_DRIVER X_TRINAMIC_DRIVER
|
||||
#define Z_DISABLE_PIN I2SO(8)
|
||||
#define Z_DIRECTION_PIN I2SO(9)
|
||||
#define Z_STEP_PIN I2SO(10)
|
||||
#define Z_CS_PIN I2SO(11)
|
||||
#define Z_RSENSE X_RSENSE
|
||||
|
||||
#define A_TRINAMIC_DRIVER 2130
|
||||
#define A_TRINAMIC_DRIVER X_TRINAMIC_DRIVER
|
||||
#define A_DIRECTION_PIN I2SO(12)
|
||||
#define A_STEP_PIN I2SO(13)
|
||||
#define A_DISABLE_PIN I2SO(15)
|
||||
#define A_CS_PIN I2SO(14)
|
||||
#define A_RSENSE X_RSENSE
|
||||
|
||||
#define B_TRINAMIC_DRIVER 2130
|
||||
#define B_TRINAMIC_DRIVER X_TRINAMIC_DRIVER
|
||||
#define B_DISABLE_PIN I2SO(16)
|
||||
#define B_DIRECTION_PIN I2SO(17)
|
||||
#define B_STEP_PIN I2SO(18)
|
||||
#define B_CS_PIN I2SO(19)
|
||||
#define B_RSENSE X_RSENSE
|
||||
|
||||
#define C_TRINAMIC_DRIVER 2130
|
||||
#define C_TRINAMIC_DRIVER X_TRINAMIC_DRIVER
|
||||
#define C_DIRECTION_PIN I2SO(20)
|
||||
#define C_STEP_PIN I2SO(21)
|
||||
#define C_DISABLE_PIN I2SO(23)
|
||||
#define C_CS_PIN I2SO(22)
|
||||
#define C_RSENSE X_RSENSE
|
||||
|
||||
/*
|
||||
Socket I/O reference
|
||||
The list of modules is here...
|
||||
https://github.com/bdring/6-Pack_CNC_Controller/wiki/CNC-I-O-Module-List
|
||||
Click on each module to get example for using the modules in the sockets
|
||||
|
||||
Socket #1
|
||||
#1 GPIO_NUM_33
|
||||
#2 GPIO_NUM_32
|
||||
#3 GPIO_NUM_35 (input only)
|
||||
#4 GPIO_NUM_34 (input only)
|
||||
|
||||
Socket #2
|
||||
#1 GPIO_NUM_2
|
||||
#2 GPIO_NUM_25
|
||||
#3 GPIO_NUM_39 (input only)
|
||||
#4 GPIO_NUM_36 (input only)
|
||||
|
||||
Socket #3
|
||||
#1 GPIO_NUM_26
|
||||
#2 GPIO_NUM_4
|
||||
#3 GPIO_NUM_16
|
||||
#4 GPIO_NUM_27
|
||||
|
||||
Socket #4
|
||||
#1 GPIO_NUM_14
|
||||
#2 GPIO_NUM_13
|
||||
#3 GPIO_NUM_15
|
||||
#4 GPIO_NUM_12
|
||||
|
||||
Socket #5
|
||||
#1 I2SO(24) (output only)
|
||||
#2 I2SO(25) (output only)
|
||||
#3 I2SO26) (output only)
|
||||
|
||||
*/
|
||||
|
||||
// 4x Input Module in Socket #1
|
||||
// https://github.com/bdring/6-Pack_CNC_Controller/wiki/4x-Switch-Input-module
|
||||
#define X_LIMIT_PIN GPIO_NUM_33
|
||||
#define Y_LIMIT_PIN GPIO_NUM_32
|
||||
#define Z_LIMIT_PIN GPIO_NUM_35
|
||||
#define A_LIMIT_PIN GPIO_NUM_34
|
||||
|
||||
// 4x Input Module in Socket #2
|
||||
// https://github.com/bdring/6-Pack_CNC_Controller/wiki/4x-Switch-Input-module
|
||||
#define B_LIMIT_PIN GPIO_NUM_2
|
||||
#define C_LIMIT_PIN GPIO_NUM_25
|
||||
#define PROBE_PIN GPIO_NUM_39
|
||||
|
||||
// 0-10v CNC Module in Socket #3
|
||||
// https://github.com/bdring/6-Pack_CNC_Controller/wiki/0-10V-Output-Module
|
||||
#define SPINDLE_TYPE SpindleType::PWM
|
||||
#define SPINDLE_OUTPUT_PIN GPIO_NUM_26
|
||||
#define SPINDLE_ENABLE_PIN GPIO_NUM_4
|
||||
#define SPINDLE_DIR_PIN GPIO_NUM_16
|
||||
|
||||
#define X_LIMIT_PIN GPIO_NUM_33
|
||||
#define Y_LIMIT_PIN GPIO_NUM_32
|
||||
#define Z_LIMIT_PIN GPIO_NUM_35
|
||||
#define A_LIMIT_PIN GPIO_NUM_34
|
||||
#define B_LIMIT_PIN GPIO_NUM_39
|
||||
#define C_LIMIT_PIN GPIO_NUM_36
|
||||
|
||||
#define PROBE_PIN GPIO_NUM_25
|
||||
|
||||
#define COOLANT_MIST_PIN GPIO_NUM_2
|
||||
|
||||
// === Default settings
|
||||
#define DEFAULT_STEP_PULSE_MICROSECONDS I2S_OUT_USEC_PER_PULSE
|
||||
|
143
Grbl_Esp32/src/Machines/6_pack_trinamic_stallguard.h
Normal file
143
Grbl_Esp32/src/Machines/6_pack_trinamic_stallguard.h
Normal file
@@ -0,0 +1,143 @@
|
||||
#pragma once
|
||||
// clang-format off
|
||||
|
||||
/*
|
||||
6_pack_trinamic_V1.h
|
||||
Part of Grbl_ESP32
|
||||
Pin assignments for the ESP32 SPI 6-axis board
|
||||
2018 - Bart Dring
|
||||
2020 - Mitch Bradley
|
||||
2020 - Michiyasu Odaki
|
||||
Grbl_ESP32 is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
Grbl is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with Grbl_ESP32. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
#define MACHINE_NAME "6 Pack Controller V1 (Trinamic Stallguard)"
|
||||
|
||||
#define N_AXIS 6
|
||||
|
||||
// I2S (steppers & other output-only pins)
|
||||
#define USE_I2S_OUT
|
||||
#define USE_I2S_STEPS
|
||||
//#define DEFAULT_STEPPER ST_I2S_STATIC
|
||||
|
||||
#define I2S_OUT_BCK GPIO_NUM_22
|
||||
#define I2S_OUT_WS GPIO_NUM_17
|
||||
#define I2S_OUT_DATA GPIO_NUM_21
|
||||
|
||||
|
||||
#define TRINAMIC_RUN_MODE TRINAMIC_MODE_COOLSTEP
|
||||
#define TRINAMIC_HOMING_MODE TRINAMIC_MODE_STALLGUARD
|
||||
|
||||
// Motor Socket #1
|
||||
#define X_TRINAMIC_DRIVER 2130
|
||||
#define X_DISABLE_PIN I2SO(0)
|
||||
#define X_DIRECTION_PIN I2SO(1)
|
||||
#define X_STEP_PIN I2SO(2)
|
||||
#define X_CS_PIN I2SO(3)
|
||||
#define X_RSENSE TMC2130_RSENSE_DEFAULT
|
||||
|
||||
// Motor Socket #2
|
||||
#define Y_TRINAMIC_DRIVER X_TRINAMIC_DRIVER
|
||||
#define Y_DIRECTION_PIN I2SO(4)
|
||||
#define Y_STEP_PIN I2SO(5)
|
||||
#define Y_DISABLE_PIN I2SO(7)
|
||||
#define Y_CS_PIN I2SO(6)
|
||||
#define Y_RSENSE X_RSENSE
|
||||
|
||||
// Motor Socket #3
|
||||
#define Z_TRINAMIC_DRIVER X_TRINAMIC_DRIVER
|
||||
#define Z_DISABLE_PIN I2SO(8)
|
||||
#define Z_DIRECTION_PIN I2SO(9)
|
||||
#define Z_STEP_PIN I2SO(10)
|
||||
#define Z_CS_PIN I2SO(11)
|
||||
#define Z_RSENSE X_RSENSE
|
||||
|
||||
// Motor Socket #4
|
||||
#define A_TRINAMIC_DRIVER X_TRINAMIC_DRIVER
|
||||
#define A_DIRECTION_PIN I2SO(12)
|
||||
#define A_STEP_PIN I2SO(13)
|
||||
#define A_DISABLE_PIN I2SO(15)
|
||||
#define A_CS_PIN I2SO(14)
|
||||
#define A_RSENSE X_RSENSE
|
||||
|
||||
// Motor Socket #5
|
||||
#define B_TRINAMIC_DRIVER X_TRINAMIC_DRIVER
|
||||
#define B_DISABLE_PIN I2SO(16)
|
||||
#define B_DIRECTION_PIN I2SO(17)
|
||||
#define B_STEP_PIN I2SO(18)
|
||||
#define B_CS_PIN I2SO(19)
|
||||
#define B_RSENSE X_RSENSE
|
||||
|
||||
// Motor Socket #6
|
||||
#define C_TRINAMIC_DRIVER X_TRINAMIC_DRIVER
|
||||
#define C_DIRECTION_PIN I2SO(20)
|
||||
#define C_STEP_PIN I2SO(21)
|
||||
#define C_DISABLE_PIN I2SO(23)
|
||||
#define C_CS_PIN I2SO(22)
|
||||
#define C_RSENSE X_RSENSE
|
||||
|
||||
/*
|
||||
Socket I/O reference
|
||||
The list of modules is here...
|
||||
https://github.com/bdring/6-Pack_CNC_Controller/wiki/CNC-I-O-Module-List
|
||||
Click on each module to get example for using the modules in the sockets
|
||||
|
||||
Socket #1
|
||||
#1 GPIO_NUM_33
|
||||
#2 GPIO_NUM_32
|
||||
#3 GPIO_NUM_35 (input only)
|
||||
#4 GPIO_NUM_34 (input only)
|
||||
|
||||
Socket #2
|
||||
#1 GPIO_NUM_2
|
||||
#2 GPIO_NUM_25
|
||||
#3 GPIO_NUM_39 (input only)
|
||||
#4 GPIO_NUM_36 (input only)
|
||||
|
||||
Socket #3
|
||||
#1 GPIO_NUM_26
|
||||
#2 GPIO_NUM_4
|
||||
#3 GPIO_NUM_16
|
||||
#4 GPIO_NUM_27
|
||||
|
||||
Socket #4
|
||||
#1 GPIO_NUM_14
|
||||
#2 GPIO_NUM_13
|
||||
#3 GPIO_NUM_15
|
||||
#4 GPIO_NUM_12
|
||||
|
||||
Socket #5
|
||||
#1 I2SO(24) (output only)
|
||||
#2 I2SO(25) (output only)
|
||||
#3 I2SO26) (output only)
|
||||
|
||||
*/
|
||||
|
||||
// Socket #1 (Empty)
|
||||
#define X_LIMIT_PIN GPIO_NUM_33 // Sg1
|
||||
#define Y_LIMIT_PIN GPIO_NUM_32 // Sg2
|
||||
#define Z_LIMIT_PIN GPIO_NUM_35 // Sg3
|
||||
#define A_LIMIT_PIN GPIO_NUM_34 // Sg4
|
||||
|
||||
// Socket #2 (Empty)
|
||||
#define B_LIMIT_PIN GPIO_NUM_39 // Sg5
|
||||
#define C_LIMIT_PIN GPIO_NUM_36 // Sg6
|
||||
|
||||
|
||||
// 0-10v CNC Module in Socket #3
|
||||
// https://github.com/bdring/6-Pack_CNC_Controller/wiki/0-10V-Output-Module
|
||||
#define SPINDLE_TYPE SpindleType::PWM
|
||||
#define SPINDLE_OUTPUT_PIN GPIO_NUM_26
|
||||
#define SPINDLE_ENABLE_PIN GPIO_NUM_4
|
||||
#define SPINDLE_DIR_PIN GPIO_NUM_16
|
||||
|
||||
// === Default settings
|
||||
#define DEFAULT_STEP_PULSE_MICROSECONDS I2S_OUT_USEC_PER_PULSE
|
@@ -1,43 +0,0 @@
|
||||
#pragma once
|
||||
// clang-format off
|
||||
|
||||
/*
|
||||
dxl_delta_module.h
|
||||
|
||||
2020 - Bart Dring
|
||||
|
||||
Grbl_ESP32 is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
Grbl is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with Grbl_ESP32. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
#define MACHINE_NAME "Dynamixel Delta"
|
||||
|
||||
// In Socket #3
|
||||
#define DYNAMIXEL_RXD GPIO_NUM_26
|
||||
#define DYNAMIXEL_RTS GPIO_NUM_4
|
||||
#define DYNAMIXEL_TXD GPIO_NUM_16
|
||||
|
||||
/*
|
||||
#define DYNAMIXEL_TXD GPIO_NUM_4
|
||||
#define DYNAMIXEL_RXD GPIO_NUM_13
|
||||
#define DYNAMIXEL_RTS GPIO_NUM_17
|
||||
*/
|
||||
|
||||
#define SERVO_TIMER_INTerval 100 // milliseconds
|
||||
|
||||
#define X_DYNAMIXEL_ID 1 // protocol ID
|
||||
#define Y_DYNAMIXEL_ID 2 // protocol ID
|
||||
#define Z_DYNAMIXEL_ID 3 // protocol ID
|
||||
|
||||
// limit servo to 180 degree motion
|
||||
#define DXL_COUNT_MIN 1024
|
||||
#define DXL_COUNT_MAX 3072
|
||||
|
||||
#define SPINDLE_TYPE SpindleType::PWM
|
@@ -1,287 +0,0 @@
|
||||
#pragma once
|
||||
// clang-format off
|
||||
|
||||
/*
|
||||
esp32_printer_controller.h
|
||||
Part of Grbl_ESP32
|
||||
Template for a machine configuration file.
|
||||
2020 - Mitch Bradley
|
||||
2020 - Michiyasu Odaki
|
||||
Grbl_ESP32 is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
Grbl is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with Grbl_ESP32. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
// This contains a long list of things that might possibly be
|
||||
// configured. Most machines - especially simple cartesian machines
|
||||
// that use stepper motors - will only need to define a few of the
|
||||
// options herein, often just the pin assignments.
|
||||
|
||||
// Pin assignments depend on how the ESP32 is connected to
|
||||
// the external machine. Typically the ESP32 module plugs into
|
||||
// an adapter board that wires specific ESP32 GPIO pins to
|
||||
// other connectors on the board, such as Pololu sockets for
|
||||
// stepper drivers or connectors for external drivers, limit
|
||||
// pins, spindle control, etc. This file describes how those
|
||||
// GPIO pins are wired to those other connectors.
|
||||
|
||||
// Some machines might choose to use an adapter board in a
|
||||
// non-standard way, for example a 3-axis board might have axes
|
||||
// labeled XYZ, but the machine might have only 2 axes one of which is
|
||||
// driven by two ganged motors. In that case, you would need
|
||||
// a custom version of this file that assigns the pins differently
|
||||
// from the adapter board labels.
|
||||
|
||||
// In addition to pin assignments, many other aspects of Grbl
|
||||
// can be configured, such as spindle speeds, special motor
|
||||
// types like servos and unipolars, homing order, default values
|
||||
// for $$ settings, etc. A detailed list of such options is
|
||||
// given below.
|
||||
|
||||
// Furthermore, it is possible to implement special complex
|
||||
// behavior in custom C++ code, for non-Cartesian machines,
|
||||
// unusual homing cycles, etc. See the Special Features section
|
||||
// below for additional instructions.
|
||||
|
||||
// 3D printer controller using ESP32 processor
|
||||
// https://github.com/MitchBradley/Esp32PrinterController
|
||||
|
||||
// === Machine Name
|
||||
// Change TEMPLATE to some name of your own choosing. That name
|
||||
// will be shown in a Grbl startup message to identify your
|
||||
// configuration.
|
||||
|
||||
#define MACHINE_NAME "ESP32_PRINTER_CONTROLLER"
|
||||
|
||||
// If your machine requires custom code as described below in
|
||||
// Special Features, you must copy Custom/custom_code_template.cpp
|
||||
// to a new name like Custom/my_custom_code.cpp, implement the
|
||||
// functions therein, and enable its use by defining:
|
||||
#define CUSTOM_CODE_FILENAME "Custom/esp32_printer_controller.cpp"
|
||||
|
||||
// === Number of axes
|
||||
|
||||
// You can set the number of axes that the machine supports
|
||||
// by defining N_AXIS. If you do not define it, 3 will be
|
||||
// used. The value must be at least 3, even if your machine
|
||||
// has fewer axes.
|
||||
#define N_AXIS 3
|
||||
|
||||
|
||||
// == Pin Assignments
|
||||
|
||||
// Step and direction pins; these must be output-capable pins,
|
||||
// specifically ESP32 GPIO numbers 0..31
|
||||
// With the I2S I/O expander enabled, you can specify 128..159 as output pins.
|
||||
#define X_STEP_PIN I2SO(9)
|
||||
#define X_DIRECTION_PIN I2SO(7)
|
||||
#define Y_STEP_PIN I2SO(5)
|
||||
#define Y_DIRECTION_PIN I2SO(4)
|
||||
#define Z_STEP_PIN I2SO(2)
|
||||
#define Z_DIRECTION_PIN I2SO(1)
|
||||
#define A_STEP_PIN I2SO(12)
|
||||
#define A_DIRECTION_PIN I2SO(13)
|
||||
|
||||
#define X_LIMIT_PIN GPIO_NUM_34
|
||||
//#define Y_LIMIT_PIN GPIO_NUM_35
|
||||
//#define Z_LIMIT_PIN GPIO_NUM_32
|
||||
|
||||
// Common enable for all steppers. If it is okay to leave
|
||||
// your drivers enabled at all times, you can leave
|
||||
// STEPPERS_DISABLE_PIN undefined and use the pin for something else.
|
||||
// #define STEPPERS_DISABLE_PIN GPIO_NUM_13
|
||||
|
||||
// Pins for controlling various aspects of the machine. If your
|
||||
// machine does not support one of these features, you can leave
|
||||
// the corresponding pin undefined.
|
||||
|
||||
#define SPINDLE_TYPE SpindleType::NONE
|
||||
// #define SPINDLE_PWM_PIN GPIO_NUM_2 // labeled SpinPWM
|
||||
// #define SPINDLE_ENABLE_PIN GPIO_NUM_22 // labeled SpinEnbl
|
||||
// #define COOLANT_MIST_PIN GPIO_NUM_21 // labeled Mist
|
||||
// #define COOLANT_FLOOD_PIN GPIO_NUM_25 // labeled Flood
|
||||
// #define PROBE_PIN GPIO_NUM_32 // labeled Probe
|
||||
|
||||
// Input pins for various functions. If the corresponding pin is not defined,
|
||||
// the function will not be available.
|
||||
|
||||
// CONTROL_SAFETY_DOOR_PIN shuts off the machine when a door is opened
|
||||
// or some other unsafe condition exists.
|
||||
// #define CONTROL_SAFETY_DOOR_PIN GPIO_NUM_35 // labeled Door, needs external pullup
|
||||
|
||||
// RESET, FEED_HOLD, and CYCLE_START can control GCode execution at
|
||||
// the push of a button.
|
||||
|
||||
// #define CONTROL_FEED_HOLD_PIN GPIO_NUM_36 // labeled Hold, needs external pullup
|
||||
// #define CONTROL_CYCLE_START_PIN GPIO_NUM_39 // labeled Start, needs external pullup
|
||||
|
||||
// === Ganging
|
||||
// If you need to use two motors on one axis, you can "gang" the motors by
|
||||
// defining a second pin to control the other motor on the axis. For example:
|
||||
|
||||
// #define Y2_STEP_PIN GPIO_NUM_27 /* labeled Z */
|
||||
// #define Y2_DIRECTION_PIN GPIO_NUM_33 /* labeled Z */
|
||||
|
||||
// === Servos
|
||||
// To use a servo motor on an axis, do not define step and direction
|
||||
// pins for that axis, but instead include a block like this:
|
||||
|
||||
//#define SERVO_Z_PIN GPIO_NUM_15 // It cannot be used when JTAG debugging
|
||||
//#define SERVO_Z_RANGE_MIN 0.0
|
||||
//#define SERVO_Z_RANGE_MAX 5.0
|
||||
|
||||
// === Homing cycles
|
||||
// The default homing order is Z first (HOMING_CYCLE_0),
|
||||
// then X (HOMING_CYCLE_1), and finally Y (HOMING_CYCLE_2)
|
||||
// For machines that need different homing order, you can
|
||||
// undefine HOMING_CYCLE_n and redefine it accordingly.
|
||||
// For example, the following would first home X and Y
|
||||
// simultaneously, then A and B simultaneously, and Z
|
||||
// not at all.
|
||||
|
||||
// redefine some stuff from config.h
|
||||
#ifdef HOMING_CYCLE_0
|
||||
#undef HOMING_CYCLE_0
|
||||
#endif
|
||||
#define HOMING_CYCLE_0 bit(X_AXIS) // this 'bot only homes the X axis
|
||||
#ifdef HOMING_CYCLE_1
|
||||
#undef HOMING_CYCLE_1
|
||||
#endif
|
||||
#ifdef HOMING_CYCLE_2
|
||||
#undef HOMING_CYCLE_2
|
||||
#endif
|
||||
|
||||
// === Default settings
|
||||
// Grbl has many run-time settings that the user can changed by
|
||||
// commands like $110=2000 . Their values are stored in EEPROM
|
||||
// so they persist after the controller has been powered down.
|
||||
// Those settings have default values that are used if the user
|
||||
// has not altered them, or if the settings are explicitly reset
|
||||
// to the default values wth $RST=$.
|
||||
//
|
||||
// The default values are established in defaults.h, but you
|
||||
// can override any one of them by definining it here, for example:
|
||||
|
||||
//#define DEFAULT_INVERT_LIMIT_PINS 1
|
||||
//#define DEFAULT_REPORT_INCHES 1
|
||||
#define DEFAULT_STEP_PULSE_MICROSECONDS I2S_OUT_USEC_PER_PULSE
|
||||
|
||||
#define DEFAULT_HOMING_ENABLE 1
|
||||
#define DEFAULT_HOMING_DIR_MASK 0 // move positive dir Z, negative X,Y
|
||||
#define DEFAULT_HOMING_FEED_RATE 200.0 // mm/min
|
||||
#define DEFAULT_HOMING_SEEK_RATE 1000.0 // mm/min
|
||||
#define DEFAULT_HOMING_DEBOUNCE_DELAY 250 // msec (0-65k)
|
||||
#define DEFAULT_HOMING_PULLOFF 3.0 // mm
|
||||
|
||||
#define DEFAULT_HARD_LIMIT_ENABLE 1
|
||||
// === Control Pins
|
||||
|
||||
// The control pins with names that begin with CONTROL_ are
|
||||
// ignored by default, to avoid noise problems. To make them
|
||||
// work, you must undefine IGNORE_CONTROL_PINS
|
||||
#undef IGNORE_CONTROL_PINS
|
||||
|
||||
// If some of the control pin switches are normally closed
|
||||
// (the default is normally open), you can invert some of them
|
||||
// with INVERT_CONTROL_PIN_MASK. The bits in the mask are
|
||||
// Cycle Start, Feed Hold, Reset, Safety Door. To use a
|
||||
// normally open switch on Reset, you would say
|
||||
// #define INVERT_CONTROL_PIN_MASK B1101
|
||||
|
||||
// If your control pins do not have adequate hardware signal
|
||||
// conditioning, you can define these to use software to
|
||||
// reduce false triggering.
|
||||
// #define ENABLE_CONTROL_SW_DEBOUNCE // Default disabled. Uncomment to enable.
|
||||
// #define CONTROL_SW_DEBOUNCE_PERIOD 32 // in milliseconds default 32 microseconds
|
||||
#ifndef ENABLE_CONTROL_SW_DEBOUNCE
|
||||
#define ENABLE_CONTROL_SW_DEBOUNCE
|
||||
#endif
|
||||
|
||||
#ifdef CONTROL_SW_DEBOUNCE_PERIOD
|
||||
#undef CONTROL_SW_DEBOUNCE_PERIOD
|
||||
#endif
|
||||
#define CONTROL_SW_DEBOUNCE_PERIOD 100 // really long debounce
|
||||
|
||||
#ifdef INVERT_CONTROL_PIN_MASK
|
||||
#undef INVERT_CONTROL_PIN_MASK
|
||||
#endif
|
||||
#define INVERT_CONTROL_PIN_MASK B11111111
|
||||
|
||||
//
|
||||
// I2S (steppers & other output-only pins)
|
||||
//
|
||||
#define USE_I2S_OUT
|
||||
#define USE_I2S_STEPS
|
||||
//#define DEFAULT_STEPPER ST_I2S_STATIC
|
||||
#define I2S_OUT_BCK GPIO_NUM_22
|
||||
#define I2S_OUT_WS GPIO_NUM_17
|
||||
#define I2S_OUT_DATA GPIO_NUM_21
|
||||
#define I2S_OUT_NUM_BITS 16
|
||||
|
||||
// === Special Features
|
||||
// Grbl_ESP32 can support non-Cartesian machines and some other
|
||||
// scenarios that cannot be handled by choosing from a set of
|
||||
// predefined selections. Instead they require machine-specific
|
||||
// C++ code functions. There are callouts in the core code for
|
||||
// such code, guarded by ifdefs that enable calling the individual
|
||||
// functions. custom_code_template.cpp describes the functions
|
||||
// that you can implement. The ifdef guards are described below:
|
||||
//
|
||||
#define USE_MACHINE_INIT
|
||||
|
||||
// USE_CUSTOM_HOMING enables the user_defined_homing() function
|
||||
// that can implement an arbitrary homing sequence.
|
||||
// #define USE_CUSTOM_HOMING
|
||||
|
||||
// USE_KINEMATICS enables the functions inverse_kinematics(),
|
||||
// kinematics_pre_homing(), and kinematics_post_homing(),
|
||||
// so non-Cartesian machines can be implemented.
|
||||
// #define USE_KINEMATICS
|
||||
|
||||
// USE_FWD_KINEMATICS enables the forward_kinematics() function
|
||||
// that converts motor positions in non-Cartesian coordinate
|
||||
// systems back to Cartesian form, for status reports.
|
||||
//#define USE_FWD_KINEMATICS
|
||||
|
||||
// USE_TOOL_CHANGE enables the user_tool_change() function
|
||||
// that implements custom tool change procedures.
|
||||
// #define USE_TOOL_CHANGE
|
||||
|
||||
// Any one of MACRO_BUTTON_0_PIN, MACRO_BUTTON_1_PIN, and MACRO_BUTTON_2_PIN
|
||||
// enables the user_defined_macro(number) function which
|
||||
// implements custom behavior at the press of a button
|
||||
// #define MACRO_BUTTON_0_PIN
|
||||
|
||||
// USE_M30 enables the user_m30() function which implements
|
||||
// custom behavior when a GCode programs stops at the end
|
||||
// #define USE_M30
|
||||
|
||||
// USE_TRIAMINIC enables a suite of functions that are defined
|
||||
// in grbl_triaminic.cpp, allowing the use of Triaminic stepper
|
||||
// drivers that require software configuration at startup.
|
||||
// There are several options that control the details of such
|
||||
// drivers; inspect the code in grbl_triaminic.cpp to see them.
|
||||
// #define USE_TRIAMINIC
|
||||
// #define X_TRIAMINIC
|
||||
// #define X_DRIVER_TMC2209
|
||||
// #define TRIAMINIC_DAISY_CHAIN
|
||||
|
||||
// USE_MACHINE_TRINAMIC_INIT enables the machine_triaminic_setup()
|
||||
// function that replaces the normal setup of Triaminic drivers.
|
||||
// It could, for, example, setup StallGuard or other special modes.
|
||||
// #define USE_MACHINE_TRINAMIC_INIT
|
||||
|
||||
|
||||
// === Grbl behavior options
|
||||
// There are quite a few options that control aspects of Grbl that
|
||||
// are not specific to particular machines. They are listed and
|
||||
// described in config.h after it includes the file machine.h.
|
||||
// Normally you would not need to change them, but if you do,
|
||||
// it will be necessary to make the change in config.h
|
@@ -1,150 +0,0 @@
|
||||
#pragma once
|
||||
// clang-format off
|
||||
|
||||
/*
|
||||
foo_6axis.h
|
||||
Part of Grbl_ESP32
|
||||
|
||||
Pin assignments for a 6-axis system
|
||||
|
||||
2019 - Bart Dring
|
||||
2020 - Mitch Bradley
|
||||
|
||||
Grbl_ESP32 is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
Grbl is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with Grbl_ESP32. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
|
||||
#define MACHINE_NAME "FOO_6X"
|
||||
|
||||
#ifdef N_AXIS
|
||||
#undef N_AXIS
|
||||
#endif
|
||||
#define N_AXIS 6
|
||||
|
||||
#define SPINDLE_TYPE SpindleType::NONE
|
||||
|
||||
// stepper motors
|
||||
#define X_STEP_PIN GPIO_NUM_12
|
||||
#define X_DIRECTION_PIN GPIO_NUM_26
|
||||
|
||||
#define Y_STEP_PIN GPIO_NUM_14
|
||||
#define Y_DIRECTION_PIN GPIO_NUM_25
|
||||
|
||||
// Z is a servo
|
||||
|
||||
#define A_STEP_PIN GPIO_NUM_27
|
||||
#define A_DIRECTION_PIN GPIO_NUM_33
|
||||
|
||||
#define B_STEP_PIN GPIO_NUM_15
|
||||
#define B_DIRECTION_PIN GPIO_NUM_32
|
||||
|
||||
// C is a servo
|
||||
|
||||
// servos
|
||||
#define SERVO_Z_PIN GPIO_NUM_22
|
||||
#define SERVO_Z_RANGE_MIN 0.0
|
||||
#define SERVO_Z_RANGE_MAX 5.0
|
||||
|
||||
#define SERVO_C_PIN GPIO_NUM_2
|
||||
#define SERVO_C_RANGE_MIN 0.0
|
||||
#define SERVO_C_RANGE_MAX 5.0
|
||||
|
||||
// limit switches
|
||||
#define X_LIMIT_PIN GPIO_NUM_21
|
||||
#define Y_LIMIT_PIN GPIO_NUM_17
|
||||
#define A_LIMIT_PIN GPIO_NUM_16
|
||||
#define B_LIMIT_PIN GPIO_NUM_4
|
||||
|
||||
// OK to comment out to use pin for other features
|
||||
#define STEPPERS_DISABLE_PIN GPIO_NUM_13
|
||||
|
||||
#ifdef HOMING_CYCLE_0 // undefine from config.h
|
||||
#undef HOMING_CYCLE_0
|
||||
#endif
|
||||
//#define HOMING_CYCLE_0 bit(X_AXIS)
|
||||
#define HOMING_CYCLE_0 (bit(X_AXIS)|bit(Y_AXIS))
|
||||
//#define HOMING_CYCLE_0 (bit(X_AXIS)|bit(Y_AXIS) |bit(A_AXIS)|bit(B_AXIS))
|
||||
|
||||
#ifdef HOMING_CYCLE_1 // undefine from config.h
|
||||
#undef HOMING_CYCLE_1
|
||||
#endif
|
||||
//#define HOMING_CYCLE_1 bit(A_AXIS)
|
||||
#define HOMING_CYCLE_1 (bit(A_AXIS)|bit(B_AXIS))
|
||||
|
||||
#ifdef HOMING_CYCLE_2 // undefine from config.h
|
||||
#undef HOMING_CYCLE_2
|
||||
#endif
|
||||
/*
|
||||
#define HOMING_CYCLE_2 bit(Y_AXIS)
|
||||
|
||||
#ifdef HOMING_CYCLE_3 // undefine from config.h
|
||||
#undef HOMING_CYCLE_3
|
||||
#endif
|
||||
#define HOMING_CYCLE_3 bit(B_AXIS)
|
||||
*/
|
||||
|
||||
#define DEFAULT_STEP_PULSE_MICROSECONDS 3
|
||||
#define DEFAULT_STEPPER_IDLE_LOCK_TIME 200 // 200ms
|
||||
|
||||
#define DEFAULT_STEPPING_INVERT_MASK 0 // uint8_t
|
||||
#define DEFAULT_DIRECTION_INVERT_MASK 2 // uint8_t
|
||||
#define DEFAULT_INVERT_ST_ENABLE 0 // boolean
|
||||
#define DEFAULT_INVERT_LIMIT_PINS 1 // boolean
|
||||
#define DEFAULT_INVERT_PROBE_PIN 0 // boolean
|
||||
|
||||
#define DEFAULT_STATUS_REPORT_MASK 1
|
||||
|
||||
#define DEFAULT_JUNCTION_DEVIATION 0.01 // mm
|
||||
#define DEFAULT_ARC_TOLERANCE 0.002 // mm
|
||||
#define DEFAULT_REPORT_INCHES 0 // false
|
||||
|
||||
#define DEFAULT_SOFT_LIMIT_ENABLE 0 // false
|
||||
#define DEFAULT_HARD_LIMIT_ENABLE 0 // false
|
||||
|
||||
#define DEFAULT_HOMING_ENABLE 1
|
||||
#define DEFAULT_HOMING_DIR_MASK 17
|
||||
#define DEFAULT_HOMING_FEED_RATE 200.0 // mm/min
|
||||
#define DEFAULT_HOMING_SEEK_RATE 2000.0 // mm/min
|
||||
#define DEFAULT_HOMING_DEBOUNCE_DELAY 250 // msec (0-65k)
|
||||
#define DEFAULT_HOMING_PULLOFF 3.0 // mm
|
||||
|
||||
#define DEFAULT_X_STEPS_PER_MM 400.0
|
||||
#define DEFAULT_Y_STEPS_PER_MM 400.0
|
||||
#define DEFAULT_Z_STEPS_PER_MM 100.0 // This is percent in servo mode
|
||||
#define DEFAULT_A_STEPS_PER_MM 400.0
|
||||
#define DEFAULT_B_STEPS_PER_MM 400.0
|
||||
#define DEFAULT_C_STEPS_PER_MM 100.0 // This is percent in servo mode
|
||||
|
||||
|
||||
#define DEFAULT_X_MAX_RATE 30000.0 // mm/min
|
||||
#define DEFAULT_Y_MAX_RATE 30000.0 // mm/min
|
||||
#define DEFAULT_Z_MAX_RATE 8000.0 // mm/min
|
||||
#define DEFAULT_A_MAX_RATE 30000.0 // mm/min
|
||||
#define DEFAULT_B_MAX_RATE 30000.0 // mm/min
|
||||
#define DEFAULT_C_MAX_RATE 8000.0 // mm/min
|
||||
|
||||
#define DEFAULT_X_ACCELERATION 1500.0 // mm/sec^2
|
||||
#define DEFAULT_Y_ACCELERATION 1500.0 // mm/sec^2
|
||||
#define DEFAULT_Z_ACCELERATION 100.0 // mm/sec^2
|
||||
#define DEFAULT_A_ACCELERATION 1500.0 // mm/sec^2
|
||||
#define DEFAULT_B_ACCELERATION 1500.0 // mm/sec^2
|
||||
#define DEFAULT_C_ACCELERATION 100.0 // mm/sec^2
|
||||
|
||||
#define DEFAULT_X_MAX_TRAVEL 250.0 // mm NOTE: Must be a positive value.
|
||||
#define DEFAULT_Y_MAX_TRAVEL 250.0 // mm NOTE: Must be a positive value.
|
||||
#define DEFAULT_Z_MAX_TRAVEL 100.0 // This is percent in servo mode
|
||||
#define DEFAULT_A_MAX_TRAVEL 250.0 // mm NOTE: Must be a positive value.
|
||||
#define DEFAULT_B_MAX_TRAVEL 250.0 // mm NOTE: Must be a positive value.
|
||||
#define DEFAULT_C_MAX_TRAVEL 100.0 // This is percent in servo mode
|
||||
|
@@ -1,53 +0,0 @@
|
||||
#pragma once
|
||||
// clang-format off
|
||||
|
||||
/*
|
||||
spindle_class_test.h
|
||||
Part of Grbl_ESP32
|
||||
|
||||
Pin assignments for the ESP32 Development Controller, v4.1 and later.
|
||||
https://github.com/bdring/Grbl_ESP32_Development_Controller
|
||||
https://www.tindie.com/products/33366583/grbl_esp32-cnc-development-board-v35/
|
||||
|
||||
2018 - Bart Dring
|
||||
2020 - Mitch Bradley
|
||||
|
||||
Grbl_ESP32 is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
Grbl is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with Grbl_ESP32. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#define MACHINE_NAME "Spindle class Test"
|
||||
|
||||
#define X_STEP_PIN GPIO_NUM_12
|
||||
#define X_DIRECTION_PIN GPIO_NUM_14
|
||||
#define Y_STEP_PIN GPIO_NUM_26
|
||||
#define Y_DIRECTION_PIN GPIO_NUM_15
|
||||
#define Z_STEP_PIN GPIO_NUM_27
|
||||
#define Z_DIRECTION_PIN GPIO_NUM_33
|
||||
|
||||
#define X_LIMIT_PIN GPIO_NUM_17
|
||||
#define Y_LIMIT_PIN GPIO_NUM_4
|
||||
#define Z_LIMIT_PIN GPIO_NUM_16
|
||||
|
||||
// OK to comment out to use pin for other features
|
||||
#define STEPPERS_DISABLE_PIN GPIO_NUM_13
|
||||
|
||||
|
||||
#define SPINDLE_TYPE SpindleType::RELAY
|
||||
#define SPINDLE_OUTPUT_PIN GPIO_NUM_25 // labeled SpinPWM
|
||||
//#define SPINDLE_ENABLE_PIN GPIO_NUM_25 // labeled SpinEnbl
|
||||
|
||||
/*
|
||||
#define SPINDLE_TYPE SpindleType::BESC
|
||||
#define SPINDLE_OUTPUT_PIN GPIO_NUM_27 //
|
||||
*/
|
Reference in New Issue
Block a user