Skip to content

Releases: Paciente8159/uCNC

µCNC v1.5.2

01 Oct 08:42
Compare
Choose a tag to compare

µCNC version 1.5.2 fixes a few issues that were detected in the previous built.

[1.5.2] - 01-10-2022

Added

  • configurable PWM frequency (#286)

Fixed

  • fixed no command response after a tool command without motion (#284)
  • fixed incorrect laser power factor scaling with M4 (#282)
  • $P servo report values for AVR (#283)
  • fixed tool update with dwell to reach programmed speed

µCNC v1.5.1

23 Sep 17:00
Compare
Choose a tag to compare

Version 1.5.1 is a critical patch to fix a bug regarding dwell being executed ahead of time (asynched).

Fixed

  • dwell is being executed ahead of time (async) (#276)

µCNC v1.5.0

22 Sep 20:47
Compare
Choose a tag to compare

Version 1.5 is a major update that builds on the previous beta and RC releases. It packs lots of improvements and fixes from the previous version.

Version 1.5 now supports the following MCU:

  • NXP LPC176x
  • ESP8266
  • ESP32

Added

  • added Hardware I2C and SPI capabilities to several MCU (only ESP8266 and ESP32 not supported for now) that are integrated and used via software libraries (#249)
  • added speed config function to MCU and soft SPI (#253)
  • added events to support SD card module (#254)
  • added LPC176x analog input support (#273)

Changed

  • ARM mcu share the same µs delay function calculated from SysTick clock (no loops or coredebug clocks used) (#249)
  • software SPI/UART libraries use atomic operations macros (#249)
  • moved activity led code to core (#250)
  • better WiFi detect on ESP32 (#251)
  • rewritten software I2C (#255)
  • migrate LPC176x critical code to bare metal with serveral enhancements for ITP and SERVO ISR (#273)

Fixed

  • prevented dotask event lock reentrancy (#252)
  • better delay functions for generic usage (including SPI, I2C and UART software libraries) (#264)
  • fixed planner deacceleration calculations to prevent that caused noticeable abrupt stops with fast short motions (image rastering) (#275)

µCNC v1.5.0-RC

02 Sep 14:23
Compare
Choose a tag to compare
µCNC v1.5.0-RC Pre-release
Pre-release

µCNC v1.5.0-RC adds basic support to yet another core: The ESP32.

Added

  • added core support for ESP32 with limited functionalities (lacks analog and input ISR) (#237)
  • added new io_control events to allow expansion IO modules (#247)
  • added mcu_nop generic macro (#248)
  • added tool HAL for VFD controlled tools and modbus core module (#239)

Changed

  • refactored event/delegate macros now with a single function declaration/signature. Adding new events for extensions is easier (#234)
  • modified GRBL system command parser to enable command extensions via modules (#236)
  • modified tools to convert between core speed and tool speed to avoid range/precision compression losses
  • modified parser/planner to correctly calculate tool power output when minimal power is not 0 (example: laser minimal power output when S0) (#240)
  • better µs delay for all platforms (now accepts 16bit value as argument) and better precision for AVR (#241)(#242)
  • adapted bit-banging emulated protocols to fixed duration µs delays and software UART customizable timeout by interface (#242)

Fixed

  • fixed some extended MCodes definitions
  • fixed SPI initialization in TMC driver (#242)
  • fixed missing mcu_delay_us function on STM32F4 (#242)
  • fixed event multiple declarations warnings introduced by (#234) (#243)
  • fixed M4 laser mode power output with no motion introduced with #240 (#246)
  • fixed AVR pin redefinition warnings (#248)

µCNC v1.5.0-beta

29 Jul 21:34
Compare
Choose a tag to compare
µCNC v1.5.0-beta Pre-release
Pre-release

µCNC v1.5.0-beta is a major release that includes 2 new cores added to µCNC.
The ESP8266 and the NXP LPC176X processors.
Although with very limited IO the ESP8266 as just enough IO to control a small CNC or a laser engraver. WiFi connection via telnet is also possible with this chip.

Added

  • added core support for ESP8266 with limitied functionalities (lacks analog and input ISR) (#222)
  • added support for NXP LPC176x core (lacks EEPROM and analog) (#227)

Changed

  • configurable RX serial buffer size (#222)
  • updated tinyUSB to version 0.13.0 (#227)

Fixed

µCNC v1.4.7

29 Jul 16:07
Compare
Choose a tag to compare

Version 1.4.7 has the following changes:

Added

  • added Marlin M913 command to TMC driver module (#226)

Changed

  • modified TMC driver to include shadow registers of write only (#226)
  • modified/unified UART port definitions for all architectures (#230)
  • minor optimization with auto-report enabled (#230)
  • split platformio files for each board family (#231)
  • updated virtual HAL for Windows (#232)

Fixed

  • fixed compilation error on STM32F1 if probe pin is not defined (#225)
  • fixed TMC M914 extension command initialization (#226)
  • fixed UART Arduino library conflict compilation error on PIO

µCNC v1.4.6

28 Jun 19:21
a3b4316
Compare
Choose a tag to compare

Version 1.4.6 adds the followin changes:

Added

  • added software I2C (bit-banging) (#215)
  • removed encoders dependency of modules. Stepper encoders and regular encoders reset is now independent (#216)
  • encoders counting pulse and direction can be inverted via setting $8 and $9 (#216)
  • modified settings initialization code. Added option to hase settings on RAM only (volatile) (#217)
  • added option to store G92 offset in non volatile memory to prevent undesired wear (#221)

Changed

  • module system complete restructure. Core complementary modules kept in the core code. Remaining modules pulled to a different repository (#215)
  • encoders initial state aquired at startup to prevent initial noise counts (#216)
  • fixed dir mask detection for ENC0 and ENC1 (#216)
  • moved the mod_cnc_dotasks_hook callback to allow it to work even if hold is active (#218)

µCNC v1.4.5

17 May 18:56
Compare
Choose a tag to compare

µCNC version 1.4.5 changes are listed below.
Next release will will have some extensive changes in µCNC modules to make it more easy to add an use modules in a need only basis.

Added

Changed

  • option to enable self-squaring and dual-drive axis is now independent (#208)
  • option to disable homing on each individual axis (#209)
  • modified encoder to make it and independent module. This work a bit like a core functionality and not a module. (#213)
  • stepper encoders now report directly the position via the interpolator (#213)
  • added example of mirror RAMPS board (with encoders) (#213)
  • redesigned limit/control/inputs switch logic. All logic is now performed inside the respective mcu callbacks (#212)

Fixed

  • EIMSK not being set on AVR MCU making external Interrupt pins not to trigger (#213)
  • fixed ISR mask evaluation that prevented the correct ISR to catch the call leading to fault reset (introduced with #213) (#214)

µCNC v1.4.4

11 May 08:47
Compare
Choose a tag to compare

Again a huge shout-out to @jimsynz with all the testing and helping on µCNC.
µCNC version 1.4.4 changes are:

Contributors

@jimsynz (#184)

Added

  • added support for stall detection in TMC2209 drivers. Added equivalent Marlin M914 to modify sensitivity (#185)
  • added support for G10 L20 (change coordinate system relative to current position) (#189)
  • added example for BESC spindle (#191)

Changed

  • overridable F_STEP_MAX and F_STEP_MIN (#190)
  • removed kinematic transformations filter from JOG motions to prevent unpredictable motions after forced motion systems sync (#195)
  • modified Grbl compatible startup message (#196)
  • updated M42 to reflect current HAL IO convention (#197)
  • added servo pins configurations to RAMPS boardmap (pins D4, D5, D6 and D11) (#197)
  • updated $P report to reflect current HAL IO convention (#198)
  • improved BESC spindle control with added default values for throttle down, neutral and full positions (#200)
  • improved BESC value range calculation (#202)
  • modified tool speed feedback. Each tool reports speed directly and can customize the way the speed is reported (#203)
  • simplified Encoder module. Can be enabled without extra modules
  • added BESC RPM counter based on Encoder module

Fixed

  • fixed typo in error constant name (#184)
  • fixed G49 was not reseting TLO (#188)
  • fixed motion systems unsync after recovering from emergency stop (#193)
  • emergency stop press was not stopping tool as expected (#192)
  • position read from motion control was not reversing user geometry transformations (#195)
  • AVR DIN0-7 pins ISR was not enabled (#201)
  • fixed error were coordinates would be forgotten/override if applying multiple G10 commands for different axis (ex. G10L20X0 and G10L20Y0) (#204)
  • fixed logic error when both limits switches are active for an axis (not dual-drive) and are inverted, trigger would only happen if both were pressed (#205)
  • fixed logic ORING of signals when homing leading to incorrect trigger when self-squaring cause by #205 (#207)
  • fixed G28-G30 not updating parser position leading to intermediate travel on next command (#211)

µCNC v1.4.3

02 May 21:28
Compare
Choose a tag to compare

µCNC version 1.4.3 fixes some bugs and added improvements to dual axis motion systems.

Contributors

@jimsynz - relay controlled relay spindle tool (#176) (#177) (#181)

Added

  • MKS GEN L V1 boardmap based on ramps 1.4 (#175)
  • auto status report option to send periodic status info without ? required (#179)
  • added relay controlled spindle tool to tools (#176)
  • added filter to control pins invert setting to prevent inverting undefined pins and activate it (#183)

Changed

  • dual axis is now more easy to configure and more flexible. Shadow register can be wired to unused steppers (#175)
  • it's now possible to send some system commands (information commands) without being in the idle state (#178)
  • partially reverted #163 to allow ESTOP invert via $7 also (#182)

Fixed

  • fixed missing stepper 6 and 7 DIR and EN pins from HAL (#175)
  • redesigned axis dual endstop trigger with limits inverted (#175)
  • wrong limit switch trigger during home with dual axis enabled was not being detected (#175)
  • redesigned axis dual limit switch detection. Non dual drive axis limits are combined to detect colisions in min and max (#180)