Homemade IR remote
This is a walkthrough on how to make a simple IR controller. It is relatively cheap and easy to make. Programming is simple since the picaxe basic already has commands supporting IR communication.
I found an old PS2 clone controller with those wicked little joysticks in it. I would have loved to use the entire controller for a remote except it has way more buttons than I need or want plus it wasn't really designed to hold batteries as well.
This is what I ended up with after some debautury (desoldering and butchery :)
As you can see these little beauties have two 10K linear pots (103 is 10K and B means linear) and as a bonus that I wasn't aware of, a button thats activated by pressing down on the stick (far left on the left joystick). I've used a picaxe 14M to keep the cost down but a 18X or 28X1 could also be used. This now gives me 4 analog inputs for the joysticks and 4 buttons for future camera hacking possibilities. Since I'm using 4x AAA NiMh batteries (4.8V) I've done away with a regulator and will disable the brownout detect in the chip (see disablebod command).
I want to have one joystick set up as a normal up/down left/right and the other set up for skid steer which is normally done with 2 seperate up/down controls. This means I'll need to show you a little trick ;)
Instead of the 14M trying to translate the forward/reverse/left/right movement of the joystick into the equivalent of two forward/reverse joysticks I'm going to turn that joystick 45 degrees. Now when you push forward both the X axis and the Y axis move forward together. Pull backwards and they both move backward together. pull to one side and one motor will go forwards while the other goes backwards etc.
This is how it looks so far.
The 15mm nylon spacers I'm using give just enough clearance for the batteries and poke the sticks about the right height above the lid. I can always add a few washers to fine tune the height as it needs to be right otherwise the sticks won't get full movement.
Below is the finished remote.
I've fitted two sockets, one for the program cable and the other is to recharge the batteries from a 6V power supply.
I've used two Vishay TSAL5100 IR LEDs designed specifically for IR remotes. They can handle 200mA and have a narrow viewing angle to improve range. This means that up close you need to be pointing directly at the receiver. I may add some additional LEDs with a wide viewing angle later to help at close range.
The IR receiver is from a local electronics store and has the same frequency as the picaxe version. I've attached datasheets for both the LEDs and the IR receiver.
I've found that due to limitations in the IR protocols the response can be a bit slow. The IR only works indoors as bright sunlight swamps the signal. Guibot is building a similar remote using an Xbee transmitter. I think that is a better way to go as you'll have more range and it can be used outdoors. I suspect it will also have a superior data transfer rate.