IR tv control

Does anyone know if it's possible for the Arduino to SEND IR commands to control a TV or any IR controlled device?

If so, is there a database with all the IR commands for every TV that I can use to help control it?

I'm trying to create an "Arduino Universal Remote", so to speak.

Thanks, Elijah

I haven't been contemplating anything as ambitious as a "universal" remote, but I have been thinking about a "multiple" one that I can run from my PC.

When I finally get around to actually doing it, my first stop will be the lirc project: they've been developing remotes for years, and probably have more info than anyone except the universal remote manufacturers.

The TV be gone project http://www.tvbgone.com/cfe_tvbg_main.php attempts to provide a universal remote for just one command, the TV off. However, not only are there many different codes used there are also many different forms of codes and forms of modulation. Then there is the IR modulation on top of this that can go from 30 to 40KHz (in steps of 2Khz) finally there are two IR wavelengths commonly used.

So a truly universal remote while possible is only a remote possibility.

OK thanks!

Is there a place with all the IR codes for multiple dvd players, tvs, ect?

There are a lot of recent (last week) discussion threads on this topic.

For example http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1272067478/1

Just type IR into the Search box at the top of the page. You might want to 'Show Options' and 'Last Week'.

There are some excellent tutorials on the web too.

This is an AVR-based, learning 'universal' IR remote at http://www.lochraster.org/unzap/?en

Is there a place with all the IR codes for multiple dvd players, tvs, ect?

Sadly no. :frowning:

This place, and several others, has codes for a variety of IR controlled consumer devices, AFAIK, lots of TV's but other stuff too http://www.remotecentral.com/files/index.html#search

Search with Google for "IR HEX codes" The codes are recorded in a slightly odd format, but several of the threads on this form have discussed how to use them.

Ok thanks guys!

So now If I take an IR hex code like this:

0000 006D 0000 0022 0157 00AC 0015 0040 0015 0040 0015 0040 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0040 0015 0040 0015 0040 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0040 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0015 0040 0015 0015 0015 0040 0015 0040 0015 0040 0015 0040 0015 0040 0015 0040 0015 0689

Or just a plain ir command like this:

AA1C

How would I have the arduino send it? Can someone post some code?

Thanks,
Elijah

The Search box at the top of the page searches the threads on this forum, or all of the Arduino.cc site.

For example http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1272067478/1

Looked on the forums and found this library:
http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1251570417

Here’s the example send code:

/*
 * IRremote: IRsendDemo - demonstrates sending IR codes with IRsend
 * An IR LED must be connected to Arduino PWM pin 3.
 * Version 0.1 July, 2009
 * Copyright 2009 Ken Shirriff
 * http://arcfn.com
 */

#include <IRremote.h>

IRsend irsend;

void setup()
{
      irsend.sendSony(0xa90, 12); // Sony TV power code
}

void loop() {

}

I just have a quick question that maybe one of you could answer. What are these 2 numbers in this:

irsend.sendSony([glow]0xa90[/glow], [glow]12[/glow]); // Sony TV power code

I looked everywhere and there is no info on the subject. I’m guessing that one is the IR command and one in the frequency in hertz. If so what kind of IR command is it? I want to be able to put a hex code in there.

There are also commands like this:

sendNEC(0x00000000, 32);

and

sendtRC5(0xfff, 12);

and

sendRC6(0xfffff, 20);

I’m not sure the difference so if anyone has any websites or documentation of this, that would be great.

Thanks,
Elijah

looked everywhere and there is no info on the subject. I'm guessing that one is the IR command and one in the frequency in hertz

Your definition of "everywhere" doesn't include the source code, it would seem. void sendSony(unsigned long data, int nbits);

I want to be able to put a hex code in there.

In C, a numerical constant with the prefix "0x" is a hex code.

I'm having trouble with my TV remote, and don't know if its the remote or the TV!

I just happen to be doing a "professional" project with an Arduino, so I figured as long as I have the hardware around, I should make a test jig to validate my remote is sending a good signal, and my TV can receive it.

Anyway, I found your thread, and another talking about using an Arduino as a remote, and the other one has this tidbit of info:

(tidbit moved to next message since I have not posted before)

http://zovirl.com/2008/11/12/building-a-universal-remote-with-an-arduino/

A web page all about making a "universal" remote.

I thought you might find it handy....