grblHAL core  20240704
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-2023 Terje Io
7  Copyright (c) 2011-2016 Sungeun K. Jeon for Gnea Research LLC
8  Copyright (c) 2009-2011 Simen Svale Skogsrud
9 
10  Grbl 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  Grbl 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 Grbl. 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 "plugins.h"
30 
31 // Version of the persistent storage data. Always stored in byte 0 of non-volatile storage.
32 #define SETTINGS_VERSION 22 // NOTE: Check settings_reset() when moving to next version.
33 
34 // Define axis settings numbering scheme. Starts at Setting_AxisSettingsBase, every INCREMENT, over N_SETTINGS.
35 #define AXIS_SETTINGS_INCREMENT 10 // Must be greater than the number of axis settings.
36 
37 // Define encoder settings numbering scheme. Starts at Setting_EncoderSettingsBase, every INCREMENT, over N_SETTINGS.
38 // Not referenced by the core.
39 #define ENCODER_N_SETTINGS_MAX 5 // NOTE: This is the maximum number of encoders allowed.
40 #define ENCODER_SETTINGS_INCREMENT 10
41 
42 #define SETTINGS_HARD_RESET_REQUIRED "\\n\\nNOTE: A hard reset of the controller is required after changing this setting."
43 
44 #define PASSWORD_MASK "********"
45 
46 typedef enum {
54  Setting_SpindlePWMBehaviour = 7, // Deprecated - replaced by Setting_SpindlePWMOptions flag
90 
98 // Optional driver implemented settings for jogging
105 //
110 
117 // Optional driver implemented settings for piecewise linear spindle PWM algorithm
122 //
123 
124 // Optional driver implemented settings for additional streams
135 //
136 
137 // Optional settings for closed loop spindle speed control
145 
146 // Optional settings for closed loop spindle synchronized motion
154 //
155 
156 // Reserving settings in the range 100 - 299 for axis settings.
157  Setting_AxisSettingsBase = 100, // Reserved for core settings
159  Setting_AxisSettingsBase2 = 200, // Reserved for driver/plugin settings
161 //
162 
163 // Optional driver implemented settings
164 
165  // Normally used for Ethernet
175 
176  // Normally used for WiFi Access Point
186 
187  // Normally used for WiFi Station
197 
205 
207 
210 
218 
222 
243 
268  Setting_SpindleOnDelay = 394, // made available if safety door input not provided
274 
275  Setting_EncoderSettingsBase = 400, // NOTE: Reserving settings values >= 400 for encoder settings. Up to 449.
277 
278  // Reserved for user plugins - do NOT use for public plugins
289 
304 
309 
320 
332 
344 
354 
363 
368 
373 
374  Setting_Panel_SpindleSpeed = 540, // NOTE: Reserving settings values 540 to 579 for panel settings.
395 
407 
408  Setting_ModbusTCPBase = 600, // Reserving settings values 600 to 639 for ModBus TCP (8 sets)
413 
424 
426 
447 
450  Setting_HoldCoolantOnDelay = 673, // made available if safety door input not provided
451 
453 
461 // Optional driver implemented settings for piecewise linear spindle PWM algorithm
466 //
467 // 900-999 - reserved for automatic tool changers (ATC)
468 //
471 
472  // Calculated base values for core stepper settings
483 
484  // Calculated base values for driver/plugin stepper settings
495 
496  // Calculated base values for encoder settings
502 
503 typedef union {
504  uint8_t mask;
505  struct {
506  uint8_t defaults :1,
512 
513  };
515 
516 extern const settings_restore_t settings_all;
517 
519 
520 typedef union {
521  uint16_t value;
522  struct {
523  uint16_t report_inches :1,
525  dst_active :1, // Daylight savings time
536  };
538 
539 typedef union {
540  uint8_t value;
541  struct {
542  uint8_t invert_probe_pin :1,
549  };
550 } probeflags_t;
551 
552 typedef union {
553  uint16_t mask;
554  struct {
555  uint16_t machine_position :1,
568  };
569 } reportmask_t;
570 
571 typedef union {
572  uint8_t value;
573  struct {
574  uint8_t ignore_when_idle :1,
577  };
579 
580 typedef struct {
585 
586 typedef union {
587  uint8_t value;
588  struct {
589  uint8_t enabled :1,
594  };
596 
597 typedef struct {
599  uint8_t axis; // Define which axis that performs the parking motion
600  float target; // Parking axis target. In mm, as machine coordinate [-max_travel,0].
601  float rate; // Parking fast rate after pull-out in mm/min.
602  float pullout_rate; // Pull-out/plunge slow feed rate in mm/min.
603  float pullout_increment; // Spindle pull-out and plunge distance in mm. Incremental distance.
605 
606 typedef struct {
608 } position_pid_t; // Used for synchronized motion
609 
610 typedef union {
611  uint8_t value;
612  struct {
613  uint8_t enabled :1,
617  manual :1,
621  };
623 
624 // Used internally in settings.c only.
625 // TODO: replace homing_settings_flags_t with this on a settings struct revision?
626 typedef union {
627  uint16_t value;
628  struct {
629  uint16_t enabled :1,
633  two_switches :1, // is a limits setting
634  manual :1,
638  unused :7;
639  };
641 
642 typedef struct {
643  float fail_length_percent; // DEFAULT_DUAL_AXIS_HOMING_FAIL_AXIS_LENGTH_PERCENT
644  float fail_distance_max; // DEFAULT_DUAL_AXIS_HOMING_FAIL_DISTANCE_MAX
645  float fail_distance_min; // DEFAULT_DUAL_AXIS_HOMING_FAIL_DISTANCE_MIN
647 
648 typedef struct {
649  float feed_rate;
650  float seek_rate;
651  float pulloff;
653  uint8_t locate_cycles;
654  uint16_t debounce_delay;
659 
660 typedef struct {
663  axes_signals_t ganged_dir_invert; // applied after inversion for the master motor
666 #if N_AXIS > 3
667  axes_signals_t is_rotational; // rotational axes distances are not scaled in imperial mode
668 #endif
671  uint16_t idle_lock_time; // If value = 255, steppers do not disable.
673 
674 typedef struct {
676  float max_rate;
678  float max_travel;
680 #if ENABLE_BACKLASH_COMPENSATION
681  float backlash;
682 #endif
684 
685 typedef union {
686  uint8_t value;
687  struct {
688  uint8_t hard_enabled :1,
695  };
697 
698 typedef struct {
702 // axes_signals_t soft_enabled; // TODO: add per axis soft limits, replace soft_enabled flag
704 
705 typedef union {
706  uint8_t value;
707  uint8_t mask;
708  struct {
709  uint8_t sd_mount_on_boot :1,
711  unused :6;
712  };
713 } fs_options_t;
714 
715 typedef union {
716  uint8_t value;
717  uint8_t mask;
718  struct {
719  uint8_t g59_1 :1,
720  g59_2 :1,
721  g59_3 :1,
722  encoder_spindle :5; // TODO: move to spindle settings
723  };
724 } offset_lock_t;
725 
726 typedef union {
727  uint8_t value;
728  uint8_t mask;
729  struct {
730  uint8_t bit0 :1,
731  bit1 :1,
732  bit2 :1,
733  bit3 :1,
734  bit4 :1,
735  bit5 :1,
736  bit6 :1,
737  bit7 :1;
738  };
739 } ioport_bus_t;
740 
741 typedef struct {
747 
748 typedef enum {
755 
756 typedef struct {
757  float feed_rate;
758  float seek_rate;
763 
764 // Global persistent settings (Stored from byte NVS_ADDR_GLOBAL onwards)
765 typedef struct {
766  // Settings struct version
767  uint32_t version;
768 // uint32_t build_date; // TODO: add in next settings version?, set to GRBL_BUILD
771  float g73_retract;
772  float timezone;
773  uint16_t report_interval;
782  uint8_t modbus_baud;
783  uint8_t canbus_baud;
786  reportmask_t status_report; // Mask to indicate desired report data.
787  settingflags_t flags; // Contains default boolean settings
797  position_pid_t position; // Used for synchronized motion
799 } settings_t;
800 
801 typedef enum {
845 // NOTE: axis groups MUST be sequential AND last
850 #ifdef A_AXIS
852 #endif
853 #ifdef B_AXIS
854  Group_BAxis,
855 #endif
856 #ifdef C_AXIS
857  Group_CAxis,
858 #endif
859 #ifdef U_AXIS
860  Group_UAxis,
861 #endif
862 #ifdef V_AXIS
863  Group_VAxis,
864 #endif
868 
869 typedef enum {
875  Format_Integer, // 32 bit
880  // For internal use only
884 
885 typedef struct setting_group_detail {
888  const char *name;
889  bool (*is_available)(const struct setting_group_detail *group);
891 
892 typedef enum {
902 
903 typedef union {
904  uint32_t ivalue;
905  float fvalue;
907 
908 typedef union {
909  uint8_t value;
910  struct {
911  uint8_t reboot_required :1,
915  unused :1;
916  };
918 
919 typedef struct setting_detail {
922  const char *name;
923  const char *unit;
925  const char *format;
926  const char *min_value;
927  const char *max_value;
929  void *value;
930  void *get_value;
931  bool (*is_available)(const struct setting_detail *setting);
934 
935 typedef struct {
937  const char *description;
939 
940 typedef union {
941  uint8_t value;
942  struct {
943  uint8_t spindle :1,
945  };
947 
948 typedef status_code_t (*setting_set_int_ptr)(setting_id_t id, uint_fast16_t value);
949 typedef status_code_t (*setting_set_float_ptr)(setting_id_t id, float value);
950 typedef status_code_t (*setting_set_string_ptr)(setting_id_t id, char *value);
951 typedef uint32_t (*setting_get_int_ptr)(setting_id_t id);
952 typedef float (*setting_get_float_ptr)(setting_id_t id);
953 typedef char *(*setting_get_string_ptr)(setting_id_t id);
954 typedef bool (*setting_output_ptr)(const setting_detail_t *setting, uint_fast16_t offset, void *data);
955 
956 typedef void (*setting_changed_ptr)(setting_id_t id);
957 
963 
964 typedef void (*driver_settings_load_ptr)(void);
965 typedef void (*driver_settings_save_ptr)(void);
966 typedef void (*driver_settings_restore_ptr)(void);
967 typedef bool (*driver_settings_iterator_ptr)(const setting_detail_t *setting, setting_output_ptr callback, void *data);
968 
969 typedef struct setting_details {
970  const uint8_t n_groups;
972  const uint16_t n_settings;
974 #ifndef NO_SETTINGS_DESCRIPTIONS
975  const uint16_t n_descriptions;
977 #endif
978 // struct setting_details *(*on_get_settings)(void);
986 
987 // NOTE: this must match the signature of on_get_settings in the setting_details_t structure above!
988 typedef setting_details_t *(*on_get_settings_ptr)(void);
989 
990 extern settings_t settings;
991 
992 // Clear settings chain (unlinks plugin/driver settings from core settings)
993 void settings_clear (void);
994 
995 // Initialize the configuration subsystem (load settings from persistent storage)
996 void settings_init();
997 
998 // Write Grbl global settings and version number to persistent storage
999 void settings_write_global(void);
1000 
1001 // Helper function to clear and restore persistent storage defaults
1002 void settings_restore(settings_restore_t restore_flags);
1003 
1004 // A helper method to set new settings from command line
1005 status_code_t settings_store_setting(setting_id_t setting, char *svalue);
1006 
1007 // Writes the protocol line variable as a startup line in persistent storage
1008 void settings_write_startup_line(uint8_t idx, char *line);
1009 
1010 // Reads an persistent storage startup line to the protocol line variable
1011 bool settings_read_startup_line(uint8_t idx, char *line);
1012 
1013 // Writes build info user-defined string
1014 void settings_write_build_info(char *line);
1015 
1016 // Reads build info user-defined string
1017 bool settings_read_build_info(char *line);
1018 
1019 // Writes selected coordinate data to persistent storage
1020 void settings_write_coord_data(coord_system_id_t id, float (*coord_data)[N_AXIS]);
1021 
1022 // Reads selected coordinate data from persistent storage
1023 bool settings_read_coord_data(coord_system_id_t id, float (*coord_data)[N_AXIS]);
1024 
1025 // Temporarily override acceleration, if 0 restore to configured setting value
1026 bool settings_override_acceleration (uint8_t axis, float acceleration);
1027 
1028 void settings_register (setting_details_t *details);
1031 bool settings_iterator (const setting_detail_t *setting, setting_output_ptr callback, void *data);
1033 const char *setting_get_description (setting_id_t id);
1037 char *setting_get_value (const setting_detail_t *setting, uint_fast16_t offset);
1038 uint32_t setting_get_int_value (const setting_detail_t *setting, uint_fast16_t offset);
1039 float setting_get_float_value (const setting_detail_t *setting, uint_fast16_t offset);
1040 setting_id_t settings_get_axis_base (setting_id_t id, uint_fast8_t *idx);
1041 bool setting_is_list (const setting_detail_t *setting);
1042 bool setting_is_integer (const setting_detail_t *setting);
1043 void setting_remove_elements (setting_id_t id, uint32_t mask);
1044 bool settings_add_spindle_type (const char *type);
1046 
1047 #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
#define MAX_STORED_LINE_LENGTH
Definition: grbl.h:227
@ 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:829
void settings_write_build_info(char *line)
Definition: settings.c:2064
void(* driver_settings_restore_ptr)(void)
Definition: settings.h:966
toolchange_mode_t
Definition: settings.h:748
@ ToolChange_Ignore
Definition: settings.h:753
@ ToolChange_Manual
Definition: settings.h:750
@ ToolChange_SemiAutomatic
Definition: settings.h:752
@ ToolChange_Manual_G59_3
Definition: settings.h:751
@ ToolChange_Disabled
Definition: settings.h:749
void settings_clear(void)
Definition: settings.c:2888
void setting_remove_elements(setting_id_t id, uint32_t mask)
Definition: settings.c:2607
void(* setting_changed_ptr)(setting_id_t id)
Definition: settings.h:956
bool settings_override_acceleration(uint8_t axis, float acceleration)
Definition: settings.c:856
char * setting_get_value(const setting_detail_t *setting, uint_fast16_t offset)
Definition: settings.c:1770
status_code_t(* setting_set_float_ptr)(setting_id_t id, float value)
Definition: settings.h:949
bool settings_add_spindle_type(const char *type)
Definition: settings.c:2874
const char * setting_get_description(setting_id_t id)
Definition: settings.c:2417
status_code_t(* setting_set_int_ptr)(setting_id_t id, uint_fast16_t value)
Definition: settings.h:948
struct setting_details setting_details_t
settings_t settings
Definition: settings.c:43
bool settings_read_startup_line(uint8_t idx, char *line)
Definition: settings.c:2096
void settings_register(setting_details_t *details)
Definition: settings.c:879
status_code_t settings_store_setting(setting_id_t setting, char *svalue)
Definition: settings.c:2753
struct setting_detail setting_detail_t
void settings_write_global(void)
Definition: settings.c:2220
const setting_detail_t * setting_get_details(setting_id_t id, setting_details_t **set)
Definition: settings.c:2389
void settings_write_coord_data(coord_system_id_t id, float(*coord_data)[N_AXIS])
Definition: settings.c:2110
bool settings_read_coord_data(coord_system_id_t id, float(*coord_data)[N_AXIS])
Definition: settings.c:2123
bool(* driver_settings_iterator_ptr)(const setting_detail_t *setting, setting_output_ptr callback, void *data)
Definition: settings.h:967
setting_datatype_t
Definition: settings.h:869
@ Format_XBitfield
Definition: settings.h:872
@ Format_RadioButtons
Definition: settings.h:873
@ Format_Decimal
Definition: settings.h:876
@ Format_Password
Definition: settings.h:878
@ Format_IPv4
Definition: settings.h:879
@ Format_AxisMask
Definition: settings.h:874
@ Format_Int16
Definition: settings.h:882
@ Format_Int8
Definition: settings.h:881
@ Format_String
Definition: settings.h:877
@ Format_Integer
Definition: settings.h:875
@ Format_Bitfield
Definition: settings.h:871
@ Format_Bool
Definition: settings.h:870
status_code_t(* setting_set_string_ptr)(setting_id_t id, char *value)
Definition: settings.h:950
bool settings_iterator(const setting_detail_t *setting, setting_output_ptr callback, void *data)
Definition: settings.c:2362
float(* setting_get_float_ptr)(setting_id_t id)
Definition: settings.h:952
bool(* setting_output_ptr)(const setting_detail_t *setting, uint_fast16_t offset, void *data)
Definition: settings.h:954
char stored_line_t[MAX_STORED_LINE_LENGTH]
Definition: settings.h:518
void(* driver_settings_save_ptr)(void)
Definition: settings.h:965
setting_details_t * settings_get_details(void)
Definition: settings.c:885
void settings_init()
Definition: settings.c:2895
setting_datatype_t setting_datatype_to_external(setting_datatype_t datatype)
Definition: settings.c:2548
uint32_t(* setting_get_int_ptr)(setting_id_t id)
Definition: settings.h:951
bool setting_is_list(const setting_detail_t *setting)
Definition: settings.c:2564
bool setting_is_integer(const setting_detail_t *setting)
Definition: settings.c:2569
const setting_group_detail_t * setting_get_group_details(setting_group_t id)
Definition: settings.c:2450
setting_id_t settings_get_axis_base(setting_id_t id, uint_fast8_t *idx)
Definition: settings.c:1443
setting_id_t
Definition: settings.h:46
@ Setting_Panel_JogDistance_Keypad
Definition: settings.h:384
@ Setting_THC_DGain
Definition: settings.h:228
@ Setting_MacroPort1
Definition: settings.h:335
@ Setting_PositionDMaxError
Definition: settings.h:153
@ Setting_Panel_Encoder2_Cpd
Definition: settings.h:391
@ Setting_TelnetPort3
Definition: settings.h:193
@ Setting_Arc_VoltagePort
Definition: settings.h:239
@ Setting_LinearSpindle1Piece3
Definition: settings.h:464
@ Setting_MacroPort4
Definition: settings.h:338
@ Setting_GangedDirInvertMask
Definition: settings.h:55
@ Setting_HomingCycle_4
Definition: settings.h:95
@ Setting_LinearSpindlePiece3
Definition: settings.h:120
@ Setting_Kinematics1
Definition: settings.h:415
@ Setting_Stepper20
Definition: settings.h:446
@ Setting_Stepper8
Definition: settings.h:434
@ Setting_Spindle_DirPort
Definition: settings.h:318
@ Setting_CoolantOffDelay
Definition: settings.h:253
@ Setting_HomingCycle_1
Definition: settings.h:92
@ Setting_TrinamicDriver
Definition: settings.h:208
@ Setting_PositionMaxError
Definition: settings.h:151
@ Setting_JogStepSpeed
Definition: settings.h:99
@ Setting_VFD_16
Definition: settings.h:298
@ Setting_OffsetLock
Definition: settings.h:316
@ Setting_RGB_StripLengt1
Definition: settings.h:372
@ Setting_NetMask2
Definition: settings.h:181
@ Setting_TelnetPort2
Definition: settings.h:182
@ Setting_Stepper15
Definition: settings.h:441
@ Setting_ParkingTarget
Definition: settings.h:108
@ Setting_SpindlePWMBehaviour
Definition: settings.h:54
@ Setting_IpMode2
Definition: settings.h:178
@ Setting_SpindleIMaxError
Definition: settings.h:143
@ Setting_Stepper3
Definition: settings.h:429
@ Setting_ModbusTCPBase
Definition: settings.h:408
@ Setting_NTPServerURI_2
Definition: settings.h:201
@ Setting_ParkingFastRate
Definition: settings.h:109
@ Setting_UserDefined_7
Definition: settings.h:286
@ Setting_RestoreOverrides
Definition: settings.h:111
@ Setting_NetworkServices
Definition: settings.h:125
@ Setting_PositionIGain
Definition: settings.h:148
@ Setting_MQTTBrokerPort
Definition: settings.h:365
@ Setting_DualAxisLengthFailMax
Definition: settings.h:221
@ Setting_Macro4
Definition: settings.h:326
@ Setting_Reserved672
Definition: settings.h:449
@ Setting_FanPort2
Definition: settings.h:262
@ Setting_StepperDeenergizeMask
Definition: settings.h:84
@ Setting_PWMMaxValue1
Definition: settings.h:460
@ Setting_Panel_SettingsMax
Definition: settings.h:394
@ Setting_PWMMinValue1
Definition: settings.h:459
@ Setting_SettingsAll
Definition: settings.h:470
@ Setting_SpindleEnable6
Definition: settings.h:351
@ Setting_CoolantOkPort
Definition: settings.h:265
@ Setting_ButtonAction1
Definition: settings.h:398
@ Setting_SpindleOnDelay
Definition: settings.h:268
@ Setting_IpAddress3
Definition: settings.h:190
@ Setting_JogSoftLimited
Definition: settings.h:87
@ Setting_AxisHomingFeedRate
Definition: settings.h:481
@ Setting_ParkingPulloutIncrement
Definition: settings.h:106
@ Setting_UserDefined_1
Definition: settings.h:280
@ Setting_EncoderSettingsBase
Definition: settings.h:275
@ Setting_VFD_18
Definition: settings.h:300
@ Setting_SpindleType
Definition: settings.h:269
@ Setting_THC_Threshold
Definition: settings.h:225
@ Setting_Panel_JogDistance_x10
Definition: settings.h:382
@ Setting_Panel_JogDistance_x100
Definition: settings.h:383
@ Setting_ButtonAction0
Definition: settings.h:396
@ Setting_Macro9
Definition: settings.h:331
@ Setting_NetMask
Definition: settings.h:170
@ Setting_UserDefined_5
Definition: settings.h:284
@ Setting_ToolChangeProbingDistance
Definition: settings.h:213
@ Setting_Gateway2
Definition: settings.h:180
@ Setting_EncoderCPDBase
Definition: settings.h:499
@ Setting_Panel_Encoder0_Mode
Definition: settings.h:386
@ Setting_Kinematics6
Definition: settings.h:420
@ Setting_EncoderSpindle
Definition: settings.h:353
@ Setting_LinearSpindlePiece1
Definition: settings.h:118
@ Setting_TrinamicHoming
Definition: settings.h:209
@ Setting_PositionPGain
Definition: settings.h:147
@ Settings_IoPort_Pullup_Disable
Definition: settings.h:245
@ Setting_InvertStepperEnable
Definition: settings.h:51
@ Setting_AdminPassword
Definition: settings.h:198
@ Setting_CANbus_BaudRate
Definition: settings.h:273
@ Setting_NTPServerURI_3
Definition: settings.h:202
@ Setting_SpindleToolStart5
Definition: settings.h:360
@ Setting_InvertProbePin
Definition: settings.h:53
@ Setting_PWMOffValue1
Definition: settings.h:458
@ Setting_BlueToothStateInput
Definition: settings.h:259
@ Setting_SpindleEnable7
Definition: settings.h:352
@ Setting_SpindleToolStart3
Definition: settings.h:358
@ Setting_CoolantOnDelay
Definition: settings.h:252
@ Setting_CoolantInvertMask
Definition: settings.h:62
@ Setting_Stepper19
Definition: settings.h:445
@ Setting_CoolantGain
Definition: settings.h:257
@ Setting_IpMode3
Definition: settings.h:189
@ Setting_VFD_10
Definition: settings.h:292
@ Setting_Mode
Definition: settings.h:79
@ Setting_Macro1
Definition: settings.h:323
@ Setting_Spindle_OnPort
Definition: settings.h:317
@ Setting_DirInvertMask
Definition: settings.h:50
@ Setting_WifiMode
Definition: settings.h:128
@ Settings_ModBus_BaudRate
Definition: settings.h:248
@ Setting_Panel_JogDistance_x1
Definition: settings.h:381
@ Setting_VFD_ModbusAddress1
Definition: settings.h:306
@ Setting_WiFi_STA_SSID
Definition: settings.h:129
@ Settings_IoPort_InvertOut
Definition: settings.h:246
@ Setting_RGB_StripLengt0
Definition: settings.h:371
@ Setting_AxisExtended3
Definition: settings.h:488
@ Setting_LimitPullUpDisableMask
Definition: settings.h:65
@ Setting_Stepper17
Definition: settings.h:443
@ Setting_UserDefined_0
Definition: settings.h:279
@ Setting_Stepper13
Definition: settings.h:439
@ Setting_HomingDirMask
Definition: settings.h:70
@ Setting_ForceInitAlarm
Definition: settings.h:115
@ Setting_EncoderModeBase
Definition: settings.h:497
@ Setting_ArcTolerance
Definition: settings.h:59
@ Setting_ParkingAxis
Definition: settings.h:89
@ Setting_EnableLegacyRTCommands
Definition: settings.h:86
@ Setting_CoolantTempPort
Definition: settings.h:264
@ Setting_Macro8
Definition: settings.h:330
@ Setting_AutoReportInterval
Definition: settings.h:311
@ Setting_Panel_JogSpeed_Keypad
Definition: settings.h:380
@ Setting_HomingCycle_3
Definition: settings.h:94
@ Setting_MacroPort2
Definition: settings.h:336
@ Setting_AxisAcceleration
Definition: settings.h:475
@ Setting_AxisSettingsBase2
Definition: settings.h:159
@ Setting_Spindle_PWMPort
Definition: settings.h:319
@ Setting_SpindleEnable1
Definition: settings.h:346
@ Setting_MacroPort7
Definition: settings.h:341
@ Setting_PlannerBlocks
Definition: settings.h:272
@ Setting_SpindleToolStart1
Definition: settings.h:356
@ Setting_LimitPinsInvertMask
Definition: settings.h:52
@ Setting_VFD_14
Definition: settings.h:296
@ Setting_Panel_ModbusAddress
Definition: settings.h:375
@ Setting_CoolantMinTemp
Definition: settings.h:254
@ Setting_VFD_ModbusAddress2
Definition: settings.h:307
@ Setting_THC_VADThreshold
Definition: settings.h:229
@ Setting_MQTTBrokerUserName
Definition: settings.h:366
@ Setting_ModbusPortBase
Definition: settings.h:410
@ Setting_SpindleEnable4
Definition: settings.h:349
@ Setting_SpindleToolStart2
Definition: settings.h:357
@ Setting_VFD_17
Definition: settings.h:299
@ Setting_JogFastDistance
Definition: settings.h:104
@ Setting_Kinematics8
Definition: settings.h:422
@ Setting_ButtonAction7
Definition: settings.h:404
@ Setting_Macro3
Definition: settings.h:325
@ Setting_ButtonAction5
Definition: settings.h:402
@ Setting_PWMMaxValue
Definition: settings.h:83
@ Setting_EncoderCPRBase
Definition: settings.h:498
@ Setting_AxisBacklash
Definition: settings.h:479
@ Setting_VFD_ModbusAddress3
Definition: settings.h:308
@ Setting_LinearSpindle1Piece4
Definition: settings.h:465
@ Setting_SpindleDeadband
Definition: settings.h:141
@ Setting_ModbusTCPMax
Definition: settings.h:412
@ Setting_FanPort0
Definition: settings.h:260
@ Setting_AxisExtended6
Definition: settings.h:491
@ Setting_FanPort1
Definition: settings.h:261
@ Setting_AxisSettingsBase
Definition: settings.h:157
@ Setting_SettingsMax
Definition: settings.h:469
@ Setting_JunctionDeviation
Definition: settings.h:58
@ Setting_Gateway3
Definition: settings.h:191
@ Setting_VFD_ModbusAddress
Definition: settings.h:290
@ Setting_Arc_FailTimeout
Definition: settings.h:231
@ Setting_ToolChangeRestorePosition
Definition: settings.h:217
@ Setting_TimeZoneOffset
Definition: settings.h:312
@ Setting_AxisExtended8
Definition: settings.h:493
@ Setting_Arc_OkLowVoltage
Definition: settings.h:238
@ Setting_THC_Mode
Definition: settings.h:223
@ Setting_HomingCycle_2
Definition: settings.h:93
@ Setting_NetworkMAC
Definition: settings.h:370
@ Setting_MacroPortBase
Definition: settings.h:334
@ Setting_Arc_RetryDelay
Definition: settings.h:232
@ Setting_Panel_Encoder3_Mode
Definition: settings.h:392
@ Setting_Wifi_AP_BSSID
Definition: settings.h:206
@ Setting_MacroBase
Definition: settings.h:322
@ Setting_SoftLimitsEnable
Definition: settings.h:67
@ Setting_AxisAutoSquareOffset
Definition: settings.h:480
@ Setting_Arc_OkPort
Definition: settings.h:240
@ Setting_AxisExtended9
Definition: settings.h:494
@ Setting_Panel_JogSpeed_x100
Definition: settings.h:379
@ Setting_SpindlePGain
Definition: settings.h:138
@ Setting_ToolChangePulloffRate
Definition: settings.h:216
@ Setting_HomingFeedRate
Definition: settings.h:71
@ Setting_BlueToothDeviceName
Definition: settings.h:126
@ Setting_PWMMinValue
Definition: settings.h:82
@ Setting_THC_PGain
Definition: settings.h:226
@ Setting_AxisExtended2
Definition: settings.h:487
@ Setting_AxisHomingSeekRate
Definition: settings.h:482
@ Setting_EncoderDblClickWindowBase
Definition: settings.h:500
@ Setting_Kinematics9
Definition: settings.h:423
@ Setting_SpindleIGain
Definition: settings.h:139
@ Setting_ButtonAction4
Definition: settings.h:401
@ Setting_WebSocketPort
Definition: settings.h:173
@ Setting_SpindleInvertMask
Definition: settings.h:63
@ Setting_FtpPort3
Definition: settings.h:196
@ Setting_Kinematics4
Definition: settings.h:418
@ Setting_Kinematics2
Definition: settings.h:416
@ Setting_UserDefined_6
Definition: settings.h:285
@ Setting_THC_IGain
Definition: settings.h:227
@ Setting_Stepper1
Definition: settings.h:427
@ Setting_MQTTBrokerPassword
Definition: settings.h:367
@ Setting_Panel_Encoder2_Mode
Definition: settings.h:390
@ Setting_Hostname
Definition: settings.h:166
@ Setting_HoldActions
Definition: settings.h:114
@ Setting_HomingPulloff
Definition: settings.h:74
@ Setting_PositionDeadband
Definition: settings.h:150
@ Setting_UserPassword
Definition: settings.h:199
@ Setting_CoolantMaxTemp
Definition: settings.h:255
@ Setting_RpmMax
Definition: settings.h:77
@ Setting_RpmMin
Definition: settings.h:78
@ Setting_JogStepDistance
Definition: settings.h:102
@ Setting_Hostname3
Definition: settings.h:188
@ Setting_SpindleToolStart4
Definition: settings.h:359
@ Setting_DisableG92Persistence
Definition: settings.h:258
@ Setting_Stepper18
Definition: settings.h:444
@ Setting_HttpPort3
Definition: settings.h:194
@ Setting_ReportInches
Definition: settings.h:60
@ Setting_Macro0
Definition: settings.h:321
@ Setting_Macro6
Definition: settings.h:328
@ Setting_MacroPort9
Definition: settings.h:343
@ Setting_AxisExtended0
Definition: settings.h:485
@ Setting_Macro7
Definition: settings.h:329
@ Setting_JogFastSpeed
Definition: settings.h:101
@ Setting_Stepper16
Definition: settings.h:442
@ Setting_JogSlowSpeed
Definition: settings.h:100
@ Setting_Stepper12
Definition: settings.h:438
@ Setting_AxisExtended1
Definition: settings.h:486
@ Setting_WiFi_AP_Password
Definition: settings.h:132
@ Setting_Panel_JogAccelRamp
Definition: settings.h:385
@ Setting_ModbusIdBase
Definition: settings.h:411
@ Setting_Stepper5
Definition: settings.h:431
@ Setting_Panel_UpdateInterval
Definition: settings.h:376
@ Setting_IpAddress
Definition: settings.h:168
@ Setting_Stepper7
Definition: settings.h:433
@ Setting_WebSocketPort2
Definition: settings.h:184
@ Setting_MacroPort3
Definition: settings.h:337
@ Setting_StatusReportMask
Definition: settings.h:57
@ Setting_Mode1
Definition: settings.h:456
@ Setting_ButtonAction2
Definition: settings.h:399
@ Setting_SpindleToolStart0
Definition: settings.h:355
@ Setting_RpmMax1
Definition: settings.h:454
@ Setting_WiFi_AP_SSID
Definition: settings.h:131
@ Settings_Axis_Rotational
Definition: settings.h:250
@ Setting_SleepEnable
Definition: settings.h:113
@ Setting_SpindleInvertMask1
Definition: settings.h:452
@ Setting_Arc_HeightPerVolt
Definition: settings.h:236
@ Setting_VFD_15
Definition: settings.h:297
@ Setting_SpindleToolStart6
Definition: settings.h:361
@ Setting_Panel_Encoder1_Mode
Definition: settings.h:388
@ Setting_ButtonAction8
Definition: settings.h:405
@ Setting_Macro2
Definition: settings.h:324
@ Setting_ToolChangeSeekRate
Definition: settings.h:215
@ Setting_Stepper4
Definition: settings.h:430
@ Setting_HomePinsInvertMask
Definition: settings.h:448
@ Setting_MacroPort5
Definition: settings.h:339
@ Setting_ButtonAction6
Definition: settings.h:403
@ Setting_SpindleEnable3
Definition: settings.h:348
@ Setting_VFD_13
Definition: settings.h:295
@ Setting_VFD_19
Definition: settings.h:301
@ Setting_UserDefined_2
Definition: settings.h:281
@ Setting_Stepper2
Definition: settings.h:428
@ Setting_LinearSpindlePiece4
Definition: settings.h:121
@ Setting_HomingSeekRate
Definition: settings.h:72
@ Setting_Wifi_AP_Channel
Definition: settings.h:134
@ Setting_DoorSpindleOnDelay
Definition: settings.h:266
@ Setting_ButtonActionBase
Definition: settings.h:397
@ Setting_FanToSpindleLink
Definition: settings.h:313
@ Setting_Wifi_AP_Country
Definition: settings.h:133
@ Setting_AxisExtended7
Definition: settings.h:492
@ Setting_PositionDGain
Definition: settings.h:149
@ Setting_SpindlePPR
Definition: settings.h:85
@ Setting_Kinematics5
Definition: settings.h:419
@ Setting_Panel_JogSpeed_x10
Definition: settings.h:378
@ Setting_HomingCycle_5
Definition: settings.h:96
@ Setting_DSTActive
Definition: settings.h:204
@ Setting_AxisStepsPerMM
Definition: settings.h:473
@ Setting_AxisMaxRate
Definition: settings.h:474
@ Setting_DoorCoolantOnDelay
Definition: settings.h:267
@ Setting_SpindleEnable0
Definition: settings.h:345
@ Setting_ProbingFeedOverride
Definition: settings.h:116
@ Setting_WiFi_STA_Password
Definition: settings.h:130
@ Setting_Macro5
Definition: settings.h:327
@ Setting_SpindlePWMOptions
Definition: settings.h:56
@ Setting_FanPort3
Definition: settings.h:263
@ Setting_THC_CutterDownPort
Definition: settings.h:241
@ Setting_THC_Delay
Definition: settings.h:224
@ Setting_HomingLocateCycles
Definition: settings.h:91
@ Setting_UnlockAfterEStop
Definition: settings.h:314
@ Setting_Fan0OffDelay
Definition: settings.h:310
@ Setting_PWMFreq
Definition: settings.h:80
@ Setting_Stepper11
Definition: settings.h:437
@ Setting_UserDefined_3
Definition: settings.h:282
@ Setting_NTPServerURI
Definition: settings.h:200
@ Setting_Stepper10
Definition: settings.h:436
@ Setting_ControlPullUpDisableMask
Definition: settings.h:64
@ Setting_BlueToothServiceName
Definition: settings.h:127
@ Setting_WebSocketPort3
Definition: settings.h:195
@ Setting_Panel_SpindleSpeed
Definition: settings.h:374
@ Setting_MacroPort0
Definition: settings.h:333
@ Setting_FtpPort
Definition: settings.h:174
@ Settings_IoPort_InvertIn
Definition: settings.h:244
@ Setting_ProbePullUpDisable
Definition: settings.h:66
@ Setting_AxisExtended5
Definition: settings.h:490
@ Setting_Panel_Encoder1_Cpd
Definition: settings.h:389
@ Setting_AxisStepperCurrent
Definition: settings.h:477
@ Setting_HoldCoolantOnDelay
Definition: settings.h:450
@ Setting_Arc_VoltageScale
Definition: settings.h:234
@ Setting_SpindleAtSpeedTolerance
Definition: settings.h:211
@ Setting_LinearSpindle1Piece1
Definition: settings.h:462
@ Setting_ParkingEnable
Definition: settings.h:88
@ Setting_EncoderSettingsMax
Definition: settings.h:276
@ Setting_VFD_12
Definition: settings.h:294
@ Setting_PWMOffValue
Definition: settings.h:81
@ Setting_VFD_ModbusAddress0
Definition: settings.h:305
@ Setting_Arc_OkHighVoltage
Definition: settings.h:237
@ Setting_PulseDelayMicroseconds
Definition: settings.h:76
@ Setting_Panel_JogSpeed_x1
Definition: settings.h:377
@ Setting_HomingEnable
Definition: settings.h:69
@ Setting_HomingDebounceDelay
Definition: settings.h:73
@ Setting_THC_CutterUpPort
Definition: settings.h:242
@ Setting_Timezone
Definition: settings.h:203
@ Setting_Hostname2
Definition: settings.h:177
@ Setting_Kinematics7
Definition: settings.h:421
@ Setting_DoorOptions
Definition: settings.h:112
@ Setting_JogSlowDistance
Definition: settings.h:103
@ Setting_UserDefined_8
Definition: settings.h:287
@ Setting_SpindleMaxError
Definition: settings.h:142
@ Setting_HttpPort2
Definition: settings.h:183
@ Setting_FSOptions
Definition: settings.h:425
@ Setting_Kinematics3
Definition: settings.h:417
@ Setting_SpindleDGain
Definition: settings.h:140
@ Setting_ModbusIpAddressBase
Definition: settings.h:409
@ Setting_RpmMin1
Definition: settings.h:455
@ Setting_SpindleDMaxError
Definition: settings.h:144
@ Settings_IoPort_OD_Enable
Definition: settings.h:247
@ Setting_ToolChangeFeedRate
Definition: settings.h:214
@ Setting_IpAddress2
Definition: settings.h:179
@ Setting_PulseMicroseconds
Definition: settings.h:47
@ Setting_UserDefined_9
Definition: settings.h:288
@ Setting_ParkingPulloutRate
Definition: settings.h:107
@ Setting_PWMFreq1
Definition: settings.h:457
@ Setting_MacroPort6
Definition: settings.h:340
@ Setting_StepInvertMask
Definition: settings.h:49
@ Setting_VFD_20
Definition: settings.h:302
@ Setting_HttpPort
Definition: settings.h:172
@ Setting_Panel_Encoder3_Cpd
Definition: settings.h:393
@ Setting_VFD_RPM_Hz
Definition: settings.h:291
@ Setting_Stepper9
Definition: settings.h:435
@ Setting_Arc_MaxRetries
Definition: settings.h:233
@ Setting_AxisSettingsMax
Definition: settings.h:158
@ Setting_Stepper6
Definition: settings.h:432
@ Setting_VFD_11
Definition: settings.h:293
@ Setting_SpindleEnable2
Definition: settings.h:347
@ Settings_ModBus_RXTimeout
Definition: settings.h:249
@ Setting_ButtonAction3
Definition: settings.h:400
@ Setting_UserDefined_4
Definition: settings.h:283
@ Setting_Kinematics0
Definition: settings.h:414
@ Setting_PositionIMaxError
Definition: settings.h:152
@ Setting_FtpPort2
Definition: settings.h:185
@ Setting_SpindleToolStart7
Definition: settings.h:362
@ Setting_AxisMaxTravel
Definition: settings.h:476
@ Setting_Gateway
Definition: settings.h:169
@ Setting_Stepper14
Definition: settings.h:440
@ Setting_ToolChangeMode
Definition: settings.h:212
@ Setting_WebUiTimeout
Definition: settings.h:270
@ Setting_HomingCycle_6
Definition: settings.h:97
@ Setting_StepperIdleLockTime
Definition: settings.h:48
@ Setting_WebUiAutoReportInterval
Definition: settings.h:271
@ Setting_AxisExtended4
Definition: settings.h:489
@ Setting_G73Retract
Definition: settings.h:75
@ Setting_DualAxisLengthFailMin
Definition: settings.h:220
@ Setting_IpMode
Definition: settings.h:167
@ Setting_LinearSpindle1Piece2
Definition: settings.h:463
@ Setting_THC_VoidOverride
Definition: settings.h:230
@ Setting_AxisMicroSteps
Definition: settings.h:478
@ Setting_ButtonAction9
Definition: settings.h:406
@ Setting_AxisSettingsMax2
Definition: settings.h:160
@ Setting_MQTTBrokerIpAddress
Definition: settings.h:364
@ Setting_VFD_21
Definition: settings.h:303
@ Setting_ControlInvertMask
Definition: settings.h:61
@ Setting_TelnetPort
Definition: settings.h:171
@ Setting_SpindleEnable5
Definition: settings.h:350
@ Setting_EnableToolPersistence
Definition: settings.h:315
@ Setting_LinearSpindlePiece2
Definition: settings.h:119
@ Setting_Arc_VoltageOffset
Definition: settings.h:235
@ Setting_HardLimitsEnable
Definition: settings.h:68
@ Setting_Panel_Encoder0_Cpd
Definition: settings.h:387
@ Setting_CoolantOffset
Definition: settings.h:256
@ Setting_MacroPort8
Definition: settings.h:342
@ Setting_NGCDebugOut
Definition: settings.h:369
@ Setting_BlueToothInitOK
Definition: settings.h:251
@ Setting_DualAxisLengthFailPercent
Definition: settings.h:219
@ Setting_NetMask3
Definition: settings.h:192
void settings_restore(settings_restore_t restore_flags)
Definition: settings.c:2233
#define AXIS_SETTINGS_INCREMENT
Definition: settings.h:35
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:1852
float setting_get_float_value(const setting_detail_t *setting, uint_fast16_t offset)
Definition: settings.c:1908
void settings_write_startup_line(uint8_t idx, char *line)
Definition: settings.c:2083
bool settings_is_group_available(setting_group_t group)
Definition: settings.c:2302
const settings_restore_t settings_all
Definition: settings.c:47
setting_group_t settings_normalize_group(setting_group_t group)
Definition: settings.c:2357
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:962
struct setting_group_detail setting_group_detail_t
bool settings_read_build_info(char *line)
Definition: settings.c:2071
void(* driver_settings_load_ptr)(void)
Definition: settings.h:964
setting_group_t
Definition: settings.h:801
@ Group_Probing
12
Definition: settings.h:814
@ Group_Panel
40
Definition: settings.h:842
@ Group_General
1
Definition: settings.h:803
@ Group_All
0
Definition: settings.h:866
@ Group_Root
0
Definition: settings.h:802
@ Group_Stepper
35
Definition: settings.h:837
@ Group_UserSettings
34
Definition: settings.h:836
@ Group_ControlSignals
2
Definition: settings.h:804
@ Group_Embroidery
39
Definition: settings.h:841
@ Group_SafetyDoor
13
Definition: settings.h:815
@ Group_Spindle_ClosedLoop
8
Definition: settings.h:810
@ Group_VFD
37
Definition: settings.h:839
@ Group_Encoder4
33
Definition: settings.h:835
@ Group_ModBusUnit2
22
Definition: settings.h:824
@ Group_Encoder3
32
Definition: settings.h:834
@ Group_Encoder0
29
Definition: settings.h:831
@ Group_Plasma
10
Definition: settings.h:812
@ Group_Axis
42
Definition: settings.h:844
@ Group_Networking_Wifi
16
Definition: settings.h:818
@ Group_ModBusUnit1
21
Definition: settings.h:823
@ Group_Kinematics
41
Definition: settings.h:843
@ Group_Bluetooth
17
Definition: settings.h:819
@ Group_Axis0
43
Definition: settings.h:846
@ Group_ModBusUnit4
24
Definition: settings.h:826
@ Group_ModBusUnit3
23
Definition: settings.h:825
@ Group_ZAxis
46
Definition: settings.h:849
@ Group_ModBusUnit0
20
Definition: settings.h:822
@ Group_Homing
11
Definition: settings.h:813
@ Group_YAxis
45
Definition: settings.h:848
@ Group_Encoders
28
Definition: settings.h:830
@ Group_AuxPorts
18
Definition: settings.h:820
@ Group_AAxis
47
Definition: settings.h:851
@ Group_Encoder1
30
Definition: settings.h:832
@ Group_CANbus
38
Definition: settings.h:840
@ Group_ModBusUnit6
26
Definition: settings.h:828
@ Group_Spindle_Sync
7
Definition: settings.h:809
@ Group_Limits_DualAxis
4
Definition: settings.h:806
@ Group_ModBus
19
Definition: settings.h:821
@ Group_XAxis
44
Definition: settings.h:847
@ Group_ModBusUnit5
25
Definition: settings.h:827
@ Group_Limits
3
Definition: settings.h:805
@ Group_Spindle
6
Definition: settings.h:808
@ Group_Toolchange
9
Definition: settings.h:811
@ Group_MotorDriver
36
Definition: settings.h:838
@ Group_Coolant
5
Definition: settings.h:807
@ Group_Networking
15
Definition: settings.h:817
@ Group_Encoder2
31
Definition: settings.h:833
@ Group_Jogging
14
Definition: settings.h:816
@ Group_Unknown
99
Definition: settings.h:865
@ Group_ModBusUnit7
27
Definition: settings.h:829
setting_type_t
Definition: settings.h:892
@ Setting_IsExtended
Definition: settings.h:895
@ Setting_IsExpanded
Definition: settings.h:899
@ Setting_IsExtendedFn
Definition: settings.h:896
@ Setting_IsLegacyFn
Definition: settings.h:898
@ Setting_NonCoreFn
Definition: settings.h:894
@ Setting_IsLegacy
Definition: settings.h:897
@ Setting_IsExpandedFn
Definition: settings.h:900
@ Setting_NonCore
Definition: settings.h:893
Definition: settings.h:674
float max_rate
Definition: settings.h:676
float max_travel
Definition: settings.h:678
float acceleration
Definition: settings.h:677
float dual_axis_offset
Definition: settings.h:679
float steps_per_mm
Definition: settings.h:675
Definition: settings.h:642
float fail_length_percent
Definition: settings.h:643
float fail_distance_min
Definition: settings.h:645
float fail_distance_max
Definition: settings.h:644
Definition: settings.h:648
uint16_t debounce_delay
Definition: settings.h:654
float pulloff
Definition: settings.h:651
axes_signals_t dir_mask
Definition: settings.h:652
float seek_rate
Definition: settings.h:650
float feed_rate
Definition: settings.h:649
homing_settings_flags_t flags
Definition: settings.h:655
uint8_t locate_cycles
Definition: settings.h:653
homing_dual_axis_t dual_axis
Definition: settings.h:657
Definition: settings.h:741
ioport_bus_t invert_in
Definition: settings.h:742
ioport_bus_t pullup_disable_in
Definition: settings.h:743
ioport_bus_t od_enable_out
Definition: settings.h:745
ioport_bus_t invert_out
Definition: settings.h:744
Definition: settings.h:698
axes_signals_t invert
Definition: settings.h:700
axes_signals_t disable_pullup
Definition: settings.h:701
limit_settings_flags_t flags
Definition: settings.h:699
Limit switches struct, consists of four packed axes_signals_t structs in 32 bits.
Definition: nuts_bolts.h:156
Definition: settings.h:597
float rate
Definition: settings.h:601
parking_setting_flags_t flags
Definition: settings.h:598
float pullout_rate
Definition: settings.h:602
float pullout_increment
Definition: settings.h:603
uint8_t axis
Definition: settings.h:599
float target
Definition: settings.h:600
Definition: pid.h:31
Definition: settings.h:606
pid_values_t pid
Definition: settings.h:607
Definition: settings.h:580
float coolant_on_delay
Definition: settings.h:583
float spindle_on_delay
Definition: settings.h:582
safety_door_setting_flags_t flags
Definition: settings.h:581
Definition: settings.h:935
setting_id_t id
Definition: settings.h:936
const char * description
Definition: settings.h:937
Definition: settings.h:919
setting_id_t id
Definition: settings.h:920
setting_detail_flags_t flags
Definition: settings.h:932
void * value
Definition: settings.h:929
setting_type_t type
Definition: settings.h:928
bool(* is_available)(const struct setting_detail *setting)
Definition: settings.h:931
const char * format
Definition: settings.h:925
const char * max_value
Definition: settings.h:927
const char * name
Definition: settings.h:922
setting_group_t group
Definition: settings.h:921
setting_datatype_t datatype
Definition: settings.h:924
const char * unit
Definition: settings.h:923
void * get_value
Definition: settings.h:930
const char * min_value
Definition: settings.h:926
Definition: settings.h:969
const setting_detail_t * settings
Definition: settings.h:973
driver_settings_load_ptr load
Definition: settings.h:982
const uint8_t n_groups
Definition: settings.h:970
driver_settings_iterator_ptr iterator
Definition: settings.h:984
driver_settings_restore_ptr restore
Definition: settings.h:983
const uint16_t n_settings
Definition: settings.h:972
driver_settings_save_ptr save
Definition: settings.h:981
const setting_group_detail_t * groups
Definition: settings.h:971
const uint16_t n_descriptions
Definition: settings.h:975
struct setting_details * next
Definition: settings.h:979
settings_changed_ptr on_changed
Definition: settings.h:980
const setting_descr_t * descriptions
Definition: settings.h:976
Definition: settings.h:885
setting_group_t id
Definition: settings.h:887
bool(* is_available)(const struct setting_group_detail *group)
Definition: settings.h:889
const char * name
Definition: settings.h:888
setting_group_t parent
Definition: settings.h:886
Definition: settings.h:765
parking_settings_t parking
Definition: settings.h:795
float junction_deviation
Definition: settings.h:769
settingflags_t flags
Definition: settings.h:787
offset_lock_t offset_lock
Definition: settings.h:790
uint8_t rgb_strip1_length
Definition: settings.h:794
tool_change_settings_t tool_change
Definition: settings.h:776
float arc_tolerance
Definition: settings.h:770
spindle_settings_t spindle
Definition: settings.h:784
control_signals_t control_disable_pullup
Definition: settings.h:779
coolant_state_t coolant_invert
Definition: settings.h:780
uint8_t canbus_baud
Definition: settings.h:783
ioport_signals_t ioport
Definition: settings.h:798
reportmask_t status_report
Definition: settings.h:786
position_pid_t position
Definition: settings.h:797
limit_settings_t limits
Definition: settings.h:793
uint8_t rgb_strip0_length
Definition: settings.h:789
axes_signals_t home_invert
Definition: settings.h:781
float timezone
Definition: settings.h:772
float g73_retract
Definition: settings.h:771
uint8_t modbus_baud
Definition: settings.h:782
safety_door_settings_t safety_door
Definition: settings.h:796
uint16_t planner_buffer_blocks
Definition: settings.h:774
machine_mode_t mode
Definition: settings.h:775
control_signals_t control_invert
Definition: settings.h:778
probeflags_t probe
Definition: settings.h:788
uint32_t version
Definition: settings.h:767
stepper_settings_t steppers
Definition: settings.h:785
homing_settings_t homing
Definition: settings.h:792
fs_options_t fs_options
Definition: settings.h:791
uint16_t report_interval
Definition: settings.h:773
Definition: spindle_control.h:207
Definition: settings.h:660
axes_signals_t dir_invert
Definition: settings.h:662
uint16_t idle_lock_time
Definition: settings.h:671
axes_signals_t is_rotational
Definition: settings.h:667
float pulse_delay_microseconds
Definition: settings.h:670
axes_signals_t ganged_dir_invert
Definition: settings.h:663
axes_signals_t step_invert
Definition: settings.h:661
float pulse_microseconds
Definition: settings.h:669
axes_signals_t deenergize
Definition: settings.h:665
axes_signals_t enable_invert
Definition: settings.h:664
Definition: settings.h:756
float seek_rate
Definition: settings.h:758
float probing_distance
Definition: settings.h:760
float feed_rate
Definition: settings.h:757
toolchange_mode_t mode
Definition: settings.h:761
float pulloff_rate
Definition: settings.h:759
machine_mode_t
Definition: system.h:87
Definition: nuts_bolts.h:130
Definition: system.h:123
Definition: coolant_control.h:26
Definition: settings.h:705
uint8_t sd_mount_on_boot
Definition: settings.h:709
uint8_t value
Definition: settings.h:706
uint8_t mask
Definition: settings.h:707
uint8_t lfs_hidden
Definition: settings.h:710
uint8_t unused
Definition: settings.h:711
Definition: settings.h:626
uint16_t override_locks
Definition: settings.h:635
uint16_t single_axis_commands
Definition: settings.h:630
uint16_t force_set_origin
Definition: settings.h:632
uint16_t init_lock
Definition: settings.h:631
uint16_t keep_on_reset
Definition: settings.h:636
uint16_t unused
Definition: settings.h:638
uint16_t use_limit_switches
Definition: settings.h:637
uint16_t manual
Definition: settings.h:634
uint16_t value
Definition: settings.h:627
uint16_t two_switches
Definition: settings.h:633
uint16_t enabled
Definition: settings.h:629
Definition: settings.h:610
uint8_t enabled
Definition: settings.h:613
uint8_t override_locks
Definition: settings.h:618
uint8_t keep_on_reset
Definition: settings.h:619
uint8_t manual
Definition: settings.h:617
uint8_t value
Definition: settings.h:611
uint8_t single_axis_commands
Definition: settings.h:614
uint8_t use_limit_switches
Definition: settings.h:620
uint8_t init_lock
Definition: settings.h:615
uint8_t force_set_origin
Definition: settings.h:616
Definition: settings.h:726
uint8_t bit1
Definition: settings.h:731
uint8_t bit7
Definition: settings.h:737
uint8_t bit6
Definition: settings.h:736
uint8_t bit0
Definition: settings.h:730
uint8_t bit5
Definition: settings.h:735
uint8_t value
Definition: settings.h:727
uint8_t mask
Definition: settings.h:728
uint8_t bit2
Definition: settings.h:732
uint8_t bit3
Definition: settings.h:733
uint8_t bit4
Definition: settings.h:734
Definition: settings.h:685
uint8_t check_at_init
Definition: settings.h:690
uint8_t unassigned
Definition: settings.h:694
uint8_t value
Definition: settings.h:686
uint8_t jog_soft_limited
Definition: settings.h:691
uint8_t two_switches
Definition: settings.h:692
uint8_t soft_enabled
Definition: settings.h:689
uint8_t hard_enabled
Definition: settings.h:688
uint8_t hard_disabled_rotary
Definition: settings.h:693
Definition: settings.h:715
uint8_t g59_1
Definition: settings.h:719
uint8_t g59_3
Definition: settings.h:721
uint8_t value
Definition: settings.h:716
uint8_t mask
Definition: settings.h:717
uint8_t encoder_spindle
Definition: settings.h:722
uint8_t g59_2
Definition: settings.h:720
Definition: settings.h:586
uint8_t enabled
Definition: settings.h:589
uint8_t unassigned
Definition: settings.h:592
uint8_t value
Definition: settings.h:587
uint8_t enable_override_control
Definition: settings.h:591
uint8_t offset_lock
Definition: settings.h:593
uint8_t deactivate_upon_init
Definition: settings.h:590
Definition: settings.h:539
uint8_t disable_probe_pullup
Definition: settings.h:543
uint8_t unassigned
Definition: settings.h:548
uint8_t disable_connected_pullup
Definition: settings.h:545
uint8_t invert_probe_pin
Definition: settings.h:542
uint8_t value
Definition: settings.h:540
uint8_t allow_feed_override
Definition: settings.h:546
uint8_t invert_connected_pin
Definition: settings.h:544
uint8_t enable_protection
Definition: settings.h:547
Definition: settings.h:552
uint16_t buffer_state
Definition: settings.h:556
uint16_t unassigned
Definition: settings.h:567
uint16_t parser_state
Definition: settings.h:564
uint16_t alarm_substate
Definition: settings.h:565
uint16_t mask
Definition: settings.h:553
uint16_t sync_on_wco_change
Definition: settings.h:563
uint16_t overrides
Definition: settings.h:561
uint16_t line_numbers
Definition: settings.h:557
uint16_t probe_coordinates
Definition: settings.h:562
uint16_t feed_speed
Definition: settings.h:558
uint16_t machine_position
Definition: settings.h:555
uint16_t run_substate
Definition: settings.h:566
uint16_t work_coord_offset
Definition: settings.h:560
uint16_t pin_state
Definition: settings.h:559
Definition: settings.h:571
uint8_t keep_coolant_on
Definition: settings.h:575
uint8_t unassigned
Definition: settings.h:576
uint8_t value
Definition: settings.h:572
uint8_t ignore_when_idle
Definition: settings.h:574
Definition: settings.h:908
uint8_t value
Definition: settings.h:909
uint8_t increment
Definition: settings.h:914
uint8_t allow_null
Definition: settings.h:912
uint8_t reboot_required
Definition: settings.h:911
uint8_t subgroups
Definition: settings.h:913
uint8_t unused
Definition: settings.h:915
Definition: settings.h:903
float fvalue
Definition: settings.h:905
uint32_t ivalue
Definition: settings.h:904
Definition: settings.h:520
uint16_t disable_laser_during_hold
Definition: settings.h:527
uint16_t restore_overrides
Definition: settings.h:524
uint16_t g92_is_volatile
Definition: settings.h:532
uint16_t no_unlock_after_estop
Definition: settings.h:535
uint16_t sleep_enable
Definition: settings.h:526
uint16_t no_restore_position_after_M6
Definition: settings.h:534
uint16_t report_inches
Definition: settings.h:523
uint16_t legacy_rt_commands
Definition: settings.h:529
uint16_t value
Definition: settings.h:521
uint16_t restore_after_feed_hold
Definition: settings.h:530
uint16_t force_initialization_alarm
Definition: settings.h:528
uint16_t dst_active
Definition: settings.h:525
uint16_t ngc_debug_out
Definition: settings.h:531
uint16_t compatibility_level
Definition: settings.h:533
Definition: settings.h:940
uint8_t spindle
Definition: settings.h:943
uint8_t unassigned
Definition: settings.h:944
uint8_t value
Definition: settings.h:941
Definition: settings.h:503
uint8_t unassigned
Definition: settings.h:511
uint8_t build_info
Definition: settings.h:509
uint8_t driver_parameters
Definition: settings.h:510
uint8_t startup_lines
Definition: settings.h:508
uint8_t parameters
Definition: settings.h:507
uint8_t mask
Definition: settings.h:504
uint8_t defaults
Definition: settings.h:506