Commit Graph

  • 451a539c6e Fix for potential loss of position after a feed hold due to incorrect state of Bresenham counters. Ref. issue #1023. Fix for potential loss of position after a feed hold during end of move. Ref. issue #1024. Fix for non MCU platforms (Linux, Windows) handling fast types differently. Ref. issue #1026. Fix for wrong error returned for invalid command following invalid feed rate change. Ref. issue #1027. Added setting $703 for setting auto real time report interval for MPG/pendant. Ref. issue #864. Enhanced null spindle to support direction. Fix for invalid O CALL statements for named subprograms not cleaning up stream redirection. master Terje Io 2026-09-28 13:37:26 +02:00
  • e3ab85a768 Merge pull request #1020 from moustakimhamza/fix-arc-travel-limits-labs Terje Io 2026-09-28 07:05:52 +02:00
  • 517f3fd4b8 fix: misplaced parenthesis in labs() in check_arc_travel_limits Hamza Moustakim 2026-09-25 19:21:57 +01:00
  • 6902052acf Merge pull request #1019 from moustakimhamza/fix-ngc-substitute-overflow Terje Io 2026-09-25 06:53:58 +02:00
  • ff6178bec3 ngc_expr: fix heap buffer overflow in ngc_substitute_parameters Hamza Moustakim 2026-09-24 15:21:38 +01:00
  • d7aaee3d84 Fix for G51 scaled radius mode arcs not executed correctly. Ref. issue #1018. Added check for scaling factors, unequal factors cannot be used to generate ellipses. "Hardened" radius check, should now handle float rounding errors. Fix for G51 scaling factors beeing multiplied with imperial factor (25.4) when G20 is active. Removed ADAPTIVE_MULTI_AXIS_STEP_SMOOTHING symbol used to enable AMASS. Changed handling of MAX_AMASS_LEVEL to allow values > 3. Ref issue #136. Terje Io 2026-09-23 20:03:29 +02:00
  • ed9ff69f6b Added TLR@ element to $# report when the $TLR tool reference is set. Improved/hardened toolsetter probing. Terje Io 2026-09-21 14:37:54 +02:00
  • 355dd86f68 For programmers: added embedded VFS file system that allow plugins to add flash based read-only files. Added initial support for real data type (configurable as float or double). Terje Io 2026-09-17 12:51:19 +02:00
  • 516e5ad807 Updated changelog Terje Io 2026-09-09 07:14:43 +02:00
  • c48fc07888 Added realtime command 0x9F (159 - soft e-stop) that execute a soft reset, raises the e-stop alarm (10) and enters the controllers e-stop state. Changed signature of system_execute_line(), added pointer to stream write function to receive command output. Added support for some $-commands for MPG streams when the stream is not in full control. Terje Io 2026-09-08 12:04:25 +02:00
  • d67031a2b8 Refactored stream handling to get rid of some problematic stream types, may cause some 3rd party plugins to fail compilation. Added setting $720 for pendant baud rate, defaults to 1 (115200 baud). Fixed G65P7 handling of bit packed modbus messages, funtions 1, 2 and 15. Ref issue #1011. Terje Io 2026-09-06 18:01:55 +02:00
  • 7c9505f40d Improved settings iteration handling. Terje Io 2026-09-02 07:05:40 +02:00
  • a3b755e50c Improved settings description handling. Removed some non-core settings iterator code. Added 5% rapids override real time command (0x98). Assymmetric ganging kinematics: fixed homing for ganged only motors. Terje Io 2026-09-01 09:47:26 +02:00
  • c5b3526db7 added init call for 3rd party homing accel plugin Terje Io 2026-08-28 06:53:36 +02:00
  • a62ad6aabf General fix to remove reporting of unavailable iterative settings. Added initial version of stream_is_busy() API call. Needs testing. Added status request timestamp field to UART io_stream_status_t struct. Terje Io 2026-08-27 07:31:08 +02:00
  • f01c2b91ff Merge pull request #1005 from wyxun/fix-settings-iterator-and-get-value Terje Io 2026-08-26 07:39:11 +02:00
  • c36e943e06 fix(settings): return NULL in setting_get_value if get_value is missing wyxun 2026-08-25 16:08:18 +08:00
  • 351f77a80d Increased max. spindle on/off delays ($392, $394 and $539) to 60 seconds. Removed deprecated hal.settings_changed event, hook into grbl.on_settings_changed instead. Added some sanity checks for plugin setting registration, returns false on failure. Terje Io 2026-08-24 18:30:30 +02:00
  • ddd0baf43d fix(settings): fix out-of-bound access in report_grbl_settings and add thumb/null check for get_value wyxun 2026-08-21 09:53:47 +08:00
  • f80fc34d50 Merge pull request #1004 from hangsman/master Terje Io 2026-08-18 08:22:07 +02:00
  • 89d3e4b041 Merge branch 'grblHAL:master' into master hangsman 2026-08-18 12:55:14 +08:00
  • 868991815d fix for copy/paste gone bad Terje Io 2026-08-17 18:22:05 +02:00
  • 6a6b641d4b Added experimental basic core support and hooks for cutter compensation (G41, G41.1, G42 and G42.1). Ref. discussion #936. Added experimental and untested RTCP AC kinematics based on code from this comment. Ref. issue #965. Terje Io 2026-08-17 18:05:09 +02:00
  • 39e44129d4 Fix for recursive call in onSettingsChanged. hangsman 2026-08-17 18:16:28 +08:00
  • 546c6f9f5f Updated changelog. Terje Io 2026-08-14 10:06:40 +02:00
  • 553c501f35 Added option to setting $63 to set spindle RPM to minimum (typically 0) on feed hold. Ref. issue #991. Fixed reset (abort) not turning off laser in some circumstances. Terje Io 2026-08-13 18:47:32 +02:00
  • 29b7471fe5 Fixed typo in last commit Terje Io 2026-08-11 08:25:35 +02:00
  • 6523e08de8 Moved compile time option ROTARY_FIX to setting $701 with option for reverting imperial to metric conversion for angular moves. Ref. PR#979 and discussion #241. Added hooks for future G33.1 rigid tapping cycle implementation. Added lathe tool parameters front angle, back angle and orientation to tool data when lathe UVW option is enabled. Currently unused. Terje Io 2026-08-11 08:15:08 +02:00
  • 5848a84179 Removed include path element. Terje Io 2026-08-05 08:38:41 +02:00
  • b34eabe28f Moved RAM filing system from networking plugin here, added support for more operations. Added hooks for future G70-G72 lathe cycles implementation. ome general improvements. Terje Io 2026-08-05 08:13:26 +02:00
  • 306bf68d52 Merge pull request #999 from ScottW514/fix-null-on-settings-changed Terje Io 2026-08-04 06:36:24 +02:00
  • 0f333a60bf gcode: guard NULL chained on_settings_changed in onSettingsChanged ScottW514 2026-08-02 13:39:27 -04:00
  • beea3fe8e2 Updated changelog. Terje Io 2026-07-29 13:15:46 +02:00
  • 644c605b3d Forgot to update build date, "hardened" code. Terje Io 2026-07-26 20:22:35 +02:00
  • 35431d1bd3 Fix for M3 enabled laser turned off on feed hold when $63 option Disable laser during hold is off. Ref. issue #991. Improved handling of some VFS file system actions (unlink, mkdirv and rmdir), added support for truncate. Changed some kinematics API function signatures for readability/debugability. The ioports implementation has been changed to allow for consecutive pin numbers for external (expander based) I/O. See changelog for details. Terje Io 2026-07-26 08:21:33 +02:00
  • 8913dd41e7 Merge pull request #994 from engigeer/PR_report_overrides_on_reset Terje Io 2026-07-26 07:47:43 +02:00
  • f1db0ce705 Fix for reporting of updated overrides on reset Mitchell Grams 2026-07-23 13:57:28 -06:00
  • b9a05f146b Merge pull request #990 from 94xhn/fix/vfs-fs-stat-buffer-overflow Terje Io 2026-07-21 21:23:27 +02:00
  • 77027abbb9 Fix stack buffer overflow in vfs.c fs_stat() yi chen 2026-07-21 00:08:54 +08:00
  • c84cda0430 Updated VFS to correctly handle long working directory paths that would otherwise lead to buffer overflows. Ref. PR#986 which is a partial fix. Updated named O calls to allow name lengths only limited by available heap. Ref. PR#989 which likely would return an error on overly long names and would potentially execute incorrect code if not. Terje Io 2026-07-19 22:48:45 +02:00
  • 70ae0c1f50 Merge pull request #984 from stevenrwood/fix/g54-rotation-second-axis-double-offset Terje Io 2026-07-18 22:18:26 +02:00
  • dd2131e4ae Merge pull request #985 from gcormier/fix-modbus-adu-bounds Terje Io 2026-07-18 20:34:52 +02:00
  • b9f96d66ea Changes to VFS API signatures to aid improved handling of file system formatting. Now turns off spindle(s) on spindle related settings changes. Terje Io 2026-07-18 11:14:47 +02:00
  • ee71df957a Validate Modbus frame size before writing the ADU buffer Greg Cormier 2026-07-13 19:22:26 +00:00
  • 209228086f gcode: fix ROTATION_ENABLE 2nd-axis offset double-applied on rotated G54 XY moves stevenrwoodandClaude Opus 4.8 2026-07-03 02:46:48 -07:00
  • 09f8ba597a Updated build date for PR#983 Terje Io 2026-07-12 18:16:10 +02:00
  • d382892625 Merge pull request #983 from gcormier/bugfix/y2homing Terje Io 2026-07-12 18:02:30 +02:00
  • 321f69c99e Re-enable both motors after auto squaring offset pull-off Greg Cormier 2026-07-12 11:35:50 -04:00
  • 2bdfeb12dc Added support for MPG real time command character stream switching for RX only streams. Terje Io 2026-07-09 21:05:29 +02:00
  • f6bc9ef0b8 Merge pull request #977 from stevenrwood/fix/g53-ignore-wcs-rotation Terje Io 2026-07-02 08:47:49 +02:00
  • add866cadc gcode: G53 must ignore the active WCS rotation/offset (when ROTATION_ENABLE=1) stevenrwood 2026-07-01 03:36:43 -07:00
  • 26d44fe733 Merge pull request #976 from moustakimhamza/fix/autosquare-abs-truncation Terje Io 2026-06-28 23:45:12 +02:00
  • 20d69bca3e fix: use labs() instead of abs() for int32_t delta in auto-squaring check Hamza Moustakim 2026-06-28 20:27:17 +01:00
  • 4521e88c0f Fix for asymmetric axis kinematics triggering soft limits when enabled. Terje Io 2026-06-26 07:27:59 +02:00
  • 03a7dd9572 PR#974 applied. Added preprocessor logic for handling potentially bad spindle definitions. Terje Io 2026-06-22 23:05:19 +02:00
  • e66e01b8e2 Merge pull request #974 from yevheniisukhominskiy/fix-limit-pins-invert-5 Terje Io 2026-06-21 07:11:17 +02:00
  • df43e3061a Fix copy-paste bug for Setting_LimitPinsInvertMask ($5) Yevhenii Sukhominskiy 2026-06-20 20:04:57 +03:00
  • fe7632bb7d Made named O-call LinuxCNC compliant by changing name to lowercase. Fix for parking motion using $32 laser mode setting when it should use the current spindle mode. For developers: changed signature of hal.stream.on_linestate_changed() to include stream properties. Terje Io 2026-06-19 20:56:58 +02:00
  • 41abd8c84d Added kinematics for asymmetric (differing step/mm) ganged or auto squared axis, claims the highest number axis > Z for the second motor. Terje Io 2026-06-18 09:17:43 +02:00
  • 4fcdbaee11 Merge pull request #962 from gcormier/interlock Terje Io 2026-06-08 15:38:57 +02:00
  • 719dbc542c add spindle interlock plugin Greg Cormier 2026-06-05 09:06:59 -04:00
  • b9d79a34c2 Fix for regression affecting step injection code. Terje Io 2026-06-02 23:46:03 +02:00
  • 58e1a60807 Merge pull request #956 from gcormier/newplugins Terje Io 2026-06-02 18:53:15 +02:00
  • 266f0db62d Minor change to shut up some compilers incorrectly warning about a potentially uninitialized variable. Ref. issue #959. Terje Io 2026-05-28 16:26:34 +02:00
  • 2c67781d8f Update for Web Builder Terje Io 2026-05-26 09:46:23 +02:00
  • 87033967a0 Allow full circle arcs without axis words. Ref. issue #958. Terje Io 2026-05-25 07:01:48 +02:00
  • 336a26cbdb Fixed typos that may affect STM32 drivers assignment priority of interrupt capable pins. Terje Io 2026-05-20 16:07:09 +02:00
  • 210501af9c Add two new plugins Greg Cormier 2026-05-18 09:24:16 -04:00
  • 26633c9107 fixed copy/paste error... Terje Io 2026-05-18 12:42:27 +02:00
  • 7c8488d4d5 Reworked feed mode handling (G93-G95), now keeps current feed rate over spindle synced motion. Ref. issue #954. Added P-word option to G38.x probe commands, use to temporarily switch the probe input when multiple probes are available. Fixed PWM spindle ramping, did not hit the target RPM. Terje Io 2026-05-18 11:48:04 +02:00
  • 1c03e111a9 Updated changelog. Terje Io 2026-05-11 10:26:47 +02:00
  • 728b9c91a2 Setting NGC_PARAMETERS_ENABLE to Off results compiling errors, ref. issue #919. Changes to allow stepper spindle to use per degree settings, ref. issue 926. Changes for improved line number reporting for subroutines and branching gcode. Terje Io 2026-05-06 07:37:13 +02:00
  • d77ef1d3a7 Updated changelog. Terje Io 2026-04-18 11:11:53 +02:00
  • e56fc8006e Formalized SPI API, added init call for 74HC595 I/O expander. Fix for G30 not cleared on $RST, added code for syncing parser state on offsets clear. Ref. issue #940. Terje Io 2026-04-16 09:39:47 +02:00
  • 64265fbff3 Merge pull request #939 from engigeer/PR_reboot_fix Terje Io 2026-04-15 08:41:08 +02:00
  • 81ee7de776 Add code guards to prevent hard crash on $REBOOT for unsupported drivers Mitchell Grams 2026-04-10 22:35:11 -06:00
  • baabd9d727 Merge pull request #934 from bullestock/include-guard-mismatch Terje Io 2026-04-03 08:46:08 +02:00
  • fff197a9d8 Fix include guard mismatch. Torsten Martinsen 2026-04-02 16:19:36 +02:00
  • 1445a4221e From PR 928? Terje Io 2026-03-31 22:18:28 +02:00
  • 3472301259 Merge pull request #928 from bullestock/gcc14-calloc-transposed-args Terje Io 2026-03-31 21:03:01 +02:00
  • 1f748a84e0 Fix -Werror=calloc-transposed-args with gcc 14. Torsten Martinsen 2026-03-31 20:44:58 +02:00
  • 3c15245409 Changed homing to use the configured feed rate for all axes in a given cycle. Slow locate phase can now be skipped by setting $24 to 0, this can be useful for Trinamic sensorless homing. Fix for pendant not working if default stream is native USB and no client is connected. Ref. issue #927. Terje Io 2026-03-31 14:11:02 +02:00
  • eef9949d55 Improved support for using expander inputs for basic functions. "Hardened" code a bit. Terje Io 2026-03-26 20:52:26 +01:00
  • 5025b28f1f Improved support for using expander inputs for basic functions. Currently only available for the RP2040 driver. Terje Io 2026-03-24 20:14:28 +01:00
  • f526ec0395 Small changes to ensure that output during startup do not cause hangs due to no client connection when native USB is default. Terje Io 2026-03-21 20:23:50 +01:00
  • a4dd4134c0 Minor bug fix, only relevant when debug output to a dedicated UART is enabled. Terje Io 2026-03-20 15:56:19 +01:00
  • 8aa81a1c3b Added MCU clock speed, when available, to DRIVER element in $I output. Ref. issue #923. Improved diagnostics provided by $MODBUSSTATS when communication has been lost. Fix for regression. Terje Io 2026-03-18 18:13:42 +01:00
  • 999b309135 Merge pull request #858 from engigeer/master Terje Io 2026-03-18 07:33:35 +01:00
  • cb70830d76 Add init for RP2040 based flexgpio i2c expander Mitchell Grams 2026-03-07 17:46:59 -07:00
  • 6f029b0d48 Test changes Mitchell Grams 2026-03-17 22:14:42 -06:00
  • 588e3f831d Added latency (in ms) to $MODBUSSTATS output. Terje Io 2026-03-14 21:18:52 +01:00
  • 29ea451996 Added platform specific formatting strings for int32_t, "hardened" task handler code. Terje Io 2026-03-13 10:39:39 +01:00
  • 38cc54d74e Improved handling of current working directory (CWD). Terje Io 2026-03-11 18:03:29 +01:00
  • ee077d8730 Changes to allow I/O expander pins for motor fault inputs. Ref. PR #920. Terje Io 2026-03-09 00:03:52 +01:00
  • 949fa53c42 Added some reentry locks. Second step in refactoring encoder HAL/API. Terje Io 2026-03-03 22:34:30 +01:00
  • 9ad064bebf Improved handling of G43 some more - can now be used in the same block as M6 when the internal workflow for tool change is enabled or M6 is ignored. Terje Io 2026-02-27 09:33:05 +01:00
  • aa3a80f47f Fixed incorrect behaviour when a tool change using the built-in workflow is aborted, the selected tool was set as the current tool. Added support for G66.1 macro call. Changed behaviour of G50 and G51 (and the G48 and G49 shortcuts) controlling feed rate and spindle RPM overrides. Added support for G10L0, reload file based tool table. Fixed buggy handling of G43 - apply tool offset from tool table. Refactored the encoder HAL/API to make it more flexible and as a first step to support rigid tapping. See the changelog for further details. Terje Io 2026-02-26 10:30:46 +01:00
  • 54c58ee177 Merge pull request #914 from Expatria-Technologies/PR_Modbus_handle_single_coils Terje Io 2026-02-22 10:19:10 +01:00
  • b4e84879c5 I think I may have found some small issues when working with single coils and the packed bytes that they use. This seems to work against a nanoModbus server in my basic testing. andrew_marles 2026-02-21 22:12:03 -08:00
  • e0896a9db0 Fix for incorrect handling of limit pins for auto squared axes for two board maps. Terje Io 2026-02-19 14:57:33 +01:00