Machine Vision

cancel
Showing results for 
Search instead for 
Did you mean: 

Aliedvision camera or IMAQdx sends ghost images in a loop after update from VAS2014 to VAS2020

Solved!
Go to solution

Dear community,

I have quite a weird problem. I have updated a lab PC from LV2014 to LV2020. Accordingly the IMAQdx package.

  • PC: Dell Optiplex 7070
  • NIC: Intel 1000
  • Driver: NI GIGe Vision Adapter
  • LV2020 SP1 32bit


I have three Aliedvision MantaG_032B cameras (656x492 pixels, mode: mono12packed).
They are connected to the PC via Netgier Gigabit Switch GS108.
With IMAQdx 2014 driver I could not find any problems.

After the update:
1st Problem:
When StreamBytesPerSecond are set to maximum 1.15E+8, black streaks appear in the image and cameras are lost regularly. The problem can be solved by reducing the value. In theory, this should not be necessary, because cameras are triggered and takes a shot per second. I would like to understand why it worked with old IMAQdx and not with newer one.

What is even stranger: I tested this PC in my office with an Allied Vision Manta G-419B-NIR (2048x2048 pixels), a Basler scA1390-17gm (1390x1040 px) and a Basler scA640-17gm and found no problems by StreamytesPerSecond maximum! The switch in the office is Netgear GS308P.

Problem 2:
Increasing the StreamBytesPerSecond incrementally may cause a camera or the driver to send three ghost images in an infinite loop. IMAQdx Grab2.vi returns a new frame number and not a real image but allways the same three images from a buffer. This is highly weird and not funny in a laserlab: operators think that they see a real beam, because image changes!
My start grab routine looks like this:Confugure Grab.png

And grab looks like this:

Grab Images.png

Did anyone have the same problem?

0 Kudos
Message 1 of 3
(1,442 Views)

After a long unsuccessful search, I set up another PC fresh with Windows 10 pro and NI Academic Suite 2020 and the problems are gone.

0 Kudos
Message 2 of 3
(1,343 Views)
Solution
Accepted by topic author p4keal

By accident, I found a reproducible setup and solution 🎉

 

Symptoms

  • A few seconds after acquisition start, the camera sends 2–3 ghost images (old frames) in an endless loop
  • Reproducible at higher trigger rates
  • Smaller packet size (1500 bytes) amplifies the problem
  • Camera crashes after extended runtime (overnight)
  • Occurs in both NI-MAX and Vimba Viewer → not a driver/software issue

Setup

  • Camera: Allied Vision Manta G-283B (Firmware: 00.01.54.17624)
  • Connection: Netgear GS116 Switch (or direct PC connection — both affected)
  • NIC: Intel Gigabit CT Desktop Adapter; Intel 82574L Chip
  • Trigger source: Line1 (hardware trigger), 10 Hz
  • Pixel format: Mono12 — Allied Vision transmits internally as 16-bit (5.66 MB/frame)

Root Causes

  1. NIC () Receive Buffer too small
  • Before: 256 (default)
  • Insufficient for higher frame rates → packet loss → GVSP resend requests → camera retransmits buffered (old) frames → ghost image loop
  • Changed to: 2048 (maximum)
  1. StreamBytesPerSecond too low
  • Before: 55,000,000 (55 MB/s)
  • Required for Mono12 (internal 16-bit) at 10 Hz: 56.6 MB/s → camera transmit buffer overflow → ghost images, crash
  • Changed to: 90,000,000 (90 MB/s)

 

Changed Settings

Parameter

Before

After

NIC Receive Buffers

256

2048

NIC Interrupt Moderation

Enabled (Adaptive)

Disabled

StreamBytesPerSecond

55,000,000

90,000,000

0 Kudos
Message 3 of 3
(32 Views)