fun with a drive problem...

Greetings everyone!

I was at a tournament on Saturday, and about halfway through the matches something strange began to happen to our drivetrain. The left side (both of our two motors) stopped briefly every second or so. No matter what we did, it always went “forward, stop, forward stop” when the joystick was held forward.

The motor controllers and wiring are not at fault- they were replaced and the problem persisted.

The motors themselves are not at fault- they were replaced and the problem persisted.

There is no mechanical fault- when the motors were removed from the drive and held independently, the problem persisted.

The ports are not at fault. We re-wired our bot (and reprogrammed accordingly) to put the left drive motors into different ports (4 and 7 instead of 5 and 6) and the problem persisted.

But here’s the real problematic part: We use easyC and in our operator control while loop, we have an arcade 4 setup. When this was changed to 2 (two) arcade 2 setups, the problem disappeared. There were no other changes to the program, just that alteration.

The question is thus:

Why would this affect the drive in that way? To my knowledge, there should be no problem with having an arcade 4 setup in easyC. Is it some kind of hardware problem inside the Cortex that makes the software glitch? I have never seen this before and I was wondering if anyone had.

Your help is much appreciated!

Any chance it was a problem with the joystick?

Could you duplicate the problem with different (simpler) code? Can you duplicate the problem on another cortex using the same code?

When you encounter this problem do the motors feel warm?

Jpearman it seems he already has the simplest code possible. EasyC arcade drive block. My best guess is just that some of the motors are going the wrong way and stalling. Or something like the arcade block sets the vertical axis as both the horizontal and vertical axis.

Could you post your code?

I was just wondering what else was running in the same control loop, for example, lots of printToScreen commands have been know to cause problems (fixed I believe) in the past.

strange, usually that would be programming
but you said it was working perfectly until half way through the event?

I had that exact scenario happen a few years back
but that was because I was testing out broken holonomic code

The motors’ temperature is fine, they didn’t feel warm at all. I can’t post the code, but it is pretty simple, just an easyC arcade drive block

Yes, it began in between matches after testing our skills autonomous code. But we didn’t change anything in the driver control

We’re going to try to swap the cortex out tonight, and i’m hoping that will work. If it doesn’t, we’ll try to swap the joystick.

Swap joysticks first, far easier.