Skip to content

Line Timeout#

The Line Timeout camera feature allows you to set a maximum time (in microseconds) after which a frame acquisition is stopped if no further line trigger is received within this time.

This is useful if you want to send incomplete frames (partial frames), acquired until the timeout occurred, to the host computer.

The feature is only available on Basler racer 2 S cameras with GigE interface.

Using the Feature#

How It Works#

If the Line Timeout feature is enabled and the LineTimeout parameter is set, the counting of the line timeout starts as soon as the last line trigger has been issued. If the next line trigger is not received within the time set by the LineTimeout parameter, the following occurs:

  • Only the lines acquired up to the point when the command was executed are delivered, i.e. transmitted as partial frame to the host computer.
  • A line timeout event is generated, if the event has been enabled.

Example: The unplanned stop of a conveyor belt transporting the test objects causes the line timeout to expire, thus leading to an interruption of the image acquisition process, as no further line triggers are received. The partial frame is sent to the host computer for further processing.

Setting the Line Timeout#

  1. Set the BslLineTimeoutEnable parameter to true.
  2. Set the BslLineTimeout parameter to the desired time in μs.

When setting the BslLineTimeout parameter take into account the following:

  • The value for the exposure time should be smaller than the BslLineTimeout parameter.
  • Speed of the transportation device (e.g., a conveyor belt): The value of the BslLineTimeout parameter must be large enough. If the speed of the transportation device varies, for example, i.e., sometimes it is slow, sometimes faster, make sure that the LineTimeout parameter value is larger than the maximum time the conveying device takes.
  • Regular stops of the transportation device play a role. The LineTimeout parameter value should be larger than the maximum time regular stops take.

Sample Code#

// Enable the Line Timeout feature
camera.BslLineTimeoutEnable.SetValue(true);
// Set the line timeout in microseconds
camera.BslLineTimeout.SetValue(1000000);
INodeMap& nodemap = camera.GetNodeMap();
// Enable the Line Timeout feature
CBooleanParameter(nodemap, "BslLineTimeoutEnable").SetValue(true);
// Set the line timeout in microseconds
CIntegerParameter(nodemap, "BslLineTimeout").SetValue(1000000);
// Enable the Line Timeout feature
camera.Parameters[PLCamera.BslLineTimeoutEnable].SetValue(true);
// Set the line timeout in microseconds
camera.Parameters[PLCamera.BslLineTimeout].SetValue(1000000);
/* Macro to check for errors */
#define CHECK(errc) if (GENAPI_E_OK != errc) printErrorAndExit(errc)
GENAPIC_RESULT errRes = GENAPI_E_OK;  /* Return value of pylon methods */
/* Enable the Line Timeout feature */
errRes = PylonDeviceSetBooleanFeature(hdev, "BslLineTimeoutEnable", 1);
CHECK(errRes);
/* Set the line timeout in microseconds */
errRes = PylonDeviceSetIntegerFeature(hdev, "BslLineTimeout", 1000000);
CHECK(errRes);
# Enable the Line Timeout feature
camera.BslLineTimeoutEnable.Value = True
# Set the line timeout in microseconds
camera.BslLineTimeout.Value = 1000000

You can also use the pylon Viewer to easily set the parameters.

Select camera