VEX RC Controller Decoded

Just read this really cool blog post on decoding the VEX RC signal for use on Arduino or similarly cheap micro-controllers.

Check it out. Looks very straightforward and is probably very similar to what Scott is doing on the Jedi system to decode the signal.

But for those on a budget and want to try their own hand at connecting the VexTX/RX to a microcontroller without having to hope thru an intermediate RX this could be a good solution.

From the post:

The nice this about this, is that all of the channels are on a single line. This makes it very easy to interface with a microprocessor. A quick review of the PPM format:

  • 20 ms total before repeat.
  • Each channel is sent as a high signal followed by a 1 ms low. The width of the high signal determines the value sent. A zeroed channel has a width of 1ms. A full positive channel is 1.5ms and a full negative channel is 0.5 ms.
  • On the Vex there are six channel (The six peaks that you see) for a total of about 12ms buffered by approximately 8 ms.

To interface with a microprocessor, simply plug the output of the receiver into your microprocessor. Send 5V to Vdd and Ground to Vss. Tie the output of the receiver to 5V over about a 10K resistor. Start measuring pulses on that channel. If you measure at least a 6ms low(The buffer) start recording pulses. (These are your data pulses.) Record all six channels and then decode the length of each pulse.

Update: I just got a message from fellow builder Jamie who has also worked on something similar. Here’s a thread over on the Arduino forum.

Posted by Chris on August 26th, 2008 in Electronics | 1 Comment

Tags: , ,

One Response

  1. Florentina remarks on

    Then two (left and right) more speakers in the rear behind the listener so they’re surrounded by sound.
    How many channels you may need depends on the amount
    of speakers you want. This might be the one exception for the “no free lunch” rule
    I’ve ever seen.

Subscribe without commenting