Sources & references
Primary documentation used in these guides, with links beside the relevant explanations.
How these sources are used
VEX documentation defines the device APIs used in the C++ examples. PROS documentation provides a useful comparison for motor control and task organization. Purdue SIGBots and LemLib cover feedback control, tracking, and tuning.
All examples here are written for VEXcode C++; a linked PROS or LemLib example cannot be pasted into VEXcode unchanged. The odometry and wall-reset equations are explained using the coordinate convention stated in these guides.
These are educational examples, reviewed against the linked documentation. They have not been compiled with the VEX toolchain or tested on a physical robot. Verify wiring, dimensions, sensor signs, and controller behavior on your hardware.
- MicrosoftDownload and install Visual Studio Code (opens in a new tab)
Install the desktop editor for your operating system.
- VEX RoboticsInstall the VEX and C/C++ extensions (opens in a new tab)
Official extension installation instructions. These guides use C++, so the Python extension is not needed for the examples.
- VEX RoboticsCreating VS Code projects for V5 (opens in a new tab)
Choose V5, C/C++, and an empty template; open src/main.cpp.
- cppreferenceC++ fundamental types (opens in a new tab)
Reference for boolean, integer, and floating-point types.
- cppreferenceC++ functions (opens in a new tab)
Parameters, return values, declarations, and definitions.
- VEX RoboticsOptical Sensor — C++ API (opens in a new tab)
Optical proximity, hue, and illumination controls used in the sensor guide.
- VEX RoboticsBrain Screen — C++ API (opens in a new tab)
Screen cursor positioning and formatted output for diagnostics.
- LemLibLateral Motion (opens in a new tab)
Conceptual comparison of point targets and pose targets. The linked PROS library is not used by this VEXcode site.
- PROSDebugging (opens in a new tab)
Serial diagnostic output as a debugging technique. The page includes legacy editor instructions; PROS terminal commands are not VEXcode commands.
- VEX RoboticsMotor and Motor Group — C++ API (opens in a new tab)
VEXcode motor construction, encoder position, signed spin commands, and braking.
- VEX RoboticsInertial Sensor — C++ API (opens in a new tab)
Calibration, continuous rotation, heading wraparound, and the default clockwise-positive convention.
- VEX RoboticsDistance Sensor — C++ API (opens in a new tab)
Object detection, distance units, installation checks, and the stated 20–2,000 mm operating range.
- VEX RoboticsRotation Sensor — C++ API (opens in a new tab)
Continuous shaft position and sensor reversal for tracking wheels.
- VEX RoboticsCompetition — C++ API (opens in a new tab)
Registering autonomous and driver-control callbacks.
- PROSMotors tutorial (opens in a new tab)
Comparison of motor configuration, relative/absolute positioning, and firmware motion control. PROS code uses a different API.
- PROSMultitasking and synchronization (opens in a new tab)
Why loops need delays and why concurrent tasks need an explicit ownership and synchronization model. PROS task APIs are not VEXcode APIs.
- Purdue SIGBotsPID Controller (opens in a new tab)
Feedback terms, overshoot, settling, and steady-state error.
- Purdue SIGBots / Team 5225AOdometry (opens in a new tab)
The PiLons tracking derivation: consistent units, tracking-center offsets, and arc-based position integration.
- LemLibConfiguration (opens in a new tab)
Motor direction, wheel diameter, tracking-wheel setup, and offsets. LemLib is a PROS library, not a dependency of these examples.
- LemLibPID Tuning (opens in a new tab)
A practical tuning reference. Gains and exit settings depend on the implementation and robot.
References consulted November 11, 2026. This is an independent resource, not an official VEX Robotics publication.