i’ve been trying to figure out the signals from the vex radio.
i am proceeding from the assumption that the signal is pulse position modulated. this would mean that for six channels seven pulses of equal length are transmitted with the time from the falling edge of one pulse to the falling edge of the next being the pwm pulse width for one channel on the radio. the seventh, long, pulse fills out the 18.5 ms of the pwm period.
unfortunately the sole instrument in my possession is a volt meter, so i’m not going to be able to get a very clear picture of what’s going on, but i did notice a difference of 1.586 volts in the potential between two wires on the tether cable from the radio.
i figure this must be the average dc voltage. that’s how pwm works, right?
so i divide 1.586 volts by the number of pulses, 7, and get about 0.266 volts to and divide that by 5 volts then multiply by 18.5 ms giving me about 0.838 ms for each of the seven pulses.
okay, so now that i think i know what’s going on maybe i could take a micocontroller and output seven 0.838 ms pulses separated by 0.662 ms pauses and follow the whole thing with a nice wide 8.662 ms pause, feed this to rx1 on the vex controller and have the thing stand still.
ok, big deal. but if i were to mess with the lengths of those pauses, i should be able to control the robot, right?
now, what i’d like to do is dump data out the serial port of my computer, into my little microcontroller and have it feed a ppm signal to the vex. maybe even do this over bluetooth.
have i lost my mind? is there, perhaps, someone out there with an oscilloscope who could verify or even disprove my surmise?
in the meantime, i’ll try to program my little mega128 to make my squarebot do nothing.
thanks,
bc