Problem identified and fixed - no more glitces
When probing around with an oscilloscope I noticed that there were very substantial spikes, up to +/- 1V at the USM0 and USM1 microstep input pins of the X-axis DRV8818. As the stepper motor controllers are not being used in micro stepping mode, these pins are clamped to logic 1, at 3.3V (Vcc) through 4.7kohm resistors (R1 - R6).
I also noticed that the 5V logic for “step” and “direction” is fed directly from the Arduino board to the stepper controllers. This is somewhat unusual, but the data sheet appears to indicate that it is OK to use logic “1” voltages higher than Vcc, or up to 7V. Reason I mention this is that it may contribute to the spikes seen at other logic inputs.
In any case, the resistors R1 through R6 are unnecessary and shorting those reduces the spikes present at the USM0 and USM1 inputs to near zero. This has totally eliminated the glitch issues.
R1 to R6 are just below the three connectors, two beneath each connector. All now shorted.
(OK the board is upside down ),
If I were to redesign that stepper board, I would probably eliminate R1 to R6 altogether as they don’t seem to serve a clear purpose other than maybe protect the 3.3V regulator a little bit if the stepper drivers get fried for some reason. If keeping them, then those resistors should not be larger than 470 ohm. On the other hand, I would add 470 ohm resistors on the step and direction inputs, to compensate somewhat for the transition between 5V and 3.3V logic, however - according to the datasheet this seems not to be necessary.
OK - to the caveat: I happen to be an EE and an active electronics tinkererer in my spare time as well, so I was not particularly stressed about voiding the warranty on that board. However, play at your own risk - if you are experiencing the glitch issue, then it is probably better to contact Appolo, Jorge and Rob.
Anyways - having torn the machine apart two times in as many days, I am very impressed with the build quality - good job guys.