The development of the V5 System began with a mantra: “Simple... Flexible... Powerful...”
- Simple... to make VEX EDR more approachable to novices
- Flexible... to ensure your robot can do anything you want
- Powerful... enough to take on future challenges
Based on the success of the VEX IQ control system, VEX set out to rethink the VEX EDR control system from the ground up. Our company used a revolutionary, as opposed to evolutionary, method which allowed us to rethink all previous decisions, without dealing with compatibility of the previous system.
We intended to develop a modern smartphone style interface, easy-to-visualize sensor data, and motors that were extremely consistent, regardless of battery voltage. For the best possible customer experience, we unanimously did not want LED blink patterns, circuit breakers tripping, or loose electrical connections.
Often we found the objectives of simple, flexible and powerful to be at odds with one another. It was only over a four year journey of struggle, innovation and hard work that we finally found the true achievement of our efforts: Intelligent Simplicity.
VEX Robotics has built robust wireless robot control systems since 2001. VEX employees have over 800 years of both competition and educational robotics experience. V5 is the culmination of all that our company has learned and everything that we wanted our customers to experience. We sincerely hope that you love it.
Simple touchscreen user interfaces are familiar to almost everyone, making V5 more approachable. The V5 Robot Brain features a 4.25” full color touch screen with 480 x 272 pixels.
User interface features include the following:
- Select and run one of 8 user programs
- Run built-in VEX programs
- Accessing program wiring lists
- Accessing program controls
- Run practice matches
- Change languages
- Select themes and backlighting
- Screen rotation, and much more...
Programmers can also make use of the touch screen with the ability to draw pixels, lines, rectangles and circles, along with line color, width, and fill control. Multi-sized, multilingual fonts in any color are built in. User programs draw fast and efficiently on dual buffered internal memory, and the FPGA handles screen refresh at an incredible 60 Hz.
Flexibility can be found in every aspect of the V5 Robot Brain:
- Smart motors
- Smart sensors
- Analog sensors
- Digital sensors
- microSD Card expansion
- On-board diagnostics
- Device wiring lists
- Controller maps
- Automatic wiring check
- Automatic device firmware updates
Dashboards are one of the most notable V5 advancements. There is a built in dashboard for every connected sensor and device, from switches and potentiometers all the way up to motors and the battery. Dashboards provide an incredible teaching and diagnostic capability, allowing you to see in real time what the sensor is actually doing, and what the data for that action looks like.
Powerful processors, combined with the VEXos operating system, allows V5 to tap into the next generation of educational robotics.
V5 uses a new technology we call “Centralized Intelligence”, which provides the user processor with all sensor information. All Smart Sensors have their own processor, which allows them to simultaneously collect and process data as fast as possible. New information is instantaneously sent to the user processor’s high speed local RAM without interrupting the processor. Each time a line of code calls for sensor data as a user’s program runs, such as motor position, the most recent calculation is instantly accessed from memory.
“The user processor essentially knows all sensor data instantaneously.”
Sensor data communication to the Brain uses RS-485 - much like CAN without the overhead - which is immune to noise and static electricity. Each sensor is the master controller for its own 1.5 Mbps bus, which means it controls when and how often data is sent to the Brain.
The V5 Robot Brain has 21 Smart Ports available. Each of these are equipped with a digital circuit breaker, called an eFuse, that allow for short circuit protection without limiting motor performance. These eFuses allowed us to eliminate the PTC devices in the brain and motors that limited performance in the Cortex system.
when( STARTED )
when( Brain.LCD.PRESSED )
|V5 Robot Brain Specifications||Cortex Microcontroller|
|Motor Ports||Use any of the 21 Smart Ports||10|
|Smart Sensor Ports||Use any of the 21 Smart Ports|
|Radio Ports||Use any of the 21 Smart Ports|
|Tether Ports||Use any of the 21 Smart Ports||remove radios, use USB cable|
|Digital Ports||Use any of the 8 built-in 3-Wire Ports||12|
|Analog Ports||Use any of the 8 built-in 3-Wire Ports||8|
|3-Wire Expansion||Add 8 more ports using a 3-Wire Expander.
The 3-Wire Expander uses one Smart Port.
|VEXos Processor||One Cortex A9 at 667 MHz
Two Cortex M0 at 32 MHz each
|User Processor||One Cortex A9
1333 Million Instructions per second (MIPS)
|Ram||128 MBytes||0.0625 MBytes|
|Flash||32 MBytes||0.375 MBytes|
|User Program Slots||8||1|
|USB||2.0 High Speed (480 Mbit/s)||Full Speed (12 Mbit/s)|
|Color Touch Screen||4.25”, 480 x 272 pixels, 65k colors|
|Expansion||microSD up to 16 GB, FAT32 format|
|Wireless||VEXnet 3 and Bluetooth 4.2||VEXnet 2|
|System Voltage||12.8 V||7.2 V|
|Size||4.0” W x 5.5” H x 1.3” D||4.5” W x 3.9” H x 1.0” D|
|Weight||0.63 lbs (285g)||0.30 lbs (137g)|
VEXos is a robotics operating system that harnesses the flexibility and power of VEX hardware for both the rigors of competition and the diverse needs of education. This operating system, written completely by VEX, uses real-time processing for repeatable operation at the fastest possible speeds. Students can get started programming quickly due to VEX Coding Studio’s tightly coupled programming environment.
VEXos eliminates the complexities and continuously changing nature of commercial operating systems such as Linux and Android. By not using these commercial operating systems, VEXos does not require large amount of flash, RAM, and expensive processors. This reduces cost and complexity, simplifies user programming, and greatly improves performance and repeatability.
- Smart sensors identification, communication, and updates
- Checks to ensure your program matches the robots wiring
- Battery power distribution and monitoring
- Communication via VEXnet, BluetoothⓇ, USB, and tether
- VEX Coding Studio integration
- Multi-core processor support
- Graphical user interface with touch input
- Multi-language support
- Sensor data collection
- User program data access
- File system & memory management
- Diagnostics and event logging
- Hardware APIs
- Software libraries
The V5 Smart Motor had to be perfect for V5 to be successful. Thousands of hours of engineering and analysis went into designing this motor. Everything has to work together: the motor, gears, encoder, modular gear cartridge, circuit board, thermal management, packaging and mounting. Users can control the motor’s direction, speed, acceleration, position, and torque limit.
This graph says it all. Maximum power is 11W continuous and maximum torque is 2.1 Nm. Free speed is software-limited by the motor’s processor to keep consistent performance motor-to-motor and to allow top speed under loads.
The V5 Smart Motor’s internal gear design has to withstand all the motor’s power, and the abuses of external forces coming into the motor from loaded arms and robot momentum. The gear train is our most robust yet. Metal gears are used in all high torque locations for strength. Plastic gears are used in the low load, high speed locations for smooth and efficient operation. An internal gear cartridge is user changeable for output gear ratios of 6:1, 18:1, and 36:1 .
The motor’s internal circuit board has a full H-Bridge and its own Cortex M0 microcontroller to measure position, speed, direction, voltage, current and temperature. The microcontroller runs its own PID with velocity control, position control, torque control, feedforward gain, and motion planning similar to industrial robots. PID is internally calculated at a 10 millisecond rate. The motor’s PID values are pre-tuned by VEX for excellent performance across all operating conditions. Users can adjust these values to tune the motor’s performance for their specific application.
Advanced users can bypass the internal PID and take direct control with raw, unaltered PWM control. Raw control still has the same rpm limits, current limits, and voltage maximum that keep the motor’ s performance identical.
“Consistent motor performance is a game changer”
One of the V5 Smart Motor’s most unique capabilities is completely consistent performance. The motor runs internally at a slightly lower voltage than the battery’s minimum voltage, and the motor’s power is accurately controlled to +/-1%. This means the motor will perform the same for every match and every autonomous run, regardless of battery charge or motor temperature.
Stall current is limited to 2.5A to keep heat under control without affecting peak power output. Limiting stall current eliminates the need for automatic resetting fuses (PTC devices) in the motor, which can cause unintended motor outages. The 2.5A limit essentially removes the undesirable region of the motor’s performance curve, ensuring users do not unintentionally create stall situations. Finally, to make sure the motor lasts, the internal temperature is monitored. If a motor is approaching an unsafe temperature, the user gets a warning. If the motor reaches its temperature limit, performance is automatically reduced to ensure no damage occurs.
The motor calculates accurate output power, efficiency, and torque, giving the user a true understanding of the motors performance at any time. Position and angle are reported with an accuracy of .02 degrees. All of this data is reported and graphed on the motor’s dashboard.
|V5 Smart Motor Specifications||Motor 393 + Controller 29|
|Speed||Approximately 100, 200 or 600 rpm||120, 160 or 240 rpm|
|Peak Power||11 W||3.93 W|
|Continuous Power||11 W||2.70 W|
|Stall Torque||2.1 Nm||1.67 Nm|
|Low Battery Performance||100% Power Output||51% Power output|
|Encoder||1800 ticks/rev with 36:1 gears
900 ticks/rev with 18:1 gears
300 ticks/rev with 6:1 gears
|627 ticks/rev with High Torque gears1
392 ticks/rev with High Speed gears1
261 ticks/rev with Turbo gears1
|Dimensions||2.26” W x 2.82” L x 1.30” H
57.3 mm W x 71.6 mm L x 33.0 mm H
|1.97” W x 2.16” L x 0.98” H
50 mm W x 55 mm L x 25 mm H
1. Motor 393 Position requires the Integrated Motor Encoder (IME).
The Vision Sensor provides a robot with new capabilities and allows for expanded learning. At its most basic mode, the sensor tells you where a colored object is located. The location's X value gives you the right and left position. When the camera is tilted down, the Y value gives you the distance to the object, with a little basic trigonometry on your part.
The Vision Sensor combines a dual ARM Cortex M4+M0 processor, color camera, WiFi, and USB into a single smart sensor. The sensor can be trained to locate objects by color. Every 200 milliseconds, the camera provides a list of the object found matching up to eight unique colors. The object’s height, width, and location is provided. Multi-colored objects can also be programmed, allowing color codes to provide new information to the robot. Color-codes can represent anything you want, including location, object type, street signs, movement instructions, robot identifiers, etc.
The Vision Sensor has USB for a fast, direct connection to your computer. This allows you to view images and machine vision results simultaneously.
The Vision Sensor also has WiFi Direct and acts like a web server. This allows you to wirelessly view “live” video from any computer equipped with a browser and WiFi.
The Vision Sensor added so much to the capabilities of V5 robots, we also added a VEX IQ compatible port to share the fun.
Future capabilities we plan to add:
- Advanced line following with line location, angle, and intersections
- Generic color sensors
- Light level meter
- Motion detection
|V5 Vision Sensor|
|Vision Framerate||50 Frames per second|
|Color Signatures||7 independent colors|
|Color Codes||2 3 or 4 color signatures per color code|
|Image Size||640 x 400 pixels|
|Microcontroller||Dual ARM Cortex M4 and M0|
|Connectivity||V5 Smart Port
IQ Smart Port
|Wireless||2.4 GHz 802.11 Wi-Fi Direct hotspot with built in webserver|
|Compatibility||Any device with WiFi and a Browser|
The V5 Robot Radio and V5 Controller use our next generation VEXnet 3 protocol. This is based on the success of VEXnet 2 and adds additional features and faster download channels. VEXnet supports 500 simultaneous robot channels, even when operating in a confined space. The radio provides the responsive, low latency control that drivers expect, while also allowing fast program downloads and robot feedback.
Both V5 radios also support Bluetooth 4.2, thanks to the Texas Instruments CC2640 Bluetooth Smart Wireless MCU. With this, tablets will be able to download programs to the Robot Brain. This also allows connectivity to multiple devices at once. Future updates will add Robot-to-Robot communications. VEXnet 3 and Bluetooth can be used for driving, downloading, and debugging. Controllers can be tethered together for dual driver support.
Two new practice mode features make practicing for matches and Skills Challenges easy. The Controller does all the timing and mode control for you. Choose the Single Player option to run a timed match on your own, with an on screen clock and automatic switching of Enable-Disable and Autonomous-Driver Control. Choose Multi-Player to allow multiple teams to practice matches, with one player hosting a match and up to three other teams joining the match. Once connected, all four teams have synchronized Enable, Disable, Autonomous, and Driver Control signals. Users no longer need to have a competition switch and a stopwatch.
An app for iOS and Android is in development that allows remote viewing and control of the V5 Brain’s screen. This greatly extends the usefulness of dashboards by allowing viewing while testing and practicing. The app will additionally turn your phone into a sensor, allowing your robot access to time and date, GPS location, gyro and accelerometers, and the ability to Tweet.
The biggest improvement to the V5 Controller is its screen. The screen allows users to start and stop programs remotely, view the robot’s battery level, and see the radio’s status. During competition, drivers and tethered co-drivers can see the competition clock and game state. The screen supports 10 languages.
Programmers can send data and multilingual text to the screen for debugging and driver information. Additional programmable widgets allow users to show gauges that can be digital, analog, and numerical. Independent messages can be sent to each Controller when using two tethered Controllers.
The Controller uses an internal rechargeable battery with a 10 hour run time and long battery life. The battery is designed to run all day at events without a need to recharge. Charging is done via a micro USB cable, and takes about 1 hour.
- Two Smart Ports are used for tethering to the Brain and Tethering two Controllers.
- One Field Control port for competitions
- USB for charging and for wireless programming and debugging
- 12 buttons are fully configurable by the user’s programs
- Buttons are also used for menu navigation when a program is not running
- Two 2-axis joysticks for accurate robot control
|V5 Controller Specifications||VEXnet Joystick|
|User Interface||Built-in monochrome LCD 128 x 64 pixels
Backlight with white or red LEDs
|3 Red Green LEDs
27 LED blink patterns
|Interface Features||Select, Start, Stop Programs
Robot and Controller and Partner battery level
Radio link type and signal strength
Competition mode indication
Language selection (10 choices)
|User Feedback||Up to (3) lines of multilingual text to the LCD
Up to (3) graphical widgets with (1) line of text
|Wireless||VEXnet 3.0 and Bluetooth 4.2
Download and Debug at 200 kbps
Download and Debug at 90 kbps
|Analog Axis||2 Joysticks||2 Joysticks|
|Extra Feature||Haptic rumble motor||Tilt sensor|
|Battery Type||Li-ion||Six Rechargeable AAA cells|
|Battery Run Time||8-10 hours||Less than 1 hour|
|Battery Charge Time||1 hour|
|Partner Controller Type||V5 Controller||VEXnet Joystick or Partner Joystick|
|Weight||0.77lbs (350g)||0.47 lbs (213g)|
The V5 Robot Brain, Robot Battery, and Smart Motor all work together to improve performance, even when the battery charge is low. The V5 Robot Battery was designed to allow the motors to perform at their fullest potential. The battery has enough power to run ten V5 motors at full power continuously.
V5 Robot Battery
Two 7.2V 3000 mAh Batteries with a Power Expander
7.2V 3000 mAh Battery (Baseline)
V5 Smart Motor Continuous
Motor 393 Short Burst
Motor 393 Continuous (Baseline)
@ Low Battery
@ Low Battery
The old Nickel Metal hydride (NiMH) battery chemistry no longer meets the needs of today's high power mobile applications. Lithium Ion batteries are the future; however, when used in multi-cell packs they can have safety concerns and short life when used at high current levels. VEX chose a Lithium Iron battery chemistry LiFePO4 due to its safety and high current capacity. Additionally the new batteries have 4x the lifespan of NiMH batteries.
The biggest change to the V5 Robot Battery is the higher 12.8v nominal voltage. The battery charges up to 14.6v and runs down to 10v. Due to the very steady output voltage of these batteries, the Robot Brain cannot determine remaining capacity using the typical method of measuring voltage and estimating capacity. Instead, the V5 battery pack has an intelligent battery management system that measures changes in electrical charge (coulombs) into and out of the battery during charge and discharge. From this data, the battery determines the actual amount of remaining power.
The intelligent battery management system also handles cell balancing and charging. Cell balancing is critical to maintaining battery pack performance over time, ensuring each cell in the pack is at the exact same voltage. Charge time is approximately 60 minutes.
Battery run-time depends on many factors including your robot design, your driving, and the number of motors used. Robots often get 30+ minutes of heavy drive time from a single charge. Competition teams should be able to use one Robot Battery for multiple matches without recharging. Remember that with V5, a low battery does not change the motor’s performance. The V5 Battery can output 20 amps continuously, providing enough power to run 10 motors at peak power output.
|V5 Robot battery||7.2V Robot Battery for Cortex|
|Battery Chemistry||Lithium Iron (LiFePO4)||Nickel Metal Hydride (NiMH)|
|Approx Lifespan||2000 full recharge cycles||500 full recharge cycles|
|Nominal Voltage||12.8 Volts||7.2 V|
|Maximum Current||20 Amps||8 A (12 A with power expander)|
|Maximum Output Power||256 Watts||58 W (86 W with power expander)|
|# Motors at Peak Power||10||3 (5 with power expander)|
|Low Battery Performance||Motors output 100% Power||Motors output 51% Power|
|Capacity||14 Wh||20 Wh (32 Wh with power expander)|
|Weight||0.77lbs (350g)||0.47 lbs (213g)|
The V5 system makes significant use of smart devices, however we still need to work with analog and digital devices. Additionally, the VEX EDR user base has switches, potentiometers, and sensors that are still perfectly good, thus we kept the function of 3-Wire devices in V5. Along the way, we made a few improvements.
3-Wire ports are now multi-purpose. Any 3-Wire port can be a digital input, digital output, analog input, or PWM motor control. This improves flexibility and ensures that you can always use every port if needed. When eight 3-Wire ports are not enough, just plug an external 3-Wire Expander into any Smart Port to get eight more 3-Wire ports.
The eight 3-Wire ports now make up a smart device. A dedicated Cortex M0 microcontroller has the sole responsibility of reading inputs and toggling outputs. The data is reported to the user the moment it is measured. This means digital input changes trigger an immediate interrupt-based message to the user sensor memory to minimize latency. Analog inputs are pre-filtered for 5 milliseconds and then moved to the user sensor memory on a continual basis.
The 3-Wire software also supports legacy sensors such as the Cortex-era Ultrasonic Range Finder, Optical Shaft Encoder, LED, Yaw Rate Gyroscope Sensor, and Analog Accelerometer. 3-Wire ports can also serve as a PWM motor port for driving the older servos and Motor Controller 29’s. When using servos and motors, the voltage is limited to 5V and 2A total for all eight ports, so these devices will have less power output than with the Cortex Microcontroller’s 7.2V battery.
The 3-Wire ports open up the possibility of using non-VEX sensors for classroom use, teaching, and experimenting. The analog input is now 0-5V compatible to expand the number of compatible sensors. Future enhancements to the 3-Wire ports are planned to allow I2C and UART communication to non-VEX sensors as well.
|V5 3-Wire Ports||Cortex Microcontroller|
|Digital Ports||Use any of the 8 built-in 3-Wire Ports||8|
|Analog Ports||Use any of the 8 built-in 3-Wire Ports||12|
|3-Wire Expansion||Add 8 more ports using a 3-Wire Expander.
The 3-Wire Expander uses one Smart Port.
|Message rate - digital||On Change up to 1 kHz||Determined by user software|
|Message rate - analog||5 mSec||Determined by user software|
|Digital Input||High = 2.4 - 5.5 V
Low = 0.0 - 1.0 V
|Digital Output||High = 2.9 V min into a high impedance
Low = 0.4 V max into a high impedance
|Analog Input||0 - 5 V||0 - 5 V|
|Analog Input Resolution||12-bit||12-bit|
|Power out||5v @ 2A total for all ports||5v @ 1A total for all ports|
VEX Coding Studio (VCS) is a free coding environment for VEX IQ and VEX V5 hardware. VCS contains multiple languages and coding styles, providing a low barrier to entry and a high ceiling. Students can start programming with Block, smoothly move to textual programming, and eventually graduate to advanced Object Oriented concepts. The environment is classroom and competition friendly. VCS contains features specifically built for education and learning as a student evolves in their coding expertise.
Hardware Commands unlock the power of your robot in an understandable and logical way. They control the Brain, motors and sensors. These commands are similar across all languages. Users can use simplified units like 50% velocity or experience real world units, such as millimeters/second for velocity and watts for power output. With VCS, a school can teach Computer Science and Robotics K-12, and the transition from block-to-text and to different text languages is seamless because commands that control hardware are similar.
Help provides sample blocks and code that are always available to drag into your program. Each sample has an always available reference and sample code snippets. Complete sample programs are easily accessible for each language and VEX hardware component. VCS tailors itself to the specific VEX hardware and language you select, allowing you to focus without distractions from other hardware and languages you are not using.
All Major Platforms are supported by VCS, such as Windows, Mac, and Chromebooks, as well as iOS and Android tablets. VEX update tools are built in and will automatically update devices, further simplifying classroom management and eliminating points of confusion.
VEX Coding Studio uses a common User Interface across all the Languages. This interface allows users to move to a new language without learning an entirely new program.
Robot Configuration makes it easy to set up your program to work with your VEX robot. VCS has three methods of Robot Configuration: Graphical drag and drop for Novices, Tabular for more experienced text programmers, and fully programmatic for experts. All three methods allow quick selection of devices and assignment of ports. Naming devices makes programming significantly easier to write and read, so you can control the “Claw” instead of Motor4. Additional settings for each component are simple to configure.
Modkit Natural Language is a block programming language intended for novice programmers. Natural Language is more readable and looks less like code. This language is for VEX IQ only and recommended for students not ready to transition to textual languages. This language is based on the well-known Scratch programming language used by millions of kids as an introduction to programming. VEX has added our robotic controls and customized the language to suit both classroom and competition uses.
[In Development] Natural Language will be translated into major languages to further open the world of coding to everyone.
Modkit Blocks & Text is designed for beginners using block programming and for novice programmers desiring to transition to text-based programming. The Blocks & Text look more like real code. Some advanced coding features are simplified to make them more user friendly, such as task, events, and functions.
Modkit Blocks & Text allows users to freely switch between Blocks and Text at any time, making changes in either mode. This eases the transition into text-based programming, allowing users to switch back to blocks for functions they are not yet comfortable typing.
VEX C++ is the evolution of ROBOTC. It is designed to be an introduction to the C and C++ language in a text-only environment. Language tools will provide significant feedback of grammatical and programmatic errors. The user gets a full featured professional text editor:
- Code Colorization
- Collapsable Code
- Auto Indent
- Error indicators
- Debugging features
- Find and replace
VEX C++ is the perfect option for new and experienced text-based programmers without all the open-ended challenges of a full professional development environment. VEX C++ includes a tailored subset of the C/C++ language to create a safe protected environment that helps users get their robots moving in only a few lines of code. VEX C++ supports all core programming functionality such as local and global variables, functions, loops (for, while, do while), and switch-case statements.
VEXpro C++, still free, is an unlimited programming environment with all the capabilities of the VEX V5 Brain at your disposal. All the editor features of VEX C++ are included. All limits from VEX C++ have been removed and users have a full Industry Standard C++ environment available.
- Textual robot configuration
- Open text file structure to allow custom version control
- Multi-file support
- Standard C++ libraries
- The ability to build custom classes
- Public and private user space
- Semaphore, memcpy
V5 is ready for our next batch of smart sensors:
- 3-Axis Gyro + 3-Axis Accelerometer
- 3-Wire Expander
- Rotation Sensor
The Vision Sensor has lots of room to add more capabilities.
The Bluetooth radio unlocks the ability of robot-to-robot communications along with custom iOS and Android apps written by users.