Using USB3 Vision Cameras with MVTec HALCON 11 in Windows

Preparing for Use

Before you use your USB3 Vision camera, we recommend that you are aware of the following resources:

Getting Started Manual for the camera—provides information on installing components and software needed to run the camera. 

Technical Reference for the camera—provides information on the camera’s specifications, features and operations, as well as imaging and acquisition controls. The technical references can be downloaded from our downloads page.

Firmware updates—ensure you are using to most up-to-date firmware for the camera to take advantage of improvements and fixes. The latest firmware can be downloaded from our downloads page.

Understanding USB3 Vision

USB3 Vision is a communication interface for vision applications based on the USB 3.1 technology. All cameras supporting USB3 Vision interact the same way with software also supporting USB3 Vision. 

The USB3 Vision standard defines required elements for camera identification, control, and output. Like GigE Vision, it uses GenICam, a programming interface for camera attribute control. GenICam allows camera vendors to define features and attributes in an XML file stored inside the camera. The file is parsed by the host application when the camera is initially discovered. One of the key benefits of GenICam is the ability for camera vendors to introduce new camera-specific features without needing to update the host application. 

Each camera attribute, such as exposure time, is controlled by a specific GenICam feature. Most USB3 Vision applications provide a Graphical User Interface (GUI) to control these attributes.

For more information on the USB3 Vision standard, visit visiononline.org.

For more information on GenICam, visit emva.org.

Installation and Configuration

System Requirements

  • USB 3.1 interface card
  • FLIR USB 3.1 camera with USB3 Vision firmware (firmware available from our downloads page)
  • FlyCapture 2.5 or later
  • USB3 Vision compliant software—the example used in this document is MVTec HALCON 11 HDevelop application.

Before using a USB3 Vision camera with a third-party application, complete the following steps:

1. Install the third-party USB3 Vision software.

2. Plug in the USB3 Vision camera to the USB 3.1 host controller.

3. Install third-party USB 3.1 camera driver.

The following sections provide more detail.

Step 1—Install Third-Party USB3 Vision Software

The example used in this document is MVTec HALCON 11 HDevelop application. HALCON 11 contains the required USB3 Vision camera driver and the user interface for controlling camera attributes. Users are encouraged to use the latest USB3Vision interface from HALCON. We have tested revision 5.2 of HALCON’s USB3Vision interface.

Step 2—Connect the Camera

Using a USB 3.1 cable, connect the camera to the USB 3.1 host controller on the PC.

Step 3—Install Third-Party Driver 

 To install MVTec's USB3 Vision driver:

1. Ensure the camera has powered up.

2. Open MVTec's HDevelop->Assistants->Open New Image Acquisition.

3. The below message should pop up to request permission to install the USB3 driver.

4. In the Image Acquisition window, on the Connection tab click Connect.

5. A new command line window pops up to install the USB3 driver.

Tips: the USB3 driver path is located at:

x64 OS - C:\Program Files\MVTec\HALCON-11.0\bin\x64-win64\hAcqUSB3Vision.dll
x86 OS - C:\Program Files\MVTec\HALCON-11.0\bin\ x86sse2-win32\hAcqUSB3Vision.dll

6. MVTec's USB3 driver appears in the device manager as follows:

Running Third-Party Software

Teledyne FLIR machine vision USB3 Vision cameras work with the Spinnaker SDK, FlyCapture2 SDK, or with third-party USB3 Vision applications.

 

This document provides examples using MVTec HALCON 11 HDevelop application.

To access the camera in HDevelop:

1. Open Image Acquisition window.

HDevlopAssistantsOpen New Image Acquisition

2. From the Source tab, click Auto-detect Interfaces and select USB3Vision from the drop-down box on the right.

3. Under the Connection tab, click Connect.

4. Click Live to start streaming the camera.

Configuring Camera Properties

To configure various camera properties:

1. In the Image Acquisition window, go to the Parameters tab.

2. Select the specific category of interest from the All Parameters drop-down box.

Tips: If Update Image is checked, HALCON reacquires a new image if any camera property changes.

3. Some settings require refreshing the Image Acquisition window to appear.

For example, changing GainAuto from Continuous to Off does not show the Gain parameter until the user clicks the Refresh button.

Capturing Images

Capturing in Free Running

To capture images in free running mode:

1. Ensure trigger mode is off.

In the Image Acquisition window go to Category -> AcquisitionControl -> Trigger Mode -> Off

2. Set AcquisitionMode to continuous.

In the Image Acquisition window go to Category -> AcquisitionControl -> TriggerMode -> Continuous

3. Click Live to start capturing images in free running mode.

Capturing with Triggers

To capture images using triggers:

1. Ensure trigger mode is on.

In the Image Acquisition window go to Category -> AcquisitionControl -> Trigger Mode -> On

2. Verify the hardware trigger source is wired correctly.

  • Frame Start—the camera starts integration from the trigger defined by the Trigger Source and Trigger Activation and the integration time is defined by the Exposure Time value.
  • Exposure Active—the camera starts integration from the Trigger Activation and the integration time is equal to the state time of the trigger input. 

3. Click Live to start capturing images using hardware trigger.

USB 3.1 Chunk Data

Support for Chunk Data Stream is part of the USB3 Vision standard.

Chunk Data Stream allows images to have chunks of additional data such as time stamp or frame counter. 

To enable Chunk Data Stream:

1. In the Image Acquisition window, on the parameters tab, select Category ChunkDataControl and select visibility Guru.

2. Set ChunkModeActive to 1.

3. Select ChunkSelector to choose the desired data to include in the payload of the image.

4. Set ChunkEnable to 1.

To view the enabled Chunk Data:

1. In the Image Acquisition window, on the parameters tab, select Category ChunkDataControl and select visibility Guru.

2. The enabled chunk data shows as read-only parameters.

Tips: updating of read-only parameters can be done by clicking Refresh in the Image Acquisition window.

USB3 Vision Troubleshooting Tips

Known FlyCapture Issues with USB3 Vision Firmware

To use FLIR machine vision USB3 Vision cameras, we recommend FlyCapture 2.5 SDK or later. 

FlyCapture 2.4 SDK may work with USB3 Vision cameras, but we have not done extensive testing with this pairing and cannot guarantee results.

FlyCapture 2.3 SDK and earlier versions do not work with USB3 Vision cameras.

What to do if my camera appears in FlyCapture2 but not in HDevelop?

Verify Firmware and Update if Necessary

The USB3 Vision standard was established after the launch of Teledyne FLIR's machine vision USB 3.1 cameras. USB3 Vision support started from the following firmware version:

Camera Firmware
Flea3 USB 3.1 2.7.3.0 and newer
Grasshopper3 USB 3.1 2.3.3.0 and newer

To determine your camera’s firmware version:

1. Ensure the camera has powered up.

2. Open the FlyCap2 program, installed with the FlyCapture2 SDK.

Start menu→All Programs→Point Grey FlyCapture2 SDK→Point Grey FlyCap2

The firmware version is displayed in the Camera Selection window, as well as on the Camera Information tab of the Camera Control dialog.


FlyCap2 Camera Selection Window

If the firmware of the camera does not support USB3 Vision, you can update the firmware to the latest version.

To update your camera’s firmware version:

1. Download the firmware file from our downloads page.

2. Ensure the camera has powered up.

3. Open the UpdatorGUI utility, installed with FlyCapture2 SDK.

Start menu→All Programs→Point Grey FlyCapture2 SDK→Utilities→UpdatorGUI3

4. Select the camera from the Camera List

5. Click Open to select the firmware file.

6. Click Update to begin the update process. Do NOT disconnect the camera until the update is complete.

Ensure the USB 3.1 host controller is using the manufacturer’s driver (or Windows 8 driver).

Third-party USB3 Vision applications come with their own device driver, which needs to be installed for the USB3 Vision camera. To install the third-party device driver for the camera, the USB 3.1 host controller must be configured to use the manufacturer’s driver, and not the FLIR USBPro driver (pgrxhci). If using Windows 8, the Windows driver can also be used.

 

If the USB 3.1 host controller is configured to use the USBPro driver you are not able to install the third-party camera driver.

To determine which driver the USB 3.1 host controller is using, open DriverControlGUI and click on the USB tab. 
Start menuAll ProgramsPoint Grey FlyCapture2 SDKUtilitiesDriverControlGUI
If the host controller is configured for the USBPro driver, the camera does not appear as a separate device.


In the figures to the right:

A. Shows a Renesas USB 3 Extensible Host Controller with the USBPro driver installed. The camera is not shown.

 

B. Shows a Flea3 camera as a separate device listing running with a Renesas USB 3.1 Host Controller with the manufacturer’s driver installed.

The camera and card are listed as two separate devices.

If your USB 3.1 host controller is using the USBPro driver, you can change this using the DriverControlGUI.

To change the driver of the USB 3.1 host controller:

1. Ensure the camera has powered up.

2. Open the DriverControlGUI utility, installed with the FlyCapture2 SDK.

Start menuAll ProgramsPoint Grey FlyCapture2 SDKUtilitiesDriverControlGUI

3. Click on the USB tab.

4. From the PC tree, under the host controller, select the camera.

5. Under Driver Selection, select Third-Party Drivers, and select the driver from the drop-down. If there is more than one listed, select the latest version for the manufacturer.

6. If no driver is listed, select Manual Selection and click Browse to find the driver on your computer.

7. Click Install Driver.

 

You can also use Windows Device Manager to install drivers on host controllers and cameras.