Unfortunately, ROBOTC is only able to send a command to the Cortex telling it what the desired position should be; the Cortex then converts that into the pulse train that is used to actually control and move the servo. In some cases, the physical range of the servo (in this case, 180 degrees) falls outside of the standard pulse waves (1.0 ms to 2.0 ms, with 1.5 ms being dead center). This varies from servo to servo and is unfortunately difficult to compensate for before hand.
In this case, since the Cortex (and not ROBOTC) controls the pulse wave output, any range values outside of the standard will not be reachable. The best thing I can recommend in this case is to use physical gearing ratios to access the full 180 degrees of movement (at the cost of servo accuracy).
12/10/12: To clarify; the VEX servos have a
listed range of 100 degrees of movement. This is an electrical limit; when ROBOTC sends the Cortex a value of -127, it will move the servo to -50 degrees, and when ROBOTC sends it a value of 127, it will move the servo to +50 degrees.
This limit cannot be overcome on the servo itself. The only way to change the range of movement from a servo is to gear the output of the servo appropriately. The servo will still have the electronic limit on how far it can move in one direction or the other, but the output's gearing will help to compensate for this. Hope this helps clarify, and I apologize for any confusion this may have caused.
_________________Check out our
Blog! And our
Facebook page!
Need help? Take a look at our
updated help documentation and the
ROBOTC Forums.