In this topic Hide
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).
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.
// 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.