Configuring the Camera and Host System

Installing the Ethernet Driver

Lucid Vision Labs recommends updating to the latest version of your Ethernet adapter’s driver before connecting your camera. You may need to navigate to the manufacturer’s website to find the latest version of the driver.

Device Discovery and Enumeration

Lucid cameras are discovered and enumerated with the following process:

Flow Chart - How Lucid Vision Labs cameras are discovered and enumerated

Camera IP Setup

There are three methods used by LUCID cameras to obtain an IP address:

  • Persistent - The camera uses a fixed IP address
  • Dynamic Host Configuration Protocol (DHCP) - The camera is assigned an address from a DHCP server
  • Link-Local Address (LLA) - The camera obtains an address in the Link-Local Address range from 169.254.1.0 to 169.254.254.255
light_bulb A Link-Local Address is selected with a pseudo-random number generator, so an LLA address cannot be reliably predicted. If you require a consistent IP address, you should set up a persistent IP on the camera. For more information on Link-Local Address selection, refer to Section 2.1 in RFC 3927.
help The camera must be on the same subnet as the Ethernet adapter and have a valid IP address before use.

Persistent IP and DHCP configurations can be disabled on the camera. The default camera configuration is as follows:

Persistent IP Disabled
DHCP Enabled
LLA Enabled (always enabled)

Out of the box, the camera first attempts to connect using DHCP. If the camera is unable to connect using DHCP, it will use Link-Local Addressing.

Setting Up Persistent IP

The following pseudocode demonstrates setting up persistent IP:

1
2
3
4
5
6
7
// Connect to camera
// Get device node map 

GevCurrentIPConfigurationPersistentIP = true;   
GevPersistentIPAddress = 192.168.0.10; //Enter persistent IP address for the camera 
GevPersistentSubnetMask = 255.255.255.0;
GevPersistentDefaultGateway = 192.168.0.1;

Bandwidth Management

Jumbo Frames

Lucid Vision Labs recommends enabling jumbo frames on your Ethernet adapter. A jumbo frame is an Ethernet frame that is larger than 1500 bytes. Most Ethernet adapters support jumbo frames, however it is usually turned off by default.

Enabling jumbo frames on the Ethernet adapter allows a packet size of up to 9000 bytes to be set on the HTP003S. The larger packet size will enable optimal performance on high-bandwidth cameras, and it usually reduces CPU load on the host system. Please note in order to set a 9000 byte packet size on the camera, the Ethernet adapter must support a jumbo frame size of 9000 bytes or higher.

The following table are some of the Ethernet adapters that Lucid Vision Labs has tested:

Product Name Maximum Jumbo Frame Size
ADLINK PCIe-GIE64+ 9000
Neousys PCIe-PoE354at 9500
Intel EXPI9301CT (non-POE) 9000
ioi GE10P-PCIE4XG301 16000
ioi DGEAP2X-PCIE8XG302 16000

If you still experience issues such as lost packets or dropped frames, you can also try:

  • Updating the Ethernet adapter driver (you may need to enable jumbo frames again after updating).
  • Increasing the receive buffer size in your Ethernet adapter properties.
  • Reducing the DeviceLinkThroughputLimit value (this may reduce maximum frame rate).

Receive Buffers

A receive buffer is the size of system memory that can be used by the Ethernet adapter to receive packets. Some Ethernet adapter drivers or the operating system itself may set the receive buffer value to a low value by default, which may result in decreased performance. Increasing the receive buffer size, however, will also result in increased system memory usage.

User Sets, Streamables, and File Access

User Sets

The HTP003S features two customizable user sets to load or save user-defined settings on the camera. Accessing the user set named Default will allow loading or saving of factory default settings. The HTP003S will load the user set selected in UserSetDefault when powering up or when reset.

light_bulb If the camera is acquiring images, AcquisitionStop must be called before loading or saving a user set.

Streamables

A camera feature marked as Streamable allows the feature’s current value to be stored to and loaded from a file.

File Access

The HTP003S features persistent storage for generic file access on the camera. This feature allows users to save and load a custom file up to 16 megabytes with UserFile. Users can also save and load User Set contents to and from a file.

light_bulb Loading new firmware onto the camera may overwrite existing UserFile contents.

The following pseudocode demonstrates reading from the camera using file access:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
// Connect to camera
// Get device node map 
FileSelector = UserFile1;
FileOpenMode = Read;
FileOperationSelector = Open;
FileOperationExecute();
// Device sets FileOperationSelector = Close
// Read custom file from camera 
FileOperationExecute();
// Device sets FileOperationSelector = Open

The following pseudocode demonstrates writing to the camera using file access:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
// Connect to camera
// Get device node map 
FileSelector = UserFile1;
FileOpenMode = Write;
FileOperationSelector = Open;
FileOperationExecute();
// Device sets FileOperationSelector = Close
// Write custom file to camera 
FileOperationExecute();
// Device sets FileOperationSelector = Open
light_bulb User Sets, Streamables, and File Access functions do not load or save camera IP configuration settings.