Skip to content

Trigger Delay#

The Trigger Delay camera feature allows you to add a delay between the receipt of a hardware trigger signal or an action command signal and the moment the trigger becomes active.

Using the Feature#

To add a trigger delay:

  1. Set the TriggerSelector parameter to the desired trigger type, e.g., FrameStart.
  2. Set the TriggerDelay parameter to the desired delay (in µs).
    The minimum value is 0 μs (no delay). The maximum value is 1,000,000 μs (1 s).

Sample Code#

ace classic/U/L GigE Cameras#

// Select the frame start trigger
camera.TriggerSelector.SetValue(TriggerSelector_FrameStart);
// Set the delay for the frame start trigger to 300 µs
camera.TriggerDelayAbs.SetValue(300.0);
INodeMap& nodemap = camera.GetNodeMap();
// Select the frame start trigger
CEnumerationPtr(nodemap.GetNode("TriggerSelector"))->FromString("FrameStart");
// Set the delay for the frame start trigger to 300 µs
CFloatPtr(nodemap.GetNode("TriggerDelayAbs"))->SetValue(300.0);
INodeMap& nodemap = camera.GetNodeMap();
// Select the frame start trigger
CEnumParameter(nodemap, "TriggerSelector").SetValue("FrameStart");
// Set the delay for the frame start trigger to 300 µs
CFloatParameter(nodemap, "TriggerDelayAbs").SetValue(300.0);
// Select the frame start trigger
camera.Parameters[PLCamera.TriggerSelector].SetValue(PLCamera.TriggerSelector.FrameStart);
// Set the delay for the frame start trigger to 300 µs
camera.Parameters[PLCamera.TriggerDelayAbs].SetValue(300.0);
// Select the frame start trigger
Pylon.DeviceFeatureFromString(hdev, "TriggerSelector", "FrameStart");
// Set the delay for the frame start trigger to 300 µs
Pylon.DeviceSetFloatFeature(hdev, "TriggerDelayAbs", 300.0);
/* 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 */
/* Select the frame start trigger */
errRes = PylonDeviceFeatureFromString(hdev, "TriggerSelector", "FrameStart");
CHECK(errRes);
/* Set the delay for the frame start trigger to 300 µs */
errRes = PylonDeviceSetFloatFeature(hdev, "TriggerDelayAbs", 300.0);
CHECK(errRes);

Other Cameras#

// Select the frame start trigger
camera.TriggerSelector.SetValue(TriggerSelector_FrameStart);
// Set the delay for the frame start trigger to 300 µs
camera.TriggerDelay.SetValue(300);
INodeMap& nodemap = camera.GetNodeMap();
// Select the frame start trigger
CEnumerationPtr(nodemap.GetNode("TriggerSelector"))->FromString("FrameStart");
// Set the delay for the frame start trigger to 300 µs
CIntegerPtr(nodemap.GetNode("TriggerDelay"))->SetValue(300);
INodeMap& nodemap = camera.GetNodeMap();
// Select the frame start trigger
CEnumParameter(nodemap, "TriggerSelector").SetValue("FrameStart");
// Set the delay for the frame start trigger to 300 µs
CIntegerParameter(nodemap, "TriggerDelay").SetValue(300);
// Select the frame start trigger
camera.Parameters[PLCamera.TriggerSelector].SetValue(PLCamera.TriggerSelector.FrameStart);
// Set the delay for the frame start trigger to 300 µs
camera.Parameters[PLCamera.TriggerDelay].SetValue(300);
// Select the frame start trigger
Pylon.DeviceFeatureFromString(hdev, "TriggerSelector", "FrameStart");
// Set the delay for the frame start trigger to 300 µs
Pylon.DeviceSetIntegerFeature(hdev, "TriggerDelay", 300);
/* 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 */
/* Select the frame start trigger */
errRes = PylonDeviceFeatureFromString(hdev, "TriggerSelector", "FrameStart");
CHECK(errRes);
/* Set the delay for the frame start trigger to 300 µs */
errRes = PylonDeviceSetIntegerFeature(hdev, "TriggerDelay", 300);
CHECK(errRes);

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