Its just a IR Decoder that can decode the HEXADECIMAL IR signals from the TV remote for further use. like programming any TV remote etc.

Its made with Freeduino (not Arduino). Freeduino is a arduino compatible low cost micro controller. You can program using Arduino IDE (just like coding for Arduino UNO). Its based ob Atmega 328 chip.

Step 1: Items Used:

1. Freeduino Board (Any arduino board can do the work as well)

2. 16/2 LCD (Blue)

3. Jumper Cables

4. Female Header Pins.

5. IR Remote (For Testing)

6. Soldering Machine

7. An old CD/DVD to mount on.

Step 2: Connecting Headers to LCD

Solder your female header in the uper side on the LCD panel so that mounting on a CD will be easier.

Step 3: Connecting the LCD to Arduino

First of all..

Shot the following Terminals:

Vcc with Led +

Gnd with Led -

Vcc with R/W

42 ohm resister between Vee and DB4

(I have used the resistor instead of connecting a potentiometer. That will help in reducing the cable connection and reduce the cost but the LCD will bw glowing at full brightness..!!)

Connecting the Jumper Cables:

Arduino > LCD

5v > Vcc

Gnd > Gnd,R/W

Pin 7 > RS

Pin 6 > EN

Pin 5 > DB4

Pin 4 > DB5

Pin 3 > DB6

Pin 2 > DB7

Step 4: Connecting an IR Receiver

Connect the IR:

Vss to Pin 13

Gnd to Cnd (Arduino)

OUT to Pin 11

Step 5: Coding:



LiquidCrystal lcd(7,6, 5, 4, 3, 2);

int RECV_PIN = 11;

IRrecv irrecv(RECV_PIN);

decode_results results;

void setup()
{ Serial.begin(9600); pinMode(13,OUTPUT); digitalWrite(13,1); lcd.begin(16, 2); irrecv.enableIRIn(); // Start the receiver } // Dumps out the decode_results structure. // Call this after IRrecv::decode() // void * to work around compiler issue //void dump(void *v) { // decode_results *results = (decode_results *)v void dump(decode_results *results) { lcd.setCursor(0, 0); int count = results->rawlen; if (results->decode_type == UNKNOWN) { Serial.print("Unknown encoding: "); lcd.print("Unknown encoding: "); } else if (results->decode_type == NEC) { Serial.print("Decoded NEC: "); lcd.print("Decoded NEC: "); } else if (results->decode_type == SONY) { Serial.print("Decoded SONY: "); lcd.print("Decoded SONY: "); } else if (results->decode_type == RC5) { Serial.print("Decoded RC5: "); lcd.print("Decoded RC5: "); } else if (results->decode_type == RC6) { Serial.print("Decoded RC6: "); lcd.print("Decoded RC6: "); } else if (results->decode_type == PANASONIC) { Serial.print("Decoded PANASONIC - Address: "); Serial.print(results->panasonicAddress,HEX); Serial.print(" Value: "); } else if (results->decode_type == LG) { Serial.print("Decoded LG: "); lcd.print("Decoded LG: "); } else if (results->decode_type == JVC) { Serial.print("Decoded JVC: "); lcd.print("Decoded JVC: "); } lcd.setCursor(0, 1); Serial.print(results->value, HEX); lcd.print(results->value, HEX); Serial.print(" ("); Serial.print(results->bits, DEC); Serial.println(" bits)"); Serial.print("Raw ("); Serial.print(count, DEC); Serial.print("): ");

for (int i = 0; i < count; i++) { if ((i % 2) == 1) { Serial.print(results->rawbuf[i]*USECPERTICK, DEC); } else { Serial.print(-(int)results->rawbuf[i]*USECPERTICK, DEC); } Serial.print(" "); } Serial.println(""); }

void loop() { if (irrecv.decode(&results)) { Serial.println(results.value, HEX); dump(&results); irrecv.resume(); // Receive the next value } }

For this code to run you will be needing a IR Remote Library.

Jusr Goole it or you can download from here too.

Step 6: The Final Step:

Now with a dual sided tape, attach the LCD and the Arduino to the CD.. and Test with some remote and decode the signals..

<p>Done it but i am able to see only 3 digits of all the codes no matter which button i pressed. Am i going wrong somewhere? </p>
<p>Thanks!! works perfektly, i don&acute;t wanted to search for my lcd, then i recognized that the code is writen for lcd and serial port. so thank you!</p>
<p>an algorithm will be highly appreciated. </p>
<p>Dear,<br>There is a remote control Library available here.Please download.<br>I have used it in my freeduino project and it works fantastic!!!</p><p>This is the IRremote library for the Arduino.</p><p>To download from github (http://github.com/shirriff/Arduino-IRremote), click on the &quot;Downloads&quot; link in the upper right, click &quot;Download as zip&quot;, and get a zip file. Unzip it and rename the directory shirriff-Arduino-IRremote-nnn to IRremote</p><p>To install, move the downloaded IRremote directory to:</p><p>arduino-1.x/libraries/IRremote</p><p>where arduino-1.x is your Arduino installation directory</p><p>After installation you should have files such as:</p><p>arduino-1.x/libraries/IRremote/IRremote.cpp</p><p>For details on the library see the Wiki on github or the blog post <a href="http://arcfn.com/2009/08/multi-protocol-infrared-remote-library.html" rel="nofollow"> http://arcfn.com/2009/08/multi-protocol-infrared-...</a></p><p>Copyright 2009-2012 Ken Shirriff</p>
<p>sorry buddy.. it was just a small part of my home automation project...</p><p>No specific algorithms used.!! </p><p>Just coded as i wanted...</p>

About This Instructable




More by bisudw:Low Cost IR Decoder Customizing the cellphone Voice Controlled Switch with Arduino 
Add instructable to: