Line Overload Status

The Line Overload Status camera feature allows you to determine whether a GPIO line is overloaded, i.e., not powered correctly.

In this topic Hide

Using the Feature

Causes for Line Overload

If a GPIO line is configured as an output line, you must apply appropriate output signal voltages as specified in your camera topic.

If you don't apply the appropriate voltages, a line overload may occur. As long as the absolute maximum voltage of the camera is not exceeded, the camera can detect the overload and report it via the BslLineOverloadStatus parameter (ace classic/U/L cameras: LineOverloadStatus).

Determining the Overload Status of an I/O Line

To determine whether a GPIO line is overloaded, get the value of the BslLineOverloadStatus parameter (ace classic/U/L cameras: LineOverloadStatus). This parameter is read-only.

A value of false (0) means that the GPIO line is not overloaded.

A value of true (1) means that the GPIO line is overloaded. Check the configuration of your I/O lines.

Sample Code

// Select a line
camera.LineSelector.SetValue(LineSelector_Line1);
// Get the overload status of the line (ace classic/U/L cameras)
bool status = camera.LineOverloadStatus.GetValue();
// Get the overload status of the line (ace 2 and boost cameras)
bool bslStatus = camera.BslLineOverloadStatus.GetValue();
INodeMap& nodemap = camera.GetNodeMap();
// Select a line
CEnumerationPtr(nodemap.GetNode("LineSelector"))->FromString("Line1");
// Get the overload status of the line (ace classic/U/L cameras)
bool status = CBooleanPtr(nodemap.GetNode("LineOverloadStatus"))->GetValue();
// Get the overload status of the line (ace 2 and boost cameras)
bool bslStatus = CBooleanPtr(nodemap.GetNode("BslLineOverloadStatus"))->GetValue();
// Select a line
camera.Parameters[PLCamera.LineSelector].SetValue(PLCamera.LineSelector.Line1);
// Get the overload status of the line (ace classic/U/L cameras)
bool status = camera.Parameters[PLCamera.LineOverloadStatus].GetValue();
// Get the overload status of the line (ace 2 and boost cameras)
bool bslStatus = camera.Parameters[PLCamera.BslLineOverloadStatus].GetValue();
// Select a line
Pylon.DeviceFeatureFromString(hdev, "LineSelector", "Line1");
// Get the overload status of the line (ace classic/U/L cameras)
bool status = Pylon.DeviceGetBooleanFeature(hdev, "LineOverloadStatus");
// Get the overload status of the line (ace 2 and boost cameras)
bool bslStatus = Pylon.DeviceGetBooleanFeature(hdev, "BslLineOverloadStatus");
/* 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 */
_Bool status = false;
_Bool bslStatus = false;
/* Select a line */
errRes = PylonDeviceFeatureFromString(hdev, "LineSelector", "Line1");
CHECK(errRes);
/* Get the overload status of the line (ace classic/U/L cameras) */
errRes = PylonDeviceGetBooleanFeature(hdev, "LineOverloadStatus", &status);
CHECK(errRes);
/* Get the overload status of the line (ace 2 and boost cameras) */
errRes = PylonDeviceGetBooleanFeature(hdev, "BslLineOverloadStatus", &bslStatus);
CHECK(errRes);

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