Shop OBEX P1 Docs P2 Docs Learn Events
VEX R/C Receiver to Microcontroller Electrical Interface — Parallax Forums

VEX R/C Receiver to Microcontroller Electrical Interface

Tom CTom C Posts: 461
edited 2007-05-30 19:25 in Robotics
Hi all,

It looks like a lot of the VEX Robot Tranmitter & Receiver Control add-on kit are for sale on eBay and else where for around $20 plus shipping. The list price is $129. The sale price makes the VEX R/C combo a very attractive possibility for robot remote control!

Anyway, does anyone know what the VEX R/C receiver to microcontroller interface is composed of. The connector, RJ-10,·is a small version of the RJ-11 and appears to have at least four pins. Could the output of the receiver be PWM and the VEX microcontroller decodes the PWM signal like a servo does to position the servo shaft? Might not a BASIC STAMP be able to do the same?

If I had an oscilloscope handy I could see the receiver output, but I am hoping that someone on this forum has already determined what the electrical interface between the receiver and the microcontroller looks like.
Regards,
TCIII



▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
If you are going to send someone to save the world, you·better make sure that they like it the way it is!

Comments

  • Tom CTom C Posts: 461
    edited 2007-05-25 13:26
    bobledoux,

    Thanks for the tip. I had looked at the VEX R/C combo on the all electronics website, but did not realize that there was a receiver decoder article included with the R/C combo description.

    Thanks again.

    Regards,
    TCIII

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    If you are going to send someone to save the world, you·better make sure that they like it the way it is!
  • Tom CTom C Posts: 461
    edited 2007-05-25 19:33
    Hi all,

    I know that this might be considered a double post, but the people on the SX microcontroller forum may not be interested in converting JonnyMac's SX/B program into PBasic for the Basic Stamp.

    Has anyone converted the JonnyMac's SX/B program for decoding the VEX R/C receiver output into PBasic code?

    Ref: http://forums.parallax.com/forums/default.aspx?f=7&m=175498

    Regards,
    TCIII

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    If you are going to send someone to save the world, you·better make sure that they like it the way it is!

    Post Edited (Tom C) : 5/26/2007 2:02:13 AM GMT
  • RickBRickB Posts: 395
    edited 2007-05-27 00:07
    The fastest basic stamp is to slow. Look at the rx output timing diagram in the decoder pdf and understand what is going on in the decoder software.

    Rick
  • bennettdanbennettdan Posts: 614
    edited 2007-05-27 06:05
    Tom it should not be hard to input it to a stamp also you can use regular 6 channel futaba recievers and then convert the signals like any other reciever. I think it will work either way.
  • Tom CTom C Posts: 461
    edited 2007-05-27 17:30
    Hi bennettdan,

    I tend to agree with you.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    If you are going to send someone to save the world, you·better make sure that they like it the way it is!

    Post Edited (Tom C) : 5/30/2007 7:28:13 PM GMT
  • Tom CTom C Posts: 461
    edited 2007-05-30 19:25
    RickB, what do you think of this analysis:

    The sync pulse is 9 ms long and each servo pulse is from 1ms to 2ms long (0.5ms to 1.5ms plus the 0.5 framing pulse).

    All the SX28 decoder s/w is doing is incrementing a counter and looking for a sync pulse period of around 9 ms when the ppm line transitions from a high to the sync pulse low.

    The trick is to make sure that the controller is not looking at a servo pulse as a sync pulse.

    I believe that the BS2 PBASIC PULSIN command can be used to detect the beginning of the sync pulse and the variable portion of each servo pulse.

    For the sync pulse, all the BS2 PULSIN command has to do is look for a high to low transition that is longer than say 4ms since this period is longer than the longest servo pulse.

    Once the sync pulse is detected, then the PBASIC program has a maximum of around 0.5ms (the length of the framing pulse) to detect the high to low transition of each servo pulse which can be from 0.5ms to 1.5ms.

    The possible inability of the BS2 to be ready to detect the first servo pulse using the PULSIN command, after detecting a sync pulse, might not be a problem as the servo pulse framing pulse is·consistently in the neighborhood of 0.5ms. The BS2 can then be ready to use the PULSIN command to detect the high to low transition of the start of the variable part of the servo pulse.

    The 0.5ms framing pulse can be adjusted accordingly by checking the first servo pulse length and adding 0.5ms +/- a fudge factor to make the servo pluse length value proportional to the joystick position.

    I believe that a BS2 and either a BS2px or an Atom 28 ( I happen to have both microcontrollers in-house) could be fast enough to capture the leading edge transitions. As a matter of fact, the Atom 28 is probably fast enough to do the decoding of the servo pulse string the way John Williams did with the SX28 code.

    Comments?

    Chris Savage, can you help out here?

    Regards,
    TCIII

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    If you are going to send someone to save the world, you·better make sure that they like it the way it is!
Sign In or Register to comment.