Friday, May 10, 2013

Thrifty Roboting: The Vex Motor Controller 29

The Vex Robotics Motor Controller 29 is quickly becoming the go-to esc for insect weight class robots. It offers a small form-factor single channel esc at a low cost of $10. Very minimal; no LEDs, current protection, or temperature protection.


The website advertises 8.4V, 4A max. Roboteers know from experience that these little controllers can be pushed much higher. Some report running as high as 14.8V on some rather beefy 370 sized motors. this type of performance does not go without some minor electrical work.

The ambiguity arises in the minor modifications. Those who have never hacked about with analog servo boards may be unfamiliar with these methods. This post will provide a step-by step on how to hack your Vextrollers apart and will also conclude with a component level analysis and bench test to decipher their true capabilities.

Step 1: Deshelling the Casing
The enclosure is two halves of injection molded plastic with some drops of CA applied in the seams. To get the crab meat out, it is as simple as cracking the rather brittle superglue.

Stock OEM Vextroller

Apply a sharp knife to the corner and press in until the blade sits within the groove.

Applying Knife Edge to Vextroller Casing

Wiggle the knife until the casing begins to pry apart. Repeat this process for all four corners until the shell magically pops off.

Step 2: Modifying the Power Leads
The blackbox IO model of the Vextroller looks like this:

To get higher voltage input to the esc, we need to do some splicing. This is what we want in the end:

Cut the PWM male connector off, and separate the white, black, and red wires from each other.

PWM wires separated. Fourth Wire Created from the Leftovers

Then solder another black wire to GND (where there is already a black wire).

Black Wire Added to the Underside of the Board

You should now have 4 wires coming off of three pins. The white (signal) and one black (GND) wire will go to your receiver. The red (V_in) and other black (GND) will go towards your power source.


Step 3: Add Connectors and Protective Coatings
The last step is to add the appropriate connectors that mate to your devices. It is common to have the female PWM cables for the signal since most hobby receivers use male .1" spaced headers. I typically replace the motor connector with 2mm bullets or simply solder onto the motor ends. The entire esc can be covered in a tube of 3/4" OD heat shrink or potted with a rubberized glue. Completely up to you!

Here is a pair of Vextrollers installed in my Antweight, DDT. I used CA to bind two boards side-by-side and then used breadboard jumpers to connect the V_in and GND together. Because GND is also shared between inputs on the Rx, I only have three wires going to my receiver (expected four) and two wires headed to my power switch. The pair was afterwards wrapped in electrical tape and the leads will be potted in GOOP later.

Congratulations! You now have a simply-elegant insect-class esc. I have created a IGES solid model for the caseless Vextroller for those who wish to integrate it into their CAD. It can be downloaded below:

Download Link for Vextroller 29

NOTE: Since you will likely be using this controller with other components that supply power to your receiver (BEC) it is not necessary to add the fourth wire for the Rx GND. Instead, use the original three wires where V_in and GND are used for mains power and signal is the only wire going to the Rx. The device supplying BEC will provide GND connection. This technique will reduce ground loops, which are a major source of noise. In other words:

Parts Breakdown:
Here I have pictures of the top and bottom layout of the board. It can be seen there are some SMT resistors, a tantalum capacitor and some other devices. The main distinguishable components are listed below with datasheet if available.

Top of the Vex Robotics Motor Controller 29

Bottom of the Vex Robotics Motor Controller 29

  • Microcontroller:          PIC12F615
  • Gate Drivers:              301(?)
  • Half-Bridges:              FDS4935BZ (Fairchild), IRF8313PbF (International Rectifier)
  • Voltage Regulator:      2x(?)

Aaronbot3000 reports the voltage regulator is linear and outputs 4.5V

Based on these components, the Vextroller should be able to handle 30V and 6.9A continuous. these values are subject to change as more is learned about the gate driver capability and voltage regulator capability.

Vextrollers will be tested for their maximum voltage ratings as well as their maximum current ratings through a no-load incremental voltage test and a constant voltage incremental load test. From these experiments we expect to detonate two Vextrollers but hope to determine a maximum wattage rating for robot use.

Known Motor-Voltage-Weight Class Pairings:
Pololu 50:1 - 11.1V - Antweight
Fingertech Silver Spark (11's, 22's, etc...) - 14.8V - Antweight
Fingertech Silver Spark (22's and 33's) - 14.8V - Beetleweight
Kitbots 1000 RPM Motor - 14.8V - Beetleweight

If you use the Vextroller and would like to share your setup, please let me know so I can add yours to the list of successful pairings! Thanks!


  1. Can you post the weight of the unboxed controller with the stock wires?

  2. The weight of the stock controller is around 0.4 oz. My scale isn't very accurate under 0.5 oz. Also, another confirmed datapoint: the controllers can drive a 1000 RPM motor at ~14v (4S A123) in a 6 pound robot with one motor per side. I did a three minute test here: and the controllers only heated up 10-15 degrees F across the three minutes. I did not unbox the controllers, instead I just split the signal wire to the RX and the red and black wires directly to the 14v battery.

  3. Thank you very much for this blog, now I learn more how I do it and quickly connect motor controller with other components that supply power. I really appreciate you.

  4. Thanks for this! After years of a home based VEX team I have about 35 #29 motor controllers at hand, and live close enough to IFI that it's a short drive to get more if needed.