diff --git a/changelog.md b/changelog.md index f534689..a9071de 100644 --- a/changelog.md +++ b/changelog.md @@ -1,5 +1,19 @@ ## grblHAL changelog +Build 20240326 + +Core: + +* Fixes for issue #470 and #472, index overflows. + +Drivers: + +* iMXRT1062: added support for second UART stream and missing code guard for I2C strobe. + +* STM32F4xx and STM32F7xx: improved analog I/O, added check for multiple calls to I2C initialization. + +--- + Build 20240318 Core: diff --git a/grbl.h b/grbl.h index 6e484e3..e9c634d 100644 --- a/grbl.h +++ b/grbl.h @@ -42,7 +42,7 @@ #else #define GRBL_VERSION "1.1f" #endif -#define GRBL_BUILD 20240318 +#define GRBL_BUILD 20240326 #define GRBL_URL "https://github.com/grblHAL" diff --git a/motion_control.c b/motion_control.c index 287f873..ba25afb 100644 --- a/motion_control.c +++ b/motion_control.c @@ -1020,7 +1020,7 @@ gc_probe_t mc_probe_cycle (float *target, plan_line_data_t *pl_data, gc_parser_f idx--; if(fabsf(target[idx] - position.values[idx]) > TOLERANCE_EQUAL) bit_true(axes.mask, bit(idx)); - } while(idx--); + } while(idx); grbl.on_probe_start(axes, target, pl_data); } diff --git a/spindle_control.c b/spindle_control.c index 0b0ccb6..cd4a50a 100644 --- a/spindle_control.c +++ b/spindle_control.c @@ -250,7 +250,7 @@ spindle_cap_t spindle_get_caps (bool active) spindle_cap_t caps = {0}; uint_fast8_t idx = n_spindle; - do { + if(n_spindle) do { --idx; caps.value |= (active ? spindles[idx].hal.cap.value : spindles[idx].cfg->cap.value); } while(idx); diff --git a/system.c b/system.c index 7947800..220126b 100644 --- a/system.c +++ b/system.c @@ -901,12 +901,12 @@ PROGMEM static const sys_command_t sys_commands[] = { { "N0", set_startup_line0, {}, { .str = "N0= - set startup line 0" } }, { "N1", set_startup_line1, {}, { .str = "N1= - set startup line 1" } }, { "EA", enumerate_alarms, { .noargs = On, .allow_blocking = On }, { .str = "enumerate alarms" } }, - { "EAG", enumerate_alarms_grblformatted, { .noargs = On, .allow_blocking = On }, { .str = "enumerate alarms, grblHAL formatted" } }, + { "EAG", enumerate_alarms_grblformatted, { .noargs = On, .allow_blocking = On }, { .str = "enumerate alarms, Grbl formatted" } }, { "EE", enumerate_errors, { .noargs = On, .allow_blocking = On }, { .str = "enumerate status codes" } }, - { "EEG", enumerate_errors_grblformatted, { .noargs = On, .allow_blocking = On }, { .str = "enumerate status codes, grblHAL formatted" } }, + { "EEG", enumerate_errors_grblformatted, { .noargs = On, .allow_blocking = On }, { .str = "enumerate status codes, Grbl formatted" } }, { "EG", enumerate_groups, { .noargs = On, .allow_blocking = On }, { .str = "enumerate setting groups" } }, { "ES", enumerate_settings, { .noargs = On, .allow_blocking = On }, { .str = "enumerate settings" } }, - { "ESG", enumerate_settings_grblformatted, { .noargs = On, .allow_blocking = On }, { .str = "enumerate settings, grblHAL formatted" } }, + { "ESG", enumerate_settings_grblformatted, { .noargs = On, .allow_blocking = On }, { .str = "enumerate settings, Grbl formatted" } }, { "ESH", enumerate_settings_halformatted, { .noargs = On, .allow_blocking = On }, { .str = "enumerate settings, grblHAL formatted" } }, { "E*", enumerate_all, { .noargs = On, .allow_blocking = On }, { .str = "enumerate alarms, status codes and settings" } }, { "PINS", enumerate_pins, { .noargs = On, .allow_blocking = On, .help_fn = On }, { .fn = help_pins } },