Generic SIR COM IrDA device (Tekram IR-210)
The
theory
Supported hardware
1. External IrDA port (Tekram IR-210), connected to COM port.
2. Integrated IrDA port (notebook for example)
3. RX device. It can be any IR receiver, connected to IrDA port
on motherboard.
Available chips: TSOP1836, IS1U60L, GP1U52X, SFH506-36,TK1833, ILMS5360,
TK69 649, TFMS 5NN0
Pinout:
1. GND
2. VCC (+5V)
3. TX (connect to RX line on mainboard)
IrDA connector pinout on motherboard is usually one of the following
(it would be better, to read the motherboard manual):
5-pin: |
1 |
2 |
3 |
4 |
5 |
+5V |
NC |
RX |
GND |
TX |
|
7-pin: |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
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.
REMEMBER! RX device is not the same as IrDA.
All IrDA receivers will work badly, because they haven't bandpass
& demodulator. They are not intended for remote control. Absolutely NO WARRANTY. See also DCD, UIR.
Supported remote control units
Pulse-length and Bi-pahse modulation not supported.
Philips, Samsung (RC-5), SONY remote controls not work with IrDA
device.
Tested: JVC (successfully),
NEC based like AIWA, AverMedia, Creative, HITACHI, NOKIA and etc.
(repeat not detect).
Drivers
If you're using external COM IrDA device (Tekram IR-210), you need
remove IrDA drivers or simply reconnect device to free COM port.
If you're using RX device or internal IrDA:
FIRST, you should disable standard IrDA
drivers, which are installed after enabling IrDA.
* Many thanks to http://cmail.info.kuzbass.net/~nav/
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).
Note: Run plugin setup for choice of COM port and see / define
button names.
Events:
Default type: "REMOTE"
ID: "<Button name>"
Parameter: Repeat counter, -1 if released
Wait before repeat: 300 ms
Repeat time: 100 ms
Actions: none
Example:
Ir210 = Load( "Ir210\Ir210.dll", "REMOTE" )
main = group( enabled ){
OnGroupEnable(){
Ir210.Start()
}
MyButton = hook("remote", "play", enabled, break){
OSD("Play pressed")
}
}
|