Commit Graph

35 Commits

Author SHA1 Message Date
Terje Io
57243a0fc2 Fixed regression that prevented builds with compatibiliy level set > 1.
Added [SIGNALS:xxx] element to the $I output.
2023-12-29 19:33:27 +01:00
Terje Io
2c58f0de09 Spindle handling refactoring for improved management and configuration of multiple spindles.
NOTE: this is a relatively large change and may have introduced bugs and/or unintended side-effects. Please report any issues!

Added setting $519 for binding spindle encoder to given spindle in multi spindle configurations.

Added machine readable spindle enumeration report, $SPINDLESH.

Increased default value for setting $398 (number of planner blocs) from 35 to 100 for faster laser engraving.
NOTE: the $398 setting value will not change on an upgrade!
NOTE: STM32F103 builds for the 128K flash variants does not have enough free RAM and will keep 35 as the default value.

Increased allowed number of decimal places from 3 to 5 for $10x stepper step/mm settings. Ref. ioSender issue 346.

Added setting $650 for filing system options. Ref. issue 397.
Currently the following bits are available (depending on the configuration):
0 - Auto mount SD card on startup (1).
1 - Do not add littlefs files when listing the root directory (2).

Added build option for lathe UVW mode.
When enabled UVW words can be used to command relative moves for XYZ without switching to relative mode with G91.
NOTE: This permanently sets lathe mode and disables the $32 mode setting.

There are signature changes to some spindle, ioports enumeration and VFS filing system mount functions.

Added events to allow plugin code to handle tool table data, possibly stored on a SD card.
2023-12-12 09:51:59 +01:00
Terje Io
257093b2a1 Fixed some typos that may cause compiler warnings.
Added initial secondary stepper driver code to be used for plasma THC and possibly later for stepper driven spindles.
2023-10-02 10:22:18 +02:00
Terje Io
70ffca3c0a Hardened" serial stream registration, now allows empty descriptor.
Now returns no data for alarm and error enums when firmware is compiled for 128K versions of the STM32F1xx MCU.
This frees up some flash space for plugins etc.
2023-09-26 09:54:10 +02:00
Terje Io
be9f7db33e Moved kinematics implementations to separate folder and added initial implementation of delta and polar kinematics.
NOTE: Delta and polar kinematics is WIP (work in progress) and incomplete.
Feedback is required as I do not have machines at hand for testing.
Ref. issue #341 and #346.
2023-08-18 18:02:31 +02:00
Terje Io
0c6f3f6dd7 Added support for traversing directory structure across file system mounts. Allows access to littlefs mount via ftp.
Fixed inconsistent (random) real-time reporting of cycle start signal by adding a latch to ensure it is reported at least once.
2023-07-16 13:03:22 +02:00
Terje Io
8c7f841840 Added virtual Modbus API. Some internal settings handling improvements. 2023-06-13 19:47:02 +02:00
Terje Io
882f4f1c53 Added preprosessor symbol handling for embroidery plugin. 2023-03-16 14:33:49 +01:00
Terje Io
b55386cbf6 added default network setting values for wifi station mode 2023-03-03 19:27:30 +01:00
Terje Io
0c6233d709 See the changelog for details, changes are relevant for developers only. 2023-02-22 09:19:49 +01:00
Terje Io
04ce2c5c8c Large spindle handling refactoring and enhancement++, see the changelog for more. 2023-02-13 22:14:48 +01:00
Terje Io
fb60b493b5 Added settings, updated settings version to 22. See changelog for details.
Merged defaults.h with config.h, deleted defaults.h and harmonized settings defines.
2023-01-25 21:11:21 +01:00
Terje Io
d77f2fa7d3 Minor bug fix, preprocessor tuning. 2022-10-28 20:06:52 +02:00
Terje Io
893f0de66a Fix for issue #191, allow homing of rotary axes with infinite rotation (max travel = 0)
Added spindle type property to HAL, "hardened" code.
Added new setting $346 for action to take after tool change: either return controlled point (tool tip) back to the same position as before the M6 command (default) or move spindle to Z home.
2022-10-21 11:50:00 +02:00
Terje Io
6e22a074c8 Added optional string pointers to HAL for driver and board URLs. If present they are announced by the SSDP protocol. 2022-10-07 10:17:07 +02:00
Terje Io
229db6418b Minor options preprocessor change for littlefs, "hardened" VFS code. Core build date not changed. 2022-09-11 20:37:47 +02:00
Terje Io
f3363816c2 Tuning, VFS improvements. 2022-09-03 21:51:01 +02:00
Terje Io
0db09ab6e9 Deprecated setting $7 (can be set as before but is no longer reported). Added setting $9 for PWM spindle options. 2022-07-04 14:10:39 +02:00
Terje Io
4ff8f1c5e7 Added a MPG mode option for using input pin for mode switching when enabled together with keypad plugin.
Added pin descriptions for UART pins used for MPG.
2022-02-17 09:01:02 +01:00
Terje Io
27a3d3e1fe See the changelog for details. 2022-01-23 11:10:30 +01:00
Terje Io
e9a5e9cbde clear homed status for axis that has max travel changed 2022-01-14 21:09:00 +01:00
Terje Io
22e0fcba1c Added optional spindle select event to core events, for dual spindle enabled configurations (VFD + PWM spindle).
Attempted fix for weird issue with VFD spindle when spindle at speed tolerance is set > 0 with $340.
2022-01-09 22:11:57 +01:00
Terje Io
0aeb53883b Moved and enhanced handling of pendant serial stream (MPG) to core. Added some new stream handling functions.
Added real time command character 0x8B for toggling MPG stream on/off.
Fix for issue #104
2022-01-05 20:13:41 +01:00
Terje Io
dcdc3ef1ed Added function for connecting via specified serial port.
Changed internals to allow further VFD spindle drivers to be added.
2021-12-23 13:21:41 +01:00
Terje Io
f88b154b96 See changelog for details. 2021-11-28 16:52:00 +01:00
Terje Io
0c47a688b5 Enhanced ioports API, fix for issue #87 ++ 2021-11-17 07:22:35 +01:00
Terje Io
f306bfa598 Renamed default hostnames and device names, added some HAL extensions and hardened code a bit. 2021-11-09 15:24:52 +01:00
Terje Io
82d42f4fa4 Fixed variable name typo, renamed hal.stream.disable to hal.stream.disable_rx 2021-11-01 08:40:55 +01:00
Terje Io
79882cf094 Added enum and associated get function for system defined named parameters.
Added core event handler function pointers and calls if provided.
Some other minor changes.
2021-10-11 13:16:58 +02:00
Terje Io
71dc5ac333 Changed safety door/parking handling to be compliant with legacy Grbl.
Added $384 setting for controlling G92 offset persistence.
Improved $help command output and handling.
Moved the optional tool table in non-volatile storage.
Added gcode parameter support and optional expression support.
2021-09-29 10:22:47 +02:00
Terje Io
11640adcd2 Added some preprocessor stuff for driver use 2021-09-19 10:39:40 +02:00
Terje Io
384fda6e3a Added $376 setting for designating ABC-axes individually as rotational.
Added `$ESG` and `$ESH` system commands for outputting current setting definitions.
Added setting descriptions to most settings. Work in progress.
Added/updated preprocessor code for leaner board map files++
2021-08-20 18:53:20 +02:00
Terje Io
6c0bd647a5 Added optional HAL entry point for stepper motor enumeration, improved optional driver support files. 2021-08-08 12:47:41 +02:00
Terje Io
222ba55724 See changelog for details. 2021-07-07 19:19:15 +02:00
Terje Io
b685e18411 Added shared files for driver motor pins allocation and options handling.
Expanded HAL stream I/O functions. Added doxygen documentation to parts of the code.
A number of minor changes to simplify code.
2021-06-27 20:55:00 +02:00