docs: Add more links to G-Codes.md

Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
This commit is contained in:
Kevin O'Connor 2020-11-23 11:10:02 -05:00
parent 90e1a87a56
commit d1173d59c9
1 changed files with 233 additions and 192 deletions

View File

@ -43,15 +43,16 @@ possible G-Code command. Instead, Klipper prefers human readable
["extended G-Code commands"](#extended-g-code-commands).
If one requires a less common G-Code command then it may be possible
to implement it with a custom Klipper gcode_macro (see
[config reference](Config_Reference.md#gcode_macro) for details). For
to implement it with a custom
[gcode_macro config section](Config_Reference.md#gcode_macro). For
example, one might use this to implement: `G12`, `G29`, `G30`, `G31`,
`M42`, `M80`, `M81`, `T1`, etc.
## G-Code SD card commands
Klipper also supports the following standard G-Code commands if the
"virtual_sdcard" config section is enabled:
[virtual_sdcard config section](Config_Reference.md#virtual_sdcard) is
enabled:
- List SD card: `M20`
- Initialize SD card: `M21`
- Select SD file: `M23 <filename>`
@ -63,26 +64,28 @@ Klipper also supports the following standard G-Code commands if the
In addition, the following extended commands are availble when the
"virtual_sdcard" config section is enabled.
- Load a file and start SD print: `SDCARD_PRINT_FILE FILENAME=<filename>`
- Unload file and clear SD state: `SDCARD_RESET_FILE`
- Unload file and clear SD state: `SDCARD_RESET_FILE`
## G-Code arcs
The following standard G-Code commands are available if a "gcode_arcs"
config section is enabled:
The following standard G-Code commands are available if a
[gcode_arcs config section](Config_Reference.md#gcode_arcs) is
enabled:
- Controlled Arc Move (G2 or G3): `G2 [X<pos>] [Y<pos>] [Z<pos>]
[E<pos>] [F<speed>] I<value> J<value>`
## G-Code firmware retraction
The following standard G-Code commands are available if a
"firmware_retraction" config section is enabled:
[firmware_retraction config section](Config_Reference.md#firmware_retraction)
is enabled:
- Retract: `G10`
- Unretract: `G11`
## G-Code display commands
The following standard G-Code commands are available if a "display"
config section is enabled:
The following standard G-Code commands are available if a
[display config section](Config_Reference.md#display) is enabled:
- Display Message: `M117 <message>`
- Set build percentage: `M73 P<percent>`
@ -231,8 +234,10 @@ The following standard commands are supported:
## G-Code Macro Commands
The following command is available when a "gcode_macro" config section
is enabled:
The following command is available when a
[gcode_macro config section](Config_Reference.md#gcode_macro) is
enabled (also see the
[command templates guide](Command_Templates.md)):
- `SET_GCODE_VARIABLE MACRO=<macro_name> VARIABLE=<name>
VALUE=<value>`: This command allows one to change the value of a
gcode_macro variable at run-time. The provided VALUE is parsed as a
@ -240,24 +245,27 @@ is enabled:
## Custom Pin Commands
The following command is available when an "output_pin" config section
is enabled:
The following command is available when an
[output_pin config section](Config_Reference.md#output_pin) is
enabled:
- `SET_PIN PIN=config_name VALUE=<value> CYCLE_TIME=<cycle_time>`
Note: Hardware PWM does not currently support the CYCLE_TIME parameter and will
use the cycle time defined in the config.
Note: Hardware PWM does not currently support the CYCLE_TIME parameter
and will use the cycle time defined in the config.
## Manually Controlled Fans Commands
The following command is available when a "fan_generic" config section
is enabled:
The following command is available when a
[fan_generic config section](Config_Reference.md#fan_generic) is
enabled:
- `SET_FAN_SPEED FAN=config_name SPEED=<speed>` This command sets
the speed of a fan. <speed> must be between 0.0 and 1.0.
## Neopixel and Dotstar Commands
The following command is available when "neopixel" or "dotstar" config
sections are enabled:
The following command is available when a
[neopixel config section](Config_Reference.md#neopixel) or
[dotstar config section](Config_Reference.md#dotstar) is enabled:
- `SET_LED LED=<config_name> RED=<value> GREEN=<value> BLUE=<value>
WHITE=<value> [INDEX=<index>] [TRANSMIT=0]`: This sets the LED
output. Each color <value> must be between 0.0 and 1.0. The WHITE
@ -272,16 +280,17 @@ sections are enabled:
## Servo Commands
The following commands are available when a "servo" config section is
enabled:
The following commands are available when a
[servo config section](Config_Reference.md#servo) is enabled:
- `SET_SERVO SERVO=config_name [ANGLE=<degrees> | WIDTH=<seconds>]`:
Set the servo position to the given angle (in degrees) or pulse
width (in seconds). Use `WIDTH=0` to disable the servo output.
## Manual stepper Commands
The following command is available when a "manual_stepper" config
section is enabled:
The following command is available when a
[manual_stepper config section](Config_Reference.md#manual_stepper) is
enabled:
- `MANUAL_STEPPER STEPPER=config_name [ENABLE=[0|1]]
[SET_POSITION=<pos>] [SPEED=<speed>] [ACCEL=<accel>]
[MOVE=<pos> [STOP_ON_ENDSTOP=[1|2|-1|-2]] [SYNC=0]]`: This command
@ -303,8 +312,9 @@ section is enabled:
## Extruder stepper Commands
The following command is available when an "extruder_stepper" config
section is enabled:
The following command is available when an
[extruder_stepper config section](Config_Reference.md#extruder_stepper)
is enabled:
- `SYNC_STEPPER_TO_EXTRUDER STEPPER=<extruder_stepper config_name>
[EXTRUDER=<extruder config_name>]`: This command will cause the given
STEPPER to become synchronized to the given EXTRUDER, overriding
@ -312,15 +322,16 @@ section is enabled:
## Probe
The following commands are available when a "probe" config section is
enabled:
The following commands are available when a
[probe config section](Config_Reference.md#probe) is enabled (also see
the [probe calibrate guide](Probe_Calibrate.md)):
- `PROBE [PROBE_SPEED=<mm/s>] [LIFT_SPEED=<mm/s>] [SAMPLES=<count>]
[SAMPLE_RETRACT_DIST=<mm>] [SAMPLES_TOLERANCE=<mm>]
[SAMPLES_TOLERANCE_RETRIES=<count>]
[SAMPLES_RESULT=median|average]`: Move the nozzle downwards until
the probe triggers. If any of the optional parameters are provided
they override their equivalent setting in the probe config section
(see [config reference](Config_Reference.md#probe) for details).
they override their equivalent setting in the
[probe config section](Config_Reference.md#probe).
- `QUERY_PROBE`: Report the current status of the probe ("triggered"
or "open").
- `PROBE_ACCURACY [PROBE_SPEED=<mm/s>] [SAMPLES=<count>]
@ -339,8 +350,9 @@ enabled:
## BLTouch
The following command is available when a "bltouch" config section is
enabled:
The following command is available when a
[bltouch config section](Config_Reference.md#bltouch) is enabled (also
see the [BL-Touch guide](BLTouch.md)):
- `BLTOUCH_DEBUG COMMAND=<command>`: This sends a command to the
BLTouch. It may be useful for debugging. Available commands are:
`pin_down`, `touch_mode`, `pin_up`, `self_test`, `reset`,
@ -352,12 +364,11 @@ enabled:
- `BLTOUCH_STORE MODE=<output_mode>`: This stores an output mode in the
EEPROM of a BLTouch V3.1 Available output_modes are: `5V`, `OD`
See [Working with the BL-Touch](BLTouch.md) for more details.
## Delta Calibration
The following commands are available when the "delta_calibrate" config
section is enabled:
The following commands are available when the
[delta_calibrate config section](Config_Reference.md#linear-delta-kinematics)
is enabled (also see the [delta calibrate guide](Delta_Calibrate.md)):
- `DELTA_CALIBRATE [METHOD=manual] [<probe_parameter>=<value>]`: This
command will probe seven points on the bed and recommend updated
endstop positions, tower angles, and radius. See the PROBE command
@ -370,8 +381,8 @@ section is enabled:
## Bed Tilt
The following commands are available when the "bed_tilt" config
section is enabled:
The following commands are available when the
[bed_tilt config section](Config_Reference.md#bed_tilt) is enabled:
- `BED_TILT_CALIBRATE [METHOD=manual] [<probe_parameter>=<value>]`:
This command will probe the points specified in the config and then
recommend updated x and y tilt adjustments. See the PROBE command
@ -382,8 +393,9 @@ section is enabled:
## Mesh Bed Leveling
The following commands are available when the "bed_mesh" config
section is enabled:
The following commands are available when the
[bed_mesh config section](Config_Reference.md#bed_mesh) is enabled
(also see the [bed mesh guide](Bed_Mesh.md)):
- `BED_MESH_CALIBRATE [METHOD=manual] [<probe_parameter>=<value>]
[<mesh_parameter>=<value>]`:
This command probes the bed using generated points specified by the
@ -415,18 +427,22 @@ section is enabled:
## Bed Screws Helper
The following commands are available when the "bed_screws" config
section is enabled:
The following commands are available when the
[bed_screws config section](Config_Reference.md#bed_screws) is enabled
(also see the
[manual level guide](Manual_Level.md#adjusting-bed-leveling-screws)):
- `BED_SCREWS_ADJUST`: This command will invoke the bed screws
adjustment tool. It will command the nozzle to different locations
(as defined in the config file) and allow one to make adjustments to
the bed screws so that the bed is a constant distance from the
nozzle.
## Bed Screws Tilt adjust Helper
## Bed Screws Tilt Adjust Helper
The following commands are available when the "screws_tilt_adjust"
config section is enabled:
The following commands are available when the
[screws_tilt_adjust config section](Config_Reference.md#screws_tilt_adjust)
is enabled (also see the
[manual level guide](Manual_Level.md#adjusting-bed-leveling-screws-using-the-bed-probe)):
- `SCREWS_TILT_CALCULATE [<probe_parameter>=<value>]`: This command
will invoke the bed screws adjustment tool. It will command the
nozzle to different locations (as defined in the config file)
@ -437,8 +453,8 @@ config section is enabled:
## Z Tilt
The following commands are available when the "z_tilt" config section
is enabled:
The following commands are available when the
[z_tilt config section](Config_Reference.md#z_tilt) is enabled:
- `Z_TILT_ADJUST [<probe_parameter>=<value>]`: This command will probe
the points specified in the config and then make independent
adjustments to each Z stepper to compensate for tilt. See the PROBE
@ -446,15 +462,18 @@ is enabled:
## Dual Carriages
The following command is available when the "dual_carriage" config
section is enabled:
The following command is available when the
[dual_carriage config section](Config_Reference.md#dual_carriage) is
enabled:
- `SET_DUAL_CARRIAGE CARRIAGE=[0|1]`: This command will set the active
carriage. It is typically invoked from the activate_gcode and
deactivate_gcode fields in a multiple extruder configuration.
## TMC2130, TMC2660, TMC2208, TMC2209 and TMC5160
The following commands are available when any of the "tmcXXXX" config sections is enabled:
The following commands are available when any of the
[tmcXXXX config sections](Config_Reference.md#tmc-stepper-driver-configuration)
are enabled:
- `DUMP_TMC STEPPER=<name>`: This command will read the TMC driver
registers and report their values.
- `INIT_TMC STEPPER=<name>`: This command will intitialize the TMC
@ -473,8 +492,9 @@ The following commands are available when any of the "tmcXXXX" config sections i
## Endstop adjustments by stepper phase
The following commands are available when an "endstop_phase" config
section is enabled:
The following commands are available when an
[endstop_phase config section](Config_Reference.md#endstop_phase) is
enabled (also see the [endstop phase guide](Endstop_Phase.md)):
- `ENDSTOP_PHASE_CALIBRATE [STEPPER=<config_name>]`: If no STEPPER
parameter is provided then this command will reports statistics on
endstop stepper phases during past homing operations. When a STEPPER
@ -484,8 +504,9 @@ section is enabled:
## Force movement
The following commands are available when the "force_move" config
section is enabled:
The following commands are available when the
[force_move config section](Config_Reference.md#force_move) is
enabled:
- `FORCE_MOVE STEPPER=<config_name> DISTANCE=<value> VELOCITY=<value>
[ACCEL=<value>]`: This command will forcibly move the given stepper
the given distance (in mm) at the given constant velocity (in
@ -512,130 +533,144 @@ section is enabled:
## Send message (respond) to host
The following commands are availabe when the "respond" config section is
enabled.
- `M118 <message>`: echo the message prepended with the configured default
prefix (or `echo: ` if no prefix is configured).
- `RESPOND MSG="<message>"`: echo the message prepended with the configured default
prefix (or `echo: ` if no prefix is configured).
- `RESPOND TYPE=echo MSG="<message>"`: echo the message prepended with `echo: `.
- `RESPOND TYPE=command MSG="<message>"`: echo the message prepended with `// `.
Octopint can be configured to respond to these messages (e.g.
`RESPOND TYPE=command MSG=action:pause`).
- `RESPOND TYPE=error MSG="<message>"`: echo the message prepended with `!! `.
- `RESPOND PREFIX=<prefix> MSG="<message>"`: echo the message prepended with `<prefix>`
(The `PREFIX` parameter will take priority over the `TYPE` parameter)
The following commands are availabe when the
[respond config section](Config_Reference.md#respond) is enabled.
- `M118 <message>`: echo the message prepended with the configured
default prefix (or `echo: ` if no prefix is configured).
- `RESPOND MSG="<message>"`: echo the message prepended with the
configured default prefix (or `echo: ` if no prefix is configured).
- `RESPOND TYPE=echo MSG="<message>"`: echo the message prepended with
`echo: `.
- `RESPOND TYPE=command MSG="<message>"`: echo the message prepended
with `// `. Octopint can be configured to respond to these messages
(e.g. `RESPOND TYPE=command MSG=action:pause`).
- `RESPOND TYPE=error MSG="<message>"`: echo the message prepended
with `!! `.
- `RESPOND PREFIX=<prefix> MSG="<message>"`: echo the message
prepended with `<prefix>`. (The `PREFIX` parameter will take
priority over the `TYPE` parameter)
## Pause Resume
The following commands are available when the "pause_resume" config section
is enabled:
- `PAUSE`: Pauses the current print. The current position is captured for
restoration upon resume.
- `RESUME [VELOCITY=<value>]`: Resumes the print from a pause, first restoring
the previously captured position. The VELOCITY parameter determines the speed
at which the tool should return to the original captured position.
- `CLEAR_PAUSE`: Clears the current paused state without resuming the print.
This is useful if one decides to cancel a print after a PAUSE. It is recommended
to add this to your start gcode to make sure the paused state is fresh for each
print.
The following commands are available when the
[pause_resume config section](Config_Reference.md#pause_resume) is
enabled:
- `PAUSE`: Pauses the current print. The current position is captured
for restoration upon resume.
- `RESUME [VELOCITY=<value>]`: Resumes the print from a pause, first
restoring the previously captured position. The VELOCITY parameter
determines the speed at which the tool should return to the original
captured position.
- `CLEAR_PAUSE`: Clears the current paused state without resuming the
print. This is useful if one decides to cancel a print after a
PAUSE. It is recommended to add this to your start gcode to make
sure the paused state is fresh for each print.
## Filament Sensor
The following command is available when the "filament_switch_sensor" config
section is enabled.
- `QUERY_FILAMENT_SENSOR SENSOR=<sensor_name>`: Queries the current status of
the filament sensor. The data displayed on the terminal will depend on the
sensor type defined in the confguration.
- `SET_FILAMENT_SENSOR SENSOR=<sensor_name> ENABLE=[0|1]`: Sets the
filament sensor on/off. If ENABLE is set to 0, the filament sensor will
be disabled, if set to 1 it is enabled.
The following command is available when the
[filament_switch_sensor config section](Config_Reference.md#filament_switch_sensor)
is enabled.
- `QUERY_FILAMENT_SENSOR SENSOR=<sensor_name>`: Queries the current
status of the filament sensor. The data displayed on the terminal
will depend on the sensor type defined in the confguration.
- `SET_FILAMENT_SENSOR SENSOR=<sensor_name> ENABLE=[0|1]`: Sets the
filament sensor on/off. If ENABLE is set to 0, the filament sensor
will be disabled, if set to 1 it is enabled.
## Firmware Retraction
The following commands are available when the "firmware_retraction"
config section is enabled. These commands allow you to utilise the
firmware retraction feature available in many slicers, to reduce
stringing during non-extrusion moves from one part of the print to
another. Appropriately configuring pressure advance reduces the length
of retraction required.
- `SET_RETRACTION [RETRACT_LENGTH=<mm>] [RETRACT_SPEED=<mm/s>]
[UNRETRACT_EXTRA_LENGTH=<mm>] [UNRETRACT_SPEED=<mm/s>]`: Adjust the
parameters used by firmware retraction. RETRACT_LENGTH determines
the length of filament to retract and unretract. The speed of
retraction is adjusted via RETRACT_SPEED, and is typically set
relatively high. The speed of unretraction is adjusted via
UNRETRACT_SPEED, and is not particularly critical, although often
lower than RETRACT_SPEED. In some cases it is useful to add a small
amount of additional length on unretraction, and this is set via
UNRETRACT_EXTRA_LENGTH. SET_RETRACTION is commonly set as part of
slicer per-filament configuration, as different filaments require
different parameter settings.
- `GET_RETRACTION`: Queries the current parameters used by firmware
retraction and displays them on the terminal.
- `G10`: Retracts the extruder using the currently configured
parameters.
- `G11`: Unretracts the extruder using the currently configured
parameters.
The following commands are available when the
[firmware_retraction config section](Config_Reference.md#firmware_retraction)
is enabled. These commands allow you to utilise the firmware
retraction feature available in many slicers, to reduce stringing
during non-extrusion moves from one part of the print to another.
Appropriately configuring pressure advance reduces the length of
retraction required.
- `SET_RETRACTION [RETRACT_LENGTH=<mm>] [RETRACT_SPEED=<mm/s>]
[UNRETRACT_EXTRA_LENGTH=<mm>] [UNRETRACT_SPEED=<mm/s>]`: Adjust the
parameters used by firmware retraction. RETRACT_LENGTH determines
the length of filament to retract and unretract. The speed of
retraction is adjusted via RETRACT_SPEED, and is typically set
relatively high. The speed of unretraction is adjusted via
UNRETRACT_SPEED, and is not particularly critical, although often
lower than RETRACT_SPEED. In some cases it is useful to add a small
amount of additional length on unretraction, and this is set via
UNRETRACT_EXTRA_LENGTH. SET_RETRACTION is commonly set as part of
slicer per-filament configuration, as different filaments require
different parameter settings.
- `GET_RETRACTION`: Queries the current parameters used by firmware
retraction and displays them on the terminal.
- `G10`: Retracts the extruder using the currently configured
parameters.
- `G11`: Unretracts the extruder using the currently configured
parameters.
## Skew Correction
The following commands are available when the "skew_correction" config
section is enabled.
- `SET_SKEW [XY=<ac_length,bd_length,ad_length>] [XZ=<ac,bd,ad>]
[YZ=<ac,bd,ad>] [CLEAR=<0|1>]`: Configures the [skew_correction] module
with measurements (in mm) taken from a calibration print. One may
enter measurements for any combination of planes, planes not entered will
retain their current value. If `CLEAR=1` is entered then all skew
correction will be disabled.
- `GET_CURRENT_SKEW`: Reports the current printer skew for each plane in
both radians and degrees. The skew is calculated based on parameters
provided via the `SET_SKEW` gcode.
- `CALC_MEASURED_SKEW [AC=<ac_length>] [BD=<bd_length>] [AD=<ad_length>]`:
Calculates and reports the skew (in radians and degrees) based on a
measured print. This can be useful for determining the printer's current
skew after correction has been applied. It may also be useful before
correction is applied to determine if skew correction is necessary. See
skew_correction.md for details on skew calibration objects and
measurements.
- `SKEW_PROFILE [LOAD=<name>] [SAVE=<name>] [REMOVE=<name>]`: Profile
management for skew_correction. LOAD will restore skew state from the
profile matching the supplied name. SAVE will save the current skew state
to a profile matching the supplied name. Remove will delete the profile
matching the supplied name from persistent memory. Note that after SAVE
or REMOVE operations have been run the SAVE_CONFIG gcode must be run
to make the changes to peristent memory permanent.
The following commands are available when the
[skew_correction config section](Config_Reference.md#skew_correction)
is enabled (also see the [skew correction guide](skew_correction.md)):
- `SET_SKEW [XY=<ac_length,bd_length,ad_length>] [XZ=<ac,bd,ad>]
[YZ=<ac,bd,ad>] [CLEAR=<0|1>]`: Configures the [skew_correction]
module with measurements (in mm) taken from a calibration print.
One may enter measurements for any combination of planes, planes not
entered will retain their current value. If `CLEAR=1` is entered
then all skew correction will be disabled.
- `GET_CURRENT_SKEW`: Reports the current printer skew for each plane
in both radians and degrees. The skew is calculated based on
parameters provided via the `SET_SKEW` gcode.
- `CALC_MEASURED_SKEW [AC=<ac_length>] [BD=<bd_length>]
[AD=<ad_length>]`: Calculates and reports the skew (in radians and
degrees) based on a measured print. This can be useful for
determining the printer's current skew after correction has been
applied. It may also be useful before correction is applied to
determine if skew correction is necessary. See skew_correction.md
for details on skew calibration objects and measurements.
- `SKEW_PROFILE [LOAD=<name>] [SAVE=<name>] [REMOVE=<name>]`: Profile
management for skew_correction. LOAD will restore skew state from
the profile matching the supplied name. SAVE will save the current
skew state to a profile matching the supplied name. Remove will
delete the profile matching the supplied name from persistent
memory. Note that after SAVE or REMOVE operations have been run the
SAVE_CONFIG gcode must be run to make the changes to peristent
memory permanent.
## Delayed GCode
The following command is enabled if a [delayed_gcode] config section has
been enabled:
- `UPDATE_DELAYED_GCODE [ID=<name>] [DURATION=<seconds>]`: Updates the
delay duration for the identified [delayed_gcode] and starts the timer
for gcode execution. A value of 0 will cancel a pending delayed gcode
from executing.
The following command is enabled if a
[delayed_gcode config section](Config_Reference.md#delayed_gcode) has
been enabled (also see the
[template guide](Command_Templates.md#delayed-gcodes)):
- `UPDATE_DELAYED_GCODE [ID=<name>] [DURATION=<seconds>]`: Updates the
delay duration for the identified [delayed_gcode] and starts the timer
for gcode execution. A value of 0 will cancel a pending delayed gcode
from executing.
## Resonance compensation
The following command is enabled if an [input_shaper] config section has
been enabled:
- `SET_INPUT_SHAPER [SHAPER_FREQ_X=<shaper_freq_x>]
[SHAPER_FREQ_Y=<shaper_freq_y>]
[DAMPING_RATIO_X=<damping_ratio_x>]
[DAMPING_RATIO_Y=<damping_ratio_y>] [SHAPER_TYPE=<shaper>]
[SHAPER_TYPE_X=<shaper_type_x>] [SHAPER_TYPE_Y=<shaper_type_y>]`:
Modify input shaper parameters. Note that SHAPER_TYPE parameter
resets input shaper for both X and Y axes even if different shaper
types have been configured in [input_shaper] section. SHAPER_TYPE
cannot be used together with either of SHAPER_TYPE_X and
SHAPER_TYPE_Y parameters. See
[config reference](Config_Reference.md#input_shaper) for more
details on each of these parameters.
The following command is enabled if an
[input_shaper config section](Config_Reference.md#input_shaper) has
been enabled (also see the
[resonance compensation guide](Resonance_Compensation.md)):
- `SET_INPUT_SHAPER [SHAPER_FREQ_X=<shaper_freq_x>]
[SHAPER_FREQ_Y=<shaper_freq_y>]
[DAMPING_RATIO_X=<damping_ratio_x>]
[DAMPING_RATIO_Y=<damping_ratio_y>] [SHAPER_TYPE=<shaper>]
[SHAPER_TYPE_X=<shaper_type_x>] [SHAPER_TYPE_Y=<shaper_type_y>]`:
Modify input shaper parameters. Note that SHAPER_TYPE parameter
resets input shaper for both X and Y axes even if different shaper
types have been configured in [input_shaper] section. SHAPER_TYPE
cannot be used together with either of SHAPER_TYPE_X and
SHAPER_TYPE_Y parameters. See
[config reference](Config_Reference.md#input_shaper) for more
details on each of these parameters.
## Temperature Fan Commands
The following command is available when a "temperature_fan" config
section is enabled:
The following command is available when a
[temperature_fan config section](Config_Reference.md#temperature_fan)
is enabled:
- `SET_TEMPERATURE_FAN_TARGET temperature_fan=<temperature_fan_name>
[target=<target_temperature>]`: Sets the target temperature for a
temperature_fan. If a target is not supplied, it is set to the
@ -643,53 +678,59 @@ section is enabled:
## Adxl345 Accelerometer Commands
The following commands are available when an "adxl345" config section is
enabled:
The following commands are available when an
[adxl345 config section](Config_Reference.md#adxl345) is enabled:
- `ACCELEROMETER_MEASURE [CHIP=<config_name>] [RATE=<value>]
[NAME=<value>]`: Starts accelerometer measurements at the requested
number of samples per second. If CHIP is not specified it defaults
to "default". Valid rates are 25, 50, 100, 200, 400, 800, 1600,
and 3200. The command works in a start-stop mode: when executed for
the first time, it starts the measurements, next execution stops them.
If RATE is not specified, then the default value is used (either from
`printer.cfg` or `3200` default value). The results of measurements
are written to a file named `/tmp/adxl345-<name>.csv` where "<name>"
is the optional NAME parameter. If NAME is not specified it defaults
to the current time in "YYYYMMDD_HHMMSS" format.
the first time, it starts the measurements, next execution stops
them. If RATE is not specified, then the default value is used
(either from `printer.cfg` or `3200` default value). The results of
measurements are written to a file named `/tmp/adxl345-<name>.csv`
where "<name>" is the optional NAME parameter. If NAME is not
specified it defaults to the current time in "YYYYMMDD_HHMMSS"
format.
- `ACCELEROMETER_QUERY [CHIP=<config_name>] [RATE=<value>]`: queries
accelerometer for the current value. If CHIP is not specified it
defaults to "default". If RATE is not specified, the default value is
used. This command is useful to test the connection to the ADXL345
accelerometer: one of the returned values should be a free-fall
acceleration (+/- some noise of the chip).
defaults to "default". If RATE is not specified, the default value
is used. This command is useful to test the connection to the
ADXL345 accelerometer: one of the returned values should be a
free-fall acceleration (+/- some noise of the chip).
## Resonance Testing Commands
The following commands are available when a "resonance_tester" config section
is enabled:
- `MEASURE_AXES_NOISE`: Measures and outputs the noise for all axes of all
enabled accelerometer chips.
- `TEST_RESONANCES AXIS=<axis> OUTPUT=<resonances,raw_data> [NAME=<name>]
[FREQ_START=<min_freq>] [FREQ_END=<max_freq>] [HZ_PER_SEC=<hz_per_sec>]`:
Runs the resonance test in all configured probe points for the requested
axis (X or Y) and measures the acceleration using the accelerometer chips
configured for the respective axis. `OUTPUT` parameter is a comma-separated
list of which outputs will be written. If `raw_data` is requested, then the
The following commands are available when a
[resonance_tester config section](Config_Reference.md#resonance_tester)
is enabled (also see the
[measuring resonances guide](Measuring_Resonances.md)):
- `MEASURE_AXES_NOISE`: Measures and outputs the noise for all axes of
all enabled accelerometer chips.
- `TEST_RESONANCES AXIS=<axis> OUTPUT=<resonances,raw_data>
[NAME=<name>] [FREQ_START=<min_freq>] [FREQ_END=<max_freq>]
[HZ_PER_SEC=<hz_per_sec>]`: Runs the resonance test in all
configured probe points for the requested axis (X or Y) and measures
the acceleration using the accelerometer chips configured for the
respective axis. `OUTPUT` parameter is a comma-separated list of
which outputs will be written. If `raw_data` is requested, then the
raw accelerometer data is written into a file or a series of files
`/tmp/raw_data_<axis>_[<point>_]<name>.csv` with (`<point>_` part of
the name generated only if more than 1 probe point is configured). If
`resonances` is specified, the frequency response is calculated (across
all probe points) and written into `/tmp/resonances_<axis>_<name>.csv`
file. If unset, OUTPUT defaults to `resonances`, and NAME defaults to
the current time in "YYYYMMDD_HHMMSS" format.
the name generated only if more than 1 probe point is configured).
If `resonances` is specified, the frequency response is calculated
(across all probe points) and written into
`/tmp/resonances_<axis>_<name>.csv` file. If unset, OUTPUT defaults
to `resonances`, and NAME defaults to the current time in
"YYYYMMDD_HHMMSS" format.
- `SHAPER_CALIBRATE [AXIS=<axis>] [NAME=<name>]
[FREQ_START=<min_freq>] [FREQ_END=<max_freq>] [HZ_PER_SEC=<hz_per_sec>]`:
Similarly to `TEST_RESONANCES`, runs the resonance test as configured, and
tries to find the optimal parameters for the input shaper for the requested
axis (or both X and Y axes if `AXIS` parameter is unset). The results of the
tuning are printed to the console, and the frequency responses and the
[FREQ_START=<min_freq>] [FREQ_END=<max_freq>]
[HZ_PER_SEC=<hz_per_sec>]`: Similarly to `TEST_RESONANCES`, runs the
resonance test as configured, and tries to find the optimal
parameters for the input shaper for the requested axis (or both X
and Y axes if `AXIS` parameter is unset). The results of the tuning
are printed to the console, and the frequency responses and the
different input shapers values are written to a CSV file(s)
`/tmp/calibration_data_<axis>_<name>.csv`. Unless specified, NAME defaults
to the current time in "YYYYMMDD_HHMMSS" format. Note that the suggested
input shaper parameters can be persisted in the config by issuing
`SAVE_CONFIG` command.
`/tmp/calibration_data_<axis>_<name>.csv`. Unless specified, NAME
defaults to the current time in "YYYYMMDD_HHMMSS" format. Note that
the suggested input shaper parameters can be persisted in the config
by issuing `SAVE_CONFIG` command.