Line Overload Status#

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

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. You can find your camera topic in the "Models" section.

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 LineOverloadStatus parameter.

Determining the Overload Status of an I/O Line#

To determine whether a GPIO line is overloaded, get the value of the LineOverloadStatus parameter. 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#

ace 2 and boost Cameras#

// Select a line
camera.LineSelector.SetValue(LineSelector_Line1);
bool status = camera.BslLineOverloadStatus.GetValue();
INodeMap& nodemap = camera.GetNodeMap();
// Select a line
CEnumerationPtr(nodemap.GetNode("LineSelector"))->FromString("Line1");
bool status = CBooleanPtr(nodemap.GetNode("BslLineOverloadStatus"))->GetValue();
INodeMap& nodemap = camera.GetNodeMap();
// Select a line
CEnumParameter(nodemap, "LineSelector").SetValue("Line1");
bool status = CBooleanParameter(nodemap, "BslLineOverloadStatus").GetValue();
// Select a line
camera.Parameters[PLCamera.LineSelector].SetValue(PLCamera.LineSelector.Line1);
bool status = camera.Parameters[PLCamera.BslLineOverloadStatus].GetValue();
// Select a line
Pylon.DeviceFeatureFromString(hdev, "LineSelector", "Line1");
bool status = 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;
/* Select a line */
errRes = PylonDeviceFeatureFromString(hdev, "LineSelector", "Line1");
CHECK(errRes);
errRes = PylonDeviceGetBooleanFeature(hdev, "BslLineOverloadStatus", &status);
CHECK(errRes);

Other Cameras#

// Select a line
camera.LineSelector.SetValue(LineSelector_Line1);
bool status = camera.LineOverloadStatus.GetValue();
INodeMap& nodemap = camera.GetNodeMap();
// Select a line
CEnumerationPtr(nodemap.GetNode("LineSelector"))->FromString("Line1");
bool status = CBooleanPtr(nodemap.GetNode("LineOverloadStatus"))->GetValue();
INodeMap& nodemap = camera.GetNodeMap();
// Select a line
CEnumParameter(nodemap, "LineSelector").SetValue("Line1");
bool status = CBooleanParameter(nodemap, "LineOverloadStatus").GetValue();
// Select a line
camera.Parameters[PLCamera.LineSelector].SetValue(PLCamera.LineSelector.Line1);
bool status = camera.Parameters[PLCamera.LineOverloadStatus].GetValue();
// Select a line
Pylon.DeviceFeatureFromString(hdev, "LineSelector", "Line1");
bool status = Pylon.DeviceGetBooleanFeature(hdev, "LineOverloadStatus");
/* 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;
/* Select a line */
errRes = PylonDeviceFeatureFromString(hdev, "LineSelector", "Line1");
CHECK(errRes);
errRes = PylonDeviceGetBooleanFeature(hdev, "LineOverloadStatus", &status);
CHECK(errRes);

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