Making your own powerful Controller on the cheap side

I was wondering that as well.

Ya, good question. However not that easy to implement as I’m using the same cables with different connectors and two separate Y cables. So I would need to rig something up, not impossible to do, but fairly time consuming, but it might get to that.

OK, first I measured the voltage right where the power supply connects to the driver, 24.0 V with and without load while moving 600 mm. This was done with a digital multimeter which may be too slow to display any small fluctuations, but it seemed steady, no change at all.

Then I took out the X axis belt and “moved” again 600 mm, still the same noise, so its not belt or wheel noise since the carriage wasn’t moving. See video below.

I’m really at my wits end, other than the drivers themselves, I can’t think of anything else to try.

I am willing to try the GShield and see if the noise goes away. However since I need to make a new connector I would like to only try the X axis, do you guys see any danger on doing this? that is running the GShield with only one motor connected and nothing connected to the other 3.

Thanks again.

You can run just one motor with the gShield. It does appear to be a driver issue,

OK, I’ll make the new cable and give it try. It will be an hour or so before I can try it, stay tuned.

So, I tried the old controller with the GShield, no noise without or with the belt.

I also, for the heck of it, tried the Arduino that the GShield was on with the new drivers and there is noise again, so definitely the problem appears to be the drivers. Unless there is some weird wiring or electrical noise.

Is there anything else you think I should try before I contact the seller and request a return/refund.

I’m in Canada, so I don’t have as many choices as you guys have to buy the drivers. I have access to Amazon, the Canadian version, Aliexpress and eBay. Not sure if there are any CNC specialty stores that would carry these drivers.

There seems to be so many different types of TB6600s, how to be sure that next ones will work.

No, I would send them back.

These are the ones I used and I think Phil used them as well.

Thanks Larry.

I looked on and the same driver is $48.21 each, can you believe it, it’s 14 bucks in the US.

I’ll see if I can find it elsewhere.

Again thanks for all your help.

I’ll update the thread when I get some good drivers.

I have had excellent results using these in the past, no failures:
(Slightly older design/chip than TB6600, and lower max current rating - otherwise very similar if not identical)

For the price they are hard to beat, if viable for you get a 5th as a spare.

Wow, they are pretty inexpensive. I will take a look, see the price here in Canada.


UPDATE: This morning I got the drivers you suggested Larry. I was able to order from and have them delivered here in Canada.

I just finished installing them and running some quick jogging tests and they passed. No funny, clicking noises and no lost steps.

So, I’m happy. I was able to get most of my money back from the other vendor and got to keep the “bad” drivers, no idea what to do with them, I think I’ll just pitch them.

Now on to calibration.

Although I have one more question, that perhaps should be in another thread, but here it goes anyhow: The Z axis still making loud noises, especially when moving small distances. It was suggested that I try 1/4 micro steps instead of the 2A setting. Are there any cons in doing that, I think less torque? I have the CNCNewbies Z axis with the stock motor.

Thank again to all that helped.

1 Like

Good to hear that you got things worked out.

I haven’t run my new Z axis much (long story), but I don’t recall any noises from it. I think many on the forum run them a lot faster than the old Z axis.

Read the Best Upgrade ever thread for tons of info on the Z.

Microstepping will reduce the available holding torque.
Microstepping will reduce the “rough” noise when going slow (low step count/s)
Increasing the acceleration value will also diminish the time spent at low step count/s.

Try changing $112 to 2000 and $122 to 400.

Thanks Haldor I went to 1/4 microsteps and the noise is much better. A lot quieter.
Do you think I will still have enough holding power not to cause any depth problems?
I also adjusted the GRBL parameters as you suggested.

Thank you.

That statement is a bit misleading. Microstepping reduces the incremental torque between steps while moving. It does nothing to at rest/holding torque. That will be the same whether you’re at 1X or 256X.

I’m building a Phil style driver using TB6600 drivers from DFRobot. My steppers are the NEMA 17 from Inventables.

I’m looking for some advice on current settings, the stepper motors are specced at 1.68A/phase, while the driver has current settings for 1.5A & 2.0A. Which one should I choose? Is it better to under power or over power the steppers?


The specified current limit for a stepper motor winding should not exceed the manufacturer’s rating. Use the largest current setting that does not exceed that rating.

For your example use 1.5 Amps.


If a stepper is over powered (current set too high) it will overheat, even at idle. Choose the closest setting below the recommended current limit - 1,5A as Larry suggested.

As a side-note:
Warm steppers are no concern at all, they cope very well with some heat. As long as the outer case temperature dont exceed 176degF (80degC) there is no real danger, but for comfort less is nice.
If one can place their hand on the motor case and hold for 3s temps are about 140degF (60degC) and is well within the comfort of the stepper.

Hey all, so I just went back to review the conversation we had about grounding, etc, and wouldn’t you know, the important and informative posts seem to have gone missing…

Anyway, two questions, which I’m know were asked and answered, so apologies… First, is the GND on the PSU in Phil’s diagram (next to PWM) actual a common ( V- )? If not, how is it different from the ac ground?

Also, can I simplify the terminal blocks a bit by having a single start point terminal blocks that contains:

  • all cable shields
  • all driver signal Commons
  • all limit Commons
  • Arduino grnd
  • PSU gnd (summing that’s actually common)
  • PSU ground (ac)

If I boil down the schematic, i feel like I haven’t technically changed anything, UNLESS the order and separate terminal blocks matter for some reason…