You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Bob-the-Kuhn 2911aa7ffa code changes to implement G38 commands
1) modified 3 code files
Marlin.h
Marlin_main.cpp
endstops.cpp

2) modified config files so I could test on my machine

Testing was done on an AzteegX3pro based machine.

The probe was hooked to the Z_MIN endstop.

My controller doesn't have a dedicated Z_PROBE input so I couldn't test
that functionality.

Verified that a large file (without any G38 commands) executed the same
before and after the changes.

Verified that the head moves as expected when G38.2 and G38.3 commands
are issued. Single & multiple axis moves were tested along with + and -
directions.

Code was added to the main ISR. In normal operation only one extra IF
statement is evaluated. I didn't notice any performance degradation
because of the added code.

The G38 commands are expected to be issued manually by the operator
during machine setup. The G38 commands wait until the machine is idle
before proceeding. That way the other commands are minimally impacted
by the extra ISR overhead when a G38 command is in the queue.

The G38 commands are very similar to the G28 commands except 1) only the
Z_PROBE is used and movement can be in the + or - direction.

See issue 4677 for a discussion on adding G38 commands to Marlin.
Feature request: add ability to use G38.2 command (CNC)
MarlinFirmware/Marlin#4677
8 years ago
..
example_configurations Add PROBE_Y_FIRST option for probe order 8 years ago
Conditionals.h Make Conditionals.h a catch-all for old configs 9 years ago
Conditionals_LCD.h Fix BLTOUCH string and SERVO_DELAY 8 years ago
Conditionals_post.h Patch up bilinear_z_offset 8 years ago
Configuration.h code changes to implement G38 commands 8 years ago
Configuration_adv.h code changes to implement G38 commands 8 years ago
M100_Free_Mem_Chk.cpp Repair M100 9 years ago
Makefile Additional path - followup to #4743 8 years ago
Marlin.h code changes to implement G38 commands 8 years ago
Marlin.ino Unify config in a single include without nested includes 9 years ago
MarlinConfig.h Merge pull request #4419 from AnHardt/sd2pinmap 9 years ago
MarlinSerial.cpp Implement M0/M1 for EMERGENCY_PARSER 8 years ago
MarlinSerial.h Optimize, reduce size of MarlinSerial 8 years ago
Marlin_main.cpp code changes to implement G38 commands 8 years ago
SanityCheck.h Require Arduino 1.6.8 to compile 8 years ago
Sd2Card.cpp Use fastio for literal pins 8 years ago
Sd2Card.h repair-software-spi 9 years ago
SdBaseFile.cpp 8.3-filenames second try 9 years ago
SdBaseFile.h Further cleanup of comments, partial Doxygen-style 9 years ago
SdFatConfig.h repair-software-spi 9 years ago
SdFatStructs.h Further cleanup of comments, partial Doxygen-style 9 years ago
SdFatUtil.cpp Further cleanup of comments, partial Doxygen-style 9 years ago
SdFatUtil.h Cleanup SdFatUtil.h 8 years ago
SdFile.cpp Converted all files on src to Unix file format 9 years ago
SdFile.h Further cleanup of comments, partial Doxygen-style 9 years ago
SdInfo.h Converted all files on src to Unix file format 9 years ago
SdVolume.cpp Converted all files on src to Unix file format 9 years ago
SdVolume.h Further cleanup of comments, partial Doxygen-style 9 years ago
Version.h Update distribution date and readme 9 years ago
blinkm.cpp Further cleanup of comments, partial Doxygen-style 9 years ago
blinkm.h Further cleanup of comments, partial Doxygen-style 9 years ago
boards.h Add Cartesio CN Controls V11 board 9 years ago
buzzer.h Prevent the 'tone(f,d)' function from being interrupted 9 years ago
cardreader.cpp Squish some CardReader code 8 years ago
cardreader.h Fix bug in CardReader::stopSDPrint 8 years ago
circularqueue.h Patch up CircularQueue 9 years ago
configuration_store.cpp Remove SCARA axis_scaling 8 years ago
configuration_store.h Unify config in a single include without nested includes 9 years ago
dac_mcp4728.cpp Support for newer Wire library 9 years ago
dac_mcp4728.h Unify config in a single include without nested includes 9 years ago
digipot_mcp4451.cpp Unify config in a single include without nested includes 9 years ago
dogm_bitmaps.h Updates u8glib's bmp2hex converter 9 years ago
dogm_font_data_6x9_marlin.h Further cleanup of comments, partial Doxygen-style 9 years ago
dogm_font_data_HD44780_C.h Further cleanup of comments, partial Doxygen-style 9 years ago
dogm_font_data_HD44780_J.h Update Kana font 9 years ago
dogm_font_data_HD44780_W.h Further cleanup of comments, partial Doxygen-style 9 years ago
dogm_font_data_ISO10646_1.h Further cleanup of comments, partial Doxygen-style 9 years ago
dogm_font_data_ISO10646_5_Cyrillic.h Further cleanup of comments, partial Doxygen-style 9 years ago
dogm_font_data_ISO10646_CN.h Further cleanup of comments, partial Doxygen-style 9 years ago
dogm_font_data_ISO10646_Greek.h Greek language pack from @psavva 9 years ago
dogm_font_data_ISO10646_Kana.h Update Kana font 9 years ago
dogm_font_data_Marlin_symbols.h Further cleanup of comments, partial Doxygen-style 9 years ago
duration_t.h Handle hours >= 100 8 years ago
endstops.cpp code changes to implement G38 commands 8 years ago
endstops.h Moves all global enums to a central file 9 years ago
enum.h Augment planner/stepper getters/setters 8 years ago
fastio.h Clean up some fastio.h spacing 8 years ago
language.h Print error for M42 bad pin 8 years ago
language_an.h Keep SIMULATE_ROMFONT only language.h 8 years ago
language_bg.h Keep SIMULATE_ROMFONT only language.h 8 years ago
language_ca.h Keep SIMULATE_ROMFONT only language.h 8 years ago
language_cn.h Strip never-translated strings from language files 8 years ago
language_cz.h Keep SIMULATE_ROMFONT only language.h 8 years ago
language_da.h Fix Danish encoding and an error message 8 years ago
language_de.h Tweak some german language strings 8 years ago
language_el-gr.h Keep SIMULATE_ROMFONT only language.h 8 years ago
language_el.h Keep SIMULATE_ROMFONT only language.h 8 years ago
language_en.h Follow-up the PR #4860 (Fix BLTOUCH string and SERVO_DELAY) 8 years ago
language_es.h Merge pull request #4634 from thinkyhead/rc_lang_disp_char 8 years ago
language_eu.h Keep SIMULATE_ROMFONT only language.h 8 years ago
language_fi.h Keep SIMULATE_ROMFONT only language.h 8 years ago
language_fr.h Update french language 8 years ago
language_gl.h Keep SIMULATE_ROMFONT only language.h 8 years ago
language_hr.h Keep SIMULATE_ROMFONT only language.h 8 years ago
language_it.h Added missing translations 8 years ago
language_kana.h Update Japanese translation 8 years ago
language_kana_utf8.h Update Japanese translation 8 years ago
language_nl.h Keep SIMULATE_ROMFONT only language.h 8 years ago
language_pl.h Keep SIMULATE_ROMFONT only language.h 8 years ago
language_pt-br.h Keep SIMULATE_ROMFONT only language.h 8 years ago
language_pt-br_utf8.h Keep SIMULATE_ROMFONT only language.h 8 years ago
language_pt.h Keep SIMULATE_ROMFONT only language.h 8 years ago
language_pt_utf8.h Keep SIMULATE_ROMFONT only language.h 8 years ago
language_ru.h Update language_ru.h 8 years ago
language_test.h Keep SIMULATE_ROMFONT only language.h 8 years ago
macros.h Improve MINIMUM_STEPPER_PULSE 8 years ago
mesh_bed_leveling.cpp Use memset in mbl.reset to save 58 bytes 9 years ago
mesh_bed_leveling.h Save CPU by multiplying by pre-compiled values 9 years ago
nozzle.h Nozzle::clean() no longer requires HAS_BED_PROBE 9 years ago
pins.h Clean up probe config options 8 years ago
pins_3DRAG.h Use SD Detect Pin 53 for 3DRAG, K8200, and K8400 8 years ago
pins_5DPRINT.h Update pins_5DPRINT.h 8 years ago
pins_99.h Consistent order/formatting of pins files 8 years ago
pins_A4JP.h Fix up spacing in A4JP pins 8 years ago
pins_AZTEEG_X1.h Add "About Printer" information menu. 9 years ago
pins_AZTEEG_X3.h Always define status LED pins 8 years ago
pins_AZTEEG_X3_PRO.h Always define status LED pins 8 years ago
pins_BAM_DICE_DUE.h pins_RAMPS_14.h => pins_RAMPS.h 9 years ago
pins_BQ_ZUM_MEGA_3D.h Properly handle probe pin for BQ printers 8 years ago
pins_BRAINWAVE.h Update pins_BRAINWAVE.h 8 years ago
pins_BRAINWAVE_PRO.h Update pins_BRAINWAVE_PRO.h 8 years ago
pins_CHEAPTRONIC.h Consistent order/formatting of pins files 8 years ago
pins_CNCONTROLS_11.h Always define status LED pins 8 years ago
pins_CNCONTROLS_12.h Always define status LED pins 8 years ago
pins_ELEFU_3.h Consistent order/formatting of pins files 8 years ago
pins_FELIX2.h Boards with 4 power outputs are EFBF or EFBE 9 years ago
pins_GEN3_MONOLITHIC.h Consistent order/formatting of pins files 8 years ago
pins_GEN3_PLUS.h Consistent order/formatting of pins files 8 years ago
pins_GEN6.h Consistent order/formatting of pins files 8 years ago
pins_GEN6_DELUXE.h Add "About Printer" information menu. 9 years ago
pins_GEN7_12.h Consistent order/formatting of pins files 8 years ago
pins_GEN7_13.h Add "About Printer" information menu. 9 years ago
pins_GEN7_14.h Add "About Printer" information menu. 9 years ago
pins_GEN7_CUSTOM.h Remove "the click" comments 9 years ago
pins_K8200.h Add "About Printer" information menu. 9 years ago
pins_K8400.h K8400 has 1xXY an 2xZ endstop plugs 8 years ago
pins_LEAPFROG.h Consistent order/formatting of pins files 8 years ago
pins_MEGACONTROLLER.h Use _PIN suffix on some pins 8 years ago
pins_MEGATRONICS.h Consistent order/formatting of pins files 8 years ago
pins_MEGATRONICS_2.h Consistent order/formatting of pins files 8 years ago
pins_MEGATRONICS_3.h Consistent order/formatting of pins files 8 years ago
pins_MELZI.h Add "About Printer" information menu. 9 years ago
pins_MELZI_MAKR3D.h Add "About Printer" information menu. 9 years ago
pins_MINIRAMBO.h Consistent order/formatting of pins files 8 years ago
pins_MINITRONICS.h Consistent order/formatting of pins files 8 years ago
pins_MKS_13.h Always define status LED pins 8 years ago
pins_MKS_BASE.h Boards with 4 power outputs are EFBF or EFBE 9 years ago
pins_OMCA.h Add "About Printer" information menu. 9 years ago
pins_OMCA_A.h Add "About Printer" information menu. 9 years ago
pins_PRINTRBOARD.h Always define status LED pins 8 years ago
pins_PRINTRBOARD_REVF.h Always define status LED pins 8 years ago
pins_RAMBO.h Always define status LED pins 8 years ago
pins_RAMPS.h Use _PIN suffix on some pins 8 years ago
pins_RAMPS_13.h pins_RAMPS_14.h => pins_RAMPS.h 9 years ago
pins_RAMPS_OLD.h Consistent order/formatting of pins files 8 years ago
pins_RIGIDBOARD.h Define Z_MIN_PROBE_PIN always, allowing override 9 years ago
pins_RIGIDBOARD_V2.h Adjusted values for Rigidboard Configuration 8 years ago
pins_RUMBA.h Consistent order/formatting of pins files 8 years ago
pins_SAINSMART_2IN1.h HI_VOLT_PIN => "RAMPS_Dn_PIN" 9 years ago
pins_SANGUINOLOLU_11.h Use _PIN suffix on some pins 8 years ago
pins_SANGUINOLOLU_12.h Add "About Printer" information menu. 9 years ago
pins_SAV_MKI.h Update pins_SAV_MKI.h 8 years ago
pins_SETHI.h Consistent order/formatting of pins files 8 years ago
pins_STB_11.h Add "About Printer" information menu. 9 years ago
pins_TEENSY2.h Update pins_TEENSY2.h 8 years ago
pins_TEENSYLU.h Update pins_TEENSYLU.h 8 years ago
pins_ULTIMAIN_2.h Consistent order/formatting of pins files 8 years ago
pins_ULTIMAKER.h Consistent order/formatting of pins files 8 years ago
pins_ULTIMAKER_OLD.h Consistent order/formatting of pins files 8 years ago
planner.cpp Augment planner/stepper getters/setters 8 years ago
planner.h Augment planner/stepper getters/setters 8 years ago
planner_bezier.cpp Move NONLINEAR bed leveling to planner 8 years ago
planner_bezier.h Append units to feedrate variables 9 years ago
platformio.ini Add Rambo support/env to platformio.ini; properly maps extended pins 8 years ago
point_t.h Adds missing documentation to the point_t structure 9 years ago
printcounter.cpp Renamed timestamp_t to duration_t 9 years ago
printcounter.h Adds filamentUsed and longestPrint stats to PrintCounter 9 years ago
qr_solve.cpp Enable ABL by type, support bilinear on cartesian 8 years ago
qr_solve.h Enable ABL by type, support bilinear on cartesian 8 years ago
servo.cpp Unify config in a single include without nested includes 9 years ago
servo.h SERVO_DEACTIVATION_DELAY => SERVO_DELAY 9 years ago
speed_lookuptable.h Further cleanup of comments, partial Doxygen-style 9 years ago
stepper.cpp Augment planner/stepper getters/setters 8 years ago
stepper.h Augment planner/stepper getters/setters 8 years ago
stepper_dac.cpp Use fastio for literal pins 8 years ago
stepper_dac.h Further cleanup of comments, partial Doxygen-style 9 years ago
stepper_indirection.cpp Unify config in a single include without nested includes 9 years ago
stepper_indirection.h Unify config in a single include without nested includes 9 years ago
stopwatch.cpp Updates Stopwatch class to use internal state enum 9 years ago
stopwatch.h Updates Stopwatch class to use internal state enum 9 years ago
temperature.cpp Fix for HEATERS_PARALLEL 8 years ago
temperature.h unsigned char => uint8_t 8 years ago
thermistornames.h Dyze High Temp Thermistor Support 9 years ago
thermistortables.h Dyze High Temp Thermistor Support 9 years ago
twibus.cpp TWIBus patch for proper use of Wire.requestFrom 8 years ago
twibus.h TWIBus patch for proper use of Wire.requestFrom 8 years ago
types.h Adds types.h 9 years ago
ultralcd.cpp Watch bed temp also for Control menu item 8 years ago
ultralcd.h Move number-to-string function to utility.* 8 years ago
ultralcd_impl_DOGM.h Use fastio for literal pins 8 years ago
ultralcd_impl_HD44780.h Optimize LCD string/char printing 8 years ago
ultralcd_st7920_u8glib_rrd.h Add a ported example configuration for the Velleman K8400 (Vertex) printer. 9 years ago
utf_mapper.h Make MAPPER_NON the fall back mapper 9 years ago
utility.cpp Move number-to-string function to utility.* 8 years ago
utility.h Move number-to-string function to utility.* 8 years ago
vector_3.cpp Enable ABL by type, support bilinear on cartesian 8 years ago
vector_3.h Enable ABL by type, support bilinear on cartesian 8 years ago
watchdog.cpp Further cleanup of comments, partial Doxygen-style 9 years ago
watchdog.h Further cleanup of comments, partial Doxygen-style 9 years ago