Instrument Control (GPIB, Serial, VISA, IVI)

cancel
Showing results for 
Search instead for 
Did you mean: 

IRQL_NOT_LESS_OR_EQUAL Serial Read

I think it's time that you post a small piece of code that generates the error.

 

There's not really any changes in LabVIEW. You said you were going to try VISA 4.2 with the later LabVIEW versions. Have you done that? 

0 Kudos
Message 11 of 23
(3,977 Views)

Attached is the GPS Reader software.  This has been modified from the Garmin45 software example that I had found in the Discussion Forum. 

 

I have not downgraded one of my machines yet, hopefully can do that in a couple of days.

 

Download All
0 Kudos
Message 12 of 23
(3,953 Views)

Hi Will,

There is not much in these Vis except VISA calls and some data manipulation. Have you been able to downgrade your VISA driver to test your hypothesis? Also, try making a program in LabVIEW that merely uses the VISA driver to communicate using a serial port (use a built in one if possible or a NI PCI or USB based serial converter, you could perform a loopback and alternate writing then reading). If that does not fail then we’ll know that the error lies ultimately with the prolific driver. If the VISA calls cause this same bluescreen event please follow the instructions to generate a dump file and post that to the ftp site as others have asked already. That will give us the ability to examine the file and see if we can determine the source of error.

Matt
Applications Engineer
National Instruments
0 Kudos
Message 13 of 23
(3,939 Views)

OK, here is what I got done today.

 

I first deleted NI VISA from one of the machines here.  Then I loaded NI VISA version 3.4 (from LabVIEW 8.0) and it worked perfectly.  Then I loaded NI VISA version 4.2 (LabVIEW 8.5) and again, no problems.  Then I loaded NI VISA version 4.3 (LabVIEW 8.5.1) and again crashes as expected.

 

This was all using the same machine, no changes in the USB to Serial driver.

 

I did screen shots of the NI Configuration and pasted them in a word file for the 4.2 and 4.3 runs. 

 

Also, I am attaching both a mini dump.  I will put the kernal dump in the next post

Download All
Message 14 of 23
(3,930 Views)

Hi Will,

Is this all on one machine with one version of LabVIEW and you are progressively upgrading the VISA driver? If that is the case there may be a conflict between VISA and the prolific driver.  Let us know when you could post the dump file.

Matt
Applications Engineer
National Instruments
0 Kudos
Message 15 of 23
(3,913 Views)

This minidump is showing that the crash occurred in ser2pl.sys, which I am assuming is the Prolific driver. Have you tried upgrading to their latest version? When you indicated the version you were using I believe it was quite out of date.

 

I understand that the apparent cause of the crash is due to the VISA upgrade. This is probably due to either timing changes in the newer version of VISA, or that it just uses the Win32 serial API in a different way. Either way, this should still not cause blue screens in the Prolific driver. I would highly recommend that you update the Prolific driver to see if the problem goes away. If it remains, you would need to report the failure to the device manufacturer (I don't think Prolific deals with end users directly), to see if they can resolve this issue.

 

Running with an older version of NI-VISA may be a good workaround for you, but the problem with the driver is still there, and you may end up encountering it under different circumstances.

 

-Jason S. 

 

 

0 Kudos
Message 16 of 23
(3,902 Views)

Sorry, took some time to get back into this. I have tried loading the most current version of the Prolific driver, and still the same error.

 

There was a question if I did all of the re-loads of the VISA driver on one machine and the answer is yes. I just deleted the VISA driver, and then installed each version of the VISA driver on the same machine.

 

I have tried to upload the kernel dump, but it keeps giving me an error.

 

It looks like the solution is just to run the VISA Version 4.2 and things will work fine. Thanks for helping me look into this anomaly.

Message 17 of 23
(3,813 Views)

Muchas gracias to Will for finding a solution to this problem!  We are using the latest Prolific drivers for a CoolGear USB to 4 port RS232 converter.  All was well when we were using LabVIEW 8.5.  When we upgraded to LabVIEW 8.6 using the 3rd Q 2008 disks, our program began randomly crashing to a IRQL_NOT_LESS_OR_EQUAL blue screen after running for various lengths of time.  The 3rd Q 2008 LV 8.6 disks installed NI-VISA 4.4, so we uninstalled NI-VISA 4.4 and all of its dependent components and installed NI-VISA 4.2 and NI Serial 3.3 from the 3rd Q 2007 LabVIEW 8.5 disks.  Presto - no more IRQL_NOT_LESS_OR_EQUAL blue screen!

 

This was a difficult problem to troubleshoot because we also moved to a new PC at the time of the upgrade from LV 8.5 to 8.6, so the first guess of the cause was a PC hardware problem.  Also, when the Prolific/VISA driver conflict caused the crash on the first new PC, it just rebooted (without the blue screen) so we really didn't have an indication of what happened.  It wasn't until we moved to another new PC that we got the IRQL_NOT_LESS_OR_EQUAL blue screen, which led us to Will's thread and solution.

 

Hans

0 Kudos
Message 18 of 23
(3,407 Views)

A follow up on this problem.  I have since tried to use the GPS on my notebook, with the above solution, and could not get it to operate, same IRQL_NOT_LESS_OR_EQUAL.  But, I am also getting a port conflict with the IEEE 1394 Firewire port.  Disabling this port, deleting the drivers and such, all to no avail.  I even went as far as deleting all of LabVIEW and installing LabVIEW 8.0 which didn’t help.

 

So, I have had to ask my line coders to develop a C# (.NET) application to do GPS reads from a notebook.  It hurt to ask them to do something that I couldn’t get through in LabVIEW.

 

I have also been in contact with Pharos, and they are investigating this problem.  If they come up with any solutions, I will provide their answers here.

0 Kudos
Message 19 of 23
(3,373 Views)

Solution found, finally, and it is simple.

 

After working this problem on and off over the last year, it appears that I have found the solution.  It is to only read the bytes available on the serial port. 

 

I put the property node before the serial read that gives me the number of bytes available at the port.  Then I wire this to the serial read, and low and behold, no more computer crashes.

 

Now that I have found it, it is a simple solution.

Message 20 of 23
(3,133 Views)