Please help : Arm Movement

Please help guys. I have the two large motors (for the wheels) hooked up to port 1 and 10. Those move great. I learned that you have to use tank 2 motor and set it up. I am trying to program my arm movement with a small motor. I know you have to connect it using an external speed control (microcontrol 29) and hook it up to ports 2-9. But as far as program what do I drag and drop to program it? Do I use joystick to analog, joystick to motor and limit? I am so confused. Can anyone please help? The students and I would appreciate this.

Actually with the “small”/“regular” motors, you don’t need a Motor Controller 29, that is only needed when you are trying to connect 2-Wire Motors to the 3-wire ports on the Cortex/PIC Microcontroller.

As for programming, I’m not exactly sure how to explain what you need to do as it sounds like you are using easyC and I am not familiar with it, as I use ROBOTC, but someone who is familiar with easyC should be able to answer your question easily.


The support people said use external speed contol. The wires I am using only have two wires unless hooked to a microcontroller 29. No other way bc ports 2-9 are external speed contol. If I’m wrong please let me know another way. Just really want to know how to program it. Thanks for the tips/info guys and girls.

Alright, if you are using a motor that has 2 wires, then yes, you use a motor controller 29 when connecting it to a 3-wire port, what threw me off was when you said “small” motor, not sure what you meant by that.

Again sorry I can’t help you with programming, wish I could.

I suspect this thread is about a BEST competition robot, not vex motors.

Since BEST users are new to this forum, it would be helpful for everyone if they would identify themselves as using the BEST robotics returnable kit.
The BEST motors provided are 2 ‘large’ DC 2 wire motors (maybe 6x more torque than Vex 393 motors!), and 2 ‘small’ DC 2 wire motors (about same power as Vex 393s). BEST motors are not physically compatible with Vex metal, nor are they legal for Vex competitions. IFI/Vex has sourced them for the BEST Robotics competition use.

As far as programming with EasyC, JoysticktoMotor or JoysticktoMotorwithLimit would both work fine. If you have limit switches for the arm so that a careless driver doesn’t break the arm, then it is good to use the limit switch version. Try something and see how it works. Once you have the motor plugged into a #29 plugged into port 2 safely, you can’t much hurt it by programming, unless you jam the arm and stall the motor.
The default BEST program is really a good place to start to look, even if you don’t use it as a starting place. There is also an example of GetJoystickAnalog to a variable, then SetMotor based on that variable,
if that is easier for you to understand, more like last year’s Brain.

I built a demo bot for BEST with Tank drive. One problem I noticed is that if I use both thumbs for driving, I can’t use them for the arm motion too, since driving tends to accidently move the joysticks sideways which would move the arm. So I found it easier to drive with ARCADE style on the right joystick, and use the left joystick for the ARM. YMMV.

Thanks for the help. I watch the video and it used joystick to digital motor. I just dont know if I have it wired or “setup” right. I have the red and wire to the motor screwed into that four screw white link. Then I have the red black wires that have two prong in. I hooked that up with a microcontroller #29 that is three prong at the end and plugged it in. Is that “linked” correctly? That might be the problem and not my programming. Thank you for all the help.

So you are with BEST, right?

Joystick Digital to Motor uses the buttons on the joystick. Thats fine if thats what you want, but there is not proportional speed control that way. Push the UP button and it is full speed up, same for down, so it may be hard to control unless your arm motor is geared down a lot.

Your hook up sounds correct:
Motor wires to jumperblock to redblack to 2wire side of #29, 3wire side plugs into Cortex motor port #2.
The default values for Joystick Digital to Motor are
1,5,1, -127,2,127,2 That means the left front shoulder buttons on the joystick will make motor port 2 go full forward or reverse.

If it doesn’t work, first try pushing all the buttons on the controller. Then try using a different #29 motor controller. If you every had a bad hookup that shorted out, you may have burned out your #29 motor controller. Your Hub and/or Vex should be able to get your a spare.

Ahh, thank you, and sorry “eloveless” for the confusion. And yes, it would be helpful if BEST teams/people would specify thus, so this confusion doesn’t occur often.