Motor only turning one way

Hi I have a motor on my bot right now that only turns one way and doesn’t turn the other way at all.
We have a competition next weekend and I don’t have time to ship it to VEX or anything.

Any ideas why it is doing this and if so is there any fix.


In our experience, it is common for the issue to be a bad motor controller, not the motor itself. See if the motor spins in both directions using another motor controller.

It actually seems like it is the motor port 1
I am using EasyC.

Try the motor with another port, one you know works (or try a motor you know works in Port 1)

Edit: If you would like to share your code then we can make sure it isn’t a coding issue.

Yeah, it is definitely motor ports 1 & 10 that aren’t working. I tried redownloading the default code but it doesn’t seem to be working.
Is there a way to fix this.

I’m not sure it’s the motor. Is there friction anywhere? Is the motor geared? In other words, can you manually spin the motor? I would recommend taking the motor off of whatever mechanism it’s powering and seeing if the motor is still broken in the one direction.

Have you tried some simple code which just spins the port in the direction? Is it possible that you have a coding issue on Ports 1 and 10?

When you say redownloading the default code doesn’t seem to be working, do you mean it is failing to redownload or do you mean that redownloading doesn’t fix the issue?

Just to clarify – the motor works perfectly in one direction (you can vary the speed and stop it using the joystick), but won’t spin in the other direction? Do other motors plugged into the same port run in both directions?

What do you mean exactly by default code? Do you mean the master firmware or do you really mean the “default” code? (In other words, you have not written any code of your own, you are using the VEX supplied program )

Try using the “online” dialog box in EasyC, can you control the motor with this?

Best way to check a motor is using the 9V backup battery, just connect red-red and black-black and check motor spins, reverse and check the other way, don’t leave connected for very long.

Exactly. No other motors only spin in one direction. Any ideas why?

We have ideas, but we need more concise feedback.


  1. You have damaged the H-bridge for port 1 and/or port 10. This could happen if the port was shorted or something not intended to be plugged into port 1/10 was plugged in.
  2. You have bad code, but we haven’t seen that so it’s an unknown.
  3. The joystick is bad, have you always tried to run this motor with, for example, channel 2. Perhaps the joystick needs calibration or is not working properly.
  1. I don’t believe I plugged anything bad into it. Maybe a bad motor but I doubt it.
  2. I used a standard SetMotor in Easy C. Nothing fancy.
  3. I haven’t tried multiple joysticks but I used the on-line window that comes with easy C and it would only spin on 127 not -127.

Also Y cables don’t seem to be working, so we might be limited to only 8 motors.

It does sound like port 1 is broken, nothing you can do about that except send back to VEX.

How are you using the Y-cable? The Y-cable plugs into a 3-wire port (port 2 through 9), two MC29’s (motor controller 29) are plugged into the Y-cable and a motor into each one. Make sure the polarity of the wiring is correct, match black with black etc. If the MC29 is plugged into the y-cable with the polarity reversed it will not work. You cannot use a 2-wire motor directly with a Y-cable, you cannot use a Y-cable on the output of an MC29, ie. two motors on one motor controller is not allowed.

On the y cable subject, do they split the power in half or is it the same as having two motors powered seperately.

The same as having two motors powered separately. You still need to consider the total power on one cortex circuit (the cortex has two thermal fuses, one for motor ports 1 through 5 and another for ports 6 through 10) in the same way as you would if not using a Y cable.