Arduino based build with TB6600 drivers and NEMA 23's. I finally got some motion on my machine, but when I prompt it to jog in UGS, the motors will only jog when they're turning CW. When I click the opposite direction, UGS is counting up the distance, but the machine does nothing. I double checked the wiring on my steppers (link below) and the drivers, and everything seems to be lined up correctly. I checked all of the pairs with my multimeter and it was all good. I also connected the wire pairs (A+ to A-, B+ to B-) to see if the motor was harder to turn, and it was, so the pairs are all definitely correct. https://www.amazon.com/gp/product/B00PNEPF5I/ref=ppx_yo_dt_b_search_asin_title?ie=UTF8&psc=1 From some googling, I saw some people had to get a new Arduino to fix this problem? I'm now on my 3rd arduino (but 1st legit genuino), so really hoping this is not the case. Another thing I saw was that maybe I need to flip one of my wire pairs at the driver? I would like some input on this, as I'm having a little bit of a hard time wrapping my head around how that would fix the problem. Any help would be greatly appreciated! Thanks, Sam
Most likely a problem with your wiring between the Uno and the drivers. Can you post a wiring diagram of your setup? The most common error would be to have the minus signals going to the wrong place(s) instead of the gnd pin.
The genuine Arduino would by now be the least likely. But TB6600s can be terribly low quality (hit and miss, there are some good ones, many are absolute junk, problem is buying from the east you don't know what you have. They sometimes even mislabel things as TB6600s just because its a popular search term, so it gets them the hits (meanwhile it could be the even worse TB6560s inside) Its not that TB6600 Chips are bad, but the boards around them are laid out differently - some to specification, some just to cut costs.... If you want to avoid wasting your own time, I highly recommend either replacing the TB6600s with some quality DQ542MAs or take it step further and eliminate any worries about wiring and arduinos and the rest of the mess and get a BlackBox Motion Control System!
Looking back, I would probably just go with the BlackBox, but I'm too far down this road now... If I were to replace the TB6600's, I would probably go with the gShield v5, which I may just end up doing. This would save a lot of room in my enclosure. Is there any way to test the TB6600's to know that they are bad? Here's my wiring, looks correct to me as far as I can tell. If I can get my motors to turn in one direction, I would assume I am hooked up to the Arduino correctly, so it's the PUL- and DIR- that aren't working correctly, but the wiring is just ground. Here is what I'm basing my wiring off of.
That has drivers that peak out about 1.2A RMS with active cooling (more than that it starts suffering thermal cutout, leading to missed steps) - just about enough for a NEMA17. If you have NEMA23s it will be quite underpowered. Wiring "looks" good, are you sure your DIR+ signal wire is making good contact on both ends? (kinda looks like insulation goes down into the terminal, maybe the screw terminal is pinching on insulation instead of contacting wire)
Crap, thanks for pointing that out. Didn't realize it couldn't handle NEMA 23's. Alright, tonight I'm going to go through all of my wiring between the arduino and the drivers to make sure all of the connections are solid. I'll probably also solder the parallel wires together so I don't have multiple wires going into the same terminal. Maybe that is causing some of them to not be in contact. If after all of this I still haven't gotten any results, it may be time to just bite the bullet and get the BlackBox and completely redo my electronics enclosure. Hoping it doesn't come to that as my money saving efforts will all be for naught.
I might be wrong, but I've been instructed to never mix the signal and power grounds, and thus never have. On yours, you have the PUL- and DIR- connected to the driver's "high voltage" ground, which I assume and hope goes to the PSU, instead of the Arduino ground (Otherwise you'll probably fry the board's voltage regulator, depending on your voltage). What I'd try is removing the wire between PUL- and GND and instead do that same wire from PUL- to Arduino GND pin. Leave the rest of the wiring as is. Simply put: The plus signals come to the driver from the Arduino pins, the minus signals go from the driver to Arduino GND, and the "high voltage" VDC and GND wires go to the PSU. Edit: Just checked the Kalaar wiring diagram, and it has all the grounds connected together, so apparently it SHOULD work like you have it set up, I just haven't tried that way myself.
Update time, I found the main problem and it makes perfect sense. So after going through all of my connections, I couldn't find anything loose or not working with my multimeter, but when I was checking my power connections I noticed that I had no ground connection between my arduino and my power source. Bingo! All of my drivers were powered and grounded directly to my power source, but the Pul- and Dir- never looped back to the power source, so make sense that those directions wouldn't work. Alright, now a new problem... My Z-axis is fine, I can jog it + and -, but my X and Y travel the same direction whether I hit + or -. I tried inverting the axis, but then the + and - both just jog in the other direction. I didn't have time to dig further into troubleshooting this problem yet. Any idea what's going on? My thoughts are that the Dir+ must be getting used for Dir+ and Dir-, but I'm not sure how... I'll check over all those connection later and see if anything is out of the ordinary, but any help on this would be appreciated! Thanks for all the help so far guys.
For clockwise moves, for example, Grbl will set DIR+ as 5v (referenced to DIR- = GND) (HIGH) For counterclockwise moves, for example, Grbl will set DIR+ as 0v (referenced to DIR- = GND) (LOW) If your drivers still don't interpret the low/high signal its likely just a case of "Typical TB6600 knockoffs wasting a user's time again" I'm afraid to say. Get a BlackBox (; Why a BlackBox? All wired up internally, it doesnt get easier. No need to worry about gnd wiring, or connecting drivers to an arduino, or whether its the driver or the arduino. You get a warranty and you get support (well, you already get support even for someone else's products hehe) Ask yourself: Do you want to work WITH your machine or ON your machine? (; BlackBox Motion Control System
Ya, I think I'm just going to do it and order a BlackBox. Your last question really helps to put it in perspective... I have a couple questions about it though, if you don't mind. Maker Store currently has it listed for $144.99, while openbuilds has it listed for $169.99. Is there a reason that it is cheaper there? Also, do I need the standard 4-pin connectors that openbuilds uses to connect to it? BlackBox Motion Control System - Maker Store USA BlackBox Motion Control System Thanks, Sam
Reach out to http://support.openbuilds.com/support/home for price/order related questions It does come with all the connectors!
I figured it out! Turns out I had the Dir pins on my X and Y axis swapped on the arduino input. Must have happened when I switched from my previous china-uino to my current genuino. Now all the commands work perfect! Just finished setting my max vel and accel, now going onto the limits. Thanks for all the help! Almost bought one today, but will definitely be getting a BlackBox on my next build...
I had a feeling your drivers were OK, but couldn't put a finger on the reason even though I'd seen it before so well done Sam!