I'm tired of these complicated tutorials on how to use certain things. I like simple, easy to understand, step by step instructions. My biggest problem was with IR and POV*. I've finally mastered how to control my project with any TV remote in a few minutes. In this i'ble I'm going to show you simple, step by step instructions on how to control just about anything with your IR remote.

By the way this tutorial is new and updated and works! Last update [ 10/12/2015 ]


With the latest release of the Arduino IDE there is a conflicting library that renders this tutorial void. If you'd still like to use this tutorial delete the library called "RobotIRemote". This file will be in the Arduino program. Instructions for deleting this file is in step 3.

This library is for a specific robot that Arduino/venders sell. Unless you intend on buying that shield you can delete that folder and continue with this set of instructions. You can always download it again later!

Step 1: Ingredients:


  • Arduino
  • Any IR remote
  • IR receiver
  • Breadboard
  • Jumper Cables
  • LED
<p>Thanks for the Instructable! I want to turn my amp on and off when my Arduino senses signal from my Sonos. Needed the codes from my remote as I couldn't find them elsewhere. </p>
NP awesome! Good luck with the project!
<p>JUST PERFECT!!!</p><p>Best Arduino related tutorial and &quot;instructable&quot; that I read so far, (and I assure you I read a lot).</p><p>Well organized, simple, straight forward, contains all what is required and with a light touch of humor.</p>
Thanks! I'm glad to help where I can!
<p>You are amazing, made my work so easy. Thanks alot :)</p>
<p>This was SOO much better than Adafruits tutorial that has massive arrays you have to capture and then use for each button. Normally they have the BEST stuff for easy understanding. HOWEVER this was by FAR the easiest for my remotes!! The library is about twice the size of the ada one BUT this is so much better I will take the loss on Flash for this ease!! :) <br>I only have one small glitch and it may just have to do with the remote I'm using BUT, if you click the remote too fast the read code loops forever. So the led just flashes all on it's own, until you do a long press on the remote. Again not sure if this is all remotes or just the one I chose. But I plan on adding this to my daughters Tiara project seen below. I want to cram a small tiny remote into a cheap wand, so the wand will control the Crown / Tiara.. Thanks AGAIN!! ~Steve~<iframe allowfullscreen="" frameborder="0" height="281" src="//www.youtube.com/embed/qCLX8vt_f0o" width="500"></iframe></p>
Hey thanks so much! I'm really glad that I was able to help you out!<br><br>Yeah actually it does the same thing for everyone. That was the main complaint I got because of the looping- it's not my library!<br><br>The fix is really simple, after the if statement {<br> if (results.value == X) }<br>add a small delay, like { delay(25); }. <br><br>This worked for me to keep it out of the loop, but don't put the delay too high. I forgot the actual milliseconds I used to fix it. If you go too high then sometimes when you press the button at the same time the arduino is frozen because of the delay. If you go too low then it doesn't fix the loop problem. Experiment, you'll get it. <br><br>And very nice project BTW! <br><br>Instead of cramming a remote into a wand you should just send a signal using an ATtiny85/45/44/24/ and the send feature of IR library. <br><br>I'm still here if you need any help with the IR part. . . :D
<p>hi i used:</p><p>results.value=0;</p><p>on the beginning of the void loop... fixed it for me :)</p>
<p>After beating my head against the wall for 20 mins trying to solve the flashing with the delay (Which I could not get to work) I found the PERFECT solution that works 100% everytime Change this line to:</p><p>if (results.value == 16236607) {results.value = 0; //Do something here}<br>By resetting the &quot;results&quot; back to 0 it cures the looping, because it can't &quot;see&quot; the correct value again until it gets the real code again from the sensor.<br>Thanks again you may want to update the code you shared with this correction and the problem is gone for good :) </p>
<p>Duuude of course! I can't believe I didn't think of that! I never actually used the code (like in a project) other than testing it briefly for the i'ble. I'll go back and change it. Thanks! You could get really fancy and go with an ATtiny13-20SU. I just got a shipment of 20 in the mail! :D</p>
<p>Awesome thanks for the hints!! <br>Yeah no clue why I didn't think of just using the ATTiny!?!?!?! Perfect Idea!!!</p>
<p>Really Good Tutorial here bro. Finally made the IR sensor work! :D</p><p>But for some reasons, many of the links are not working properly. If would be awesome if you could fix those. </p><p>Anyway, Thanks for this! Really appreciate it as a beginner with Arduino! :)</p>
Thanks! I'm not sure what you are talking about the links though. I just went through and checked all of them and they are all working. Maybe you might just have to copy the address and paste it in your browser's address bar.
<p>Sir,</p><p>I am very thankful for your help by these tutorials. I have just received my Arduino NANO in the afternoon and at 9 i have completed my very first Arduino project &quot;led control using ir remote&quot;, thanks to your amazing tutorial. In the following images i have been trying to show that when i press volume up it will switch ' on ' the right LED and when i press the volume down button it will switch ' off ' the LED and same has been done to the right one using program up and down of the ir remote.<br>Thank you once again,<br>regards </p><p>Nishant(INDIA)</p><p>:)</p>
<p>Sweet man! Good job! Keep up the good work!</p>
<p>I have made my mom's room room automated. Now its time for the other room you are awesome ;) :) :). Blessings from my mom too. you are awesome :)</p>
<p>Wow thanks! That is soo cool! I keep on telling myself that I should hook up my light and my fan and outlets to IR, but I'm too lazy to get around to it! Good luck!</p>
<p>This is AMAZING! Works perfectly, thank you so much!</p>
<p>HELP!</p><p>I made it, but different numbers appear on serial monitor after I press the same button consecutively. </p><p>Is it IR sensor fault? (I m using sm0038)</p><p>Is there fault in library?</p><p>Is there encryption in every remote I use? (I tried 2 remotes)</p>
<p>This is an excellent project Works great with LED. However, small motor creates problem. Cannot turn off. I see suggestions of others but I am not sure where to insert it in the code (i.e, delay(25); or results.value=0; Please, help!</p>
So. . . what are you trying to do? Add a delay or change results.value?
Change code to stop a flickering LED and also allow the motor to be turned off. It is as if the LED is oscillating between the on-off state. And the switches on but not off. Whatever works...delay or results.value modification. Some of the people following ur project suggested it.
<p>Try changing all the delays to 250-1000ms</p>
<p>i have problem ,your code missing please reply me your code please.........my emailaddress is....neranjanmadhumal@gmail.com</p><p>pleasereply me</p>
<p>Codes all there what are you having trouble getting to.</p>
<p>Muito bom.</p><p>Obrigado</p>
<p>I need some help here.... with your IRdecoder sketch, my serial monitor just reads the same code over and over, rather than just saying a code once and then showing a constant different value afterwards. Also, for the led sketch, when i press the button on my remote, the led just starts blinking, and then I can't turn it off after that unless i restart the board or unplug the ir sensor. What am I doing wrong? thanks.</p>
Good, even for a beginner
<p>how do i switch on and off a bulb using tv remote?</p><p>i need the hex code?</p>
<p>man thanks! btw we are doing ir remote for TV using arduino, should we first need a tsop382 receiver to capture the codes from the remote of our tv then send it to the arduino?</p>
Yep that sounds like the way to go! I still have no idea on how to transmit, it may be one of my next i'bles :)
<p>G.R.E.A.T. That's all I can say. Let's have some more like this!</p>
Thank you! Hopefully soon!
<p>Loved the &quot;instructable&quot; Good learning experience. I was able to easily follow all the lines of code which were explained so well by you. </p><p>It was easy to modify the code and implement it to control a 4 relay board, I have assigned different buttons to turn on and off the relays and one button each to turn on all the 4 relays at the same time and another to turn them all off at the same time.</p><p>The TSOP1738 sensor that I got has a different pin-out though, pin 1 is GND, pin2 is VCC &amp; Pin 3 is control.</p><p>Thanks, I enjoyd your tutorial and was able to put it to practical use. I'll post pictures when I have a camera handy??</p>
<p>I'm glad I could help out! Looks great!</p>
<p>Great tutorial! can you tell me which IR you used? thx.</p>
Which IR what? Remote, library, LED bulb. . .
I am sorry. The physical component, the IR receiver. I am wanting to follow your plans and would like to use the same component. thank you.
<p>Anything really. http://www.ebay.com/itm/10-PCS-Universal-IR-Infrared-Receiver-38Khz-Infrared-Sensor-For-Arduino-Remote-/291844050710?hash=item43f342cf16:g:MB0AAOSwdzVXraJj</p>
<p>hey, if u could let me know, how to make the transmitter part. that is i am trying to make a remote with arduino, single IR LED, and few keys (just like TV remote). i want to send different codes for different tasks with different switches, but only single IR LED. IRsendDemo was of bit help, but it deals with only sending 1 type of code, how to multiply it for multiple codes. i am fine with designing of receiver part. just working upon making a remote of mine own, but unable to do so, if u could help.</p>
<p>I have no idea how to transmit. </p>
<p>hey, i would like to know if u could help how to transmit different codes using arduino, single IR LED and multiple switches, same as TV remote, i want to build remote, for different keys i press, it should emit different codes. and after that i am fine with the receiver part to do different task with different codes. but it is with pre-made remote. i want to make one of my own. the IRsendDemo is a help, but it deals with only 1 code, and less to understand. also if u could help with the programming code.</p>
<p>really thank you, you absolutely saved me :-)</p>
<p>I am trying to get an IR receiver to work on the Digistump Oak, which is an ESP8286. When trying to run your code (after downloading your files) I get the error:</p><p>avr/interrupt.h: No such file or directory</p><p>Thoughts on how to get this to work?</p>
<p>Long delays (over 8000ms) were causing the loop to start and repeat without any remote inputs. Breaking the delay into eight segments of 1000ms fixed this problem, no idea why. The loop would also repeat if I pressed a button too long but adding {results.value = 0;} after the if statement fixed this issue.</p>
<p>Hey man trying to set this up (plz dont grill im a NOOB) but every time I open the Serial Monitor to try and set up the button values it just spits a bunch of random numbers. Any Idea why ? </p>

About This Instructable




Bio: ¿Qué tal? I'm 16 and enjoy learning about electronics. I am self-taught. I love programming my Arduino and soldering circuits. My newest hobby is ... More »
More by HavocRC:DIY FPV Antenna Protector Case Control Your RC Plane With Your Phone's Acclerometer DIY Receiver Controlled Switch (Cheap and Easy) 
Add instructable to: