Action Control

Current action command implementation supports both immediate execution of received action commands and scheduled execution of action commands. In order to execute an action immediately, the primary/secondary application has to set the legacy bit (i.e., action time available bit in flag field) in the corresponding ACTION_CMD packet to zero. In this case the device will execute the command at the earliest time possible. Also if the primary/secondary application set the action time available bit to true and provides a time tag which is in the past (i.e., comparing to the device timestamp), the device will execute the command at the earliest time possible and returns the GEV_STATUS_ACTION_LATE acknowledge message if the Extended Status Code 2.0 bit in GVCP configuration register is set to one, otherwise returns GEV_STATUS_ERROR acknowledge message.

Action Signal Size and Queue

Current implementation supports one action command (i.e., ActionSignalSize is equal to 1) and it is represented by "Action Signal 0". Camera can queue up maximum of 10 scheduled actions (i.e., ActionQueueSize is equal to 10) and will remove each action from the queue when their respective execution time has passed. Executing ActionQueueEmpty command node will also empty the action command queue no matter how many actions are stored in the queue.

"Action Signal 0" can be used as the source of trigger. This feature gives the user the ability to schedule the start of an acquisition (e.g., acquisition start, frame start and frame burst start) at any arbitrary time in the future and the devcie will assert the trigger at the scheduled time.

Action Commands and IEEE1588

If the device reference time is not synchronized to any master clock, then upon the receipt of an scheduled action command the device will return an acknowledge message with a GEV_STATUS_NO_REF_TIME status code if the Extended Status Code 2.0 bit in GVCP configuration register is set to one, otherwise returns GEV_STATUS_ERROR acknowledge message. In situations where there is no master clock on the network, enabling IEEE1588 mode on the device will make it a local master clock and will fix the action command packet rejection issue.

Implementation Details

When device's queue is full and it receives an additional action command, it will returns an acknowledge message with GEV_STATUS_OVERFLOW status code if the Extended Status Code 2.0 bit in GVCP configuration register is set to one, otherwise returns GEV_STATUS_ERROR status code.

If host tries to send an scheduled action command packet which is already existed in the queue, then the device will quietly ignore the duplicate packet.

The device does not support execution of actions which are less than 100us apart. Hence if host sends an scheduled action command packet which has an execution time closer than 100us to any of the actions in the queue, the device will ignore the packet (i.e., treats as if it is already existed).

It is recommended to set/enable the Extended Status Code 2.0 bit on GVCP configuration register in order to receive more detailed acknowledge messages from the device. If the Extended Status Code 2.0 is not set, the device will response with general GEV_STATUS_ERROR acknowledge message in case of any failures in the scheduling/execution process.

Summary Table

Name Interface Access Visibility Description
Action Unconditional Mode IEnumeration RW Guru Enables the unconditional action command mode where action commands are processed even when the primary control channel is closed.
Action Signal Size IInteger RO Guru Indicates the number of seperate action commands supported by this device.
Action Queue Empty ICommand WO Guru Removes all action commands in the queue.
Action Device Key IInteger WO Guru Provides the device key that allows the device to check the validity of action commands. The device internal assertion of an action signal is only authorized if the ActionDeviceKey and the action device key value in the protocol message are equal.
Action Queue Size IInteger RO Guru Indicates the size of the scheduled action commands queue. This number represents the maximum number of scheduled action commands that can be pending at a given point in time.
Action Selector IEnumeration RO Guru Selects to which Action Signal further Action settings apply.
Action Group Mask [Action Selector] IInteger RW Guru Provides the mask that the device will use to validate the action on reception of the action protocol message.
Action Group Key [Action Selector] IInteger RW Guru Provides the key that the device will use to validate the action on reception of the action protocol message.

Action Control Features


Action Unconditional Mode

Enables the unconditional action command mode where action commands are processed even when the primary control channel is closed.

Property Value
Name ActionUnconditionalMode
Interface IEnumeration
Access RW
Visibility Guru

Enumeration Values
Off
On

Action Signal Size

Indicates the number of seperate action commands supported by this device.

Property Value
Name ActionSignalSize
Interface IInteger
Access RO
Unit
Visibility Guru

Action Queue Empty

Removes all action commands in the queue.

Property Value
Name ActionQueueEmpty
Interface ICommand
Access WO
Visibility Guru

Action Device Key

Provides the device key that allows the device to check the validity of action commands. The device internal assertion of an action signal is only authorized if the ActionDeviceKey and the action device key value in the protocol message are equal.

Property Value
Name ActionDeviceKey
Interface IInteger
Access WO
Unit
Visibility Guru

Action Queue Size

Indicates the size of the scheduled action commands queue. This number represents the maximum number of scheduled action commands that can be pending at a given point in time.

Property Value
Name ActionQueueSize
Interface IInteger
Access RO
Unit
Visibility Guru

Action Selector

Selects to which Action Signal further Action settings apply.

Property Value
Name ActionSelector
Interface IEnumeration
Access RO
Visibility Guru

Enumeration Values
Action0

Action Group Mask

Provides the mask that the device will use to validate the action on reception of the action protocol message.

Property Value
Name ActionGroupMask [Action Selector]
Interface IInteger
Access RW
Unit
Visibility Guru

Action Group Key

Provides the key that the device will use to validate the action on reception of the action protocol message.

Property Value
Name ActionGroupKey [Action Selector]
Interface IInteger
Access RW
Unit
Visibility Guru