In this project I will show you how I repurposed the useless buttons on my TV remote to control the LEDs behind my TV. You can also use this technique to control all sorts of things with a bit of code editing. I will also talk a bit about the theory of how an infrared transmitter and an infrared receiver communicates with each other. Let's get started.

Step 1: Watch the Video!

The video gives you all the info you need about the theory of this project and the practical implementation. So watch carefully.

But in the following steps I will also present you my parts list with example sellers and the schematic, code,.... to make your life easier if you want to build this.

Step 2: Order Your Parts!

Here you can find most of the parts that you will need to complete this buid.


1x Arduino Nano:http://rover.ebay.com/rover/1/711-53200-19255-0/1?...

2x 10k Resistor:http://rover.ebay.com/rover/1/711-53200-19255-0/1?...

1x 100µF Capacitor:http://rover.ebay.com/rover/1/711-53200-19255-0/1?...

1x DC Jack:http://rover.ebay.com/rover/1/711-53200-19255-0/1?...

1x IRLZ44N N-channel MOSFET:http://rover.ebay.com/rover/1/711-53200-19255-0/1?...

1x IR Receiver (TSOP4838):http://rover.ebay.com/rover/1/711-53200-19255-0/1?...

1x Veroboard:http://rover.ebay.com/rover/1/711-53200-19255-0/1?...

RGB LED strip (common anode):http://rover.ebay.com/rover/1/711-53200-19255-0/1?...

Power Supply (12V 3A):http://rover.ebay.com/rover/1/711-53200-19255-0/1?...


1x Arduino Nano:http://amzn.to/1tgG8ux

2x 10k Resistor:http://amzn.to/1zknpuw

1x 100µF Capacitor:http://amzn.to/1wnBpS0

1x DC Jack:http://amzn.to/1x5ReSt

1x IRLZ44N N-channel MOSFET:http://amzn.to/1tgGBgl

1x IR Receiver (TSOP4838):http://amzn.to/1rkolRN

1x Veroboard:http://amzn.to/1rkoswO

RGB LED strip (common anode):http://amzn.to/1A9iSPM

Power Supply (12V 3A):http://amzn.to/1rkrmSn


1x Arduino Nano:http://amzn.to/1xkMTNb

2x 10k Resistor:http://amzn.to/1A9l0H7

1x 100µF Capacitor: http://amzn.to/13xShyw

1x DC Jack:http://amzn.to/1rkq49Y

1x IRLZ44N N-channel MOSFET:http://amzn.to/1CQkAFh

1x IR Receiver (TSOP4838):http://amzn.to/13xSD8C

1x Veroboard:http://amzn.to/1AN5kJQ

RGB LED strip (common anode):http://amzn.to/13xSXE8

Power Supply (12V 3A): http://amzn.to/1xgDwuY

Step 3: Build the Circuit!

Here you can find the schematic for the circuit. You can make your own board layout for this but you can also just use mine instead. It should work without any problems

Step 4: Program the Arduino Nano!

Here you can find the code/sketch for the Arduino Nano. Make sure you upload it before you start testing.

And don't forget to download the IR library for the Arduino: https://github.com/shirriff/Arduino-IRremote

Step 5: Success!

You did it. Now you can control everything with your TV remote and never have to get off your couch!

Feel free to check out my Youtube channel for more awesome projects:


You can also follow me on Facebook, Twitter and Google+ for news about upcoming projects and behind the scenes information:



<p>Thank you Scott! Awesome project, useful guide as well! Had to use a 38KHz variant of the IR receiver because it's the one that they had at the local store (TSOP343338), and the reception works flawlessly with my One For All XSight Plus TV remote. Nice project as always :) and thank you again </p>
<p>amazing! just subscribed!!</p>
<p>Awesome project Great Scott! But can someone help me, I have made all the connections and resistors. But my LED strip is only switching on and off. Even if i let the brightness step for step increase, aftersome time it is switching on and not getting brighter. The only difference is, I used IRFZ44N MOSFETs. Does someone know what the reason could be? Thank you in advance!</p>
<p>After one day of bugtesting i still dont have any idea. I can give you my results.</p><p>The Blue LED is actually dimming, as it is supposed to do. The other 2 Colors are on or off. In the images, you can see my schematic and measured Voltages at brightness levels from the arduino. If anyone has a clue why green and red are not getting darker/brighter let me know please.</p>
Buy a prototyping board first,there is no pride taken in this project!!Great Scott has set such wonderful standards,you use a cardboard?
<p>Okay I'm blind. Only pins </p><p><strong>3, 5, 6, 9, 10, and 11 <br></strong></p><p>support PWM</p><p><strong><br></strong></p>
You obviously using an Arduino nano which now is blown due to incorrect wiring .
<p>could you please explain me what is the capacitor for in this circuit?</p>
Would it kill You to just use it.The video gives detailed information on why you need the capacitor.I watched video 10 times plus,and got it working with one go.
<p>i made it, but cant post image, so yea. </p>
<p>Thanks.<br>It was easy to make and works great.<br>For begginers like me, it is awesome to learn.</p>
Controlyour LEDs with your tv Remot || Arduino IR Tutorial diagram plz
<p>can someone help me, I have done all the connections as in the diagram and I have tested it with a LED,it works but when I connect the mosfet to switch on the LED strip it always stays on ,it doesn't switch-off or dim the LED strip,is it something wrong with the mosfet or what is it?</p>
<p>your mosfets are okay, i had the same problem and the easy fix was resistors... how obvious ^^</p>
<p>Thanks GreatScott =]</p>
<p>C:\Program Files (x86)\Arduino\libraries\RobotIRremote\src\IRremoteTools.cpp:5:16: error: 'TKD2' was not declared in this scope</p><p> int RECV_PIN = TKD2; // the pin the IR receiver is connected to</p><p> ^</p><p>Multiple libraries were found for &quot;IRremote.h&quot;</p><p> Used: C:\Program Files (x86)\Arduino\libraries\RobotIRremote</p><p> Not used: C:\Users\Gabri\Documents\Arduino\libraries\Arduino-IRremote-master</p><p>exit status 1</p><p>help plz</p>
<p>C:\Program Files (x86)\Arduino\libraries\RobotIRremote\src\IRremoteTools.cpp:5:16: error: 'TKD2' was not declared in this scope</p><p> int RECV_PIN = TKD2; // the pin the IR receiver is connected to</p><p> ^</p><p>Multiple libraries were found for &quot;IRremote.h&quot;</p><p> Used: C:\Program Files (x86)\Arduino\libraries\RobotIRremote</p><p> Not used: C:\Users\Gabri\Documents\Arduino\libraries\Arduino-IRremote-master</p><p>exit status 1</p><p>scott, do something scrub</p>
<p>Can I Supply This Project with a 12v 3A Lead Acid Rechargeable Battery?</p>
<p>Yes of course it will work but be careful arduino only processes 700maH</p>
thanks for the great instruction! is it also possible to control it with an ATtiny85? because I have some left from the clap switch thing.
<p>Im wondering this too. Tried but did get som errors. The problem seems to be TIMER-related. Anyone knows if/how to fix this?</p>
<p>how to fix this error </p><p>Arduino: 1.6.9 Hourly Build 2016/04/28 04:33 (Windows 10), Board: &quot;Arduino/Genuino Uno&quot;</p><p>C:\Users\good\AppData\Local\Temp\arduino_modified_sketch_627326\IRrecvDemo.ino: In function 'void loop()':</p><p>IRrecvDemo:23: error: unable to find numeric literal operator 'operator&quot;&quot; FF8877'</p><p> if (results.value == 20FF8877){</p><p> ^</p><p>IRrecvDemo:33: error: expected '}' at end of input</p><p> irrecv.resume(); // Receive the next value</p><p> ^</p><p>IRrecvDemo:33: error: expected '}' at end of input</p><p>Multiple libraries were found for &quot;IRremote.h&quot;</p><p> Used: D:\Adnan\program\arduino-nightly\libraries\IRremote-</p><p> Not used: D:\Adnan\program\arduino-nightly\libraries\RobotIRremote</p><p>exit status 1</p><p>unable to find numeric literal operator 'operator&quot;&quot; FF8877'</p><p>Invalid library found in C:\Users\good\Documents\Arduino\libraries\prject1: C:\Users\good\Documents\Arduino\libraries\prject1</p><p>Invalid library found in C:\Users\good\Documents\Arduino\libraries\prject1: C:\Users\good\Documents\Arduino\libraries\prject1</p><p>This report would have more information with</p><p>&quot;Show verbose output during compilation&quot;</p><p>option enabled in File -&gt; Preferences.</p>
it is showing Error what shall i do?plz reply
<p>There are some preinstalled libraries like Robot_Test of something similar. Delete those 3 libraries that solved the problem. Delete all the libraries that has the word &quot;Robot&quot; in it. I think there are 3 in total.</p>
<p>thanks great scott, and it was so simple, i'm gonna use it for my another project</p>
<p>thanks great scott, and it was so simple, i'm gonna use it for my another project</p>
<p>programmer says Redefinition of void setup.</p><p>What shall l do?</p><p>Thankyou</p>
So can I use arduino uno with same pins and connections
When I use 12 v adapter to arduino nano it cause burning sensation.. please tell me solution of this problem as soon as possible.
<p>There could be dozens of problems. How should I know what you did wrong?</p>
Can I program arduino nano on pcb circuit
<p>Tha's is a great DIY project. I am following you on Instructables as well as on youtube. But I just want to know why you have added 100uf Capacitor with +ve and -ve terminals of IR receiver. That will be a great help. </p>
<p>You can find it on datasheet, page 2. &quot;The external components R1 and C1 are optional<br>to improve the robustness against electrical overstress<br>(typical values are R1 = 100 &Omega;, C1 = 0.1 &micro;F)&quot;. I hope I've helped.</p>
yes you helped a lot
<p>How much more work is it going to be to change the colors of your RGB LED strip?</p>
<p>Instead of one MOSFET you will need three of those. 4 more Resistors and maybe 5 minutes of code editing.</p>
<p>How should that look? Can i maybe get some help to that?</p>
<p>Instead of connecting all 3 you would give each one it's own MOSFET and resistor?</p>
<p>Yes, exactly.</p>
<p>For IKEA led tube control. Great.</p>
Great one! Worked well. But i used only one led... On, off works well. Decrease t brightness works well. But increasing is not workin... Can anyone able to give suggestion
<p>this happened to me and I had the the codes for up and down crossed over as yo read the code down I expected the first value to be the &quot;up&quot; but its the other way round if you see what I mean ! I guess what I am trying to say is walk away for an hour then come back and work through the code slowly </p>
Ever try to look the serial monitor while increasing brightness? Sometimes, the signal somehow changed even with the same button.
<p>needed a bit of thought to debug but very educational for me (a newbie!)</p>
<p>I have a doubt , i ve seen the data sheet of the ir receiver and it says that it only stands a 5 mA current . However arduino is supllying more current in the pin that you ve selected . And the ir supports 2.5 to 5 volts so it will also support 20mA ?</p>
<p>It draws around 5mA at the given voltage. It is a constant voltage component, not constant current.</p>
<p>now I get it dude that information of supllying 5 mA is for a given voltage that goes to say if it supports 5 volts that means that the ir can handle with the current that is correspondend to 5 volts ? </p>
<p>what other transistors could you use, i got some TIP120 would they work?</p>
<p>Thank you a lot GreatScott! I used this instructables to make a relay switch ir-controlled. </p>

About This Instructable




Bio: Awesome Electronics Tutorials, Projects and How To´s
More by GreatScottLab:Make Your Own Photovoltaic Off-Grid System DIY Class D Audio Amplifier Make Your Own Tesla Coil 
Add instructable to: