I'm currently troubleshooting an odd dilemma, and am finally nearing the end of my rope where I go insane and post in the forum haha. I believe this to be a hardware/electronics issue.
For the sake of troubleshooting, I am currently sending 9v directly to the VM pin on the driver (via the Vin pin on the arduino) to eliminate extra hardware.
The issue:
"Motor 1" rotates both directions as expected.
"Motor 2" rotates one direction as expected, but weak in the other direction.
Troubleshooting (and results):
Swapped the "positive" with the "negative" of the affected motor (weak direction reversed)
Swapped "Motor 1" with "Motor 2" (Motor 2 no longer afflicted; Motor 1 now afflicted)
Swapped out the motor driver with a spare (no change)
Swapped out my soldered board with a spare (no change)
Has anyone perchance had experience with a similar situation? I have found people raising similar issues in google searches, but none had a situation where they tested spare parts or reported any final conclusions unfortunately.
EDIT: Additional troubleshooting steps tried:
5) Using alternate pins on the Arduino (no change)
6) Swapping out the cabling between the Arduino and the afflicted channel (I blame my crimping.)
Swapping the motors proves it the chip, one channel is under-performing, suggesting its fried.
Did you buy the TB6612 from a reputable supplier? Most non-reputable sources are counterfeits
these days, and should be avoided.
Did you observe anti-static handling precautions? There's a definite risk of damaging semiconductors
if not.
One more thing have you tried swapping which Due pins go to which inputs on the TB6612? Perhaps
one of the Due pins is faulty instead? Less likely, but worth checking.
If I recall correctly, I purchased the two TB6612's that were tested in this situation both directly from the Sparkfun website (and both have shown the same issue in the setup, which is why I was hesitant to believe it to be the issue).
Per your suggestion, I have tried moving the three pins relevant to that channel (Pins 5,6,7 to 10,11,12). No change to performance, unfortunately.
Anti-static handling precautions while soldering pins to the motor drivers? I believe I had the part held in a grounded vice at the time, however my memory is a bit fuzzy that far back.
Edit: Holy crap I found the issue! It ended up being a cable! I ended up trying a couple more things (switching the cable around, swapping cables), couldn't believe that's what it was.
@MarkT The entire unit does move, so I think the jiggling caused the directional pin to occasionally work (in one direction, there's no signal, hence that way worked fine). It may or maybe not have been a cable I tried making... lol.
Anyhow, topic marked as solved. Hopefully the next people to google up this issue come across this topic and see these possible troubleshooting steps and possible solutions.