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