Machine Vision

cancel
Showing results for 
Search instead for 
Did you mean: 

(IMAQdx Timeout) 0XBFF6901B after running camera acquisition for some time

Solved!
Go to solution

- Camera: Microsoft LifeCam Studio

- Camera Driver Version: 5.20.102.0

- Camera Driver Date: 1/7/2016 [Up to Date]

- LabVIEW version: LabVIEW 2015 SP1 f2 Patch

- VAS 2016 - VDM 2016 [Up to Date]

- No usb extension cable is used (original camera cable)

 

Problem is camera timeout error after certain iterations (unspecified number)

 

(Condition 1): sometimes it timeout after high number of iterations (ex:10000-15000)

(Condition 2): sometimes it timeout after low number of iterations (ex:500-600)

(Condition 3): sometimes it timeout before giving an acquisition 

 

The above conditions are applied in LabVIEW and MAX

Error -1074360293 is shown in labview

 

(Condition 1) Illustrated in the gif below:

 

(Condition 3) Illustrated:

error2.png

 

Trials to solve the Problem:

 

- Increasing the Timeout value from 5000ms to 10000ms in MAX

- Separating the Acquisition and the Processing steps (each step has its own loop)

- Increasing the wait value in while loops from 50ms to 80ms (above the 80 value, I am facing laggy images)

 

After these trials, I am still facing the problem and can not find out how can I solve it, any clues ?

Thanks

0 Kudos
Message 1 of 22
(6,980 Views)

It looks like the camera's drivers are dropping data before it gets to IMAQdx. It sort of looks like the camera may be using an isochronous transfer mode on the USB bus and some packets towards the end of each buffer are getting dropped. This may occur due to power throttling of your system's CPU. You might want to turn off all power saving features in windows and see if that helps. The other suggestion would be to try changing video modes, as some may use compression that would limit the data rate significantly.

Message 2 of 22
(6,935 Views)
What is NI IMAQdx Version installed?
-In LabVIEW Which mode of acquisition you are using? Grab/Snap?
-How the buffers are setup?
-Are you seeing any increase in memory usage in Task Manager?(Because of long acquisition is there any memory leak or images not disposed and filling up memory?)
-Can you add screenshot of Acquisition attributes in Camera Attributes tab?
-Is the camera connected directly to Machine's USB Port or via USB Hub?
-Possible to add the code to look for more details into it?
Thanks
uday
Message 3 of 22
(6,934 Views)


The other suggestion would be to try changing video modes, as some may use compression that would limit the data rate significantly.

How can I change the video modes ? If you're talking in MAX, it has the same YUY2 format with different fps values and resolutions.

z9.png

0 Kudos
Message 4 of 22
(6,916 Views)

Hi,

 

It is a bit misleading since DirectShow devices go through a device-specific filter that converts the formats to various internal types that may not match what is actually used on the wire. For instance, 1920x1080x30fps is almost certainly has some sort of lossy compression applied (and not just YUY format), as the raw data rate would simply not fit through a USB 2.0 connection.

 

Have you tried this camera with other video software on the PC? You may just need to try various resolutions/rates until you find one that works well. Unfortunately the issue is below the layer IMAQdx connects to the camera, so there's not much other help I can provide. You may want to consider switching to a machine vision oriented camera (like a USB3 Vision one) if reliability is your concern.

 

Eric

Message 5 of 22
(6,910 Views)
What is NI IMAQdx Version installed?

IMAQdx 16.1

 

-In LabVIEW Which mode of acquisition you are using? Grab/Snap?

 Grab

 

-How the buffers are setup?

I don't understand, how can I figure out that ?

 

-Are you seeing any increase in memory usage in Task Manager?(Because of long acquisition is there any memory leak or images not disposed and filling up memory?)

 No, and I have 16GB of memory

 

-Can you add screenshot of Acquisition attributes in Camera Attributes tab?

 Acquisition Attributes

z99.png

z999.png

 

-Is the camera connected directly to Machine's USB Port or via USB Hub?

Directly to machine USB Port 

0 Kudos
Message 6 of 22
(6,909 Views)

There are two types of buffers for acquisition: IMAQdx Driver Buffer and User Buffers.

-IMAQdx Driver Buffer is configured via IMAQdx Configure Acquisition(Inside IMAQdx Configure Grab.vi) and by default it will be 5.

-Try using low-level VIs by increasing the number and see if you still get the same error.

-User Buffers are the one's which you create when you use IMAQ Create(Which gets image from driver and keeps in the memory with the reference you give as name to IMAQ Create).

-Did you try with default examples shipped with LabVIEW and still receive the same error?

Thanks
uday
Message 7 of 22
(6,889 Views)
for first step start to work with camera in low resolution mode
and test if you do not have time out error in this case the problem relate to camera camera quality
if not try to test it in other system with other labview and if there is no problem in this case problem exist in your interface and you have to reinstall it
Message 8 of 22
(6,884 Views)

I've tried different resolutions mode and different fps and still getting the same behavior.

Tried the camera on other softwares to test it and still getting the same behavior.

Is my camera has a problem with it ?

0 Kudos
Message 9 of 22
(6,868 Views)

-In your first post, message(1) I see strange number of acquired(412506) and displayed(1) frames: whenever you get the time out message you have similar numbers?

-Try disable all firewall, AntiVirus Programs.

-Did you try with Low-Level IMAQdx acquisition and see what buffer counts you were getting stuck at?

-Try deleting the camera files(.iid and .icd) and Drivers and do fresh installation of drivers.

-Try with Different PC/USB Cable/USB Port and see if it is same.

 

 

Thanks
uday
Message 10 of 22
(6,857 Views)