Jump to content
  • Advertisement

Archived

This topic is now archived and is closed to further replies.

vtwin

Programming a serial port IR transmitter as TV remote control

This topic is 5729 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I've recently obtained a basic infrared transmitter from a friend's Lego Mindstorm package. The IR tower connects to the computer via the generic 9-pin serial port. I'd like to somehow get the transmitter to function as a remote control for my television. Is this possible? If so, read on.. The device has two options; a low-range and high-range signal, but I imagine the high-range signal is not as potent as that of a convential TV remote control (I could be wrong). Regardless, my TV is not far from the computer, so this isn't a problem. So.. I'm looking for information on starting this little project. My first task is to communicate to this 9-pin serial port; something I've never done before. Do you know of any resources to explain this process? Also, after a little bit of digging, I've read that conventional remotes encode the keypresses with some international standard (RC5 or RECS 80). I know little else about this; if anyone happens to know where I can find the algorithms behind these encoding standards, or whatever, please point me in the right direction. Finally.. I'm not sure how the signal sent to serial port corresponds to that of the Lego Mindstorms IR tower. Are they translated as raw bits of information? The whole process baffles me. [edited by - vtwin on December 8, 2002 2:24:50 AM]

Share this post


Link to post
Share on other sites
Advertisement
I don''t remember too much about the mindstorms hardware, but programming computer equipment to behave like a IR remote is usually nontrivial because of differences in the way they fundamentally send signals. If you have don''t much serial and related program, this might be a very difficult nut to crack. The mindstorms community used to be pretty good. Have you searched for anyone else doing things like this?

Author, "Real Time Rendering Tricks and Techniques in DirectX", "Focus on Curves and Surfaces"

Share this post


Link to post
Share on other sites
If you do some searches you should be able to find plenty of information on this sorta thing. I remember finding instructions for making a IR transmitter for a TV remote from scratch somewhere... Anyway, just letting you know it's certainly very possible.


And since I don't feel like hearing people saying they can't find anything:

http://www.geocities.com/CapeCanaveral/Lab/1475/remotectrl.html

or search for:

IR "tv remote" program serial

in Google.

[edited by - Melraidin on December 8, 2002 8:52:21 PM]

Share this post


Link to post
Share on other sites
I think I've seen something like this done. I think what happened was there was an IR sensor to record whatever the remote did when you pressed a button, and then the program would reproduce this to control whatever it was the remote was supposed to control.

[edited by - smart_idiot on December 8, 2002 11:55:55 PM]

Share this post


Link to post
Share on other sites
Well, yes, I''ve done a bit more scouting around, and basically I know now that..

- IR remote controls will code their signals usually in one of three standards: pulse-width signals, space-coded signals, and shift-coded signals.

So, assuming I knew how to transmit data to my IR device in the first place, it would be relatively easy to have the transmitter send data in one of those fashions.

But now I must figure out which of those methods my cablebox and remote control use to communicate with. I have a General Instruments CFT2200.. I''m going to search around the web to see if this information happens to be available (doubtful).

If it is not, do any of you have some ideas on figuring this out (last resort: calling the company and seeing if they care to tell me).

Also, I do not know if the literal binary values that remote controls transmit are universal. This is out of my ass, but let''s say the command for pressing the "1" button on my remote control was "0001"..is this value going to be used in all remotes? No, right? So..once again, how do I go about figuring out this information, which is specific to my remote controller/cable box?

Share this post


Link to post
Share on other sites
I have built a device similar to what you are talking about. Here are some things you need to know:

1. I.R. transmitters and recievers need to be matched. For example, some Transmitters modulate thier signal at 33kHz while other Transmitters may modulate thier signal at 28kHz. If the transmitter you "cannibalized" from the lego set happened to have the same type and frequency of modulation as the reciever in the television then you "might" be able to get it to work. You would be much better off buying a second remote (made for your tv) and "cannabalizing" the I.R. transmitter from that.

2. Dont bother asking the company for information regarding how their product works. 99% of the time they will ignore you (I once was able to get a tiny bit of info from Logitech on their optical mouse hardware but that was a miracle). Instead, learn a little bit and reverse engineer whatever it is you want to use. Try something like this: Lets say you have a I.R. reciever that will work with the TV remote and that the I.R. reciever is connected to the serial port on the PC. Write a small program that records the data on the serial port to a text file. When running the program, slowly press and release the power button on the remote (aimed at the reciever of course). Look at the text file and see what patterns pushing the power button created. Now simply iterate for whatever buttons you want to use. Etc Etc..

3. When testing your project, beware of flourescent lighting. Often they emit noise that will interfer with the I.R. signal. Test the I.R. pair in darkness. You will save yourself many headaches.

4. Never give up.


Share this post


Link to post
Share on other sites

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!