Skip to content

Roadmap

Terje Io edited this page Nov 9, 2021 · 6 revisions

grblHAL core

The grblHAL core is common to all drivers and is where such tasks as gcode parsing, trajectory planning and step generation takes place. No large changes or code refactoring is currently on the roadmap except:

  • Probe protection - work started a while back, tricky to get right. Requires driver changes as the probe input pin must be interrupt capable and signal back to the core when the probe is hitting something when it should not. An optional probe connected input will also be supported in the core when this is completed.

Drivers

Add support for more of the optional features and plugins to additional drivers. No particular priorities made except for adding spindle sync and plasma support to the iMXRT1062 (Teensy 4.x) driver. Is a feature missing from your favourite processor? Open an issue and request it, or add it yourself and create a pull request.
Some plugins or features will be easy to add, some harder and some not possible to add at all.
Note: available processor peripherals such as timers and GPIO pins will limit what is possible to add.

Drivers planned:

  • STM32F446 on a NUCLEO-F446RE board. This is likely to become a part of the existing STM324xx driver. I have created a breakout board for the ST morpho extension bus found on the Nucleo boards.

  • STM32F756 on a NUCLEO-F756RE board. Has plenty of GPIO pins and cabled ethernet. Can use Arduino UNO V3 format breakout boards...
    An initial version has been published.

  • Cypress PSoC 6 on a CY8CPROTO-063-BLE card.
    This is a dual processor core, I may add a LCD display with code running on the M0 core. Delegating step generation to a separate core is also something I want to try...

Driver enhancements:

  • Add uniform way to specify ganged/auto-squared axes to my_machine.h. Add this option to drivers capable of handling it.

  • Add generic crossbar for assigning some GPIO pins to function via run-time configuration. Needs core changes for handling settings?

  • Verify spindle sync option for MSP432, iMXRT1062 and STM32F4xx drivers. Add more drivers?

Plugins

  • Encoder - use quadrature encoder(s) to adjust overrides or for jogging. Support for jogging is outstanding and would be a good challenge for somebody to complete.

  • Odometers - first version completed. Logs distance travelled per axis, machining time and spindle on time.

  • Plasma/THC - work started, testers invited.

  • OpenPNP - work started, testers invited. Adds a number of Marlin specific M-codes. Add as option to capable drivers.


2021-08-26