Skip to content

Software Signal Pulse#

The Software Signal Pulse camera feature allows you to execute a software command that can be used for multiple purposes.

The feature serves as an alternative to software commands that are limited to a specific purpose, e.g., the Trigger Software command.

Using the Feature#

Why Use Software Signal Pulse Commands#

Standard software commands can only be used for a single purpose. For example, you can use the TriggerSoftware command only to trigger the camera and the UserSetLoad command only to load a user set.

The SoftwareSignalPulse command, however, can be used for multiple purposes. You can also use the command to control multiple camera features in a single operation.

How It Works#

Supported Camera Features#

Depending on your camera model, the Software Signal Pulse feature can be used to control the following camera features:

Signal Channels#

Depending on your camera model, up to three signal channels are available, e.g., SoftwareSignal1 and SoftwareSignal2.

Using different signal channels is useful if you want to keep the camera features you control separate. For example, you can trigger the camera via signal channel 1 and advance the sequencer via signal channel 2.

Using Software Signal Pulse Commands#

To configure the SoftwareSignalPulse command:

  1. Set the source of the desired camera feature to one of the available signal channels. For example, set the TriggerSource parameter to SoftwareSignal1.
  2. Repeat the step above for all camera functions that you want to control with the Software Signal Pulse feature. If you want to control multiple features at the same time, assign the same signal channel to each of them. If you want to keep the controlled features separate, assign a different signal channel to each of them.

To execute a SoftwareSignalPulse command:

  1. Set the SoftwareSignalSelector to one of the available signal channels, e.g., SoftwareSignal1.
  2. Execute the SoftwareSignalPulse command.
    A software signal is sent. The signal uses the selected signal channel and executes the assigned action(s), e.g., advances the sequencer.

Specifics#

Show all camera models

Camera Model Supported Camera Features Available Software Signal Channels
a2A1920-51gcBAS Triggered Image Acquisition
Counter
Timer
Software Signal 1
Software Signal 2
Software Signal 3
a2A1920-51gcPRO Triggered Image Acquisition
Counter
Timer
Software Signal 1
Software Signal 2
Software Signal 3
a2A1920-51gmBAS Triggered Image Acquisition
Counter
Timer
Software Signal 1
Software Signal 2
Software Signal 3
a2A1920-51gmPRO Triggered Image Acquisition
Counter
Timer
Software Signal 1
Software Signal 2
Software Signal 3
a2A1920-160ucBAS Triggered Image Acquisition
Counter
Timer
Software Signal 1
Software Signal 2
Software Signal 3
a2A1920-160ucPRO Triggered Image Acquisition
Counter
Timer
Software Signal 1
Software Signal 2
Software Signal 3
a2A1920-160umBAS Triggered Image Acquisition
Counter
Timer
Software Signal 1
Software Signal 2
Software Signal 3
a2A1920-160umPRO Triggered Image Acquisition
Counter
Timer
Software Signal 1
Software Signal 2
Software Signal 3
a2A3840-13gcBAS Triggered Image Acquisition
Counter
Timer
Software Signal 1
Software Signal 2
Software Signal 3
a2A3840-13gmBAS Triggered Image Acquisition
Counter
Timer
Software Signal 1
Software Signal 2
Software Signal 3
a2A3840-45ucBAS Triggered Image Acquisition
Counter
Timer
Software Signal 1
Software Signal 2
Software Signal 3
a2A3840-45umBAS Triggered Image Acquisition
Counter
Timer
Software Signal 1
Software Signal 2
Software Signal 3
acA640-90gc None Software Signal Pulse feature not supported
acA640-90gm None Software Signal Pulse feature not supported
acA640-90uc Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
Software Signal 3
acA640-90um Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
Software Signal 3
acA640-120gc None Software Signal Pulse feature not supported
acA640-120gm None Software Signal Pulse feature not supported
acA640-120uc Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
Software Signal 3
acA640-120um Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
Software Signal 3
acA640-121gm None Software Signal Pulse feature not supported
acA640-300gc None Software Signal Pulse feature not supported
acA640-300gm None Software Signal Pulse feature not supported
acA640-750uc Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
Software Signal 3
acA640-750um Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
Software Signal 3
acA720-290gc None Software Signal Pulse feature not supported
acA720-290gm None Software Signal Pulse feature not supported
acA720-520uc Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
Software Signal 3
acA720-520um Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
Software Signal 3
acA780-75gc None Software Signal Pulse feature not supported
acA780-75gm None Software Signal Pulse feature not supported
acA800-200gc None Software Signal Pulse feature not supported
acA800-200gm None Software Signal Pulse feature not supported
acA800-510uc Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
Software Signal 3
acA800-510um Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
Software Signal 3
acA1280-60gc None Software Signal Pulse feature not supported
acA1280-60gm None Software Signal Pulse feature not supported
acA1300-22gc None Software Signal Pulse feature not supported
acA1300-22gm None Software Signal Pulse feature not supported
acA1300-30gc None Software Signal Pulse feature not supported
acA1300-30gm None Software Signal Pulse feature not supported
acA1300-30uc Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
Software Signal 3
acA1300-30um Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
Software Signal 3
acA1300-60gc None Software Signal Pulse feature not supported
acA1300-60gm None Software Signal Pulse feature not supported
acA1300-60gmNIR None Software Signal Pulse feature not supported
acA1300-75gc None Software Signal Pulse feature not supported
acA1300-75gm None Software Signal Pulse feature not supported
acA1300-200uc Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
Software Signal 3
acA1300-200um Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
Software Signal 3
acA1440-73gc None Software Signal Pulse feature not supported
acA1440-73gm None Software Signal Pulse feature not supported
acA1440-220uc Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
Software Signal 3
acA1440-220um Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
Software Signal 3
acA1600-20gc None Software Signal Pulse feature not supported
acA1600-20gm None Software Signal Pulse feature not supported
acA1600-20uc Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
Software Signal 3
acA1600-20um Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
Software Signal 3
acA1600-60gc None Software Signal Pulse feature not supported
acA1600-60gm None Software Signal Pulse feature not supported
acA1920-25gc None Software Signal Pulse feature not supported
acA1920-25gm None Software Signal Pulse feature not supported
acA1920-25uc Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
Software Signal 3
acA1920-25um Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
Software Signal 3
acA1920-40gc None Software Signal Pulse feature not supported
acA1920-40gm None Software Signal Pulse feature not supported
acA1920-40uc Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
Software Signal 3
acA1920-40ucMED Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
Software Signal 3
acA1920-40um Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
Software Signal 3
acA1920-40umMED Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
Software Signal 3
acA1920-48gc None Software Signal Pulse feature not supported
acA1920-48gm None Software Signal Pulse feature not supported
acA1920-50gc None Software Signal Pulse feature not supported
acA1920-50gm None Software Signal Pulse feature not supported
acA1920-150uc Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
Software Signal 3
acA1920-150um Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
Software Signal 3
acA1920-155uc Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
acA1920-155ucMED Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
acA1920-155um Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
acA1920-155umMED Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
acA2000-50gc None Software Signal Pulse feature not supported
acA2000-50gm None Software Signal Pulse feature not supported
acA2000-50gmNIR None Software Signal Pulse feature not supported
acA2000-165uc Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
Software Signal 3
acA2000-165um Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
Software Signal 3
acA2000-165umNIR Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
Software Signal 3
acA2040-25gc None Software Signal Pulse feature not supported
acA2040-25gm None Software Signal Pulse feature not supported
acA2040-25gmNIR None Software Signal Pulse feature not supported
acA2040-35gc None Software Signal Pulse feature not supported
acA2040-35gm None Software Signal Pulse feature not supported
acA2040-55uc Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
acA2040-55um Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
acA2040-90uc Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
Software Signal 3
acA2040-90um Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
Software Signal 3
acA2040-90umNIR Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
Software Signal 3
acA2040-120uc Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
acA2040-120um Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
acA2440-20gc None Software Signal Pulse feature not supported
acA2440-20gm None Software Signal Pulse feature not supported
acA2440-35uc Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
acA2440-35ucMED Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
acA2440-35um Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
acA2440-35umMED Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
acA2440-75uc Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
acA2440-75ucMED Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
acA2440-75um Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
acA2440-75umMED Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
acA2500-14gc None Software Signal Pulse feature not supported.
acA2500-14gm None Software Signal Pulse feature not supported
acA2500-14uc Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
Software Signal 3
acA2500-14um Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
Software Signal 3
acA2500-20gc - Software Signal Pulse feature not supported
acA2500-20gcMED - Software Signal Pulse feature not supported
acA2500-20gm None Software Signal Pulse feature not supported
acA2500-20gmMED - Software Signal Pulse feature not supported
acA2500-60uc Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
Software Signal 3
acA2500-60um Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
Software Signal 3
acA3088-16gc None Software Signal Pulse feature not supported
acA3088-16gm - Software Signal Pulse feature not supported
acA3088-57uc Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
acA3088-57um Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
acA3800-10gc None Software Signal Pulse feature not supported
acA3800-10gm None Software Signal Pulse feature not supported
acA3800-14uc Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
Software Signal 3
acA3800-14um Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
Software Signal 3
acA4024-8gc None Software Signal Pulse feature not supported
acA4024-8gm None Software Signal Pulse feature not supported
acA4024-29uc Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
acA4024-29um Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
acA4096-11gc None Software Signal Pulse feature not supported
acA4096-11gm None Software Signal Pulse feature not supported
acA4096-30uc Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
acA4096-30ucMED Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
acA4096-30um Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
acA4096-30umMED Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
acA4096-40uc Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
acA4096-40ucMED Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
acA4096-40um Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
acA4096-40umMED Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
acA4112-8gc None Software Signal Pulse feature not supported
acA4112-8gm None Software Signal Pulse feature not supported
acA4112-20uc Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
acA4112-20ucMED Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
acA4112-20um Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
acA4112-20umMED Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
acA4112-30uc Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
acA4112-30ucMED Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
acA4112-30um Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
acA4112-30umMED Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
acA4600-7gc None Software Signal Pulse feature not supported
acA4600-10uc Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
Software Signal 3
acA5472-5gc None Software Signal Pulse feature not supported
acA5472-5gm None Software Signal Pulse feature not supported
acA5472-17uc Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
acA5472-17um Triggered Image Acquisition
Sequencer (USB Cameras)
Software Signal 1
Software Signal 2
boA4096-93cc Triggered Image Acquisition
Counter
Timer
Software Signal 1
Software Signal 2
Software Signal 3
boA4096-93cm Triggered Image Acquisition
Counter
Timer
Software Signal 1
Software Signal 2
Software Signal 3
boA4112-68cc Triggered Image Acquisition
Counter
Timer
Software Signal 1
Software Signal 2
Software Signal 3
boA4112-68cm Triggered Image Acquisition
Counter
Timer
Software Signal 1
Software Signal 2
Software Signal 3
daA1280-54lc None Software Signal Pulse feature not supported
daA1280-54lm None Software Signal Pulse feature not supported
daA1280-54uc None Software Signal Pulse feature not supported
daA1280-54um None Software Signal Pulse feature not supported
daA1600-60lc None Software Signal Pulse feature not supported
daA1600-60lm None Software Signal Pulse feature not supported
daA1600-60uc None Software Signal Pulse feature not supported
daA1600-60um None Software Signal Pulse feature not supported
daA1920-15um None Software Signal Pulse feature not supported
daA1920-30uc None Software Signal Pulse feature not supported
daA1920-30um None Software Signal Pulse feature not supported
daA2500-14lc None Software Signal Pulse feature not supported
daA2500-14lm None Software Signal Pulse feature not supported
daA2500-14uc None Software Signal Pulse feature not supported
daA2500-14um None Software Signal Pulse feature not supported
daA2500-60mc None Software Signal Pulse feature not supported
puA1280-54uc None Software Signal Pulse feature not supported
puA1280-54um Software Signal Pulse feature not supported
puA1600-60uc None Software Signal Pulse feature not supported
puA1600-60um None Software Signal Pulse feature not supported
puA1920-30uc None Software Signal Pulse feature not supported
puA1920-30um None Software Signal Pulse feature not supported
puA2500-14uc None Software Signal Pulse feature not supported
puA2500-14um None Software Signal Pulse feature not supported

Sample Code#

// Set software signal 1 as "path 0" trigger signal (sequencer reset)
camera.SequencerTriggerSource.SetValue(SequencerTriggerSource_SoftwareSignal1);
// Select software signal channel 1
camera.SoftwareSignalSelector.SetValue(SoftwareSignalSelector_SoftwareSignal1);
// Execute the command
camera.SoftwareSignalPulse.Execute();
INodeMap& nodemap = camera.GetNodeMap();
// Set software signal 1 as "path 0" trigger signal (sequencer reset)
CEnumerationPtr(nodemap.GetNode("SequencerTriggerSource"))->FromString("SoftwareSignal1");
// Select software signal channel 1
CEnumerationPtr(nodemap.GetNode("SoftwareSignalSelector"))->FromString("SoftwareSignal1");
// Execute the command
CCommandPtr(nodemap.GetNode("SoftwareSignalPulse"))->Execute();
INodeMap& nodemap = camera.GetNodeMap();
// Set software signal 1 as "path 0" trigger signal (sequencer reset)
CEnumParameter(nodemap, "SequencerTriggerSource").SetValue("SoftwareSignal1");
// Select software signal channel 1
CEnumParameter(nodemap, "SoftwareSignalSelector").SetValue("SoftwareSignal1");
// Execute the command
CCommandParameter(nodemap, "SoftwareSignalPulse").Execute();
// Set software signal 1 as "path 0" trigger signal (sequencer reset)
camera.Parameters[PLCamera.SequencerTriggerSource].SetValue(PLCamera.SequencerTriggerSource.SoftwareSignal1);
// Select software signal channel 1
camera.Parameters[PLCamera.SoftwareSignalSelector].SetValue(PLCamera.SoftwareSignalSelector.SoftwareSignal1);
// Execute the command
camera.Parameters[PLCamera.SoftwareSignalPulse].Execute();
// Set software signal 1 as "path 0" trigger signal (sequencer reset)
Pylon.DeviceFeatureFromString(hdev, "SequencerTriggerSource", "SoftwareSignal1");
// Select software signal channel 1
Pylon.DeviceFeatureFromString(hdev, "SoftwareSignalSelector", "SoftwareSignal1");
// Execute the command
Pylon.DeviceExecuteCommandFeature(hdev, "SoftwareSignalPulse");
/* 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 */
/* Set software signal 1 as "path 0" trigger signal (sequencer reset) */
errRes = PylonDeviceFeatureFromString(hdev, "SequencerTriggerSource", "SoftwareSignal1");
CHECK(errRes);
/* Select software signal channel 1 */
errRes = PylonDeviceFeatureFromString(hdev, "SoftwareSignalSelector", "SoftwareSignal1");
CHECK(errRes);
/* Execute the command */
errRes = PylonDeviceExecuteCommandFeature(hdev, "SoftwareSignalPulse");
CHECK(errRes);

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