Releases: Paciente8159/uCNC
µCNC v1.16.1
Version 1.16.1 fixes a glitch issue in the ESP32 I2S IO extender and some other minor fixes.
Fixed
µCNC v1.16.0
Version 1.16 comes with several improvements and stability/performance improvements for AVR and ARM, encoder module enhancements and several fixes.
The full list of changes is:
Contributions:
@HuubBuis - added option to mimic Grbl homing motion style via ENABLE_GRBL_STYLE_HOMING (#918)
Added
- added option to clamp motion beyond software limits while jogging
ALLOW_SOFT_LIMIT_JOG_MOTION_CLAMPING(#907) - added static IP configuration for Wifi capable boards (#908)
- added method for mesuring software encoders RPM (#913)(#924)(#928)(#933)(#934)
- added option to mimic Grbl homing motion style via
ENABLE_GRBL_STYLE_HOMING(#918)(#922)(#930)
Changed
- modified input-on-change ISR on AVR to correctly support other MCU's (#915)
- improved
mcu_step_cbfunction and full revision of the interpolation ISR on all architectures (#919) - modified ISR architecture on AVR to allow better response and propper preemption with
ENABLE_ITP_FEED_TASKenabled (#920) - ISR architecture revision on all ARM MCU's following #920 changes (#921)
- improved ONESHOT timer resolution on AVR (#935)
Fixed
- fixed synchronization flags on realtime motions (#910)
- fixed ESP32 oneshot timer errors (#911) (#912)
- fixed synchronized motions start logic (#914)
- fixed probe report message sequence to better emulate Grbl (#909)
- fixed stepper idle timeout condition check (#916)
- fixed realtime motion feed modifications calculations (#925)(#936)
- fixed signed interger printf function (#926)
- fixed UART2 typo for STM32F0x and default BAUDRATE2 definition (#926)
- fixed USB dotasks for STM32F0x (#932)
µCNC v1.15.0
Version 1.15.0 adds a new tool mode and makes available an embroidery tool controlled via stepper motor.
It also adds enhancements in the encoder module as well as new hooks/callbacks that allow implementation of automatic tool changers.
An automatic tool changer module is also available as a new module that allows the creation of GCode scripts to run custom tool changing actions. You can check it out in the modules repo.
Here is the full list of changes
Added
- added new embroidery tool mode (#) and new embroidery tool based on a stepper motor to control the needle (#897)
- added new encoder module enhancements with support for I2C and SSI encoders (#848)
- added new tool hooks callback to allow implementation of custom ATC (automatic tool changer) modules (#905)
- added new planner event that allows modification of the current motion block before being sent to step generation (#904)
Changed
- dropped
STEP_ISR_SKIP_MAINandSTEP_ISR_SKIP_IDLEoptions and removed code from interpolator (#904)
Fixed
µCNC v1.14.0
Version 1.14.0 is another major release with broad spectrum changes to the project (as it was with version 1.8.0), targeting multitasking/multicore ready environments. This focus on synchronization primitives and separation of the main running loop, modules tasks and step generation execution paths to better support concurrency.
This paves the way for future features to be integrated (of which a generic network infrastructure is already being developed).
Also an extra compatibility level was added to make µCNC less safety strict and hopefully allow it to play along better with some Grbl GUI apps that have trouble connecting to µCNC.
Added
- added new atomic primitives (similar to C11) including atomic CAS and basic semaphores (#885)
- added ring buffer non-blocking methods (#885)
- added ISR context aware mcu calls (#885)
- added new Grbl compatibility level (now can be raised to level 3 - less safety strick) (#885)
Changed
- modified ring buffer to be MPMC-Multi producer/Multi consumer safe (#885)
- removed rtc_tick event (#885)
- interpolator now runs on the RTC ISR/thread by default if ENABLE_MAIN_LOOP_MODULES is enabled(#885)
Fixed
µCNC v1.13.1
This release fixes some issues with PIO configuration file for all ESP32 MCU's that caused WiFi issues:
Added
- added ABC axis speed profile decoupling option to fix incorrect speed profiles with rotational axis via
ABC_INDEP_FEED_CALC(#892)
Fixed
µCNC v1.13.0
This is the release of version 1.13.0 now with support for I2S custom driver to control a IO extender based on a 74HC595 chain.
Some other bug fixes and changes were added also to the ESP8266 MCU.
Contributions:
@reinforce - fix compilation errors on RP2040 and 2350 (#894) and fixed file name typo on ESP32 (#889)
Added
- added support for 74HC595 custom I2S driver for ESP32-S3 and ESP32-C3 (#895)
Changed
- redesigned ESP32 I2S driver for the 74HC595. It now uses the the DMA ISR instead of the built in generic driver and thread to keep the buffer fill and switch modes (#895)
- redesigned ESP8266 outputs signal generation based on the new timer struct used on ESP32 (#895)
Fixed
- fixed compilation errors on RP2040 and RP2350 (#894)
- fixed timer configurations for ESP32 (#893)
- fixed setting $11 (G64 factor) to accept negative values (#891)
- fixed file name typo on ESP32 (#889)
- implemented missing get and set servo values on RPi MCU's (#890)
- fixed interpolation bug on ESP8266 (#887)
µCNC v1.13.rc
This release adds basic core support for ESP32-S3 and ESP32-C3 MCU's.
Some features are not yet available or have not been tested, like Bluetooth or I2S.
Added
- added basic core support for ESP32-S3 and ESP32-C3 MCU's (#881)
Changed
- cycle loops modified to improve loop precision, based on inline assembly instructions or running free CPU cycle counters. These are CPU cycle loops that are used for very small (usually less then 2 or microseconds) (#884)
µCNC v1.12.4
Here are the changes to this release:
Added
- added boardmap settings to use the shield v3 on Arduino Mega (#876)
- added multiline startup blocks support (#877)
- added sequential settings modification command with support for multivalue (array of values) (#878)
Fixed
- fixed/improved stream overflow detection and handling (#875)
µCNC v1.12.3
This version is mainly intended to fix a bug in the feed calculations in the interpolator/planner core code.
These are the changes:
Added
- allow storing HMapping (G39) in non volatile memory (Grbl settings) (#865)
Fixed
- fixed block speed synchronization in the interpolator after (planner block transition speed synchronization) (#873)
µCNC v1.12.2
The following changes were made to µCNC v1.12.2
Added
- added boardmap support for Fysetc Cheetah v2 (#856)
- added new logic IO conditions macros. This allows users to define custom logic for limits, control and probe pins (#863)
Changed
- disable softlimits checking for dimensions set to 0/infinit limit (#860)