As I'm not sure where to post this question, I'll try to get an answer here.
I have a Arduino CNC shield v3 (running grbl 0.9j) connected to Universal GCode Sender (platform).
Works all just fine, except with one very annoying problem...
My (DIY) CNC router its Z-axis automatically lowers due to (little) vibrations made by the router.
That's a big issue as the machine its Z-axis is no longer in line with the home position at that point.
Is there a way to force the stepper drivers to keep current flowing to the motors, even if no gcode is sent?
Excessive vibration on a z axis will certainly cause it to drop.
If it is part of one of the cheaper CNC machines it maybe a 775 motor and slowing the RPM can also help.
You should attempt to fix that first with maybe a better motor and EP2 grease to the bearings.
You can also change the parameter in GRBL to provide a lock / brake effect.
Prefered GRBL is 1.1 as there are some enhancements to it.
See the parameter " $1 and set to 255" for braking effect.
It seems you were spot on with the proposed solution.
I downloaded the latest grbl release (master, 1.1h) --> I initially thought the CNC shield would not like a higher version than 0.9 (as it stated to be compatible with v0.9).
Uploaded the firmware
Launched the $1=255 command in UGS (seemed to be defaulted on 25 I think)
Did a few G1 commands ... just to move things around to a safe position (you never know what happens :-))
Started the router: ALL good! No movement whatsoever. The nema 17 motors seem to hold just fine. Can't move the motors manually, even with some force. PERFECT!
Ps: Sorry for the late reply. I had no access to the machine the past days.