📝 Add sections for schema

MarlinFirmware/Marlin#24528
This commit is contained in:
Scott Lahteine 2022-08-02 01:59:56 -05:00
parent c0e4a07015
commit 48ffab7d02
599 changed files with 40103 additions and 8744 deletions

View file

@ -32,6 +32,24 @@
*/
#define CONFIGURATION_ADV_H_VERSION 02010100
// @section develop
/**
* Configuration Dump to JSON and INI format
*
* Dump the configuration as part of the build. (See signature.py)
* Output files are saved with the build (e.g., .pio/build/mega2560).
*
* See `build_all_examples --ini` as an example of config.ini archiving.
*
* 1 = marlin_config.json - Dictionary containing the configuration.
* This file is also generated for CONFIGURATION_EMBEDDING.
* 2 = config.ini - File format for PlatformIO preprocessing.
* 3 = schema.json - The entire configuration schema. (13 = pattern groups)
* 4 = schema.yml - The entire configuration schema.
*/
//#define CONFIG_DUMP // :[1:'JSON', 2:'config.ini', 3:'schema.json', 4:'schema.yml']
//===========================================================================
//============================= Thermal Settings ============================
//===========================================================================
@ -2560,6 +2578,8 @@
#endif
#endif // HAS_MULTI_EXTRUDER
// @section advanced pause
/**
* Advanced Pause for Filament Change
* - Adds the G-code M600 Filament Change to initiate a filament change.
@ -2618,13 +2638,12 @@
#define FILAMENT_UNLOAD_ALL_EXTRUDERS // Allow M702 to unload all extruders above a minimum target temp (as set by M302)
#endif
// @section tmc
/**
* TMC26X Stepper Driver options
*
* The TMC26XStepper library is required for this stepper driver.
* https://github.com/trinamic/TMC26XStepper
* @section tmc/tmc26x
*/
#if HAS_DRIVER(TMC26X)
@ -2762,8 +2781,6 @@
#endif // TMC26X
// @section tmc_smart
/**
* To use TMC2130, TMC2160, TMC2660, TMC5130, TMC5160 stepper drivers in SPI mode
* connect your SPI pins to the hardware SPI interface on your board and define
@ -2779,6 +2796,7 @@
*
* TMCStepper library is required to use TMC stepper drivers.
* https://github.com/teemuatlut/TMCStepper
* @section tmc/config
*/
#if HAS_TRINAMIC_CONFIG
@ -3002,6 +3020,8 @@
//#define E7_HOLD_MULTIPLIER 0.5
#endif
// @section tmc/spi
/**
* Override default SPI pins for TMC2130, TMC2160, TMC2660, TMC5130 and TMC5160 drivers here.
* The default pins can be found in your board's pins file.
@ -3039,6 +3059,8 @@
//#define TMC_SW_MISO -1
//#define TMC_SW_SCK -1
// @section tmc/serial
/**
* Four TMC2209 drivers can use the same HW/SW serial port with hardware configured addresses.
* Set the address using jumpers on pins MS1 and MS2.
@ -3074,6 +3096,8 @@
//#define E6_SLAVE_ADDRESS 0
//#define E7_SLAVE_ADDRESS 0
// @section tmc/smart
/**
* Software enable
*
@ -3082,6 +3106,8 @@
*/
//#define SOFTWARE_DRIVER_ENABLE
// @section tmc/stealthchop
/**
* TMC2130, TMC2160, TMC2208, TMC2209, TMC5130 and TMC5160 only
* Use Trinamic's ultra quiet stepping mode.
@ -3136,6 +3162,8 @@
//#define CHOPPER_TIMING_E6 CHOPPER_TIMING_E
//#define CHOPPER_TIMING_E7 CHOPPER_TIMING_E
// @section tmc/status
/**
* Monitor Trinamic drivers
* for error conditions like overtemperature and short to ground.
@ -3155,6 +3183,8 @@
#define STOP_ON_ERROR
#endif
// @section tmc/hybrid
/**
* TMC2130, TMC2160, TMC2208, TMC2209, TMC5130 and TMC5160 only
* The driver will switch to spreadCycle when stepper speed is over HYBRID_THRESHOLD.
@ -3211,6 +3241,7 @@
* homing and adds a guard period for endstop triggering.
*
* Comment *_STALL_SENSITIVITY to disable sensorless homing for that axis.
* @section tmc/stallguard
*/
//#define SENSORLESS_HOMING // StallGuard capable drivers only
@ -3234,6 +3265,8 @@
//#define IMPROVE_HOMING_RELIABILITY
#endif
// @section tmc/config
/**
* TMC Homing stepper phase.
*
@ -3314,7 +3347,7 @@
#define I2C_SLAVE_ADDRESS 0 // Set a value from 8 to 127 to act as a slave
#endif
// @section extras
// @section photo
/**
* Photo G-code
@ -3357,6 +3390,8 @@
#endif
#endif
// @section cnc
/**
* Spindle & Laser control
*
@ -3561,6 +3596,8 @@
#define COOLANT_FLOOD_INVERT false // Set "true" if the on/off function is reversed
#endif
// @section filament width
/**
* Filament Width Sensor
*
@ -3594,6 +3631,8 @@
//#define FILAMENT_LCD_DISPLAY
#endif
// @section power
/**
* Power Monitor
* Monitor voltage (V) and/or current (A), and -when possible- power (W)
@ -3617,6 +3656,8 @@
#define POWER_MONITOR_VOLTAGE_OFFSET 0 // Offset (in volts) applied to the calculated voltage
#endif
// @section safety
/**
* Stepper Driver Anti-SNAFU Protection
*
@ -3626,6 +3667,8 @@
*/
//#define DISABLE_DRIVER_SAFE_POWER_PROTECT
// @section cnc
/**
* CNC Coordinate Systems
*
@ -3642,6 +3685,8 @@
*/
//#define CNC_DRILLING_CYCLE
// @section reporting
/**
* Auto-report fan speed with M123 S<seconds>
* Requires fans with tachometer pins
@ -3669,6 +3714,8 @@
//#define M115_GEOMETRY_REPORT
#endif
// @section security
/**
* Expected Printer Check
* Add the M16 G-code to compare a string to the MACHINE_NAME.
@ -3676,6 +3723,8 @@
*/
//#define EXPECTED_PRINTER_CHECK
// @section volumetrics
/**
* Disable all Volumetric extrusion options
*/
@ -3704,14 +3753,7 @@
#endif
#endif
/**
* Enable this option for a leaner build of Marlin that removes all
* workspace offsets, simplifying coordinate transformations, leveling, etc.
*
* - M206 and M428 are disabled.
* - G92 will revert to its behavior from Marlin 1.0.
*/
//#define NO_WORKSPACE_OFFSETS
// @section reporting
// Extra options for the M114 "Current Position" report
#define M114_DETAIL // Use 'M114` for details to check planner calculations
@ -3720,6 +3762,8 @@
//#define REPORT_FAN_CHANGE // Report the new fan speed when changed by M106 (and others)
// @section gcode
/**
* Spend 28 bytes of SRAM to optimize the G-code parser
*/
@ -3737,6 +3781,15 @@
//#define REPETIER_GCODE_M360 // Add commands originally from Repetier FW
/**
* Enable this option for a leaner build of Marlin that removes all
* workspace offsets, simplifying coordinate transformations, leveling, etc.
*
* - M206 and M428 are disabled.
* - G92 will revert to its behavior from Marlin 1.0.
*/
//#define NO_WORKSPACE_OFFSETS
/**
* CNC G-code options
* Support CNC-style G-code dialects used by laser cutters, drawing machine cams, etc.
@ -3753,6 +3806,8 @@
#endif
//#define G0_ANGULAR_FEEDRATE 2700 // (°/min)
// @section gcode
/**
* Startup commands
*
@ -3777,6 +3832,8 @@
* Up to 25 may be defined, but the actual number is LCD-dependent.
*/
// @section custom main menu
#if ENABLED(UBL)
#define CUSTOM_MENU_MAIN
#endif
@ -3810,6 +3867,8 @@
//#define MAIN_MENU_ITEM_5_CONFIRM
#endif
// @section custom config menu
// Custom Menu: Configuration Menu
//#define CUSTOM_MENU_CONFIG
#if ENABLED(CUSTOM_MENU_CONFIG)
@ -3840,6 +3899,8 @@
//#define CONFIG_MENU_ITEM_5_CONFIRM
#endif
// @section custom buttons
/**
* User-defined buttons to run custom G-code.
* Up to 25 may be defined.
@ -3871,6 +3932,8 @@
#endif
#endif
// @section host
/**
* Host Action Commands
*
@ -3896,6 +3959,8 @@
//#define HOST_SHUTDOWN_MENU_ITEM // Add a menu item that tells the host to shut down
#endif
// @section extras
/**
* Cancel Objects
*
@ -3917,6 +3982,7 @@
* Alternative Supplier: https://reliabuild3d.com/
*
* Reliabuild encoders have been modified to improve reliability.
* @section i2c encoders
*/
//#define I2C_POSITION_ENCODERS
@ -3988,6 +4054,7 @@
/**
* Analog Joystick(s)
* @section joystick
*/
//#define JOYSTICK
#if ENABLED(JOYSTICK)
@ -4012,6 +4079,7 @@
* Modern replacement for the Prusa TMC_Z_CALIBRATION.
* Adds capability to work with any adjustable current drivers.
* Implemented as G34 because M915 is deprecated.
* @section calibrate
*/
//#define MECHANICAL_GANTRY_CALIBRATION
#if ENABLED(MECHANICAL_GANTRY_CALIBRATION)
@ -4029,6 +4097,7 @@
/**
* Instant freeze / unfreeze functionality
* Potentially useful for emergency stop that allows being resumed.
* @section interface
*/
//#define FREEZE_FEATURE
#if ENABLED(FREEZE_FEATURE)
@ -4041,6 +4110,7 @@
*
* Add support for a low-cost 8x8 LED Matrix based on the Max7219 chip as a realtime status display.
* Requires 3 signal wires. Some useful debug options are included to demonstrate its usage.
* @section debug matrix
*/
//#define MAX7219_DEBUG
#if ENABLED(MAX7219_DEBUG)
@ -4079,6 +4149,7 @@
* Support for Synchronized Z moves when used with NanoDLP. G0/G1 axis moves will
* output a "Z_move_comp" string to enable synchronization with DLP projector exposure.
* This feature allows you to use [[WaitForDoneMessage]] instead of M400 commands.
* @section nanodlp
*/
//#define NANODLP_Z_SYNC
#if ENABLED(NANODLP_Z_SYNC)
@ -4087,6 +4158,7 @@
/**
* Ethernet. Use M552 to enable and set the IP address.
* @section network
*/
#if HAS_ETHERNET
#define MAC_ADDRESS { 0xDE, 0xAD, 0xBE, 0xEF, 0xF0, 0x0D } // A MAC address unique to your network
@ -4114,6 +4186,8 @@
//#include "Configuration_Secure.h" // External file with WiFi SSID / Password
#endif
// @section multi-material
/**
* Průša Multi-Material Unit (MMU)
* Enable in Configuration.h
@ -4221,6 +4295,7 @@
/**
* Advanced Print Counter settings
* @section stats
*/
#if ENABLED(PRINTCOUNTER)
#define SERVICE_WARNING_BUZZES 3