Hi Claudio, let’s see if we can solve the problem together!
First of all, you say that your PCB version is the v1.0, do you mean the two-sided PCB or the one-side PCB? It’s my fault for naming them both the same, sorry for the confusion!
Looking at your case, I think that the problem could be one of the following four:
- Broken Stepper Motor: Not very likely but sometimes happen. If you already have tested that motor switching it with another one and worked, you can discard this possibility.
- PCB traces fault: Highly Unlikely in the two-sided PCB, but likely in the one-sided one. Maybe the power traces that send the signals to the 5th motor are short-circuited or cut. You can test it with a multimeter in continuity mode.
- Bad component welding. Likely. If any component has not been properly welded to the PCB it may cause issues. In your case, you should check only the weldings related to the 5th motor (pins, resistor, capacitor).
- Misconfigured/Faulty Stepper driver. Very likely, the problem is almost certainly to be found here. Switch the stepper driver of the 5th motor with another one of the PCB which you know that works. If that is the problem, the driver could be broken or misconfigured. Drivers usually have a potentiometer build in the top which regulates the amount of current supplied to the motor. If it’s set too low, the motor will not receive enough energy to move (but it won’t cause other motors to stop, so I guess is not your case).
Regarding the motors overheating, it’s related to point 4. When the robot is Idle, it has to hold the motors position, blocking them. If it didn’t, it would fall under its own weight. This lockout causes the motor to consume energy, warming up in the process. There are two things that you can do to try to avoid them to overheat: Cooling (that’s why I placed fans in the design) and tuning the stepper drivers to provide enough current to move the motors but not more.
Keep us posted on your progress! 🙂