Jump to content
  • 0

DT9816-S BSOD issue during continuous read and external clock sync


charles.smith

Question

Hello

I am hoping to get some technical support for our DT9816-S DAQ. We have recently started using the device again on a Windows 10 device having had good results with it around a year ago on a windows 7 device. The problem we have is that we are getting blue-screen (BSOD) crashes on the desktop at random while reading from the device - sometimes we can perform multiple reads for minutes before it eventually crashes. We think the code we are using to operate the system is more or less identical to before, so we are wondering if you are aware of any driver issues with windows 10 which may be causing this? we have the same issue on a different win10 desktop, sadly our win7 devices have all been upgraded.

For context - we are communicating with the device through MATLAB but making calls to the .NET framework directly, as the provided MATLAB drivers were not suitable to our application. We are running the system in continuous read mode with an external 200 kHz clock, which is triggering four simultaneous analogue input reads. We suspect there could be some relation to how fast we are sending commands to the device but this is proving hard to pin down.

Any advice you can offer would be greatly appreciated.

Link to comment
Share on other sites

4 answers to this question

Recommended Posts

  • 0

Hello @charles.smith.

Which versions of MATLAB and Open Layers libraries are you using on the Windows 10 systems and are they the same versions used on the Windows 7 system?

Have you performed Windows updates on the new systems?

Have you tested with the internal clock instead of the external clock?

Can you try trimming your code to determine where it may be failing?

Could you attached a working version of your code for me to test?

Regards,

Fausto

Link to comment
Share on other sites

  • 0

daq_test.mdatatranslationADC_dotnet.m

Hi Fausto,

Thanks for the quick response. Attached is the "working code" which can cause BSOD at random on our systems.

We are running MATLAB R2022a, Driver version 7.0.0.4, Framework 2.0, dll file version 1.6.20.38. I can't be sure if any of this was the same on the win7 deice - it is the same device as we are running on now except we were forced to upgrade to Win10 earlier in the year. The code used to call the DLL is the same as before. The system's Windows updates are up to date. The crash can occur on internal clock as well. The code is quite trimmed down now, but it is very hard to troubleshoot since the crash does not occur reliably. I've thought it fixed several times before it started again.

Any advice you can offer would be greatly appreciated.

Thanks,

Charles.

Link to comment
Share on other sites

  • 0

Hello @charles.smith.

You have a 'get_continuous()' function in a loop for 2000 cycles.  For each cycle, the buffer is cleared and then queued before starting and stopping the acquisition.  I'm guessing that your Windows 7 system was slower than your current Windows 10 system.  On the Windows 10 system, you may be experiencing race conditions where the buffer memory is not cleared fast enough and your system runs out of memory or else the Open Layers .NET functions are stepping on each other before the previous function can complete.  Try increading the 'pause()' by 20x and then retest your code, reducing the time amount each time, until it fails.

 

image.png

 

image.png

 

Regards,

Fausto

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...