Make an Infrared Remote Control for PC

A friend of mine came yesterday to me asking if I can do something for him to control WinAmp via a Remote Control. After some searching I found a very simple to build IR receiver using the serial port on LIRC official page so I started to gather the components from our local electronics shop. It costed me around 1.5$ so it was also cheap enough 😀 .
The schematic is


and the components are as follows :

  • IC1 = 78L05, 5V regulator
  • IC2 = TSOP1738 , IR receiver
  • D1 = 1N4148
  • C1 = 4.7uF
  • R1 = 4.7K
  • one male or female (depends on your configuration/cables) serial (DB9,RS232) connector

I choosed to put all components on air and in the serial connector’s box (photos below).
The pinouts of the 9-pins connector are :

  • 1 = DCD (Carrier Detect)
  • 2 = RXD (Receive Data)
  • 3 = TXD (Transmit Data)
  • 4 = DTR (Data Terminal Ready)
  • 5 = GND (Ground)
  • 6 = DSR (Data Set Ready)
  • 7 = RTS (Request To Send)
  • 8 = CTS (Clear To Send)
  • 9 = RI (Ring Indicator)

TSOP1738 pinouts

the starting materials

during construction

inside the box

the final product

the remote controls I use

For the software part you can use :

(Edited) As a remote control you can use almost all universal remote controls (you must know its working code for the TSOP1738, for the one from the attached picture the code is 081) and most of the domestic (videorecorder, tv …) remote controls. To see if one is working open WinLirc, press Reconfigure and then Raw Codes. If when you press a button on your remote control you see lots of numbers there then it means it is working.

(Edited) To add a status LED to your receiver, just make the schematic below (I tested it last week and it went ok). The disadvantage of this is that you’ll need a battery so it can run ok.

IR Receiver with LED status
Just click the image to see it larger

References :

184 comments on “Make an Infrared Remote Control for PC

  1. For those looking to do a USB version, this SourceForge project is very nice, and even has an optional LED in their setup.

    I ordered parts to build 25 of them for me and various friends and family and it came out to about $4 each. It’s more than this sereal device, but not too expensive. To build just one would be a bit more though.

  2. I try what Bill Paxton suggest in the LIRC mailing-list (here post 86) for the status LED thing. It works fine for the lit part but LIRC doesn’t detect anything (without the LED connected LIRC doesn’t have any problems at all). Like he says the power drainage maybe it’s too much.

    Trimbitas do you have a solution without any kind of external power supply? Such a thing can be accomplish with this circuit?

  3. I make this circuit with IR SFH5110-38, and there are two changes.
    At first there are another pins, at top is vcc(5V), in the middle gnd and bottom – out. And R1 have to be more, than 4.7k (its small sensitivity). A take there 2×4.7k to series.
    Please excuse my english…

  4. Hi, I make this project, and I could say that it are working fine, but I get a strange problem that I cannot found on google and anothers sites.

    The problem seems to be “grounding”, because when I put my hand on the 7805(on metal) the receiver gets the correct signal.

    I did all configuration of remote control holding the IC, but for normal use this don’t works, accord?

    sorry for my very, very (I already did better, but I am months without training my english)

    I’m waiting for a reply (if you understand me)


  5. I was really busy with some problems at work but now all seems back to normal :), sorry that I couldn’t just reply faster.

    Kchaja … thank you, very appreciate for making it work with SFH5110-38 sensor too :)
    Henrique … the metal part on the 7805 is already connected to ground by factory .. had you connected the GND (middle pin of the 7805) with the GND of the serial port and the rest of the circuit? If yes .. if you get a wire from the metal part of the 7805 and solder it on the GND of the circuit .. does it work?

  6. The two alternatives that you said to me, i tried, but, don’t works….

    I replace the IR, with another, and this problem disapear, but now, the remote signal is instable, if I press the ‘4’ button, the program saves … after, I press ‘4’ again and nothing happens…

    I’m getting crazy!!!….
    but, yey waiting for solutions!..


    (and, again sorry for my very very poor english!! =P )

  7. hi .. may i know weather WinLIRC uses C++ or Javax Comm.

    Currently , i working on a IR remote Control Player where i already program my audio/Video Player with java and i would like to use this ir receiver circuit for my project.

    Where can i get reference regarding IR Serial Receiver & Transmitter with javax Comm ?

    Thanks !!

  8. hellor brother, well i tried to make this IR reciever, and connect all of the components as shown, but will you please tell me that if I connect this to my pc then will it show ‘the new hardware found’ . Please do help me in this concern, actually i have made it completely but when I connect this to serial the windows shows me nothing and if I do open the winlirc, it hsows me that unable to inistialize please reconfigure pad. and if i select the sameple configuration file or either click on the learn tab – on the next input signals pad,, it shows me error reading signals ??? i tried all of the remotes i.e, my cd player, dvd player, television, ac, fridge thats all?? please do assit me that how to do the same?

  9. hello ..i make this project..& it work properly …it work on XP.. but now i formate my pc with VISTA…now not work this project(lirc)dos’nt installed..there are error massage.(this application has failed to start because MFC71.DLL was not found.)plz tell me how can solve my problem…thanks …

  10. Hello,
    I just built the IR receiver with all parts bought from Radio shack. When going into Raw Code of Winlirc, I got an infinite series of codes even without the remote. Something like this: (from debug file)
    \\\bitbucket\winlirc\learndlg.cpp(832) : space 8027
    \\\bitbucket\winlirc\learndlg.cpp(832) : pulse 92
    \\\bitbucket\winlirc\learndlg.cpp(832) : space 6060
    \\\bitbucket\winlirc\learndlg.cpp(832) : pulse 76
    \\\bitbucket\winlirc\learndlg.cpp(832) : space 6603
    If I went to learn mode, the software could detect any key pressed from my remote.

    I thougth I might have shorted the the circuit somehow but the circuit looks fine.
    Can you help?

  11. Correction on the third sentence from bottom up from previous post. I meant “If I went to learn mode, the software could NOT detect any key pressed from my remote.”

  12. couple of questions

    how to know the working code for remotes with tsop1738?

    and how to configure winlirc with your remote?

    after making the circuit ,it works ok as transmission , and with raw codes writing many numbers on pressing buttons of remote , but always winlirc failed to initialize ,must learn remote first? and how?

  13. I have Tactics Infra Smart remote control .It came with its software to run on windows xp but when i tried to jump to vista, driver software was though easily installed but even not detected the remote sensor and showed that sensor not found , please help me from where i can download a free driver software to use with my tactics infra smart.When i bought this remote it said that our website is http://www.tactics ,I used to visit once but now i think this website is sold to other party …….. thanx in advance.

  14. Would it be possible to get some better closeup photos to make sure I solder everything together the right way?

    I bought enough to make about 4 of these for like $30 including cases.

  15. good morning.
    i made the transmitter/receiver and with winlirc this work, but i must use it with vb6 and vba application.
    Please, someone know wher I can find a vb code samples for send the raw codes via serial port?

  16. Bill .. sadly I no longer have the receiver but I’ll need to make one next week for a good friend
    massimo .. try on, they have a really great VB6 section

  17. I used the 276-640 IR receiver from RadioShack after I looked around and couldn’t find anyone who carried the Vishay receiver IC. I couldn’t get the lirc module to load in my 2.6.22 kernel and saw something about it needing 2.6.20 or below, so I booted into the 2.6.20 kernel and the module loaded fine, but I get no output from irw. I tried 7 different remotes on it. Any ideas?

  18. I dismantled the circuit and tried to put it together on a breadboard, and I’m still not getting any output from irw. The only difference I can see, aside from the different receiver IC I mentioned, is that I used a non polarized cap. I’m not sure if that could make any difference, but I’m going to go pick up some polarized ones anyway just to see. I’m using the bigger 5V regulator (the 7805) and a 1/2 W resistor in the circuit, but I don’t see that making any difference. Any troubleshooting tips?

  19. Feel free to edit my posts; I have a tendency to be rather verbose when trying to troubleshoot a problem like this.

    I now have more information. I picked up a cheap-o multimeter while I was up at the store; I had lost the leads for mine awhile back. I connect the multimeter to ground and the IR receiver out and point the remote at it, and I see voltage is dropping, so clearly the IC is getting power and detecting the light. I don’t have access to an oscilloscope, so all I can say is it normally stays at high and drops to low when it gets something.

    My guess is that the problem is in my lirc module(s) or something. I’ll post back if I find anything else.

  20. Okay, so I was wrong. It turns out that I left out an important part of the remote control setup, making a lircd.conf file. It would appear that irw won’t bother printing anything at all without it.

    And so that all my posts actually serve some purpose, all parts can be purchased at RadioShack and it works fine. The 276-640 IR receiver works in this circuit as a substitute for the Vishay TSOPxxxx IC, and the bulky voltage regulator 276-1770 works too, of course.

    Oh yeah, and your best bet for testing is to use irrecord it seems; I’m not sure how you guys got ‘raw codes’ out of irw unless it’s a hidden option you have to read the code to find…

  21. hello,
    i designed the circuit and connected,but i am not able to understand hoW to configure it with winamp.please help.

  22. Sorin,
    I can’t seem to find the TSOP1738 IR Receiver. I went to my local electronics shop in Toronto, and the only IR Receiver they had was a Sony IR Receiver, model SBX8025-F. Searching the web, I did find a reference to the Sony site here: I can’t find anywhere if this IR Receiver will work. I’ve created the receiver using your schematic, but it won’t seem to pick up signals from a remote. I’m wondering if I don’t have the pins wired correctly for the particular IR Receiver I have. Is there some way of determining the pins by using a voltmeter?

    Thanks in advance!
    If anybody else has had success with this IR Receiver, can you drop me an email?
    rob dot chillingworth at gmail dot com

  23. Well just want to address some of the questions addressed here, and really just throw in my two cents from building my own.

    First things first. You DO NOT need the TSOP1738. You don’t even really need a 38KHz receiver. Most remotes transmit at 38, some It think at 40 and even some at 36, newer ones at 56K. From everything I read that any Hz IR receiver will work. The problem will be at what distance. If the frequencies are not the same then effective distance will be reduced. It is highly recommended that you use the 1738 if you can find one because of how well it works. It’s supposed to be tolerant of lots of different angles and be a generally all around better receiver at least for this particular project.

    If you are having trouble finding it. I live in Wash DC…no stores carry it. But go to they have them there…for a whooping $1.31 per.

    I also used the 7805 regulator from Radio Shack. With no problems…but I did make sure to just wrap the metal ground that is part of the package in electrical tape, just to make sure nothing was touching in the case.

    As Bob S. found out. If you are having a problem with this project. There is about a 90% chance it’s software related.

    I built the circuit a few days ago. Was equally worried if it was all put together correctly myself at first. But, you must go with the assumption that you have built it correctly at first. And make certain the software is all installed correctly. I’m a linux person myself. But no matter if you are on windows or linux, you should at the very least (by checking your running processes) be able to make sure that all the daemons are running correctly. Check log files and terminal output to make sure you are not getting any errors from the software, before you decide to whip out the soldering iron again.

    Bob S. had exactly the same problem I had with irw. I was able to see the pulses from mode2 (linux program that comes with lirc) so I knew at that point the hardware was at least working. Then I was having all sorts of problems with getting a sym link to be created to /dev/lirc and a bunch of other problems that I eventually weeded out. Not least of which was the fact that I could program the remote, see the pulses in mode2 but irw was just giving me nothing. The problem wasn’t that I didn’t have an lircd.conf but rather the location. /etc/lircd.conf vs. /etc/lirc/lircd.conf. Want to eliminate that problem…just link one to the other and change the one.

    And a final clarification for those that seem a bit fuzzy on how this all works, when they as what remote you use.

    Any IR remote should work. Don’t think about it as a remote made for a specific device or brand name, but rather look at any remote as just an IR transmitter with some buttons. You probably have no fewer than 5 in your house right now…LOL

    Universal programmable remotes will give that group of codes that another poster mentioned, when it doesn’t have a device code programmed in. Just program in the code of any device. I used a VCR code to make sure the play FF etc.. buttons had IR codes. Once you have programmed some device code for your remote…then You just use the irrecord program to record the signal emitted from each button. The program assigns sane names that you type to replace the IR codes, and creates a config file which lirc reads when it starts. If that config is not there lirc will still start, but irw will return nothing…because irw reads the lircd.conf (the file you create with irrecord).

    And just to make it even more clear. You don’t need a universal remote. Anything that sends out IR signals can be used and irrecord can learn the codes from it.

    You are just building a “dumb” IR receiver. Unlike other devices connected to your computer, it has no microcontroller to tell the PC that it’s connected to it, it has no idea what it’s connected to, and all it’s doing is sitting there waiting for any IR signals. The device does nothing at all to the signals, except send them into the computer where you then need software set up to do something with those IR codes.

    Remember don’t make this out to be as complicated as it sounds even if you have never done anything like this before. Try it it’s quite rewarding to complete this project and get it working.

    If any of you (especially those on Linux) still need some help or encouragement fell free to drop me a line rbfett at the old yahoo dot com. I don’t check that address too often. And can’t promise that I’ll actually respond to you, but I may so worth a try if you are feeling really desperate. But DO scour the web first…there are now about 1000 different sites talking about this very project in a variety of ways, and there already is lots of good info out there you just have to put google to work for you :)

  24. This sounds what I was looking to turn on my PVR PC which sits behind the hdtv unit, Can I use the system to turn on the pc?

  25. hi, nice one…hmmmm were planing to have a project quite similar to you…
    hmm,..have you seen princess diary2?..there using a remote, and pressing different number and binggo the cabinet or ect..will open..

    can you give us some advise thanks…GOD BLESS…

  26. hello
    i’m Angar from Mongolia . I’m a student of 3rd grade of Electronic engineering.I want to connect 2 computer by infrared and remote controll to TV from computer that’s my course work PLZ help me some links or something. I want to use my USB port can u help me? however i can us serial port.

  27. I’ve ripped apart a Panasonic DVD player that the drive died after 10 years, and I’ve pulled a few parts, including the Panasonic PNA4611M IR Receiver. This is listed on the compatible IR receivers with LIRC. Has anyone had experience with the PNA4611M? Would it be the same process / parts as the TSOP unit?


  28. I made a similar IR Receiver, and a IR Pen. for the pen i only used an IR diode, a push button and a battery. When i test the IR pen with the IR receiver (in WinLirc) it does receives raw signals but they are inconsistent. why is that? Eventualy, i would want to control the mouse with the IR pen. Any help will be appreciated.


  29. I’m trying to get this to work, but when I measure length of pulses by looking for carrier detect to go high/low, I don’t see a consistent pattern in pulse lengths.

  30. Pingback: HSB: Some ideas for possible workshops

Leave a Reply

Your email address will not be published. Required fields are marked *