I am building a water jet cutter using Arduino Uno and CNC shield for control. The CNC shield uses A4988 drivers to control the stepper motors. I uploaded the GRBL (for this shield) firmware to the Arduino and got ready to use Universal G-code Sender to send g-code instructions that the machine will work on. Now my question is this: if I want to choose to work on full step, half step or 1/16th step mode, does the Arduino, shield or the GRBL firmware know what my option is? I am asking this in order to know if I can use another motor driver (if I choose full step and the GRBL handle it well then I can use L297 driver for example, which only work on full and half step mode). I hope I made it clear...
Any stepper controller won't know or care if the driver is using full step or some fractional micro-step. All it needs to know is the number of steps per unit distance. For Grbl this is configured in the $ parameters.
Table 1. Default stepper configuration for GRBL 1.1.
$100=250.000 X steps/mm $101=250.000 Y steps/mm $102=250.000 Z steps/mm
Reference: Grbl 1.1 Configuration.
Grbl is a free, open source, high performance software for controlling the motion of machines that move, that make things, or that make things move, and will run on a straight Arduino. If the maker movement was an industry, Grbl would be the industry standard. Source: Grbl home.