Slight stepping artifacts; any ideas?

Problem identified and fixed - no more glitces :smirk:

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 :slight_smile: ),

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.

1 Like

You know how if you can’t find your sunglasses, you don’t buy a new pair because you hope it’ll just turn up eventually? Finally after a few weeks you decide they’re lost for good, so you give up and buy a new pair, and 5 minutes after you get back from the store you find your old sunglasses? Well, I just sent my old, glitchy Nomad back to Carbide just this afternoon so your fix is 4 hours too late for me :slight_smile: . Given the laws of the perversity of the universe, I conclude that this fix is therefore probably legit :smiley: and would be interested to hear if it works for @Randy as well…

Testing here is commencing - jogging back and forth for hours with the spindle off. So far so good. Not a single glitch heard or measured.

In my previous post I inaccurately stated that microsteps are not used. Correct is, with USM0 and USM1 clamped at logic “1” the steppers are fixed at 8 microsteps. This also explains the strange behaviour that the glitches are instances of faster movement - a changed state on either of those pins means quarter or half step, full step if both see a negative voltage spike at the same time.

That’s some great troubleshooting @loftur, You rock :smile:
I received @Randy’s board yesterday and was setting aside time to hook it up to a scope and begin the detective work, but glad you beat me to it. I’m going to make the change and send it back to Randy for further testing. Randy, Rob and I talked about a potential perfect storm of component tolerances, coil winding, power supply noise, trace width, etc that might have caused the glitch. And yeah, if one of the lines gets a negative spike it’ll change the microstep from 1/8 to something bigger for a brief moment. Funny thing is, the Shapeoko 3 controller board is largely based on this design, and we decided to remove those pull-up resistors from USM0 and USM1.

OK, I’m down to the garage/workshop and will report back in about 20 minutes.

This is why I don’t do schedules… :blush:

I verify @loftur’s solution (EDIT: To the extent of my 100 out-and-back 50mm rapids performed without glitch).

Thank you so much, loftur! And thank you for waiting until I posted my whack-job theory first. :stuck_out_tongue:

@Jorge, please send the reworked board to @kjl instead. My board is functional, though not pretty after my rework. My SMD training was over 10 years ago and I’m way out of practice.

Now to re-hook-up the spindle and reinstall the electronics cover and fan and skins and make some parts! :smiley:

No, don’t send the board to me; I already sent my nomad to you (carbide3d)! Feel free to send me back my original machine and I can fix it, or fix it for me and send it back, or send me a new one; I’m happy in any case.

Hi,

I think i have seen artifacts like this too in some of my carvings. Are all Nomad boards impacted by this and do they all need to be fixed or is only a subset of Nomads affected?

I am not good with soldering etc so I would not be able to perform that step myself unfortunately.

Oliver

Oh, sorry, kjl. I misread your earlier post and thought you had just returned the stepper board.

Hi Oliver,

So far we believe it’s a subset of machines, not all machines, so shoot an email to support@carbide3d.com to get into the ticket system if you’re seeing this behavior. Hopefully we can swap out the boards and call it a day if that is in fact what you’re seeing. Try to confirm it first with a test cut (like some of those we’ve seen here with the drifting action going on) just to be sure.

-Jonathan

@oliverblum Did the new fan resolve your drifting issue? I am also experiencing a drift in the x axis on long cuts and my fan is also making weird noises periodically.

Hi,

it did not resolve the issue unfortunately. While i thought it did for a while, i just had the same issue again (see bottom of this thread: X Axis off in some carvings, especially longer ones).

I suspect that the issue i had there was also caused by the electronics board, the ridge you see on the right side was basically the ‘leftover’ of the stock, but instead of it being straight as you would think (using #101 cutter), it is wedged towards the X axis. That carving was also a 10+ hour carving…

Oliver

I am pleased to report that I was able to fix my x-axis drift problem following @loftur’s solution. For me, the drift in the x-axis appeared to be dependent on motor speed. nearly every time I made a long rapid move in the x direction, steps were gained. I believe the root cause of the problem was excessive ground bounce on DRV8818 pins 7,21. Since the chip’s pull down resistors and the resistors R1-R6 formed a voltage divider, about ±1 Volt of the ground bounce was observed on pins USM0 and USM1. The fastest solution was to replace R1-R6 with something significantly smaller, yet continue to protect the voltage regulator from chip failure.

Thank you Loftur for sharing.

CUTS BEFORE:

CUTS AFTER:

Hi @UnionNine and @Jorge, would it be possible for you guys to post an nc file or something with a toolpath that would allow for users to check to see if they are having this issue? I’d really love to know for certain if it’s something I have to address, and I’m sure I’m not the only one.

Being an absolute beginner at this, my first assumption when something goes wrong is that I’ve made a mistake, so a machine problem might cost me HOURS of possible frustration before it would even occur to me to check that the Nomad might have an issue…

Just a thought.

The job I did which made it super easy to see the issue with is here:

Roughing pass only
Waterline pass only

It’s a super simple model:

and it’s sized for the 3x2x1 blocks of renshape and wax we got with the machine.

You can see what the stepping errors resulted in in my earlier post here.

Also, if you have the same problem that Randy and I had, you can just run the first program in the air without actually milling away any material and you can even hear the glitches in the stepper motors as it runs. The glitch was manifesting itself apparently as the motors taking too many steps every once in a while, so you can hear the motor, while the mill should be going in a straight line at a consistent speed, occasionally go up in pitch for the tiniest fraction of a second.

2 Likes

Hi

I am replacing my board today and removed the old one, but didn’t take a picture of on which Arduino pins the stepper board was connected to (I know…)


Can somebody let me know?

Thanks
Oliver

I got it actually, for reference: Pin SCL and SDA are NOT connected. That helps with the alignment
Oliver

[for those who come after] It’s actually pretty foolproof. The larger gap in the row of pins on the stepper board lines up with the gap between the two Arduino headers. You really can’t plug it in any other way because the distance between sockets 7 and 8 on the Arduino is smaller than two regular (.100") pin spacings.

Also what Oliver said. :slight_smile:

A post was split to a new topic: Shapeoko Homing Issue