Validating Component "Goodness" for Reuse Next Year

We have half a dozen kits we want to keep using, but I want to make sure they’re “all good.”
Today we’re just taking mentors word for it, but they might not know a component is having issues.

My concern is mainly batteries (ability to hold charge) and motors (power), as
failures with brains and controllers have manifested as “don’t work no more.”

Is there an efficient way, using software/firmware or via real-world testing, ​to see
how well batteries and motors (and maybe brains and controllers) are working?

I’d appreciate any advice on this front.

Greg (Team 1, Booksin Robotics)

I have heard VEX are testing the motors by keeping them in full power stall for 1h (That’s what Xander of VexIQ SuperUsers said).
I haven’t tried that myself, but it should be easy to write a small program to just set the highest current limit, set motor on maximal speed,
connect it to a beam and a 2x2 square lock piece. And monitor the current. No movement, no wear on pieces, and you could use this to evaluate
a battery too - how badly does a fully-charged battery sag under this load (that’s over 3A per motor).
Of course, you won’t be able to tell how badly the motor inner gears are worn out, but for that, you can measure the wobble angle of a locked motor,
perhaps in few different positions.

Don’t blame me for burnt motors though :wink:

Hi Greg,

Under normal use, such as driving a VEX IQ robot around in your classroom or in a competition, the VEX IQ Robot Battery lifespan is at least 500 charge cycles. This doesn’t mean that after 500 cycles it will immediately stop working. Instead, as the Robot Battery has more and more recharge cycles, it will slowly lose capacity over time, requiring more frequent recharging. New Robot Batteries will be able to drive a Clawbot IQ for about two hours of continuous use. If your Robot Batteries are several years old and if they need to be recharged after a very short amount of time (such as less than 20 minutes), then they should be replaced. Apart from that, your Robot Batteries are good to go.

The VEX IQ Smart Motors contain control algorithms to automatically account for different Robot Battery voltage levels, which ensures that the Smart Motors behaves the same at almost any battery charge level. As long as the battery charge level icon in the top right corner of your Robot Brain LCD screen is at least 1/3 capacity left, all of the motors on your robot should perform the same.

This same control algorithms in the Smart Motors that help maintain identical performance from different battery levels, will help overcome any small differences in friction or power levels as the motors age. The motors will age faster if they are repeatedly and constantly stalled, so we recommend avoiding stalling motors. In general, if you command the Smart Motor to move in your program and it spins at the desired speed, then everything is good.

If you find that any of your VEX IQ system components are not working as intended, please feel free to contact our technical support folks at or by calling +1-903-453-0802 for additional assistance.


  • Art

Well, our experience was quite different and the age of the battery had significant impart on the robot behavior, at least in antonomous (our engineers still have limited programming skills, so they relied on the repeatability of the simple commands they issue whereever they can’t rely on physical obstacle).

TL;DR: If you need consistent torque, you’re fine. If you need consistent high speed movement, battery does have an impact.

A bit of EE theory, feel free to correct me on what you have compensated for enough in the actual hardware ;):
There are at least two aspects of the battery aging. Capacity loss is only one of them, and the less important one. Internal resistance has much bigger impact, especially under the load the motors can draw - a block-holding claw (that is, a motor stalled under high/full power) has caused a significant sag with most of our not-so-old batteries. Like, a fully charged battery showing half the capacity under such a load.
Keep in mind that the battery is made of 6 serially-connected 2Ah cells, while each motor can draw over 3A of current under full load. I understand the PID algorithm built into the motors keeps the current much lower most of the time, but sometimes you actually need the motor to do maximal torque (=current) in stall (=zero back-EMF, so the motor behaves almost like a short to the H-bridge feeding it).
Also, the PID algorithm might do its best, but it is limited by two factors - current limit and available voltage. While the controller can typically deliver programmed current to a stalled/slow moving motor regardless of the battery state (system voltage under load), delivering enough voltage to maintain programmed high speed is out of reach when the system voltage sags and the quickly turning motor is already producing high back-EMF.

Hi nenik,

The stall current of the VEX IQ Smart Motors is approximately 1.1 amps at 7.2 volts. The current sensor inside the Smart Motor can measure up to 3.7 amps.


  • Art

My students actually found a fair bit of variability between motors, even between brand new ones. New motors, typically, turned at a higher RPM given the same inputs as an older motor. Interestingly, almost all of the motors turned at the same RPM when not under any load, but once the friction and load of the drivetrain was introduced, the students started seeing differences in the RPM of the motors.