WinLIRC RX FAQ (was WIRC FAQ)

  • Russian

  • What is this?
  • Hardware
  • Configuration(please, read carefully!)
  • Known problems
  • Comments
  • I found error! What to do?
  • System requirements

    What is this?
    This is program, with help of which you can control you computer via remote control from TV, audio-center or other infrared remote controls. RX device support appeared in WinLIRC in version 0.6.3pre0. First it was implimented in WIRC, now I stoped work on WIRC.

    Hardware
    Nesessary hardware is simple - there ar 2 variants:
  • RX device - VERY simple - actually, you shouldn't solder anything. It can be any IR receiver at IrDA port. I tryed ILMS5360 and TK69 649 chips. Their cost is about $1.5 here at Russia. I guess, that any 5V reciever will be suitable.
    ILMS5360, TK69 649, TFMS 5NN0, SFH 506 pinout:
     _______
    |  _____|------ TX (connect to RX line on mainboard)
    | |_____|______ +5V
    |_______|------ GND
    
    IrDA connector pinout on motherboard is usually one of the following (it would be better, to read the motherboard manual):
    5-pin:                          7-pin:
    .   .   .   .   .               .   .   .   .   .   .   .
    1   2   3   4   5               1   2   3   4   5   6   7
    +5V NC  RX  Gnd Tx              RX  Gnd TX  +5V RXH +5V Gnd
    
    NC (Not Connected) - this pin sometimes is absent
    
    One of the best way to connect IR-reciever and motherboard - is to use CD-ROM Audio cable, or serial (COM) mouse cable. You should only swap some contacts.

  • DCD device. It is device which sends incoming bit stream through Data Carrier Detect line. It's basic device for WinLIRC - you can find many schemes of it at Internet.

    Configuration
    Now I haven't time to explain everithing :) so, read other WinLIRC documentation. I will explain only main things, which are important if you're using RX device:
  • FIRST, you should disable standard IrDA drivers, which are installed after enabling IrDA. If you're using Windows 9x, or Windows ME find msports.inf in your Windows\Inf directory and edit it:
    1) In section [Std] comment/remove the following lines (if they present):
    %*PNP0510.DeviceDesc% = InfraredComPort, *PNP0510
    %*PNP0511.DeviceDesc% = InfraredComPort, *PNP0511
    Uncomment/add the following lines:
    %*PNP0510.DeviceDesc% = ComPort, *PNP0510
    %*PNP0511.DeviceDesc% = ComPort, *PNP0511
    2) In section [Strings] uncomment/add the following lines:
    *PNP0510.DeviceDesc = "Generic Ir Serial Port"
    *PNP0511.DeviceDesc = "Generic Ir Serial Port"
    For Windows ME you should also delete irmini.inf (or, better rename to irmini.bak for example)
    For Windows 2000 I used such a method to delete standart drivers:
    1) Remove folowing strings from netirsir.inf:
    %*PNP0510.DevDesc% = PNP, *PNP0510
    %*PNP0511.DevDesc% = PNP, *PNP0511
    and replace
    ExcludeFromSelect=*PNP0510,*PNP0511,*IBM0002,*IBM0034,*IBM0020
    to
    ExcludeFromSelect=*IBM0002,*IBM0034,*IBM0020
    2) Add to msports.inf to section [Std]:
    %*PNP0510.DeviceDesc% = ComPort, *PNP0510, *PNP0511 ; Communications Port
    %*PNP0511.DeviceDesc% = ComPort, *PNP0511, *PNP0510 ; Communications Port
    to section [Strings]:
    *PNP0510.DeviceDesc = "Generic Ir Serial Port"
    *PNP0511.DeviceDesc = "Generic Ir Serial Port"
    add
    ExcludeFromSelect=*PNP0510,*PNP0511
    to section [ControlFlags]
    For Windows XP I just used .inf files from Windows 2000. You may try to edit XP .inf files same way as it described above - it should work.
  • ONLY NOW enable IrDA in BIOS. Usually you should also enable RX inverting.
  • Usually, it's useful to disable FIFO buffers for Ir serial port (it is in system properties).
  • WinLIRC is only server. It receives IR signals, decode them, and sends decoded commands to clients, so you need a WinLIRC client program, which will change volume, run and close programs etc. There are many different clients, but I recommend you Girder. Latest version can be found at http://www.girder.nl/. Girder also supports RX device, but it uses incorrect agorithm, and as a result recognizes commands unstable. That's why you should use it only as a WinLIRC client.

    Known problems
  • You should have TCP/IP installed on your computer (simply install Dial-Up)
  • You should have mfc42.dll in your Windows\System directory
  • Some mainboards (ABIT KT7/KT7A and some others) cannot invert RX signal, so WinLIRC cannot work with RX device on such mainboards. I suppose that your first step is to make RX device (because it's very simple). If it don't work you should make DCD device.
  • REMEMBER! RX device is not the same as IrDA. All IrDA receivers (IRmate, USB IrDA receivers, etc.) are not suitable, or will work badly, because they haven't bandpass & demodulator. They are not intended for remote control.

    Comments
    This program is distributed under the GNU Public License and comes with absolutely NO WARRANTY.

    I found error! What to do?
    Simply e-mail me:
    But first, you should go to my homepage maybe I've released new version.

    System requirements
    RX device or DCD device, Windows 95/98/ME/2000/XP. Other OS's are not tested.
    Decode errors are possible on slow machines.

    WinLIRC RX FAQ (был WIRC FAQ)

  • Что это такое?
  • Железо
  • Конфигурирование (пожалуйста, прочтите внимательно!)
  • Известные проблемы
  • Замечания
  • Программа глючит! Что делать?
  • Системные требования

    Что это такое?
    Это программа, с помощью которой можно управлять компьютером с обычного пульта от телевизора, аудио-центра или еще от чего-нибудь. Поддержка RX устройств появилась в WinLIRC 0.6.3pre0. Изначально она была сделана в WIRC, теперь WIRC'а больше не будет.

    Железо
    Необходимые железки просты до безобразия. Есть 2 варианта:
  • RX устройство - самое простое - вам даже не придется паять. Это может быть любой ИК приемник на IrDA порту. Я пробовал приемники ILMS5360 и TK69 649. Стоят они примерно $1.5. Я думаю, подойдет любой приемник на 5В.
    разводка ILMS5360, TK69 649, TFMS 5NN0, SFH 506:
     _______
    |  _____|------ TX (соединяется с RX на материнской плате)
    | |_____|______ +5V
    |_______|------ GND
    
    Разводка IrDA разъема на матери обычно бывает одного из двух следующих вариантов (лучше если вы посмотрите ее в инструкции):
    5-пиновый:                      7-пиновый:
    .   .   .   .   .               .   .   .   .   .   .   .
    1   2   3   4   5               1   2   3   4   5   6   7
    +5V NC  RX  Gnd Tx              RX  Gnd TX  +5V RXH +5V Gnd
    
    NC (Not Connected) - этот контакт может просто отсутствовать
    
    Остается только соединить соответствующие контакты каким-нибудь проводком. Очень хорошо подходит аудио-шнурок от CD-ROM, или кабель от старой COM мыши - нужно только переставить в нем пару контактов.

  • DCD устройство. Это устройство передает сигналы по линии Data Carrier Detect. Это стандартное устройство для WinLIRC - вы найдете кучу его схем в интернете.

    Конфигурирование
    Сейчас нет времени все объяснять :) поэтому читайте доки к WinLIRC. Объясню только основные моменты, которые важны если вы используете RX устройство:
  • СНАЧАЛА следует отключить стандартные драйвера для IrDA, которые ставятся после включения IrDA. Если у вас Windows 9x или Windows ME, то найдите msports.inf в каталоге Windows\Inf и отредактируйте его:
    1) В секции [Std] закоментируйте/удалите следующие строки (если они есть):
    %*PNP0510.DeviceDesc% = InfraredComPort, *PNP0510
    %*PNP0511.DeviceDesc% = InfraredComPort, *PNP0511
    Раскоментируйте/добавьте следующие строки:
    %*PNP0510.DeviceDesc% = ComPort, *PNP0510
    %*PNP0511.DeviceDesc% = ComPort, *PNP0511
    2) В секции [Strings] раскоментируйте/добавьте следующие строки:
    *PNP0510.DeviceDesc = "Generic Ir Serial Port"
    *PNP0511.DeviceDesc = "Generic Ir Serial Port"
    Кроме того, для Windows ME надо удалить irmini.inf (или, лучше переименовать его например в irmini.bak)
    Для Windows 2000 я удалял стандартные драйвера так:
    1) В netirsir.inf удалил строки:
    %*PNP0510.DevDesc% = PNP, *PNP0510
    %*PNP0511.DevDesc% = PNP, *PNP0511
    И заменил строку
    ExcludeFromSelect=*PNP0510,*PNP0511,*IBM0002,*IBM0034,*IBM0020
    на
    ExcludeFromSelect=*IBM0002,*IBM0034,*IBM0020
    2) В msports.inf добавил в секцию [Std] строки:
    %*PNP0510.DeviceDesc% = ComPort, *PNP0510, *PNP0511 ; Communications Port
    %*PNP0511.DeviceDesc% = ComPort, *PNP0511, *PNP0510 ; Communications Port
    в секции [Strings] добавил:
    *PNP0510.DeviceDesc = "Generic Ir Serial Port"
    *PNP0511.DeviceDesc = "Generic Ir Serial Port"
    Добавил
    ExcludeFromSelect=*PNP0510,*PNP0511
    в секцию [ControlFlags]
    Для Windows XP я просто использовал .inf файлы от Windows 2000. Вы можете попробовать отредактировать XP .inf файлы по принципу описанному выше - должно получиться.
  • И ТОЛЬКО ТЕПЕРЬ включите IrDA в BIOS'е. Обычно еще требуется включить RX inverting.
  • Обычно имеет смысл отключить FIFO буффера в свойствах ИК COM порта.
  • WinLIRC это только сервер. Он получает ИК сигналы, декодирует их, и посылает декодированные комманды клиентам, поэтому вам нужен WinLIRC клиент, который и будет менять громкость, запускать и вырубать программы и т.д. Существует много различных клиентов, но я рекомендую Girder. Свежую версию можно скачать на http://www.girder.nl/. Girder тоже может работать с RX устройством, но делает это в корне неправильно, в результате нестабильно распознает и путает кнопки, поэтому следует использовать его только в качестве WinLIRC клиента.

    Известные проблемы
  • Должен быть поставлен протокол TCP/IP (просто поставьте контроллер удаленного доступа)
  • Нужен файл mfc42.dll в вашем каталоге Windows\System
  • На некоторых матерях (ABIT KT7/KT7A и некоторые другие) нельзя включить RX invering, поэтому, WinLIRC не может работать с RX устройством на таких матерях. Предполагается, что сначала вы пробуете сделать RX device (т.к. это очень просто) Если по какой-то причине он не заработал, тогда собираете DCD device.
  • ПОМНИТЕ! RX device - это не то же самое, что IrDA. Все "фирменные" IrDA приемники (IRmate, всевозможные USB IrDA приемники и т.д.) либо не будут работать вообще, либо будут работать ОЧЕНЬ плохо, т.к. в них нет полосового фильтра, демодулятора, и вообще они предназначены не для пульта.

    Замечания
    Эта программа распространяется согласно лицензии GNU и не предусматривает НИКАКОЙ ГАРАНТИИ.

    Программа глючит! Что делать?
    Писать мне:
    Для начала следует сходить на мою страничку: Может там версия посвежее.

    Системные требования
    RX device или DCD device, Windows 95/98/ME/2000/XP. Другие OS'ки не проверялись.
    Возможны ошибки распознавания на медленных машинах.