Sending IR Commands over Radio Comms

erco

Senior Member
I'm sending simple radio control signals to a mobile robot which uses servo commands for drive & steering. Many ways to do that, but I'm a minimalist and don't want to add much/any hardware. I'm sticking with the tiny 433 Mhz TX & superhet RX modules mentioned here, cheap and easy to connect using a single Picaxe pin. I want continuous radio control, IOW the robot must keep moving (using SERVOPOS commands) while waiting for a new command. I'm using 20M2s in the transmitter and receiver, so RFIN and RFOUT are possible, but they are blocking commands, which stop the servos, so that's a dealbreaker. I don't want to bother with the NKM chips, which are a possible workaround... extra pins & coding complexity. Then I tried sending a variable-frequency modulated carrier using various PWM rates thru PWMOUT on the transmitter, and using COUNT on the receiver to decode the signal. It works great, especially on the transmitter, since PWM is a continuous background task. Sadly, COUNT is a blocking command which also interferes mightily with the servos on the robot/receiver end. But I know from past experience that IRIN doesn't interfere with servos, so I reprogrammed to send IROUT values 0-127 over the 433 MHz link. I added a transistor inverter on the receiver end to simulate an active-low IR receiver, and it works GREAT. I'm probably not the first guy to try this workaround but I figured I'd share it just in case. Even without a timeout, the IRIN decoder in Picaxe firmware doesn't interfere with SERVO commands, so this method should work equally well with an 08M2 robot. I'm getting all sorts of ideas for expanding on this, there's a project in the offing.
 
Last edited:

steliosm

Senior Member
Hello Erco, nice finding! Any chance you could use the hserin command for the M2 parts which is not blocking as well?
 

erco

Senior Member
Hserin my be another possibility, although I had no luck getting SERIN/SEROUT working over these simple 433 Mhz modules, even without worrying about blocking & servo commands. I always look for the simplest way out!

Adding a pic and video of my rig here now.

 

Attachments

Top