mirror of
https://github.com/bdring/Grbl_Esp32.git
synced 2025-09-03 11:22:38 +02:00
Added $Axes setting.
This commit is contained in:
@@ -1,119 +0,0 @@
|
|||||||
#pragma once
|
|
||||||
// clang-format off
|
|
||||||
|
|
||||||
/*
|
|
||||||
6_pack_stepstick_XYZ_pc.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 StepStick XYZ pins"
|
|
||||||
|
|
||||||
#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
|
|
||||||
// === 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.22"
|
|
||||||
#define I2S_OUT_WS "GPIO.17"
|
|
||||||
#define I2S_OUT_DATA "GPIO.21"
|
|
||||||
|
|
||||||
|
|
||||||
// Motor Socket #1
|
|
||||||
#define X_DISABLE_PIN "i2so.0"
|
|
||||||
#define X_DIRECTION_PIN "i2so.1"
|
|
||||||
#define X_STEP_PIN "i2so.2"
|
|
||||||
#define X_STEPPER_MS3 "i2so.3"
|
|
||||||
|
|
||||||
// Motor Socket #2
|
|
||||||
#define Y_DIRECTION_PIN "i2so.4"
|
|
||||||
#define Y_STEP_PIN "i2so.5"
|
|
||||||
#define Y_STEPPER_MS3 "i2so.6"
|
|
||||||
#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"
|
|
||||||
#define Z_STEPPER_MS3 "i2so.11"
|
|
||||||
/*
|
|
||||||
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 COOLANT_MIST_PIN "gpio.14"
|
|
||||||
#define COOLANT_FLOOD_PIN "gpio.13"
|
|
||||||
#define SPINDLE_OUTPUT_PIN "gpio.15"
|
|
||||||
#define SPINDLE_ENABLE_PIN "gpio.12"
|
|
||||||
|
|
||||||
#define SPINDLE_TYPE SpindleType::PWM
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// ================= Setting Defaults ==========================
|
|
||||||
#define DEFAULT_X_STEPS_PER_MM 800
|
|
||||||
#define DEFAULT_Y_STEPS_PER_MM 800
|
|
||||||
#define DEFAULT_Z_STEPS_PER_MM 800
|
|
@@ -120,6 +120,10 @@ Socket #5
|
|||||||
// #define CONTROL_SAFETY_DOOR_PIN "gpio.27"
|
// #define CONTROL_SAFETY_DOOR_PIN "gpio.27"
|
||||||
|
|
||||||
// ================= Setting Defaults ==========================
|
// ================= Setting Defaults ==========================
|
||||||
|
// https://github.com/bdring/Grbl_Esp32/wiki/Setting-Defaults
|
||||||
#define DEFAULT_X_STEPS_PER_MM 800
|
#define DEFAULT_X_STEPS_PER_MM 800
|
||||||
#define DEFAULT_Y_STEPS_PER_MM 800
|
#define DEFAULT_Y_STEPS_PER_MM 800
|
||||||
#define DEFAULT_Z_STEPS_PER_MM 800
|
#define DEFAULT_Z_STEPS_PER_MM 800
|
||||||
|
|
||||||
|
#define DEFAULT_HOMING_DIR_MASK bit(X_AXIS)
|
||||||
|
|
||||||
|
@@ -331,7 +331,7 @@ void mc_homing_cycle(uint8_t cycle_mask) {
|
|||||||
else
|
else
|
||||||
#endif
|
#endif
|
||||||
{
|
{
|
||||||
for (int cycle = 0; cycle < MAX_N_AXIS; cycle++) {
|
for (int cycle = 0; cycle < number_axis->get(); cycle++) {
|
||||||
auto homing_mask = homing_cycle[cycle]->get();
|
auto homing_mask = homing_cycle[cycle]->get();
|
||||||
if (homing_mask) { // if there are some axes in this cycle
|
if (homing_mask) { // if there are some axes in this cycle
|
||||||
no_cycles_defined = false;
|
no_cycles_defined = false;
|
||||||
|
@@ -64,11 +64,11 @@ const int DELAY_MODE_SYS_SUSPEND = 1;
|
|||||||
|
|
||||||
// Useful macros
|
// Useful macros
|
||||||
#define clear_vector(a) memset(a, 0, sizeof(a))
|
#define clear_vector(a) memset(a, 0, sizeof(a))
|
||||||
#define clear_vector_float(a) memset(a, 0.0, sizeof(float) * MAX_N_AXIS)
|
#define clear_vector_float(a) memset(a, 0.0, sizeof(float) * number_axis->get())
|
||||||
// #define clear_vector_long(a) memset(a, 0.0, sizeof(long)*MAX_N_AXIS)
|
// #define clear_vector_long(a) memset(a, 0.0, sizeof(long) * number_axis->get())
|
||||||
#define MAX(a, b) (((a) > (b)) ? (a) : (b)) // changed to upper case to remove conflicts with other libraries
|
#define MAX(a, b) (((a) > (b)) ? (a) : (b)) // changed to upper case to remove conflicts with other libraries
|
||||||
#define MIN(a, b) (((a) < (b)) ? (a) : (b)) // changed to upper case to remove conflicts with other libraries
|
#define MIN(a, b) (((a) < (b)) ? (a) : (b)) // changed to upper case to remove conflicts with other libraries
|
||||||
#define isequal_position_vector(a, b) !(memcmp(a, b, sizeof(float) * MAX_N_AXIS))
|
#define isequal_position_vector(a, b) !(memcmp(a, b, sizeof(float) * number_axis->get()))
|
||||||
|
|
||||||
// Bit field and masking macros
|
// Bit field and masking macros
|
||||||
// bit(n) is defined in Arduino.h. We redefine it here so we can apply
|
// bit(n) is defined in Arduino.h. We redefine it here so we can apply
|
||||||
|
@@ -174,7 +174,6 @@ void grbl_notifyf(const char* title, const char* format, ...) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
static const int coordStringLen = 20;
|
static const int coordStringLen = 20;
|
||||||
static const int axesStringLen = coordStringLen * MAX_N_AXIS;
|
|
||||||
|
|
||||||
// formats axis values into a string and returns that string in rpt
|
// formats axis values into a string and returns that string in rpt
|
||||||
// NOTE: rpt should have at least size: axesStringLen
|
// NOTE: rpt should have at least size: axesStringLen
|
||||||
@@ -210,6 +209,7 @@ static String report_util_axis_values(const float* axis_value) {
|
|||||||
decimals = 4; // Report inches to 4 decimal places
|
decimals = 4; // Report inches to 4 decimal places
|
||||||
}
|
}
|
||||||
auto n_axis = number_axis->get();
|
auto n_axis = number_axis->get();
|
||||||
|
grbl_msg_sendf(CLIENT_SERIAL, MsgLevel::Info, "N axes %d", n_axis);
|
||||||
for (idx = 0; idx < n_axis; idx++) {
|
for (idx = 0; idx < n_axis; idx++) {
|
||||||
rpt += String(axis_value[idx] * unit_conv, decimals);
|
rpt += String(axis_value[idx] * unit_conv, decimals);
|
||||||
if (idx < (number_axis->get() - 1)) {
|
if (idx < (number_axis->get() - 1)) {
|
||||||
@@ -319,6 +319,8 @@ void report_grbl_help(uint8_t client) {
|
|||||||
// These values are retained until Grbl is power-cycled, whereby they will be re-zeroed.
|
// These values are retained until Grbl is power-cycled, whereby they will be re-zeroed.
|
||||||
void report_probe_parameters(uint8_t client) {
|
void report_probe_parameters(uint8_t client) {
|
||||||
// Report in terms of machine position.
|
// Report in terms of machine position.
|
||||||
|
int axesStringLen = coordStringLen * number_axis->get();
|
||||||
|
|
||||||
float print_position[MAX_N_AXIS];
|
float print_position[MAX_N_AXIS];
|
||||||
char probe_rpt[(axesStringLen + 13 + 6 + 1)]; // the probe report we are building here
|
char probe_rpt[(axesStringLen + 13 + 6 + 1)]; // the probe report we are building here
|
||||||
char temp[axesStringLen];
|
char temp[axesStringLen];
|
||||||
|
@@ -234,7 +234,7 @@ const char* AxisMaskSetting::getCompatibleValue() {
|
|||||||
|
|
||||||
static char* maskToString(uint32_t mask, char* strval) {
|
static char* maskToString(uint32_t mask, char* strval) {
|
||||||
char* s = strval;
|
char* s = strval;
|
||||||
for (int i = 0; i < MAX_N_AXIS; i++) {
|
for (int i = 0; i < number_axis->get(); i++) {
|
||||||
if (mask & bit(i)) {
|
if (mask & bit(i)) {
|
||||||
*s++ = "XYZABC"[i];
|
*s++ = "XYZABC"[i];
|
||||||
}
|
}
|
||||||
@@ -255,7 +255,7 @@ const char* AxisMaskSetting::getStringValue() {
|
|||||||
|
|
||||||
void AxisMaskSetting::addWebui(WebUI::JSONencoder* j) {
|
void AxisMaskSetting::addWebui(WebUI::JSONencoder* j) {
|
||||||
if (getDescription()) {
|
if (getDescription()) {
|
||||||
j->begin_webui(getName(), getDescription(), "I", getStringValue(), 0, (1 << MAX_N_AXIS) - 1);
|
j->begin_webui(getName(), getDescription(), "I", getStringValue(), 0, (1 << number_axis->get()) - 1);
|
||||||
j->end_object();
|
j->end_object();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -4,7 +4,7 @@ bool motorSettingChanged = false;
|
|||||||
|
|
||||||
FlagSetting* verbose_errors;
|
FlagSetting* verbose_errors;
|
||||||
|
|
||||||
FakeSetting<int>* number_axis;
|
IntSetting* number_axis;
|
||||||
|
|
||||||
StringSetting* startup_line_0;
|
StringSetting* startup_line_0;
|
||||||
StringSetting* startup_line_1;
|
StringSetting* startup_line_1;
|
||||||
@@ -65,13 +65,6 @@ enum_opt_t spindleTypes = {
|
|||||||
// clang-format on
|
// 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];
|
AxisSettings* axis_settings[MAX_N_AXIS];
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
@@ -224,6 +217,9 @@ extern void make_pin_settings();
|
|||||||
void make_settings() {
|
void make_settings() {
|
||||||
Setting::init();
|
Setting::init();
|
||||||
|
|
||||||
|
number_axis = new IntSetting(EXTENDED, WG, NULL, "Axes", N_AXIS, 3, 6, NULL, false);
|
||||||
|
number_axis->load();
|
||||||
|
|
||||||
// Propagate old coordinate system data to the new format if necessary.
|
// Propagate old coordinate system data to the new format if necessary.
|
||||||
// G54 - G59 work coordinate systems, G28, G30 reference positions, etc
|
// G54 - G59 work coordinate systems, G28, G30 reference positions, etc
|
||||||
make_coordinate(CoordIndex::G54, "G54");
|
make_coordinate(CoordIndex::G54, "G54");
|
||||||
@@ -237,79 +233,71 @@ void make_settings() {
|
|||||||
|
|
||||||
verbose_errors = new FlagSetting(EXTENDED, WG, NULL, "Errors/Verbose", DEFAULT_VERBOSE_ERRORS);
|
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
|
// Create the axis settings in the order that people are
|
||||||
// accustomed to seeing.
|
// accustomed to seeing.
|
||||||
int axis;
|
int axis;
|
||||||
axis_defaults_t* def;
|
axis_defaults_t* def;
|
||||||
for (axis = 0; axis < MAX_N_AXIS; axis++) {
|
for (axis = 0; axis < number_axis->get(); axis++) {
|
||||||
def = &axis_defaults[axis];
|
def = &axis_defaults[axis];
|
||||||
axis_settings[axis] = new AxisSettings(def->name);
|
axis_settings[axis] = new AxisSettings(def->name);
|
||||||
}
|
}
|
||||||
x_axis_settings = axis_settings[X_AXIS];
|
|
||||||
y_axis_settings = axis_settings[Y_AXIS];
|
for (axis = 0; axis < number_axis->get(); 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];
|
def = &axis_defaults[axis];
|
||||||
auto setting = new IntSetting(
|
auto setting = new IntSetting(
|
||||||
EXTENDED, WG, makeGrblName(axis, 170), makename(def->name, "StallGuard"), def->stallguard, -64, 63, checkStallguard);
|
EXTENDED, WG, makeGrblName(axis, 170), makename(def->name, "StallGuard"), def->stallguard, -64, 63, checkStallguard);
|
||||||
setting->setAxis(axis);
|
setting->setAxis(axis);
|
||||||
axis_settings[axis]->stallguard = setting;
|
axis_settings[axis]->stallguard = setting;
|
||||||
}
|
}
|
||||||
for (axis = MAX_N_AXIS - 1; axis >= 0; axis--) {
|
for (axis = 0; axis < number_axis->get(); axis++) {
|
||||||
def = &axis_defaults[axis];
|
def = &axis_defaults[axis];
|
||||||
auto setting = new IntSetting(
|
auto setting = new IntSetting(
|
||||||
EXTENDED, WG, makeGrblName(axis, 160), makename(def->name, "Microsteps"), def->microsteps, 0, 256, checkMicrosteps);
|
EXTENDED, WG, makeGrblName(axis, 160), makename(def->name, "Microsteps"), def->microsteps, 0, 256, checkMicrosteps);
|
||||||
setting->setAxis(axis);
|
setting->setAxis(axis);
|
||||||
axis_settings[axis]->microsteps = setting;
|
axis_settings[axis]->microsteps = setting;
|
||||||
}
|
}
|
||||||
for (axis = MAX_N_AXIS - 1; axis >= 0; axis--) {
|
for (axis = 0; axis < number_axis->get(); axis++) {
|
||||||
def = &axis_defaults[axis];
|
def = &axis_defaults[axis];
|
||||||
auto setting = new FloatSetting(
|
auto setting = new FloatSetting(
|
||||||
EXTENDED, WG, makeGrblName(axis, 150), makename(def->name, "Current/Hold"), def->hold_current, 0.05, 20.0, checkHoldcurrent); // Amps
|
EXTENDED, WG, makeGrblName(axis, 150), makename(def->name, "Current/Hold"), def->hold_current, 0.05, 20.0, checkHoldcurrent); // Amps
|
||||||
setting->setAxis(axis);
|
setting->setAxis(axis);
|
||||||
axis_settings[axis]->hold_current = setting;
|
axis_settings[axis]->hold_current = setting;
|
||||||
}
|
}
|
||||||
for (axis = MAX_N_AXIS - 1; axis >= 0; axis--) {
|
for (axis = 0; axis < number_axis->get(); axis++) {
|
||||||
def = &axis_defaults[axis];
|
def = &axis_defaults[axis];
|
||||||
auto setting = new FloatSetting(
|
auto setting = new FloatSetting(
|
||||||
EXTENDED, WG, makeGrblName(axis, 140), makename(def->name, "Current/Run"), def->run_current, 0.0, 20.0, checkRunCurrent); // Amps
|
EXTENDED, WG, makeGrblName(axis, 140), makename(def->name, "Current/Run"), def->run_current, 0.0, 20.0, checkRunCurrent); // Amps
|
||||||
setting->setAxis(axis);
|
setting->setAxis(axis);
|
||||||
axis_settings[axis]->run_current = setting;
|
axis_settings[axis]->run_current = setting;
|
||||||
}
|
}
|
||||||
for (axis = MAX_N_AXIS - 1; axis >= 0; axis--) {
|
for (axis = 0; axis < number_axis->get(); axis++) {
|
||||||
def = &axis_defaults[axis];
|
def = &axis_defaults[axis];
|
||||||
auto setting = new FloatSetting(GRBL, WG, makeGrblName(axis, 130), makename(def->name, "MaxTravel"), def->max_travel, 1.0, 100000.0);
|
auto setting = new FloatSetting(GRBL, WG, makeGrblName(axis, 130), makename(def->name, "MaxTravel"), def->max_travel, 1.0, 100000.0);
|
||||||
setting->setAxis(axis);
|
setting->setAxis(axis);
|
||||||
axis_settings[axis]->max_travel = setting;
|
axis_settings[axis]->max_travel = setting;
|
||||||
}
|
}
|
||||||
|
|
||||||
for (axis = MAX_N_AXIS - 1; axis >= 0; axis--) {
|
for (axis = 0; axis < number_axis->get(); axis++) {
|
||||||
def = &axis_defaults[axis];
|
def = &axis_defaults[axis];
|
||||||
auto setting = new FloatSetting(EXTENDED, WG, NULL, makename(def->name, "Home/Mpos"), def->home_mpos, -100000.0, 100000.0);
|
auto setting = new FloatSetting(EXTENDED, WG, NULL, makename(def->name, "Home/Mpos"), def->home_mpos, -100000.0, 100000.0);
|
||||||
setting->setAxis(axis);
|
setting->setAxis(axis);
|
||||||
axis_settings[axis]->home_mpos = setting;
|
axis_settings[axis]->home_mpos = setting;
|
||||||
}
|
}
|
||||||
|
|
||||||
for (axis = MAX_N_AXIS - 1; axis >= 0; axis--) {
|
for (axis = 0; axis < number_axis->get(); axis++) {
|
||||||
def = &axis_defaults[axis];
|
def = &axis_defaults[axis];
|
||||||
auto setting =
|
auto setting =
|
||||||
new FloatSetting(GRBL, WG, makeGrblName(axis, 120), makename(def->name, "Acceleration"), def->acceleration, 1.0, 100000.0);
|
new FloatSetting(GRBL, WG, makeGrblName(axis, 120), makename(def->name, "Acceleration"), def->acceleration, 1.0, 100000.0);
|
||||||
setting->setAxis(axis);
|
setting->setAxis(axis);
|
||||||
axis_settings[axis]->acceleration = setting;
|
axis_settings[axis]->acceleration = setting;
|
||||||
}
|
}
|
||||||
for (axis = MAX_N_AXIS - 1; axis >= 0; axis--) {
|
for (axis = 0; axis < number_axis->get(); axis++) {
|
||||||
def = &axis_defaults[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);
|
auto setting = new FloatSetting(GRBL, WG, makeGrblName(axis, 110), makename(def->name, "MaxRate"), def->max_rate, 1.0, 100000.0);
|
||||||
setting->setAxis(axis);
|
setting->setAxis(axis);
|
||||||
axis_settings[axis]->max_rate = setting;
|
axis_settings[axis]->max_rate = setting;
|
||||||
}
|
}
|
||||||
for (axis = MAX_N_AXIS - 1; axis >= 0; axis--) {
|
for (axis = 0; axis < number_axis->get(); axis++) {
|
||||||
def = &axis_defaults[axis];
|
def = &axis_defaults[axis];
|
||||||
auto setting =
|
auto setting =
|
||||||
new FloatSetting(GRBL, WG, makeGrblName(axis, 100), makename(def->name, "StepsPerMm"), def->steps_per_mm, 1.0, 100000.0);
|
new FloatSetting(GRBL, WG, makeGrblName(axis, 100), makename(def->name, "StepsPerMm"), def->steps_per_mm, 1.0, 100000.0);
|
||||||
@@ -323,7 +311,7 @@ void make_settings() {
|
|||||||
spindle_pwm_off_value =
|
spindle_pwm_off_value =
|
||||||
new FloatSetting(EXTENDED, WG, "34", "Spindle/PWM/Off", DEFAULT_SPINDLE_OFF_VALUE, 0.0, 100.0); // these are percentages
|
new FloatSetting(EXTENDED, WG, "34", "Spindle/PWM/Off", DEFAULT_SPINDLE_OFF_VALUE, 0.0, 100.0); // these are percentages
|
||||||
// IntSetting spindle_pwm_bit_precision(EXTENDED, WG, "Spindle/PWM/Precision", DEFAULT_SPINDLE_BIT_PRECISION, 1, 16);
|
// IntSetting spindle_pwm_bit_precision(EXTENDED, WG, "Spindle/PWM/Precision", DEFAULT_SPINDLE_BIT_PRECISION, 1, 16);
|
||||||
spindle_pwm_freq = new FloatSetting(EXTENDED, WG, "33", "Spindle/PWM/Frequency", DEFAULT_SPINDLE_FREQ, 0, 100000);
|
spindle_pwm_freq = new FloatSetting(EXTENDED, WG, "33", "Spindle/PWM/Frequency", DEFAULT_SPINDLE_FREQ, 0, 100000);
|
||||||
|
|
||||||
spindle_delay_spinup = new FloatSetting(EXTENDED, WG, NULL, "Spindle/Delay/SpinUp", DEFAULT_SPINDLE_DELAY_SPINUP, 0, 30);
|
spindle_delay_spinup = new FloatSetting(EXTENDED, WG, NULL, "Spindle/Delay/SpinUp", DEFAULT_SPINDLE_DELAY_SPINUP, 0, 30);
|
||||||
spindle_delay_spindown = new FloatSetting(EXTENDED, WG, NULL, "Spindle/Delay/SpinDown", DEFAULT_SPINDLE_DELAY_SPINUP, 0, 30);
|
spindle_delay_spindown = new FloatSetting(EXTENDED, WG, NULL, "Spindle/Delay/SpinDown", DEFAULT_SPINDLE_DELAY_SPINUP, 0, 30);
|
||||||
|
@@ -4,14 +4,8 @@ extern bool motorSettingChanged;
|
|||||||
|
|
||||||
extern FlagSetting* verbose_errors;
|
extern FlagSetting* verbose_errors;
|
||||||
|
|
||||||
extern FakeSetting<int>* number_axis;
|
extern IntSetting* 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 AxisSettings* axis_settings[];
|
||||||
|
|
||||||
extern StringSetting* startup_line_0;
|
extern StringSetting* startup_line_0;
|
||||||
|
Reference in New Issue
Block a user