This is really getting strange, and well past my knowledge level.
I got the OSMC running again, set up a test program to spin the MagMotor at 50% for 5 seconds, turn it off for 5 second, run in reverse for 5 seconds, etc.
The speed controller wasn’t catching on fire, but was getting pretty hot. That was odd, as I was spinning the motor no-load, and should have been pulling a fraction of the current the controller can handle. I’d tested and retested the components on board, and am pretty confident they are good.
At some point I tried another MagMotor, same model. It ran fine. Ah Ha! I thought. I was simply using a bad motor.
So I took the old motor out, disassembled and cleaned it, retested, and it too ran more smoothly, and without heating the controller. Sensing victory, I put the new motor in the skateboard, soldered new connectors to it, wired everything up and tested again. Right back where I started. Rough running motor, and hot FETs.
I thought that maybe by bolting the motor into the frame I was binding the motor up a bit. Maybe cleaning the old motor didn’t solve the issue, but pulling out of the frame did. The other possibility was that it wasn’t a frame/binding issue, but the fact that I had to use jumper wires between the motor controller and the motor when the motors were out of the frame.
To test that theory, I left the new motor in the frame, but instead of directly attaching it to the controller, I used the 50cm jumper wires between the motor and the controller. Sure enough, the problem went away. Once I removed the jumper cables, the problem came back.
If I only eliminated one jumper cable (say from motor negative to controller negative), the problem popped up. That was the case regardless of which jumper cable I eliminated.
I thought that maybe the alligator clips on the jumpers were getting a better connection than the bullet connectors themselves. So I resoldered the bullet connectors, making sure to get a good connection. That didn’t help. I used steel wool to clean up the connectors, no dice. When using the jumper cables, I was going directly from bullet connector to bullet connector, so it wasn’t like I was using a completely different path to the controller.
The jumper cables I am using are the SparkFun 50cm cables. They are a tiny gauge, I actually doubled them up because I was concerned that I’d melt them, even just pulling <10 amps. They don’t get hot, but magically make the issue go away. I can tell the motor is running faster and more smoothly with them on, it’s pretty obvious just from the motor noise.
Any ideas? Why would replacing a short high current capable connection with about 2 feet of low current cable make a difference?