grblHAL core  20251111
settings.h
Go to the documentation of this file.
1 /*
2  settings.h - non-volatile storage configuration handling
3 
4  Part of grblHAL
5 
6  Copyright (c) 2017-2025 Terje Io
7  Copyright (c) 2011-2016 Sungeun K. Jeon for Gnea Research LLC
8  Copyright (c) 2009-2011 Simen Svale Skogsrud
9 
10  grblHAL is free software: you can redistribute it and/or modify
11  it under the terms of the GNU General Public License as published by
12  the Free Software Foundation, either version 3 of the License, or
13  (at your option) any later version.
14 
15  grblHAL is distributed in the hope that it will be useful,
16  but WITHOUT ANY WARRANTY; without even the implied warranty of
17  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18  GNU General Public License for more details.
19 
20  You should have received a copy of the GNU General Public License
21  along with grblHAL. If not, see <http://www.gnu.org/licenses/>.
22 */
23 
24 #ifndef _SETTINGS_H_
25 #define _SETTINGS_H_
26 
27 #include "config.h"
28 #include "system.h"
29 #include "stream.h"
30 #include "plugins.h"
31 
32 // Version of the persistent storage data. Always stored in byte 0 of non-volatile storage.
33 #define SETTINGS_VERSION 23 // NOTE: Check settings_reset() when moving to next version.
34 
35 // Define axis settings numbering scheme. Starts at Setting_AxisSettingsBase, every INCREMENT, over N_SETTINGS.
36 #define AXIS_SETTINGS_INCREMENT 10 // Must be greater than the number of axis settings.
37 
38 // Define encoder settings numbering scheme. Starts at Setting_EncoderSettingsBase, every INCREMENT, over N_SETTINGS.
39 // Not referenced by the core.
40 #define ENCODER_N_SETTINGS_MAX 5 // NOTE: This is the maximum number of encoders allowed.
41 #define ENCODER_SETTINGS_INCREMENT 10
42 
43 #define SETTINGS_HARD_RESET_REQUIRED "\\n\\nNOTE: A hard reset of the controller is required after changing this setting."
44 
45 #define PASSWORD_MASK "********"
46 
47 typedef enum {
55  Setting_SpindlePWMBehaviour = 7, // Deprecated - replaced by Setting_SpindlePWMOptions flag
91 
99 // Optional driver implemented settings for jogging
106 //
111 
118 // Optional driver implemented settings for piecewise linear spindle PWM algorithm
123 //
124 
125 // Optional driver implemented settings for additional streams
136 //
137 
138 // Optional settings for closed loop spindle speed control
146 
147 // Optional settings for closed loop spindle synchronized motion
155 //
156 
157 // Reserving settings in the range 100 - 299 for axis settings.
158  Setting_AxisSettingsBase = 100, // Reserved for core settings
160  Setting_AxisSettingsBase2 = 200, // Reserved for driver/plugin settings
162 //
163 
164 // Optional driver implemented settings
165 
166  // Normally used for Ethernet
176 
177  // Normally used for WiFi Access Point
187 
188  // Normally used for WiFi Station
198 
206 
208 
211 
219 
223 
244 
275 
276  Setting_EncoderSettingsBase = 400, // NOTE: Reserving settings values >= 400 for encoder settings. Up to 449.
278 
279  // Reserved for user plugins - do NOT use for public plugins
290 
305 
310 
321 
333 
345 
356 
366 
371 
378 
379  Setting_Panel_SpindleSpeed = 540, // NOTE: Reserving settings values 540 to 579 for panel settings.
400 
412 
413  Setting_ModbusTCPBase = 600, // Reserving settings values 600 to 639 for ModBus TCP (8 sets)
418 
429 
431 
452 
465  // 683 - 689 - reserved for Sienci
466 
468 
470 
478 
479 // Optional driver implemented settings for piecewise linear spindle PWM algorithm
484 
489 
501 
513 
517 //
518 // 773-779 - reserved for spindle offset settings
519 //
520 
521 // Reserving settings in the range 800 - 899 for axis settings.
522  Setting_AxisSettingsBase1 = 800, // Reserved for driver/plugin settings
524 //
525 
526 //
527 // 900-999 - reserved for automatic tool changers (ATC)
528 //
529 
530 // ---
533 // ---
534 
535  // Calculated base values for core stepper settings
546 
548 
549  // Calculated base values for driver/plugin stepper settings
560 
561  // Calculated base values for encoder settings
567 
568 typedef union {
569  uint8_t mask;
570  struct {
571  uint8_t defaults :1,
577 
578  };
580 
581 extern const settings_restore_t settings_all;
582 
584 
585 typedef union {
586  uint32_t value;
587  struct {
588  uint32_t report_inches :1,
590  dst_active :1, // Daylight savings time
609  };
611 
612 typedef union {
613  uint16_t value;
614  struct {
615  uint16_t invert_probe_pin :1,
628  };
629 } probeflags_t;
630 
631 typedef union {
632  uint16_t mask;
633  struct {
634  uint16_t machine_position :1,
649  };
650 } reportmask_t;
651 
652 typedef union {
653  uint8_t value;
654  struct {
655  uint8_t ignore_when_idle :1,
658  };
660 
661 typedef struct {
662  safety_door_setting_flags_t flags; // TODO: move to last element in next revision
663  float spindle_on_delay; // TODO: change to uint16_t and move to parking_setting_flags_t in next revision
664  float coolant_on_delay; // TODO: change to uint16_t and move to parking_setting_flags_t in next revision
666 
667 typedef union {
668  uint8_t value;
669  struct {
670  uint8_t enabled :1,
674  };
676 
677 typedef struct {
679  uint8_t axis; // Define which axis that performs the parking motion
680  float target; // Parking axis target. In mm, as machine coordinate [-max_travel,0].
681  float rate; // Parking fast rate after pull-out in mm/min.
682  float pullout_rate; // Pull-out/plunge slow feed rate in mm/min.
683  float pullout_increment; // Spindle pull-out and plunge distance in mm. Incremental distance.
685 
686 typedef struct {
688 } position_pid_t; // Used for synchronized motion
689 
690 typedef union {
691  uint16_t value;
692  struct {
693  uint16_t enabled :1,
697  two_switches :1, // -> limits.flags.two_switches, never set
698  manual :1,
704  unused :5;
705  };
707 
708 typedef struct {
709  float fail_length_percent; // DEFAULT_DUAL_AXIS_HOMING_FAIL_AXIS_LENGTH_PERCENT
710  float fail_distance_max; // DEFAULT_DUAL_AXIS_HOMING_FAIL_DISTANCE_MAX
711  float fail_distance_min; // DEFAULT_DUAL_AXIS_HOMING_FAIL_DISTANCE_MIN
713 
714 typedef struct {
715  float pulloff;
717  uint16_t debounce_delay;
720  uint8_t locate_cycles;
723 
724 typedef struct {
727  axes_signals_t ganged_dir_invert; // applied after inversion for the master motor
730 #if N_AXIS > 3
731  axes_signals_t is_rotary; // rotary axes distances are not scaled in imperial mode
732  axes_signals_t rotary_wrap; // rotary axes that allows G28 wrap for faster move to home position
733 #endif
736  uint16_t idle_lock_time; // If value = 255, steppers do not disable.
738 
739 typedef struct {
741  float max_rate;
743  float max_travel;
747  float jerk;
748 #if ENABLE_BACKLASH_COMPENSATION
749  float backlash;
750 #endif
752 
753 typedef union {
754  uint8_t value;
755  struct {
756  uint8_t hard_enabled :1,
762  };
764 
765 typedef struct {
771 
772 typedef union {
773  uint8_t value;
774  uint8_t mask;
775  struct {
776  uint8_t sd_mount_on_boot :1,
778  unused :6;
779  };
780 } fs_options_t;
781 
782 typedef union {
783  uint8_t value;
784  uint8_t mask;
785  struct {
786  uint8_t g59_1 :1,
787  g59_2 :1,
788  g59_3 :1,
789  unused :5;
790  };
791 } offset_lock_t;
792 
793 typedef union {
794  uint32_t value;
795  uint32_t mask;
796  struct {
797  uint32_t bit0 :1,
798  bit1 :1,
799  bit2 :1,
800  bit3 :1,
801  bit4 :1,
802  bit5 :1,
803  bit6 :1,
804  bit7 :1,
805  bit8 :1,
806  bit9 :1,
807  bit10 :1,
808  bit11 :1,
809  bit12 :1,
810  bit13 :1,
811  bit14 :1,
812  bit15 :1,
813  bit16 :1,
814  bit17 :1,
815  bit18 :1,
816  bit19 :1,
817  bit20 :1,
818  bit21 :1,
819  bit22 :1,
820  bit23 :1;
821  };
822 } ioport_bus_t;
823 
824 typedef struct {
830 
831 typedef enum {
838 
839 typedef struct {
840  uint8_t length0;
841  uint8_t length1;
843 
844 typedef struct {
846  float feed_rate;
847  float seek_rate;
851 
852 typedef union {
853  uint8_t value;
854  struct {
855  uint8_t execute_m6t0 :1,
859  };
861 
862 typedef struct {
863  uint8_t baud_rate;
864  uint8_t stream_format;
865  uint8_t rx_timeout;
867 
868 typedef union {
869  uint32_t value;
870  struct {
871  uint32_t id :8; // = SETTINGS_VERSION, incremented on structure changes.
872  uint32_t build :24; // Build date, format YYMMDD.
873  };
875 
876 // Global persistent settings (Stored from byte NVS_ADDR_GLOBAL onwards)
877 typedef struct {
878  // Settings struct version
882  float g73_retract;
883  float timezone;
884  uint16_t report_interval;
893  uint8_t modbus_baud; // TODO: replace with modbus_rtu_settings_t modbus; in next version
894  uint8_t canbus_baud;
898  reportmask_t status_report; // Mask to indicate desired report data.
899  settingflags_t flags; // Contains default boolean settings
907  position_pid_t position; // Used for synchronized motion
916  uint16_t stepper_enable_delay; // Move to stepper_settings_t
918  serial_format_t modbus_stream_format; // TODO: remove in next version
919  char reserved[9]; // Reserved For future expansion
920 } settings_t;
921 
922 typedef enum {
966 // NOTE: axis groups MUST be sequential AND last
971 #ifdef A_AXIS
972  Group_AAxis,
973 #endif
974 #ifdef B_AXIS
975  Group_BAxis,
976 #endif
977 #ifdef C_AXIS
978  Group_CAxis,
979 #endif
980 #ifdef U_AXIS
981  Group_UAxis,
982 #endif
983 #ifdef V_AXIS
984  Group_VAxis,
985 #endif
989 
990 typedef enum {
996  Format_Integer, // 32 bit
1001  // For internal use only
1005 
1006 typedef struct setting_group_detail {
1009  const char *name;
1010  bool (*is_available)(const struct setting_group_detail *group);
1012 
1013 typedef enum {
1023 
1024 typedef union {
1025  uint32_t ivalue;
1026  float fvalue;
1027 } setting_limit_t;
1028 
1029 typedef union {
1030  uint8_t value;
1031  struct {
1032  uint8_t reboot_required :1,
1036  hidden :1;
1037  };
1039 
1040 typedef struct setting_detail {
1043  const char *name;
1044  const char *unit;
1046  const char *format;
1047  const char *min_value;
1048  const char *max_value;
1050  void *value;
1051  void *get_value;
1052  bool (*is_available)(const struct setting_detail *setting, uint_fast16_t offset);
1055 
1056 typedef struct {
1058  const char *description;
1059 } setting_descr_t;
1060 
1061 typedef union {
1062  uint8_t value;
1063  struct {
1064  uint8_t spindle :1,
1066  };
1068 
1069 typedef status_code_t (*setting_set_int_ptr)(setting_id_t id, uint_fast16_t value);
1072 typedef uint32_t (*setting_get_int_ptr)(setting_id_t id);
1074 typedef char *(*setting_get_string_ptr)(setting_id_t id);
1075 typedef bool (*setting_output_ptr)(const setting_detail_t *setting, uint_fast16_t offset, void *data);
1076 
1077 typedef void (*setting_changed_ptr)(setting_id_t id);
1078 
1084 
1085 typedef void (*driver_settings_load_ptr)(void);
1086 typedef void (*driver_settings_save_ptr)(void);
1087 typedef void (*driver_settings_restore_ptr)(void);
1088 typedef bool (*driver_settings_iterator_ptr)(const setting_detail_t *setting, setting_output_ptr callback, void *data);
1090 
1091 typedef struct setting_details {
1092  const bool is_core;
1093  const uint8_t n_groups;
1095  const uint16_t n_settings;
1097  const uint16_t n_descriptions;
1099 // struct setting_details *(*on_get_settings)(void);
1108 
1109 // NOTE: this must match the signature of on_get_settings in the setting_details_t structure above!
1110 typedef setting_details_t *(*on_get_settings_ptr)(void);
1111 
1112 extern settings_t settings;
1113 
1114 // Clear settings chain (unlinks plugin/driver settings from core settings)
1115 void settings_clear (void);
1116 
1117 // Initialize the configuration subsystem (load settings from persistent storage)
1118 void settings_init();
1119 
1120 // Write grblHAL global settings and version number to persistent storage
1121 void settings_write_global(void);
1122 
1123 // Helper function to clear and restore persistent storage defaults
1124 void settings_restore(settings_restore_t restore_flags);
1125 
1126 // A helper method to set new settings from command line
1127 status_code_t settings_store_setting(setting_id_t setting, char *svalue);
1128 
1129 // Writes the protocol line variable as a startup line in persistent storage
1130 void settings_write_startup_line(uint8_t idx, char *line);
1131 
1132 // Reads an persistent storage startup line to the protocol line variable
1133 bool settings_read_startup_line(uint8_t idx, char *line);
1134 
1135 // Writes build info user-defined string
1136 void settings_write_build_info(char *line);
1137 
1138 // Reads build info user-defined string
1139 bool settings_read_build_info(char *line);
1140 
1141 // Writes selected coordinate data to persistent storage
1142 void settings_write_coord_data(coord_system_id_t id, const float (*coord_data)[N_AXIS]);
1143 
1144 // Reads selected coordinate data from persistent storage
1145 bool settings_read_coord_data(coord_system_id_t id, const float (*coord_data)[N_AXIS]);
1146 
1147 // Temporarily override acceleration, if 0 restore to configured setting value
1148 bool settings_override_acceleration (uint8_t axis, float acceleration);
1149 
1150 #if ENABLE_JERK_ACCELERATION
1151 // Temporarily override jerk, if 0 restore to configured setting value.
1152 bool settings_override_jerk (uint8_t axis, float jerk);
1153 #endif
1154 
1155 void settings_register (setting_details_t *details);
1158 bool settings_iterator (const setting_detail_t *setting, setting_output_ptr callback, void *data);
1160 const char *setting_get_description (setting_id_t id);
1164 char *setting_get_value (const setting_detail_t *setting, uint_fast16_t offset);
1165 uint32_t setting_get_int_value (const setting_detail_t *setting, uint_fast16_t offset);
1166 float setting_get_float_value (const setting_detail_t *setting, uint_fast16_t offset);
1167 setting_id_t settings_get_axis_base (setting_id_t id, uint_fast8_t *idx);
1168 bool setting_is_list (const setting_detail_t *setting);
1169 bool setting_is_integer (const setting_detail_t *setting);
1170 void setting_remove_elements (setting_id_t id, uint32_t mask);
1171 bool settings_add_spindle_type (const char *type);
1173 
1174 #endif
This file contains compile-time and run-time configurations for grblHAL's internal system....
#define N_AXIS
Defines number of axes supported - minimum 3, maximum 8. If more than 3 axes are configured a complia...
Definition: config.h:42
status_code_t
Definition: errors.h:30
int32_t tool_id_t
Definition: gcode.h:34
coord_system_id_t
Definition: gcode.h:162
#define MAX_STORED_LINE_LENGTH
Definition: grbl.h:254
@ Setting_EncoderCPR
Count Per Revolution.
Definition: plugins.h:175
@ Setting_EncoderCPD
Count Per Detent.
Definition: plugins.h:176
@ Setting_EncoderMode
Definition: plugins.h:174
@ Setting_EncoderDblClickWindow
Definition: plugins.h:177
@ Setting_ModbusId
Definition: plugins.h:147
@ Setting_ModbusPort
Definition: plugins.h:146
@ Setting_ModbusIpAddress
Definition: plugins.h:145
float acceleration[N_AXIS]
Definition: settings.c:477
void settings_write_build_info(char *line)
Definition: settings.c:2424
void(* driver_settings_restore_ptr)(void)
Definition: settings.h:1087
toolchange_mode_t
Definition: settings.h:831
@ ToolChange_Ignore
Definition: settings.h:836
@ ToolChange_Manual
Definition: settings.h:833
@ ToolChange_SemiAutomatic
Definition: settings.h:835
@ ToolChange_Manual_G59_3
Definition: settings.h:834
@ ToolChange_Disabled
Definition: settings.h:832
void settings_clear(void)
Definition: settings.c:3394
void setting_remove_elements(setting_id_t id, uint32_t mask)
Definition: settings.c:3089
void(* setting_changed_ptr)(setting_id_t id)
Definition: settings.h:1077
bool settings_override_acceleration(uint8_t axis, float acceleration)
Definition: settings.c:513
char * setting_get_value(const setting_detail_t *setting, uint_fast16_t offset)
Definition: settings.c:1698
status_code_t(* setting_set_float_ptr)(setting_id_t id, float value)
Definition: settings.h:1070
bool settings_add_spindle_type(const char *type)
Definition: settings.c:3363
const char * setting_get_description(setting_id_t id)
Definition: settings.c:2903
status_code_t(* setting_set_int_ptr)(setting_id_t id, uint_fast16_t value)
Definition: settings.h:1069
struct setting_details setting_details_t
settings_t settings
Definition: settings.c:46
bool settings_read_startup_line(uint8_t idx, char *line)
Definition: settings.c:2454
void settings_register(setting_details_t *details)
Definition: settings.c:2410
status_code_t settings_store_setting(setting_id_t setting, char *svalue)
Definition: settings.c:3239
struct setting_detail setting_detail_t
void settings_write_coord_data(coord_system_id_t id, const float(*coord_data)[N_AXIS])
Definition: settings.c:2468
void settings_write_global(void)
Definition: settings.c:2652
const setting_detail_t * setting_get_details(setting_id_t id, setting_details_t **set)
Definition: settings.c:2872
bool(* driver_settings_iterator_ptr)(const setting_detail_t *setting, setting_output_ptr callback, void *data)
Definition: settings.h:1088
setting_datatype_t
Definition: settings.h:990
@ Format_XBitfield
Definition: settings.h:993
@ Format_RadioButtons
Definition: settings.h:994
@ Format_Decimal
Definition: settings.h:997
@ Format_Password
Definition: settings.h:999
@ Format_IPv4
Definition: settings.h:1000
@ Format_AxisMask
Definition: settings.h:995
@ Format_Int16
Definition: settings.h:1003
@ Format_Int8
Definition: settings.h:1002
@ Format_String
Definition: settings.h:998
@ Format_Integer
Definition: settings.h:996
@ Format_Bitfield
Definition: settings.h:992
@ Format_Bool
Definition: settings.h:991
status_code_t(* setting_set_string_ptr)(setting_id_t id, char *value)
Definition: settings.h:1071
bool settings_iterator(const setting_detail_t *setting, setting_output_ptr callback, void *data)
Definition: settings.c:2814
float(* setting_get_float_ptr)(setting_id_t id)
Definition: settings.h:1073
bool(* setting_output_ptr)(const setting_detail_t *setting, uint_fast16_t offset, void *data)
Definition: settings.h:1075
char stored_line_t[MAX_STORED_LINE_LENGTH]
Definition: settings.h:583
void(* driver_settings_save_ptr)(void)
Definition: settings.h:1086
setting_details_t * settings_get_details(void)
Definition: settings.c:2416
void settings_init()
Definition: settings.c:3401
setting_id_t(* driver_settings_normalize_ptr)(setting_id_t id)
Definition: settings.h:1089
setting_datatype_t setting_datatype_to_external(setting_datatype_t datatype)
Definition: settings.c:3030
uint32_t(* setting_get_int_ptr)(setting_id_t id)
Definition: settings.h:1072
bool setting_is_list(const setting_detail_t *setting)
Definition: settings.c:3046
bool setting_is_integer(const setting_detail_t *setting)
Definition: settings.c:3051
const setting_group_detail_t * setting_get_group_details(setting_group_t id)
Definition: settings.c:2932
setting_id_t settings_get_axis_base(setting_id_t id, uint_fast8_t *idx)
Definition: settings.c:1255
setting_id_t
Definition: settings.h:47
@ Setting_Panel_JogDistance_Keypad
Definition: settings.h:389
@ Setting_THC_DGain
Definition: settings.h:229
@ Setting_MacroPort1
Definition: settings.h:336
@ Setting_PositionDMaxError
Definition: settings.h:154
@ Setting_Panel_Encoder2_Cpd
Definition: settings.h:396
@ Setting_TelnetPort3
Definition: settings.h:194
@ Setting_Arc_VoltagePort
Definition: settings.h:240
@ Setting_LinearSpindle1Piece3
Definition: settings.h:482
@ Setting_MacroPort4
Definition: settings.h:339
@ Setting_GangedDirInvertMask
Definition: settings.h:56
@ Setting_HomingCycle_4
Definition: settings.h:96
@ Setting_LinearSpindlePiece3
Definition: settings.h:121
@ Setting_Kinematics1
Definition: settings.h:420
@ Setting_Stepper20
Definition: settings.h:451
@ Setting_Stepper8
Definition: settings.h:439
@ Setting_Spindle_DirPort
Definition: settings.h:319
@ Setting_HomingCycle_1
Definition: settings.h:93
@ Setting_TrinamicDriver
Definition: settings.h:209
@ Setting_PositionMaxError
Definition: settings.h:152
@ Setting_JogStepSpeed
Definition: settings.h:100
@ Setting_VFD_16
Definition: settings.h:299
@ Setting_OffsetLock
Definition: settings.h:317
@ Setting_RGB_StripLengt1
Definition: settings.h:375
@ Setting_NetMask2
Definition: settings.h:182
@ Setting_TelnetPort2
Definition: settings.h:183
@ Setting_Stepper15
Definition: settings.h:446
@ Setting_ParkingTarget
Definition: settings.h:109
@ Setting_SpindlePWMBehaviour
Definition: settings.h:55
@ Setting_IpMode2
Definition: settings.h:179
@ Setting_SpindleIMaxError
Definition: settings.h:144
@ Setting_Stepper3
Definition: settings.h:434
@ Setting_ModbusTCPBase
Definition: settings.h:413
@ Setting_NTPServerURI_2
Definition: settings.h:202
@ Setting_ParkingFastRate
Definition: settings.h:110
@ Setting_RelayPortProbe2
Definition: settings.h:461
@ Setting_UserDefined_7
Definition: settings.h:287
@ Setting_SpindleOffsetX
Definition: settings.h:514
@ Setting_RestoreOverrides
Definition: settings.h:112
@ Setting_NetworkServices
Definition: settings.h:126
@ Setting_PositionIGain
Definition: settings.h:149
@ Setting_MQTTBrokerPort
Definition: settings.h:368
@ Setting_DualAxisLengthFailMax
Definition: settings.h:222
@ Setting_Macro4
Definition: settings.h:327
@ Setting_Reserved672
Definition: settings.h:454
@ Setting_FanPort2
Definition: settings.h:263
@ Setting_Action8
Definition: settings.h:499
@ Setting_PWMMaxValue1
Definition: settings.h:477
@ Setting_Panel_SettingsMax
Definition: settings.h:399
@ Setting_PWMMinValue1
Definition: settings.h:476
@ Setting_SettingsAll
Definition: settings.h:532
@ Setting_SpindleEnable6
Definition: settings.h:353
@ Setting_RelayPortToolsetter
Definition: settings.h:460
@ Setting_ButtonAction1
Definition: settings.h:403
@ Setting_SpindleOnDelay
Definition: settings.h:269
@ Setting_IpAddress3
Definition: settings.h:191
@ Setting_StepperEnableDelay
Definition: settings.h:462
@ Setting_JogSoftLimited
Definition: settings.h:88
@ Setting_AxisHomingFeedRate
Definition: settings.h:544
@ Setting_ParkingPulloutIncrement
Definition: settings.h:107
@ Setting_UserDefined_1
Definition: settings.h:281
@ Setting_EncoderSettingsBase
Definition: settings.h:276
@ Setting_VFD_18
Definition: settings.h:301
@ Setting_SpindleType
Definition: settings.h:270
@ Setting_THC_Threshold
Definition: settings.h:226
@ Setting_ActionPort1
Definition: settings.h:504
@ Setting_Panel_JogDistance_x10
Definition: settings.h:387
@ Setting_Panel_JogDistance_x100
Definition: settings.h:388
@ Setting_ButtonAction0
Definition: settings.h:401
@ Setting_Macro9
Definition: settings.h:332
@ Setting_NetMask
Definition: settings.h:171
@ Setting_UserDefined_5
Definition: settings.h:285
@ Setting_ToolChangeProbingDistance
Definition: settings.h:214
@ Setting_Gateway2
Definition: settings.h:181
@ Setting_EncoderCPDBase
Definition: settings.h:564
@ Setting_Panel_Encoder0_Mode
Definition: settings.h:391
@ Setting_Action2
Definition: settings.h:493
@ Setting_Kinematics6
Definition: settings.h:425
@ Setting_EncoderSpindle
Definition: settings.h:355
@ Setting_LinearSpindlePiece1
Definition: settings.h:119
@ Setting_TrinamicHoming
Definition: settings.h:210
@ Setting_PositionPGain
Definition: settings.h:148
@ Settings_IoPort_Pullup_Disable
Definition: settings.h:246
@ Setting_InvertStepperEnable
Definition: settings.h:52
@ Setting_AdminPassword
Definition: settings.h:199
@ Setting_CANbus_BaudRate
Definition: settings.h:274
@ Setting_NTPServerURI_3
Definition: settings.h:203
@ Setting_SpindleToolStart5
Definition: settings.h:363
@ Setting_InvertProbePin
Definition: settings.h:54
@ Setting_PWMOffValue1
Definition: settings.h:475
@ Setting_BlueToothStateInput
Definition: settings.h:260
@ Setting_SpindleEnable7
Definition: settings.h:354
@ Setting_SpindleToolStart3
Definition: settings.h:361
@ Setting_CoolantOnDelay
Definition: settings.h:455
@ Setting_CoolantInvertMask
Definition: settings.h:63
@ Setting_Stepper19
Definition: settings.h:450
@ Setting_IpMode3
Definition: settings.h:190
@ Setting_VFD_10
Definition: settings.h:293
@ Setting_Mode
Definition: settings.h:80
@ Setting_Macro1
Definition: settings.h:324
@ Setting_Spindle_OnPort
Definition: settings.h:318
@ Setting_LaserCoolantMaxTemp
Definition: settings.h:256
@ Setting_DirInvertMask
Definition: settings.h:51
@ Setting_WifiMode
Definition: settings.h:129
@ Settings_ModBus_BaudRate
Definition: settings.h:249
@ Setting_Panel_JogDistance_x1
Definition: settings.h:386
@ Setting_VFD_ModbusAddress1
Definition: settings.h:307
@ Setting_WiFi_STA_SSID
Definition: settings.h:130
@ Settings_IoPort_InvertOut
Definition: settings.h:247
@ Setting_RGB_StripLengt0
Definition: settings.h:374
@ Setting_AxisExtended3
Definition: settings.h:553
@ Setting_LimitPullUpDisableMask
Definition: settings.h:66
@ Setting_Stepper17
Definition: settings.h:448
@ Setting_UserDefined_0
Definition: settings.h:280
@ Setting_Stepper13
Definition: settings.h:444
@ Setting_HomingDirMask
Definition: settings.h:71
@ Setting_ForceInitAlarm
Definition: settings.h:116
@ Setting_EncoderModeBase
Definition: settings.h:562
@ Setting_ArcTolerance
Definition: settings.h:60
@ Setting_ParkingAxis
Definition: settings.h:90
@ Setting_EnableLegacyRTCommands
Definition: settings.h:87
@ Setting_Action3
Definition: settings.h:494
@ Setting_Macro8
Definition: settings.h:331
@ Setting_AutoReportInterval
Definition: settings.h:312
@ Setting_Panel_JogSpeed_Keypad
Definition: settings.h:385
@ Setting_HomingCycle_3
Definition: settings.h:95
@ Setting_MacroPort2
Definition: settings.h:337
@ Setting_AxisAcceleration
Definition: settings.h:538
@ Setting_AxisSettingsBase2
Definition: settings.h:160
@ Setting_Spindle_PWMPort
Definition: settings.h:320
@ Setting_SpindleEnable1
Definition: settings.h:348
@ Setting_MacroPort7
Definition: settings.h:342
@ Setting_PlannerBlocks
Definition: settings.h:273
@ Setting_SpindleToolStart1
Definition: settings.h:359
@ Setting_LimitPinsInvertMask
Definition: settings.h:53
@ Setting_VFD_14
Definition: settings.h:297
@ Setting_Panel_ModbusAddress
Definition: settings.h:380
@ Setting_VFD_ModbusAddress2
Definition: settings.h:308
@ Setting_MotorWarningsInvert
Definition: settings.h:486
@ Setting_THC_VADThreshold
Definition: settings.h:230
@ Setting_MQTTBrokerUserName
Definition: settings.h:369
@ Setting_ActionPort9
Definition: settings.h:512
@ Setting_ModbusPortBase
Definition: settings.h:415
@ Setting_SpindleEnable4
Definition: settings.h:351
@ Setting_SpindleToolStart2
Definition: settings.h:360
@ Setting_VFD_17
Definition: settings.h:300
@ Setting_JogFastDistance
Definition: settings.h:105
@ Setting_Kinematics8
Definition: settings.h:427
@ Setting_ButtonAction7
Definition: settings.h:409
@ Setting_Macro3
Definition: settings.h:326
@ Setting_ButtonAction5
Definition: settings.h:407
@ Setting_PWMMaxValue
Definition: settings.h:84
@ Setting_AxisJerk
Definition: settings.h:547
@ Setting_EncoderCPRBase
Definition: settings.h:563
@ Setting_AxisBacklash
Definition: settings.h:542
@ Setting_VFD_ModbusAddress3
Definition: settings.h:309
@ Setting_LaserCoolantOffDelay
Definition: settings.h:254
@ Setting_LinearSpindle1Piece4
Definition: settings.h:483
@ Setting_ActionPort4
Definition: settings.h:507
@ Setting_StepperSpindle_Options
Definition: settings.h:459
@ Setting_SpindleDeadband
Definition: settings.h:142
@ Setting_ModbusTCPMax
Definition: settings.h:417
@ Setting_FanPort0
Definition: settings.h:261
@ Setting_AxisExtended6
Definition: settings.h:556
@ Setting_FanPort1
Definition: settings.h:262
@ Setting_AxisSettingsBase
Definition: settings.h:158
@ Setting_SettingsMax
Definition: settings.h:531
@ Setting_JunctionDeviation
Definition: settings.h:59
@ Setting_Gateway3
Definition: settings.h:192
@ Setting_VFD_ModbusAddress
Definition: settings.h:291
@ Setting_Arc_FailTimeout
Definition: settings.h:232
@ Setting_SpindleOffsetY
Definition: settings.h:515
@ Setting_TimeZoneOffset
Definition: settings.h:313
@ Setting_AxisExtended8
Definition: settings.h:558
@ Setting_Arc_OkLowVoltage
Definition: settings.h:239
@ Setting_THC_Mode
Definition: settings.h:224
@ Setting_HomingCycle_2
Definition: settings.h:94
@ Setting_ActionPort2
Definition: settings.h:505
@ Setting_MotorFaultsEnable
Definition: settings.h:487
@ Setting_NetworkMAC
Definition: settings.h:373
@ Setting_MacroPortBase
Definition: settings.h:335
@ Setting_Arc_RetryDelay
Definition: settings.h:233
@ Setting_ResetActions
Definition: settings.h:458
@ Setting_ModBus_StreamFormat
Definition: settings.h:463
@ Setting_Panel_Encoder3_Mode
Definition: settings.h:397
@ Setting_Wifi_AP_BSSID
Definition: settings.h:207
@ Setting_MacroBase
Definition: settings.h:323
@ Setting_SoftLimitsEnable
Definition: settings.h:68
@ Setting_AxisAutoSquareOffset
Definition: settings.h:543
@ Setting_Arc_OkPort
Definition: settings.h:241
@ Setting_AxisExtended9
Definition: settings.h:559
@ Setting_Panel_JogSpeed_x100
Definition: settings.h:384
@ Setting_SpindlePGain
Definition: settings.h:139
@ Setting_ToolChangePulloffRate
Definition: settings.h:217
@ Setting_THC_FeedFactor
Definition: settings.h:464
@ Setting_HomingFeedRate
Definition: settings.h:72
@ Setting_BlueToothDeviceName
Definition: settings.h:127
@ Setting_PWMMinValue
Definition: settings.h:83
@ Setting_THC_PGain
Definition: settings.h:227
@ Setting_LaserCoolantGain
Definition: settings.h:258
@ Setting_AxisExtended2
Definition: settings.h:552
@ Setting_AxisHomingSeekRate
Definition: settings.h:545
@ Setting_ProbingFlags
Definition: settings.h:117
@ Setting_EncoderDblClickWindowBase
Definition: settings.h:565
@ Setting_MotorFaultsInvert
Definition: settings.h:488
@ Setting_Kinematics9
Definition: settings.h:428
@ Setting_SpindleIGain
Definition: settings.h:140
@ Setting_Action0
Definition: settings.h:490
@ Setting_ButtonAction4
Definition: settings.h:406
@ Setting_WebSocketPort
Definition: settings.h:174
@ Setting_SpindleInvertMask
Definition: settings.h:64
@ Setting_FtpPort3
Definition: settings.h:197
@ Setting_Kinematics4
Definition: settings.h:423
@ Setting_Kinematics2
Definition: settings.h:421
@ Setting_ActionPort0
Definition: settings.h:502
@ Setting_UserDefined_6
Definition: settings.h:286
@ Setting_Action9
Definition: settings.h:500
@ Setting_THC_IGain
Definition: settings.h:228
@ Setting_Stepper1
Definition: settings.h:432
@ Setting_MQTTBrokerPassword
Definition: settings.h:370
@ Setting_Panel_Encoder2_Mode
Definition: settings.h:395
@ Setting_Hostname
Definition: settings.h:167
@ Setting_HoldActions
Definition: settings.h:115
@ Setting_HomingPulloff
Definition: settings.h:75
@ Setting_PositionDeadband
Definition: settings.h:151
@ Setting_UserPassword
Definition: settings.h:200
@ Setting_RpmMax
Definition: settings.h:78
@ Setting_RpmMin
Definition: settings.h:79
@ Setting_JogStepDistance
Definition: settings.h:103
@ Setting_Hostname3
Definition: settings.h:189
@ Setting_SpindleToolStart4
Definition: settings.h:362
@ Setting_DisableG92Persistence
Definition: settings.h:259
@ Setting_Stepper18
Definition: settings.h:449
@ Setting_HttpPort3
Definition: settings.h:195
@ Setting_ReportInches
Definition: settings.h:61
@ Setting_Macro0
Definition: settings.h:322
@ Setting_Macro6
Definition: settings.h:329
@ Setting_MacroPort9
Definition: settings.h:344
@ Setting_AxisExtended0
Definition: settings.h:550
@ Setting_Macro7
Definition: settings.h:330
@ Setting_JogFastSpeed
Definition: settings.h:102
@ Setting_Stepper16
Definition: settings.h:447
@ Setting_SpindleToolStartBase
Definition: settings.h:358
@ Setting_ActionPort7
Definition: settings.h:510
@ Setting_JogSlowSpeed
Definition: settings.h:101
@ Setting_Stepper12
Definition: settings.h:443
@ Setting_AxisExtended1
Definition: settings.h:551
@ Setting_ActionPort8
Definition: settings.h:511
@ Setting_WiFi_AP_Password
Definition: settings.h:133
@ Setting_Panel_JogAccelRamp
Definition: settings.h:390
@ Setting_ModbusIdBase
Definition: settings.h:416
@ Setting_Stepper5
Definition: settings.h:436
@ Setting_Panel_UpdateInterval
Definition: settings.h:381
@ Setting_IpAddress
Definition: settings.h:169
@ Setting_Stepper7
Definition: settings.h:438
@ Setting_WebSocketPort2
Definition: settings.h:185
@ Setting_SpindleOffsetOptions
Definition: settings.h:516
@ Setting_MacroPort3
Definition: settings.h:338
@ Setting_StatusReportMask
Definition: settings.h:58
@ Setting_Mode1
Definition: settings.h:473
@ Setting_ButtonAction2
Definition: settings.h:404
@ Setting_SpindleToolStart0
Definition: settings.h:357
@ Setting_RpmMax1
Definition: settings.h:471
@ Setting_WiFi_AP_SSID
Definition: settings.h:132
@ Setting_SleepEnable
Definition: settings.h:114
@ Setting_SpindleInvertMask1
Definition: settings.h:469
@ Setting_Arc_HeightPerVolt
Definition: settings.h:237
@ Setting_VFD_15
Definition: settings.h:298
@ Setting_SpindlePWMOptions1
Definition: settings.h:467
@ Setting_SpindleToolStart6
Definition: settings.h:364
@ Setting_LaserCoolantOkPort
Definition: settings.h:266
@ Setting_Panel_Encoder1_Mode
Definition: settings.h:393
@ Setting_ButtonAction8
Definition: settings.h:410
@ Setting_Macro2
Definition: settings.h:325
@ Setting_ToolChangeSeekRate
Definition: settings.h:216
@ Setting_Stepper4
Definition: settings.h:435
@ Setting_HomePinsInvertMask
Definition: settings.h:453
@ Setting_MacroPort5
Definition: settings.h:340
@ Setting_ButtonAction6
Definition: settings.h:408
@ Setting_SpindleEnable3
Definition: settings.h:350
@ Setting_VFD_13
Definition: settings.h:296
@ Setting_VFD_19
Definition: settings.h:302
@ Setting_ActionPort3
Definition: settings.h:506
@ Setting_UserDefined_2
Definition: settings.h:282
@ Setting_Stepper2
Definition: settings.h:433
@ Setting_LinearSpindlePiece4
Definition: settings.h:122
@ Setting_MacroATC_Options
Definition: settings.h:457
@ Setting_HomingSeekRate
Definition: settings.h:73
@ Setting_Wifi_AP_Channel
Definition: settings.h:135
@ Setting_DoorSpindleOnDelay
Definition: settings.h:267
@ Setting_ButtonActionBase
Definition: settings.h:402
@ Setting_FanToSpindleLink
Definition: settings.h:314
@ Setting_Wifi_AP_Country
Definition: settings.h:134
@ Setting_AxisExtended7
Definition: settings.h:557
@ Setting_PositionDGain
Definition: settings.h:150
@ Setting_LaserCoolantMinTemp
Definition: settings.h:255
@ Settings_RotaryAxes
Definition: settings.h:251
@ Setting_SpindlePPR
Definition: settings.h:86
@ Setting_Kinematics5
Definition: settings.h:424
@ Setting_Panel_JogSpeed_x10
Definition: settings.h:383
@ Setting_LaserCoolantTempPort
Definition: settings.h:265
@ Setting_HomingCycle_5
Definition: settings.h:97
@ Setting_DSTActive
Definition: settings.h:205
@ Setting_AxisStepsPerMM
Definition: settings.h:536
@ Setting_AxisMaxRate
Definition: settings.h:537
@ Setting_DoorCoolantOnDelay
Definition: settings.h:268
@ Setting_SpindleEnable0
Definition: settings.h:346
@ Setting_WiFi_STA_Password
Definition: settings.h:131
@ Setting_Macro5
Definition: settings.h:328
@ Setting_SpindlePWMOptions
Definition: settings.h:57
@ Setting_ActionPort5
Definition: settings.h:508
@ Setting_FanPort3
Definition: settings.h:264
@ Setting_THC_CutterDownPort
Definition: settings.h:242
@ Setting_THC_Delay
Definition: settings.h:225
@ Setting_HomingLocateCycles
Definition: settings.h:92
@ Setting_ActionPort6
Definition: settings.h:509
@ Setting_UnlockAfterEStop
Definition: settings.h:315
@ Setting_Fan0OffDelay
Definition: settings.h:311
@ Setting_PWMFreq
Definition: settings.h:81
@ Setting_Stepper11
Definition: settings.h:442
@ Setting_LaserCoolantOffset
Definition: settings.h:257
@ Setting_UserDefined_3
Definition: settings.h:283
@ Setting_NTPServerURI
Definition: settings.h:201
@ Setting_Stepper10
Definition: settings.h:441
@ Setting_ControlPullUpDisableMask
Definition: settings.h:65
@ Setting_BlueToothServiceName
Definition: settings.h:128
@ Setting_WebSocketPort3
Definition: settings.h:196
@ Setting_Panel_SpindleSpeed
Definition: settings.h:379
@ Setting_AxisSettingsMax1
Definition: settings.h:523
@ Setting_MacroPort0
Definition: settings.h:334
@ Setting_FtpPort
Definition: settings.h:175
@ Settings_IoPort_InvertIn
Definition: settings.h:245
@ Setting_ProbePullUpDisable
Definition: settings.h:67
@ Setting_AxisExtended5
Definition: settings.h:555
@ Setting_Panel_Encoder1_Cpd
Definition: settings.h:394
@ Setting_Action1
Definition: settings.h:492
@ Setting_AxisStepperCurrent
Definition: settings.h:540
@ Setting_SpindleOffDelay
Definition: settings.h:377
@ Setting_Arc_VoltageScale
Definition: settings.h:235
@ Setting_SpindleAtSpeedTolerance
Definition: settings.h:212
@ Setting_MotorWarningsEnable
Definition: settings.h:485
@ Setting_ToolChangeOptions
Definition: settings.h:218
@ Setting_LinearSpindle1Piece1
Definition: settings.h:480
@ Setting_ParkingEnable
Definition: settings.h:89
@ Setting_EncoderSettingsMax
Definition: settings.h:277
@ Setting_VFD_12
Definition: settings.h:295
@ Setting_THC_Options
Definition: settings.h:456
@ Setting_PWMOffValue
Definition: settings.h:82
@ Setting_VFD_ModbusAddress0
Definition: settings.h:306
@ Setting_Arc_OkHighVoltage
Definition: settings.h:238
@ Setting_Action6
Definition: settings.h:497
@ Setting_PulseDelayMicroseconds
Definition: settings.h:77
@ Setting_Panel_JogSpeed_x1
Definition: settings.h:382
@ Setting_HomingEnable
Definition: settings.h:70
@ Setting_HomingDebounceDelay
Definition: settings.h:74
@ Setting_THC_CutterUpPort
Definition: settings.h:243
@ Setting_Timezone
Definition: settings.h:204
@ Setting_Hostname2
Definition: settings.h:178
@ Setting_Kinematics7
Definition: settings.h:426
@ Setting_LaserCoolantOnDelay
Definition: settings.h:253
@ Setting_DoorOptions
Definition: settings.h:113
@ Setting_JogSlowDistance
Definition: settings.h:104
@ Setting_SpindleEnableBase
Definition: settings.h:347
@ Setting_UserDefined_8
Definition: settings.h:288
@ Setting_SpindleMaxError
Definition: settings.h:143
@ Setting_HttpPort2
Definition: settings.h:184
@ Setting_FSOptions
Definition: settings.h:430
@ Setting_Kinematics3
Definition: settings.h:422
@ Setting_SpindleDGain
Definition: settings.h:141
@ Setting_ModbusIpAddressBase
Definition: settings.h:414
@ Setting_RpmMin1
Definition: settings.h:472
@ Setting_SpindleDMaxError
Definition: settings.h:145
@ Settings_IoPort_OD_Enable
Definition: settings.h:248
@ Setting_AxisSettingsBase1
Definition: settings.h:522
@ Setting_ToolChangeFeedRate
Definition: settings.h:215
@ Setting_IpAddress2
Definition: settings.h:180
@ Setting_PulseMicroseconds
Definition: settings.h:48
@ Setting_UserDefined_9
Definition: settings.h:289
@ Setting_ParkingPulloutRate
Definition: settings.h:108
@ Setting_PWMFreq1
Definition: settings.h:474
@ Setting_MacroPort6
Definition: settings.h:341
@ Setting_StepInvertMask
Definition: settings.h:50
@ Setting_VFD_20
Definition: settings.h:303
@ Setting_HttpPort
Definition: settings.h:173
@ Setting_Panel_Encoder3_Cpd
Definition: settings.h:398
@ Setting_VFD_RPM_Hz
Definition: settings.h:292
@ Setting_Stepper9
Definition: settings.h:440
@ Setting_Action4
Definition: settings.h:495
@ Setting_Arc_MaxRetries
Definition: settings.h:234
@ Setting_AxisSettingsMax
Definition: settings.h:159
@ Setting_Stepper6
Definition: settings.h:437
@ Setting_VFD_11
Definition: settings.h:294
@ Setting_SpindleEnable2
Definition: settings.h:349
@ Setting_RotaryWrap
Definition: settings.h:376
@ Settings_ModBus_RXTimeout
Definition: settings.h:250
@ Setting_Action5
Definition: settings.h:496
@ Setting_ButtonAction3
Definition: settings.h:405
@ Setting_UserDefined_4
Definition: settings.h:284
@ Setting_ActionPortBase
Definition: settings.h:503
@ Setting_Kinematics0
Definition: settings.h:419
@ Setting_PositionIMaxError
Definition: settings.h:153
@ Setting_FtpPort2
Definition: settings.h:186
@ Setting_SpindleToolStart7
Definition: settings.h:365
@ Setting_AxisMaxTravel
Definition: settings.h:539
@ Setting_Gateway
Definition: settings.h:170
@ Setting_Stepper14
Definition: settings.h:445
@ Setting_ToolChangeMode
Definition: settings.h:213
@ Setting_WebUiTimeout
Definition: settings.h:271
@ Setting_HomingCycle_6
Definition: settings.h:98
@ Setting_StepperIdleLockTime
Definition: settings.h:49
@ Setting_WebUiAutoReportInterval
Definition: settings.h:272
@ Setting_AxisExtended4
Definition: settings.h:554
@ Setting_G73Retract
Definition: settings.h:76
@ Setting_DualAxisLengthFailMin
Definition: settings.h:221
@ Setting_IpMode
Definition: settings.h:168
@ Setting_LinearSpindle1Piece2
Definition: settings.h:481
@ Setting_Action7
Definition: settings.h:498
@ Setting_THC_VoidOverride
Definition: settings.h:231
@ Setting_AxisMicroSteps
Definition: settings.h:541
@ Setting_ButtonAction9
Definition: settings.h:411
@ Setting_AxisSettingsMax2
Definition: settings.h:161
@ Setting_MQTTBrokerIpAddress
Definition: settings.h:367
@ Setting_VFD_21
Definition: settings.h:304
@ Setting_ActionBase
Definition: settings.h:491
@ Setting_ControlInvertMask
Definition: settings.h:62
@ Setting_TelnetPort
Definition: settings.h:172
@ Setting_SpindleEnable5
Definition: settings.h:352
@ Setting_EnableToolPersistence
Definition: settings.h:316
@ Setting_SteppersEnergize
Definition: settings.h:85
@ Setting_LinearSpindlePiece2
Definition: settings.h:120
@ Setting_Arc_VoltageOffset
Definition: settings.h:236
@ Setting_HardLimitsEnable
Definition: settings.h:69
@ Setting_Panel_Encoder0_Cpd
Definition: settings.h:392
@ Setting_MacroPort8
Definition: settings.h:343
@ Setting_NGCDebugOut
Definition: settings.h:372
@ Setting_BlueToothInitOK
Definition: settings.h:252
@ Setting_DualAxisLengthFailPercent
Definition: settings.h:220
@ Setting_NetMask3
Definition: settings.h:193
void settings_restore(settings_restore_t restore_flags)
Definition: settings.c:2678
bool settings_read_coord_data(coord_system_id_t id, const float(*coord_data)[N_AXIS])
Definition: settings.c:2484
#define AXIS_SETTINGS_INCREMENT
Definition: settings.h:36
limit_signals_t settings_get_homing_source(void)
uint32_t setting_get_int_value(const setting_detail_t *setting, uint_fast16_t offset)
Definition: settings.c:1780
float setting_get_float_value(const setting_detail_t *setting, uint_fast16_t offset)
Definition: settings.c:1836
void settings_write_startup_line(uint8_t idx, char *line)
Definition: settings.c:2441
bool settings_is_group_available(setting_group_t group)
Definition: settings.c:2754
const settings_restore_t settings_all
Definition: settings.c:50
setting_group_t settings_normalize_group(setting_group_t group)
Definition: settings.c:2809
void(* settings_changed_ptr)(settings_t *settings, settings_changed_flags_t changed)
Pointer to callback function to be called when settings are loaded or changed.
Definition: settings.h:1083
struct setting_group_detail setting_group_detail_t
bool settings_read_build_info(char *line)
Definition: settings.c:2431
void(* driver_settings_load_ptr)(void)
Definition: settings.h:1085
setting_group_t
Definition: settings.h:922
@ Group_Probing
12
Definition: settings.h:935
@ Group_Panel
40
Definition: settings.h:963
@ Group_General
1
Definition: settings.h:924
@ Group_All
0
Definition: settings.h:987
@ Group_Root
0
Definition: settings.h:923
@ Group_Stepper
35
Definition: settings.h:958
@ Group_UserSettings
34
Definition: settings.h:957
@ Group_ControlSignals
2
Definition: settings.h:925
@ Group_Embroidery
39
Definition: settings.h:962
@ Group_SafetyDoor
13
Definition: settings.h:936
@ Group_Spindle_ClosedLoop
8
Definition: settings.h:931
@ Group_VFD
37
Definition: settings.h:960
@ Group_Encoder4
33
Definition: settings.h:956
@ Group_ModBusUnit2
22
Definition: settings.h:945
@ Group_Encoder3
32
Definition: settings.h:955
@ Group_Encoder0
29
Definition: settings.h:952
@ Group_Plasma
10
Definition: settings.h:933
@ Group_Axis
42
Definition: settings.h:965
@ Group_Networking_Wifi
16
Definition: settings.h:939
@ Group_ModBusUnit1
21
Definition: settings.h:944
@ Group_Kinematics
41
Definition: settings.h:964
@ Group_Bluetooth
17
Definition: settings.h:940
@ Group_Axis0
43
Definition: settings.h:967
@ Group_ModBusUnit4
24
Definition: settings.h:947
@ Group_ModBusUnit3
23
Definition: settings.h:946
@ Group_ZAxis
46
Definition: settings.h:970
@ Group_ModBusUnit0
20
Definition: settings.h:943
@ Group_Homing
11
Definition: settings.h:934
@ Group_YAxis
45
Definition: settings.h:969
@ Group_Encoders
28
Definition: settings.h:951
@ Group_AuxPorts
18
Definition: settings.h:941
@ Group_Encoder1
30
Definition: settings.h:953
@ Group_CANbus
38
Definition: settings.h:961
@ Group_ModBusUnit6
26
Definition: settings.h:949
@ Group_Spindle_Sync
7
Definition: settings.h:930
@ Group_Limits_DualAxis
4
Definition: settings.h:927
@ Group_ModBus
19
Definition: settings.h:942
@ Group_XAxis
44
Definition: settings.h:968
@ Group_ModBusUnit5
25
Definition: settings.h:948
@ Group_Limits
3
Definition: settings.h:926
@ Group_Spindle
6
Definition: settings.h:929
@ Group_Toolchange
9
Definition: settings.h:932
@ Group_MotorDriver
36
Definition: settings.h:959
@ Group_Coolant
5
Definition: settings.h:928
@ Group_Networking
15
Definition: settings.h:938
@ Group_Encoder2
31
Definition: settings.h:954
@ Group_Jogging
14
Definition: settings.h:937
@ Group_Unknown
99
Definition: settings.h:986
@ Group_ModBusUnit7
27
Definition: settings.h:950
setting_type_t
Definition: settings.h:1013
@ Setting_IsExtended
Definition: settings.h:1016
@ Setting_IsExpanded
Definition: settings.h:1020
@ Setting_IsExtendedFn
Definition: settings.h:1017
@ Setting_IsLegacyFn
Definition: settings.h:1019
@ Setting_NonCoreFn
Definition: settings.h:1015
@ Setting_IsLegacy
Definition: settings.h:1018
@ Setting_IsExpandedFn
Definition: settings.h:1021
@ Setting_NonCore
Definition: settings.h:1014
Definition: settings.h:739
float max_rate
Definition: settings.h:741
float max_travel
Definition: settings.h:743
float homing_seek_rate
Definition: settings.h:745
float acceleration
Definition: settings.h:742
float dual_axis_offset
Definition: settings.h:744
float jerk
Definition: settings.h:747
float steps_per_mm
Definition: settings.h:740
float homing_feed_rate
Definition: settings.h:746
Definition: coolant_control.h:40
Definition: settings.h:708
float fail_length_percent
Definition: settings.h:709
float fail_distance_min
Definition: settings.h:711
float fail_distance_max
Definition: settings.h:710
Definition: settings.h:714
uint16_t debounce_delay
Definition: settings.h:717
float pulloff
Definition: settings.h:715
axes_signals_t dir_mask
Definition: settings.h:719
homing_settings_flags_t flags
Definition: settings.h:718
uint8_t locate_cycles
Definition: settings.h:720
homing_dual_axis_t dual_axis
Definition: settings.h:716
Definition: settings.h:824
ioport_bus_t invert_in
Definition: settings.h:825
ioport_bus_t pullup_disable_in
Definition: settings.h:826
ioport_bus_t od_enable_out
Definition: settings.h:828
ioport_bus_t invert_out
Definition: settings.h:827
Definition: settings.h:765
axes_signals_t soft_enabled
Definition: settings.h:769
axes_signals_t invert
Definition: settings.h:767
axes_signals_t disable_pullup
Definition: settings.h:768
limit_settings_flags_t flags
Definition: settings.h:766
Definition: settings.h:862
uint8_t stream_format
Definition: settings.h:864
uint8_t rx_timeout
Definition: settings.h:865
uint8_t baud_rate
Definition: settings.h:863
Definition: settings.h:677
float rate
Definition: settings.h:681
parking_setting_flags_t flags
Definition: settings.h:678
float pullout_rate
Definition: settings.h:682
float pullout_increment
Definition: settings.h:683
uint8_t axis
Definition: settings.h:679
float target
Definition: settings.h:680
Definition: pid.h:31
Definition: settings.h:686
pid_values_t pid
Definition: settings.h:687
Definition: settings.h:839
uint8_t length0
Definition: settings.h:840
uint8_t length1
Definition: settings.h:841
Definition: settings.h:661
float coolant_on_delay
Definition: settings.h:664
float spindle_on_delay
Definition: settings.h:663
safety_door_setting_flags_t flags
Definition: settings.h:662
Definition: settings.h:1056
setting_id_t id
Definition: settings.h:1057
const char * description
Definition: settings.h:1058
Definition: settings.h:1040
setting_id_t id
Definition: settings.h:1041
setting_detail_flags_t flags
Definition: settings.h:1053
void * value
Definition: settings.h:1050
setting_type_t type
Definition: settings.h:1049
bool(* is_available)(const struct setting_detail *setting, uint_fast16_t offset)
Definition: settings.h:1052
const char * format
Definition: settings.h:1046
const char * max_value
Definition: settings.h:1048
const char * name
Definition: settings.h:1043
setting_group_t group
Definition: settings.h:1042
setting_datatype_t datatype
Definition: settings.h:1045
const char * unit
Definition: settings.h:1044
void * get_value
Definition: settings.h:1051
const char * min_value
Definition: settings.h:1047
Definition: settings.h:1091
const setting_detail_t * settings
Definition: settings.h:1096
driver_settings_load_ptr load
Definition: settings.h:1103
const uint8_t n_groups
Definition: settings.h:1093
driver_settings_iterator_ptr iterator
Definition: settings.h:1105
driver_settings_restore_ptr restore
Definition: settings.h:1104
const uint16_t n_settings
Definition: settings.h:1095
driver_settings_save_ptr save
Definition: settings.h:1102
const setting_group_detail_t * groups
Definition: settings.h:1094
const uint16_t n_descriptions
Definition: settings.h:1097
struct setting_details * next
Definition: settings.h:1100
settings_changed_ptr on_changed
Definition: settings.h:1101
const setting_descr_t * descriptions
Definition: settings.h:1098
driver_settings_normalize_ptr normalize
Definition: settings.h:1106
const bool is_core
Definition: settings.h:1092
Definition: settings.h:1006
setting_group_t id
Definition: settings.h:1008
bool(* is_available)(const struct setting_group_detail *group)
Definition: settings.h:1010
const char * name
Definition: settings.h:1009
setting_group_t parent
Definition: settings.h:1007
Definition: settings.h:877
parking_settings_t parking
Definition: settings.h:905
float junction_deviation
Definition: settings.h:880
settingflags_t flags
Definition: settings.h:899
rgb_strip_settings_t rgb_strip
Definition: settings.h:901
offset_lock_t offset_lock
Definition: settings.h:902
coolant_settings_t coolant
Definition: settings.h:892
tool_change_settings_t tool_change
Definition: settings.h:887
float arc_tolerance
Definition: settings.h:881
spindle_pwm_settings_t pwm_spindle
Definition: settings.h:896
spindle_settings_t spindle
Definition: settings.h:895
axes_signals_t motor_warning_invert
Definition: settings.h:911
serial_format_t modbus_stream_format
Definition: settings.h:918
axes_signals_t motor_fault_invert
Definition: settings.h:913
control_signals_t control_disable_pullup
Definition: settings.h:890
uint16_t stepper_enable_delay
Definition: settings.h:916
uint8_t canbus_baud
Definition: settings.h:894
ioport_signals_t ioport
Definition: settings.h:908
reportmask_t status_report
Definition: settings.h:898
settings_version_t version
Definition: settings.h:879
position_pid_t position
Definition: settings.h:907
axes_signals_t motor_warning_enable
Definition: settings.h:910
limit_settings_t limits
Definition: settings.h:904
axes_signals_t home_invert
Definition: settings.h:891
axes_signals_t motor_fault_enable
Definition: settings.h:912
float timezone
Definition: settings.h:883
float g73_retract
Definition: settings.h:882
uint8_t modbus_baud
Definition: settings.h:893
safety_door_settings_t safety_door
Definition: settings.h:906
uint16_t planner_buffer_blocks
Definition: settings.h:885
machine_mode_t mode
Definition: settings.h:886
control_signals_t control_invert
Definition: settings.h:889
probeflags_t probe
Definition: settings.h:900
stepper_settings_t steppers
Definition: settings.h:897
macro_atc_flags_t macro_atc_flags
Definition: settings.h:914
tool_id_t tool_id
Definition: settings.h:917
homing_settings_t homing
Definition: settings.h:909
stepper_spindle_settings_flags_t stepper_spindle_flags
Definition: settings.h:915
fs_options_t fs_options
Definition: settings.h:903
uint16_t report_interval
Definition: settings.h:884
Definition: spindle_control.h:236
Definition: spindle_control.h:249
Definition: settings.h:724
axes_signals_t dir_invert
Definition: settings.h:726
uint16_t idle_lock_time
Definition: settings.h:736
float pulse_delay_microseconds
Definition: settings.h:735
axes_signals_t energize
Definition: settings.h:729
axes_signals_t ganged_dir_invert
Definition: settings.h:727
axes_signals_t step_invert
Definition: settings.h:725
float pulse_microseconds
Definition: settings.h:734
axes_signals_t enable_invert
Definition: settings.h:728
Definition: settings.h:844
float seek_rate
Definition: settings.h:847
float probing_distance
Definition: settings.h:849
float feed_rate
Definition: settings.h:846
toolchange_mode_t mode
Definition: settings.h:845
float pulloff_rate
Definition: settings.h:848
machine_mode_t
Definition: system.h:124
Definition: nuts_bolts.h:123
Definition: nuts_bolts.h:250
Definition: settings.h:772
uint8_t sd_mount_on_boot
Definition: settings.h:776
uint8_t value
Definition: settings.h:773
uint8_t mask
Definition: settings.h:774
uint8_t lfs_hidden
Definition: settings.h:777
uint8_t unused
Definition: settings.h:778
Definition: settings.h:690
uint16_t override_locks
Definition: settings.h:699
uint16_t single_axis_commands
Definition: settings.h:694
uint16_t force_set_origin
Definition: settings.h:696
uint16_t init_lock
Definition: settings.h:695
uint16_t keep_on_reset
Definition: settings.h:700
uint16_t unused
Definition: settings.h:704
uint16_t use_limit_switches
Definition: settings.h:701
uint16_t manual
Definition: settings.h:698
uint16_t value
Definition: settings.h:691
uint16_t nx_scrips_on_homed_only
Definition: settings.h:703
uint16_t two_switches
Definition: settings.h:697
uint16_t per_axis_feedrates
Definition: settings.h:702
uint16_t enabled
Definition: settings.h:693
Definition: settings.h:793
uint32_t bit4
Definition: settings.h:801
uint32_t bit7
Definition: settings.h:804
uint32_t bit9
Definition: settings.h:806
uint32_t bit6
Definition: settings.h:803
uint32_t bit19
Definition: settings.h:816
uint32_t bit15
Definition: settings.h:812
uint32_t bit20
Definition: settings.h:817
uint32_t bit18
Definition: settings.h:815
uint32_t bit12
Definition: settings.h:809
uint32_t bit5
Definition: settings.h:802
uint32_t bit17
Definition: settings.h:814
uint32_t bit10
Definition: settings.h:807
uint32_t bit0
Definition: settings.h:797
uint32_t bit8
Definition: settings.h:805
uint32_t bit16
Definition: settings.h:813
uint32_t bit22
Definition: settings.h:819
uint32_t bit11
Definition: settings.h:808
uint32_t bit13
Definition: settings.h:810
uint32_t bit3
Definition: settings.h:800
uint32_t mask
Definition: settings.h:795
uint32_t bit14
Definition: settings.h:811
uint32_t bit21
Definition: settings.h:818
uint32_t value
Definition: settings.h:794
uint32_t bit1
Definition: settings.h:798
uint32_t bit2
Definition: settings.h:799
uint32_t bit23
Definition: settings.h:820
Definition: settings.h:753
uint8_t check_at_init
Definition: settings.h:757
uint8_t unassigned
Definition: settings.h:761
uint8_t value
Definition: settings.h:754
uint8_t jog_soft_limited
Definition: settings.h:758
uint8_t two_switches
Definition: settings.h:759
uint8_t hard_enabled
Definition: settings.h:756
uint8_t hard_disabled_rotary
Definition: settings.h:760
Limit switches struct, consists of four packed axes_signals_t structs in 32 bits.
Definition: nuts_bolts.h:219
Definition: settings.h:852
uint8_t unassigned
Definition: settings.h:858
uint8_t random_toolchanger
Definition: settings.h:857
uint8_t value
Definition: settings.h:853
uint8_t execute_m6t0
Definition: settings.h:855
uint8_t error_on_no_macro
Definition: settings.h:856
Definition: settings.h:782
uint8_t g59_1
Definition: settings.h:786
uint8_t g59_3
Definition: settings.h:788
uint8_t value
Definition: settings.h:783
uint8_t mask
Definition: settings.h:784
uint8_t g59_2
Definition: settings.h:787
uint8_t unused
Definition: settings.h:789
Definition: settings.h:667
uint8_t enabled
Definition: settings.h:670
uint8_t unassigned
Definition: settings.h:673
uint8_t value
Definition: settings.h:668
uint8_t enable_override_control
Definition: settings.h:672
uint8_t deactivate_upon_init
Definition: settings.h:671
Definition: settings.h:612
uint16_t invert_probe_pin
Definition: settings.h:615
uint16_t enable_protection
Definition: settings.h:620
uint16_t soft_limited
Definition: settings.h:623
uint16_t unassigned
Definition: settings.h:627
uint16_t disable_probe_pullup
Definition: settings.h:616
uint16_t probe2_auto_select
Definition: settings.h:626
uint16_t allow_feed_override
Definition: settings.h:619
uint16_t disable_connected_pullup
Definition: settings.h:618
uint16_t invert_toolsetter_input
Definition: settings.h:621
uint16_t value
Definition: settings.h:613
uint16_t disable_toolsetter_pullup
Definition: settings.h:622
uint16_t invert_connected_pin
Definition: settings.h:617
uint16_t invert_probe2_input
Definition: settings.h:625
uint16_t toolsetter_auto_select
Definition: settings.h:624
Definition: settings.h:631
uint16_t when_homing
Definition: settings.h:646
uint16_t buffer_state
Definition: settings.h:635
uint16_t unassigned
Definition: settings.h:648
uint16_t distance_to_go
Definition: settings.h:647
uint16_t parser_state
Definition: settings.h:643
uint16_t alarm_substate
Definition: settings.h:644
uint16_t mask
Definition: settings.h:632
uint16_t sync_on_wco_change
Definition: settings.h:642
uint16_t overrides
Definition: settings.h:640
uint16_t line_numbers
Definition: settings.h:636
uint16_t probe_coordinates
Definition: settings.h:641
uint16_t feed_speed
Definition: settings.h:637
uint16_t machine_position
Definition: settings.h:634
uint16_t run_substate
Definition: settings.h:645
uint16_t work_coord_offset
Definition: settings.h:639
uint16_t pin_state
Definition: settings.h:638
Definition: settings.h:652
uint8_t keep_coolant_on
Definition: settings.h:656
uint8_t unassigned
Definition: settings.h:657
uint8_t value
Definition: settings.h:653
uint8_t ignore_when_idle
Definition: settings.h:655
Definition: stream.h:120
Definition: settings.h:1029
uint8_t hidden
Hide from reporting, allow setting.
Definition: settings.h:1036
uint8_t value
Definition: settings.h:1030
uint8_t increment
Definition: settings.h:1035
uint8_t allow_null
Definition: settings.h:1033
uint8_t reboot_required
Definition: settings.h:1032
uint8_t subgroups
Definition: settings.h:1034
Definition: settings.h:1024
float fvalue
Definition: settings.h:1026
uint32_t ivalue
Definition: settings.h:1025
Definition: settings.h:585
uint32_t force_initialization_alarm
Definition: settings.h:593
uint32_t tool_persistent
Definition: settings.h:605
uint32_t unassigned
Definition: settings.h:608
uint32_t report_inches
Definition: settings.h:588
uint32_t ngc_debug_out
Definition: settings.h:596
uint32_t tool_change_fast_pulloff
Definition: settings.h:604
uint32_t dst_active
Definition: settings.h:590
uint32_t compatibility_level
Definition: settings.h:598
uint32_t keep_offsets_on_reset
Definition: settings.h:602
uint32_t restore_after_feed_hold
Definition: settings.h:595
uint32_t g92_is_volatile
Definition: settings.h:597
uint32_t keep_rapids_override_on_reset
Definition: settings.h:606
uint32_t tool_change_at_g30
Definition: settings.h:603
uint32_t no_unlock_after_estop
Definition: settings.h:600
uint32_t disable_laser_during_hold
Definition: settings.h:592
uint32_t restore_overrides
Definition: settings.h:589
uint32_t keep_feed_override_on_reset
Definition: settings.h:607
uint32_t sleep_enable
Definition: settings.h:591
uint32_t no_restore_position_after_M6
Definition: settings.h:599
uint32_t value
Definition: settings.h:586
uint32_t settings_downgrade
Definition: settings.h:601
uint32_t legacy_rt_commands
Definition: settings.h:594
Definition: settings.h:1061
uint8_t spindle
Definition: settings.h:1064
uint8_t unassigned
Definition: settings.h:1065
uint8_t value
Definition: settings.h:1062
Definition: settings.h:568
uint8_t unassigned
Definition: settings.h:576
uint8_t build_info
Definition: settings.h:574
uint8_t driver_parameters
Definition: settings.h:575
uint8_t startup_lines
Definition: settings.h:573
uint8_t parameters
Definition: settings.h:572
uint8_t mask
Definition: settings.h:569
uint8_t defaults
Definition: settings.h:571
Definition: settings.h:868
uint32_t build
Definition: settings.h:872
uint32_t id
Definition: settings.h:871
uint32_t value
Definition: settings.h:869
Definition: spindle_control.h:226