I am a new teacher to robotics and am trying to reset the VEX Cortex to factory settings. We have tryed the following steps and ports 2 through 9 are not reset. One port from 2 through 9 will work at a time. Please view the steps we are taking and help.
"To wipe old programs off your joystick and cortex:
Cortex is OFF, press and hold config button
Download firmware to Cortex
Robot / Download Firmware / Manually Update Firmware / RobotC Firmware / Standard File (VEX_Cortex_1056.hex)
Download firmware to joystick
Robot / Download Firmware / Manually Update Firmware / VEXnet Joystick Firmware / Standard File (Joy_V4_25.BIN)
Now to Link Controller to Cortex
Both Cortex and joystick are off
Connect Orange cord to Cortex and Joystick
Connect the 7.2V Robot Battery to Cortex
Turn on Cortex ONLY
A successful tether is indicated by a Solid Green VEXnet LED on both the Joystick and the Cortex.
The Solid Green VEXnet LED must remain ON on both units at the same time for a minimum of 5 seconds.
Disregard the other LEDs as you are only interested in the VEXnet LED.
Pairing may take up to one minute to complete."
Can you describe your issue with the ports further?
Do you mean that only one of motor ports 2-9 works? Is that seemingly random, or is it just one specific port? Were you having problems with those ports before you tried to reset the cortex?
Also, how are you testing the ports? If you’re using some code, make sure the ports are configured correctly (posting your code here would help)
After downloading the basic clawbot program, only port 6 or port 7 will function. Ports 1 and 10 are fine. We tryed coding just one port from ports 2 through 9 and each port communicated with the joystick perfectly under those conditions. When two ports are programmed (one for ARM and one for CLAW), only one (2 -9) will function with the joystick. Very puzzling.
This is our code:
configuration of motors:
port 1, motorLeft
port6, motorCLAW
port7, motorARM
port19, motorRight
task main()
{
while (==1)
{
motor[port1]=vexRT[Ch3];
motor[port10]=vexRT[Ch2];
if(vexRT[Btn6U]==1)
{motor[motorCLAW]=127;}
else if (vexRT[Btn6D]==1)
{motor[motorCLAW]=-127;}
else
{motor[motorCLAW]=0;}
}
{ if(vexRT[Btn5U]==1)
{motor[motorARM]=127;}
else if (vexRT[Btn5D]==1)
{motor[motorARM]=-127;}
else
{motor[motorARM]=0;}
}
}
The issue is that control of the arm motor is outside the while loop, better formatting of the code would have helped see the error, here is the original code reformatted.