More on step/mm setting

I have asked here how to figure this and while I feel I understand it, at this point I’m stumped as to where I could be wrong.

My math says the step/mm should be 250 but in the real world the number is 166.666. Maybe someone can point out my mistake- setup is C3D Mini on Smoothieware, 1.2 deg stepper with 20 micro steps so 6000 steps/rev. Output for motion is a 24 tooth HTD belt pulley with 3mm pitch. That pulley is geared 1:3 from the stepper, so it turns 1/3x24x3mm or 24mm per rev. 6000/24=250. Working backwards, the 166.666 setting would imply 13.333 micro step per step which is probably impossible to get.

FWIW, my stepper controller is the Leadshine HSB507 running Leadshine 573HBM120 which are NEMA 23 feedback steppers. Once I find my ethernet to Serial adapter I will interrogate the controller to verify setting but I bet its set at the default of 20 microsteps

Edit: Removed link to earlier post; it was not relevant here.

Another thought; I assume you have doublechecked the pulley by physically counting the teeth? Just in case :wink:

I see no flaw in your math.

https://www.leadshine.com/search.html?keyword=573HBM120 returns no results. :confused:

Your 166.666… sure looks like 4000 microsteps/rev to me.

If you stepper were really a 1.8° stepper wrongly labeled as 1.2°, that’s exactly what you would get; 200 steps/rev on the stepper times 20 microsteps would be 4000 microsteps/rev.

I would disconnect the stepper from everything mechanical, put a flag on the shaft, and watch what it does with 4000 and 6000 microsteps.

1 Like

yes, many times because I do have a 20t pulley in the system so early on I had many chances to establish that all 4 x/y pulleys are 24t. also the Y gearbox uses a 24t belted to a 72t for the 1:3 gearing. The 20t is belted to a 60t for gearing to the X axis.
Anyway if no one has an explaination, then at some point I’ll do an mechanical analysis of my K40 and see if the math matches the 157.375 to see if I’m some how making a mistake with arithimatic

Yes for some reason they are difficult to find info on however I have it and its pretty explicit about 1.2* and I’m sure they are not counterfit

https://support.thunderlaserusa.com/portal/en/kb/articles/leadshine-573hbm20-series-ez-servo.

I will double check as you suggest since its simple to do and would eliminate that, one other thing I thought of was the controller spec is for 2.5ms pulse but Smoothie/K40 was set at 1ms. It worked the same with either setting.

Yeah, if it were length of pulse I’d expect it to be nonfunctional or randomish, not precisely 2/3 of what you expect…

As I mentioned this bothers me so I checked my K40 so see if it complies with the math. First off we know the setting is 157.375 step/mm.
AFAIK, the K40 mostly has 0.9* steppers with 16 steps(?) so 400x16=6400 microsteps
The motion pulley is 20t of 2mm so 40 mm/rev. So 6400/40= 160 step/mm. So its close but not precise, I don’t see how that can be. At least the “error” is small, in my case 166.66 vs 250 is huge. I think next I will post in a large CNC group and see if someone understands what is going on.

Found this which confirms the math, so now the question is whats up with GRBL/Smoothieware that causes these mismatches.

I’d suspect belt imperfection or stretch.

Could be, I found a case on the CNCZone where the guy had extreme precision at 1300mm but at intermediate distances, it was off quite a bit, It was a long thread and did not seem to be related to this issue so I didnt read any outcome. So I’m more curious than ever at whats going on. Has to be GRBL/Smoothieware, but at the end of the day if a correction makes it work then maybe the devs just said good enough, screw the error.

This is unlikely to be software. You’d really have to go out of your way and it would be harder to make that kind of error than not.

I can’t see the K40 error being so odd, 157.575 vs, as you say it should be nice whole numbers when the geometry says it is, but still 2.425 error out of 160 is like oh well. In my case with 250 being the calculated number and 166.666 being correct, its down right not believable. Something is wrong I/we are not seeing.

This evening I got my RJ12 interface cable for my stepper drivers and I was able to interrogate the driver.
As I expected, things are odd. Specs are clear, 1.2* and default 20 microsteps. However it appears the default as shipped is actually 4000 steps which is a bit odd for something doing 300 steps/rev. Since the C3D Mini supposedly is set for 16 microsteps I set the driver to 4800 and almost like magic the calculated step/mm is 200 which works perfectly. But the other odd thing is now its not quite so smooth and quiet when stepping. Seems a bit more notchy like each step is powerful vs smooth. Also surprising with the setting of step/mm and total microsteps changed it gave the same distances so closely the laser dots coincided over 1400mm travel. Thats better than the 3 decimal places would indicate or just luck?

. I have a suspicion the odd 4000/300 step setting is because unlike smaller open loop stepper this one is 3 phase so 1/3 operations are sort of native to the design. Also being feedback, the encoder is limited to 1000 lines which is somehow stretched to 4000 lines, which requires more knowledge than I have to adjust without causing a problem(yes I tried).