H ere it concerns about control, with 28kHz pulsed infra-red light, sorry I still have to translate this in Deutsch.


ir-sender & receiver
Voilà, my homebrew infrared send- & receive module for the serial interface build on plans from the Linux Infrared Remote Control (lirc) Project. There you'll find the lirc Software package too. This contains programs like the serial driver, lircd, irrecord, irexec, irsend, xmode2, etc.

Die LIRC IR-Sende-LED an's korrekte Senden z.B. eines immitierten "Switch-ON-Kommandos" der Stereoanlage zu bekommen ist an sich grad kompliziert genug, aber wenn einem bei'm Übergang vom 2.4er zum 2.6er Linux-Kernel dieser dann auch noch einen Streich spielt, da wohl plötzlich der Scheduler mit 250Hz statt 100Hz läuft, dann isses beim IR-Kommandos senden mit'm korrekten Timing erstmal aus. Hier können Sie bald lesen, wie sie diesen Problem in den Griff bekommen, indem Sie sich ihren Kernel selber mit 100Hz konfigurieren und kompilieren.
Nachtrag: Leider fehlt mir einfach die Zeit hier noch eine ausführliche Anleitung zum kompilieren des Kernels zu verfassen, aber falls Sie auch über das Problem fallen, dass die IR-Signale z.B. von ihrem zu steuernden Verstärker nicht interpretiert werden, da der Scheduler, während das IR-Signal wohl noch gesendet wird, schon zum nächsten Prozess springt, ist obiger Tipp mit den 100Hz Gold wert und falls Sie in meine LinuxCrashKursV2.txt schauen, können Sie auch in aller Kürze lesen, wie man so einen Linuxkernel selber konfiguriert und kompiliert bekommt. Das Text Dokument war eigentlich nur für meine eigene Verwendung gedacht, aber ich möchte es Euch nicht vorenthalten, nur ist es halt nicht so ordentlich verfasst wie mein Crashkurs und so 'kurz' gehalten, dass Sie schon selber darüber Nachdenken müssen was sie da eigentlich tun. Also, außer dieses Dokument: Suchen Sie hier nach der Sektion: Kernel kompilieren auch mal Googel nach der Thematik befragen, dort sollten Sie zig Dokumente finden die wesentlich ausführlicher beschrieben sind, aber ob sie auch so kompackt und umfassend sind ... Naja, generell muss dabei selbst viel Kopf und Hand angelegt werden. Bei mir funktioniert es damit jedenfalls seit Jahren bereits tadellos.


ir-receiver from lirc.org
This is the original plan of the infrared receiver from the lirc Homepage.


ir-transmitter from lirc.org
This is the original plan of the Simple signal-powered, middle-range infrared transmitter from the lirc Homepage.


With this circuits you are able to:
  • receive the signals from every ir-remote control
  • send every infrared coded signals up to 5m.

  • This enables you too:
  • update your Pc to a easy controllable mp3/Video Player
  • switch some things, like your ceilings light / coffee maker on or off !
  • controll your stereo to regularize the volume or turn it on/off, surely only if it has an ir-receiver
  • whatever you'll invent, the posibilities are gigantic


  • After you had copied the circuit, you have to install the lirc serial kernel modules.
    Therefor you have to unload the original serial driver out of the kernel. »setserial /dev/ttyS?? uart none«
    e.g. → setserial /dev/ttyS03 uart none
    After that you can load the lirc serial driver to the kernel. »modprobe lirc_serial« This will automaticly load lirc_dev, too. Look with »lsmod« if well done !
    Now you've to load the lirc-Daemon (lircd), e.g. with: »/usr/local/sbin/lircd --device=/dev/lirc«
    At last start »irexec« as user to activate the startable-programs in your own ~/.lircrc.
    After the start of »irxevent« you also could send a key to a running programm, e.g. Up, Down, Return or BackSpace to the konqueror. By the way irxevent has, like the other lirc-controllable programms as xmms, it's configuration also in ~/.lircrc.

    Again in short:
    1. setserial /dev/ttyS3 uart none
    2. modprobe lirc_serial     # loads automaticly lirc_dev, too
    3. lircd
    4. irexec &
    If you don't want to type this every reboot, you'll better write a startscript. In the lirc package are examples, for starting the lirc Daemon, in the »contrib« dir. So take e.g. the lirc.debian file and improve it with the following lines:
    at the top of the file: (above the lirc-Deamon start skript)
     setserial /dev/ttyS3 uart none
     modprobe lirc_serial

    and at the bottom (after the case part):
     sudo -u markus /usr/local/bin/irexec --daemon 2> /dev/null > /dev/null

    You don't like this way ? -> have a look at »/etc/init.d/setserial« or compile a new kernel, which have the new serial driver included. But you still have to load the licrd (Daemon) and to start the irexec programm than.

    Here you can see the configuration of my ~/.lircrc:
    Your browser unfortunately can't advertise the ingrained source-code, but you could download it HERE . Or try an other browser. Or open the code with this link