LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Work around for IrDA bug in Windows XP

Don't know if anyone has seen this before but when using "IrDA Open Connection"  (Labview 7.1) to establish a connection with an third party IrDA device properly connected using Windows XP,  sometimes the following error message is displayed;
 
Error 66 occurred at IrDA Open Connection in AE - Infrared communication.vi
Possible reason(s):
LabVIEW:  The network connection was closed by the peer.
 
It appears that this is a known bug in Windows XP wherein Windows is handing out illegal LSAP selectors above 0x6F( reference: http://www.alanjmcf.me.uk/comms/infrared/Apparent%20bugs%20in%20Windows%20IrDA.html).  Has anyone experienced this problem before and if so has anyone devised a work around short of rebooting the computer or upgrading to Vista (problem resolved in Vista).  Exiting Labview and restarting it does not resolve the problem since the issue is within the OS.  I believe the solution to this issue would be to reset the IrDA protocol stack once the LSAP selector value 0x6F is handed out.  Does the windows library IrCOMM.dll play a part in this and does anyone know the parameters for this library are?  I have not been able to find it online at all.
0 Kudos
Message 1 of 2
(2,641 Views)
The work around for this was to trap the error message having code 66 directly after attempting the "IrDA Open".  I put this inside a while loop and perform this up to 15 times, during each iteration Windows XP attempts to hand out the next incremental LSAP selector.  Eventually the stack gets to 0x6F and then wraps around to the lowest non-reserved value finally handing out a valid selector.
0 Kudos
Message 2 of 2
(2,572 Views)