Drive Base/Power Expander Issue


My team has an issue regarding the drive base of our robot. There are 4 motors on the drive and all of these motors are on a power expander.

Before a recent competition, our drive base worked fine and could run as long as the battery was charged.

During the first match of that particular competition, the drive base died on us after 30 seconds and stopped working. The power expander also showed a blinking light. This continued throughout the competition. I also noticed that the drive ran for 50 seconds before dying if the backup battery was plugged in.

With this said, does anyone have any suggestions for my team?

When I say the drive base died, I mean that the drive base wheels started twitching and the robot cannot move forward.

Did other motors that were not on the power expander still work after this happened or did everything freeze up? Did you try running with out a power expander to see if the power expander was at fault? Also post your code in case this would be the cause of your problem.

This sounds like a code problem where you are sending conflicting signals to your wheels. (trying to send values of 127 and 0 at the same time)

Are you using “Y” cables to go to the power expander from the Cortex? If so remove them and try it again. I don’t know why but the power expander does not play well with “Y” cables on the input side.

Which means you tripped the breaker (PTC). Motors running slow or stalled will draw too much current.

Tripped PTCs is indeed most likely the issue. Some more info about the PTC:

There are many experienced roboteers on the forums - if you post a picture of the bot it’s often fairly easy for them to find specifics that you can change in your design to make this less of an issue (ie maybe your drive is geared for too much speed, friction issues, …)

I know the specs say they are the same but I think the power expander PTC trips much easier anecdotally.

So swap the motors back to the Cortex and lighter elements on to the power expander. See if that helps. Two and two across both power supplies would leave you running in a hobbled state (if you’re not mechanum).

Do you have the status wire hooked back to the Cortex to get readings in the debugger of power? Run it for a long while aggressively in practice and watch it.

Also use some software to stop power spikes like jpearman’s slew rate code found on the forums. Or the motor library to detect the temperature but that is more complicated.