Let's Make Robots!

Remote Control Can Talk to a Picaxe

Takes servo outputs and sticks them in a Picaxe

I had asked in a forum post if a picaxe could "read" a servo output comming from another source... Thanks to the OddBot, as he nailed it. By the way, O.B. I simply ran the receiver off the same 5V supply I was using for the Picaxe board --No resistor bridge needed, everyone was happy with the same 5 volts. Here is the original post.


In this case I am using a VEX brand transmitter, but understand, really it is exactly the same as a RC car or model airplane transmitter --All outputs from the receiver are for servos.

I was really quite surprised at how easily this is done. I simply connected the data wire and ground from the receiver servo connector to a digital input pin of the picaxe. I skipped the positive wires, all that is needed is the one data wire and for the grounds to be tied together. Also, on the board, I have a 10K pull-down resistor tied to the input. (I don't know if this is needed or not)

Now for the even easier part!!! (The code I used in the video)


pulsin 5,1,w1

pwmout 1,63,w1

low 0

goto main

That's it! --Really. Using the pulsin command simply sticks a number in to the word variable between 0 and 255 in relation to where the stick on the transmitter is. 

So there you go, folks... It works, its simple and if you buy one of those huge controllers with all the extra switches and buttons and the LCD and all, you will just look that much cooler!

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
As Chris points out in a completely different thread, for some bizzarre reason, the sticks are attached to pots. Since digital pots which can be controlled by I2C are freely availalble, I figure on replagin the pot with one of these. I'd probably aim for only 6 bit accuracy at first because I'm not too sure how stable the transmitter is with declining battery voltage, but you appear to be thinking the same thing as me...
In terms of a data stream from the transmitter, I think it is just a pot inside... It has little springs to return it to center, but really just a pot. I am sure there are many ways to substitute the pot for something else spitting out a given resistance.
Sure is, just use buttons that the axe can see as an input. send a puls signal based on this button. This could allow for quite a few signals to be sent out from the radio.

Some info on the picaxe forums delving into this topic.


Here's some bits I found and remember about the Vex stuff, pretty cool system. The transmitter and reciever is available new from a number of places for about $130 retail, but the reciever part is actually just a little yellow box that plugs into the silver rounded box that CtC was working with. Inside the silver rounded box are 2 PICs that decode the reciever signal to make the RC servo drive pulses, having the whole system operate in a similar fashion to the normal RC reciever does, as CtC pointed out in the video. That rounded silver control system can be reprogrammed to do other fun things as well, using a special programming cable and I think a Light version of MPLab, though I could be mistaken on the software. Anyway, the Vex Microcontroller runs about $150 by itself, adding up to $280 retail to get a similar setup with just the electronic bits. 

http://www.trossenrobotics.com/store/p/3134-VEX-Transmitter-and-Receiver-Add-on-Kit.aspx   trans/rec only

http://www.trossenrobotics.com/store/p/5676-VEX-Micro-Controller.aspx    Microcontroller

Alternatively, there are some surplus Vex transmitter/reciever sets on sale for a whole $30.



Some feedback about the transmitter says that a CirrusMRX-6 reciever can directly convert the PPM signal to RC servo ouputs, without the need for a decoding micro, as long as you use the Vex reciever crystal in the MRX-6. This seems to be a bit difficult to find, but think it ranges between $22 and $30


Some info about just the transmitter/receiver combo:

How to decode the receiver signals with the Parallax SX/B  http://www.allelectronics.com/mas_assets//spec/JS-6.pdf

How to decode it with an AVR  http://frank.circleofcurrent.com/vexrx.php

How to decode it with an Arduino  http://profmason.com/?s=reciever


 Edit to add: Vex Signal Splitter $19.99, splits out pulses to 6 servo channels

I been working on something like this for the past few months, got a 4 channels RC and trying to hookup together with pic16f84.

Can the code use on this PIC16f84. 





I came accross this in one of my zines I read, the whole transmitter/reciever is $30.00 there, not too shabby. It's the exact same as the one you've used here :)
can you send i2c information through one of the digital buttons of the remote?