06-02-2015 08:30 AM
There are a lot posts about the same issue but mine is a little peculiar so i decided to post it.
I am using two usb DAQ in the same pc(usb-6501, usb-6001), connected to the usb port on the back. The usb-6501 is used to obtain digital inputs from read switches, Sensors through an ssr. The usb-6001 is used to control 2 double valve solenoid, 1 dc motor, 2 indicator lamps. usb-6001 is also used to read analog values of current(using hall effect sensor) and voltage(using potentiometer).
At first i was facing problems with the usb-6001(the usb-6501 was working fine at this point) resetting during operation accompanied by BSOD. Then i learned it was due to my relay, which requires 30 mA of current to switch so i used the ULN2003a to interface the usb-6001 with the relays and after that the application was running perfectly for 4 days.
Now the usb-6501 is having the same problem and when i perform "Self Test" from NI MAX it shows "Error Code:50405" and i am able to reset the device from NI MAX only sometimes, other times i would have to unplug the USB device then plug it back in. As the application is used for an automated test rig the customer is frustrated by this problem. Once the card becomes unresponsive(or after the card is reset) BSOD occours.
I have checked all the device drivers and OS for any errors but they are fine. i have even tried changing the ram to solve the BSOD with no use.
System Details:
I have attached the latest mini dump files as they might help in finding out the reason behind this problem(File extensions changed for the purpouse of uploading).
I need to know: Is there any permanent solution for this problem? and what is the reason for this problem.
06-03-2015 06:27 AM
Additional info : i did an analysis of the dump files and this is the result
0: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************
DRIVER_IRQL_NOT_LESS_OR_EQUAL (d1)
An attempt was made to access a pageable (or completely invalid) address at an
interrupt request level (IRQL) that is too high. This is usually
caused by drivers using improper addresses.
If kernel debugger is available get stack backtrace.
Arguments:
Arg1: fffff88009fe10b1, memory referenced
Arg2: 0000000000000002, IRQL
Arg3: 0000000000000000, value 0 = read operation, 1 = write operation
Arg4: fffff8800657922e, address which referenced memory
Debugging Details:
------------------
READ_ADDRESS: GetPointerFromAddress: unable to read from fffff800032c30e8
fffff88009fe10b1
CURRENT_IRQL: 2
FAULTING_IP:
nifslk+822e
fffff880`0657922e 0fb650ff movzx edx,byte ptr [rax-1]
CUSTOMER_CRASH_COUNT: 1
DEFAULT_BUCKET_ID: VISTA_DRIVER_FAULT
BUGCHECK_STR: 0xD1
PROCESS_NAME: System
TRAP_FRAME: fffff80000b9c6b0 -- (.trap 0xfffff80000b9c6b0)
NOTE: The trap frame does not contain all registers.
Some register values may be zeroed or incorrect.
rax=fffff88009fe10b2 rbx=0000000000000000 rcx=0000000000000000
rdx=fffff80000b9c8e0 rsi=0000000000000000 rdi=0000000000000000
rip=fffff8800657922e rsp=fffff80000b9c840 rbp=fffff88009fe10b1
r8=0000000000000000 r9=0000000000000000 r10=0000000000000000
r11=0000000000000000 r12=0000000000000000 r13=0000000000000000
r14=0000000000000000 r15=0000000000000000
iopl=0 nv up ei ng nz na po nc
nifslk+0x822e:
fffff880`0657922e 0fb650ff movzx edx,byte ptr [rax-1] ds:c8e0:fffff880`09fe10b1=??
Resetting default scope
LAST_CONTROL_TRANSFER: from fffff80003091be9 to fffff80003092640
STACK_TEXT:
fffff800`00b9c568 fffff800`03091be9 : 00000000`0000000a fffff880`09fe10b1 00000000`00000002 00000000`00000000 : nt!KeBugCheckEx
fffff800`00b9c570 fffff800`03090860 : fffffa80`06adc250 fffffa80`05c3a060 fffffa80`06adc250 00000000`0000ffff : nt!KiBugCheckDispatch+0x69
fffff800`00b9c6b0 fffff880`0657922e : fffff880`05d47468 fffff880`01d91f90 00000000`00000000 fffff880`09fe0770 : nt!KiPageFault+0x260
fffff800`00b9c840 fffff880`05d47468 : fffff880`01d91f90 00000000`00000000 fffff880`09fe0770 fffff880`09fe17a0 : nifslk+0x822e
fffff800`00b9c848 fffff880`01d91f90 : 00000000`00000000 fffff880`09fe0770 fffff880`09fe17a0 fffff880`09fe10b1 : 0xfffff880`05d47468
fffff800`00b9c850 00000000`00000000 : fffff880`09fe0770 fffff880`09fe17a0 fffff880`09fe10b1 fffff800`00b9c8e0 : nipalk+0x75f90
STACK_COMMAND: kb
FOLLOWUP_IP:
nifslk+822e
fffff880`0657922e 0fb650ff movzx edx,byte ptr [rax-1]
SYMBOL_STACK_INDEX: 3
SYMBOL_NAME: nifslk+822e
FOLLOWUP_NAME: MachineOwner
MODULE_NAME: nifslk
IMAGE_NAME: nifslk.dll
DEBUG_FLR_IMAGE_TIMESTAMP: 51f2daeb
FAILURE_BUCKET_ID: X64_0xD1_nifslk+822e
BUCKET_ID: X64_0xD1_nifslk+822e
Can anyone help me with what this means?